sysrc
FreeBSD를 사용하여 수정 중인 파일에 주석을 추가할 수 있는 방법이 있습니까 ?
/etc/rc.conf
예를 들어 표준적인 것이 있다면
hostname=“FreeBSDMachine”
ifconfig_em0=“DHCP”
sshd_enable=“YES”
ntpd_enable=“YES”
zfs_enable=“YES”
다음을 추가하고 싶다면 :
#Set hamster_enable = “YES” to enable automatic hamster wheel performance boost; “NO” to disable
hamster_enable=“YES”
이 작업을 수행하려면 어떻게 해야 합니까 sysrc
? 변수 자체( sysrc hamster_enable=YES
)를 설정하는 방법은 알지만 주석을 추가하는 방법은 모르겠습니다. 이를 수행할 수 있는 방법이 있습니까?
답변1
아니요.
시스템 파일(8)댓글은 지원되지 않습니다.
배경 정보를 많이 제공하지 않았지만 두 가지 옵션을 모두 간략히 설명하겠습니다. 아마도 그것들은 명백할 것입니다. 하지만 매뉴얼 페이지도 마찬가지입니다.시스템 파일(8);-)
간단한 추가
대부분의 경우 프로필을 제어하고 콘텐츠를 안전하게 추가할 수 있습니다.
echo #Set hamster_enable = \“YES\” to enable automatic hamster wheel performance boost; \“NO\” to disable >> /etc/rc.conf
echo hamster_enable=\“NO\” >> /etc/rc.conf
같은 순서로 설정을 추가하여 순서대로 유지합니다. 그런 다음 순서를 유지하면서 설정을 뒤집을 수 있습니다.
sysrc hamster_enable=YES
메모리가 실패하고 sysrc가 순서를 유지하지 않는 경우 다음을 사용하여 순서를 유지할 수 있습니다.sed
인라인 편집
이전에 구성 파일로 작업하는 일반적인 방법은 sysrc
스트림 편집기를 사용하는 것이었습니다.sed(1). 몇 가지 실제 사례를 살펴보는 것부터 시작해 보겠습니다.
DNS 검색 접미사 변경:
sed -I .bak 's/^search .*/search example.com/' /etc/resolv.conf
sudo를 설치하고 그룹 내 사용자가 비밀번호를 사용 wheel
하지 못하도록 허용합니다 sudo
.
pkg install -y sudo >> /var/log/postinstall.log 2>&1
sed -I .bak 's/^# %wheel ALL=(ALL) NOPASSWD: ALL/%wheel ALL=(ALL) NOPASSWD: ALL/' /usr/local/etc/sudoers
sshd 포트를 22로 설정하세요.
sed -I '' 's/^Port .*/Port 22/' /usr/jails/flavours/default/etc/ssh/sshd_config
이것은 우리를 햄스터로 인도합니다
sed -I '' 's/^hamster_enable=.*/hamster_enable=\"YES\" # Here be my comment/' /etc/rc.conf
댓글을 다른 줄에 게시하고 싶다면 다음을 확인하세요.Sed는 여러 줄을 삽입합니다.
라인을 삭제하려면 모자가 ^
라인의 시작 부분입니다.
sed -I '' 's/^#Set hamster_enable/d' /etc/rc.conf
sed -I '' 's/^hamster_enable=/d' /etc/rc.conf
sed
보다 까다롭고 극단적인 sysrc
경우에 주의를 기울여야 하지만 대부분의 경우에는 충분합니다 .