sysrc(8)は/etc/rc.confおよび/etc/rc.conf.localファイル(以下rc.conf(5)と表記)の内容をコマンドラインから操作するためのコマンドです
FreeBSD 9.2,FreeBSD 10 で利用できます
シェルスクリプトなどから変更したい場合には重宝するのではないでしょうか
変数を指定することで設定が表示されます
$ sysrc hostname hostname: localhost.example.com
$ sysrc ifconfig_em0 ifconfig_em0: DHCP
# sysrc sshd_enable sshd_enable: YES
変更されたものすべてを表示する場合は -aオプションをつけます
# sysrc -a dumpdev: AUTO hostname: localhost.example.com ifconfig_em0: DHCP sshd_enable: YES zfs_enable: YES
デフォルトも含めて全部表示する場合は -Aオプションをつけます
# sysrc -A accept_sourceroute: NO accounting_enable: NO allscreens_flags: allscreens_kbdflags: ...... ...... wpa_supplicant_conf_file: /etc/wpa_supplicant.conf wpa_supplicant_flags: -s wpa_supplicant_program: /usr/sbin/wpa_supplicant zfs_enable: YES
rc.conに書いてるそのままにコマンドに渡すことで書き換えられます。
# sysrc sshd_enable="NO" sshd_enable: YES -> NO
# sysrc ifconfig_em0="inet 192.168.123.123/24" ifconfig_em0: DHCP -> inet 192.168.123.123/24
項目そのものを削除したい場合は -xオプションをつけます
# sysrc -x sshd_enable