Difference between revisions of "Rc.conf"
(→Example) |
Wb7odyfred (Talk | contribs) m (Adding startup debug entries to rc.conf) |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{welcome}} | {{welcome}} | ||
− | |||
{{Navbar OpenRC}} | {{Navbar OpenRC}} | ||
Line 13: | Line 12: | ||
The file [https://www.freebsd.org/cgi/man.cgi?query=rc.conf&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html '''rc.conf(5)'''] contains descriptive information about the local host name, configuration details for any potential network interfaces and which services should be started up at system initial boot time. In new installations, the '''rc.conf''' file is generally initialized by the system installation utility. | The file [https://www.freebsd.org/cgi/man.cgi?query=rc.conf&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html '''rc.conf(5)'''] contains descriptive information about the local host name, configuration details for any potential network interfaces and which services should be started up at system initial boot time. In new installations, the '''rc.conf''' file is generally initialized by the system installation utility. | ||
− | The purpose of [https://www.freebsd.org/cgi/man.cgi?query=rc.conf&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html '''rc.conf(5)'''] is not to run commands or perform system startup actions directly. Instead, it is included by the various generic startup scripts in '''/etc''' which conditionalize their internal actions according to the settings found there. | + | The purpose of [https://www.freebsd.org/cgi/man.cgi?query=rc.conf&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html '''rc.conf(5)'''] is not to run commands or perform system startup actions directly. Instead, it is included by the various generic startup scripts in '''[[/etc/]]''' which conditionalize their internal actions according to the settings found there. |
− | The '''/etc/rc.conf''' file is included from the file '''/etc/defaults/rc.conf,''' which specifies the default settings for all the available options. Options need only be specified in '''/etc/rc.conf''' when the system administrator wishes to override these defaults. The file '''/etc/rc.conf.local''' is used to override settings in '''/etc/rc.conf''' for historical reasons. | + | The '''/etc/[[Rc.conf|rc.conf]]''' file is included from the file '''/etc/[[Defaults/rc.conf|defaults/rc.conf]],''' which specifies the default settings for all the available options. Options need only be specified in '''/etc/rc.conf''' when the system administrator wishes to override these defaults. The file '''/etc/rc.conf.local''' is used to override settings in '''/etc/rc.conf''' for historical reasons. |
The [https://www.freebsd.org/cgi/man.cgi?query=sysrc&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports sysrc(8)] command provides a scripting interface to modify system config files. | The [https://www.freebsd.org/cgi/man.cgi?query=sysrc&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports sysrc(8)] command provides a scripting interface to modify system config files. | ||
+ | The /usr/sbin/[https://www.freebsd.org/cgi/man.cgi?query=sysrc&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html sysrc] utility retrieves [[Rc.conf|rc.conf(5)]] variables from the collection of system rc files and allows processes with appropriate privilege to change values in a safe and effective manner. | ||
− | In addition to '''/etc/rc.conf.local''' you can also place smaller configuration files for each [https://www.freebsd.org/cgi/man.cgi?query=rc&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports rc(8)] script in the '''/etc/rc.conf.d''' directory. | + | |
+ | In addition to '''/etc/rc.conf.local''' you can also place smaller configuration files for each [https://www.freebsd.org/cgi/man.cgi?query=rc&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports rc(8)] script in the '''/etc/[[Rc.conf.d|rc.conf.d]]''' directory. | ||
+ | |||
+ | The [https://www.freebsd.org/cgi/man.cgi?query=timed&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html timed] utility is a time server daemon which is normally invoked at boot time from the [[Rc.conf|rc.conf]](5) file. It synchronizes the host's time with the time of other machines, which are also running timed, in a local area network. | ||
==Example== | ==Example== | ||
Line 51: | Line 54: | ||
|ifconfig_nfe0="DHCP"||[https://www.freebsd.org/cgi/man.cgi?query=ifconfig&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports ifconfig(8)], It is possible to bring up an interface with DHCP by adding "DHCP" to the ifconfig_<interface> variable. | |ifconfig_nfe0="DHCP"||[https://www.freebsd.org/cgi/man.cgi?query=ifconfig&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports ifconfig(8)], It is possible to bring up an interface with DHCP by adding "DHCP" to the ifconfig_<interface> variable. | ||
|- | |- | ||
− | |keymap="de.kbd"||If set to "NO", no keymap is installed, otherwise the value is used to install the keymap file found in /usr/share/syscons/keymaps/<value>.kbd (if using syscons(4)) | + | |keymap="de.kbd"||If set to "NO", no keymap is installed, otherwise the value is used to install the keymap file found in /usr/share/syscons/keymaps/<value>.kbd (if using [https://www.freebsd.org/cgi/man.cgi?query=syscons&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html syscons(4))] or /usr/share/vt/keymaps/<value>.kbd (if using [https://www.freebsd.org/cgi/man.cgi?query=vt&apropos=0&sektion=0&manpath=FreeBSD+12.1-RELEASE+and+Ports&arch=default&format=html vt(4)]). |
|- | |- | ||
|hostname="yourname.ghostbsd-pc.home"||Your host name | |hostname="yourname.ghostbsd-pc.home"||Your host name | ||
Line 66: | Line 69: | ||
|- | |- | ||
|dsbmd_enable="NO"||DSBMD - a media mounting daemon/automounter for FreeBS, [https://www.freshports.org/sysutils/dsbmd DSBMD] is a media/filesystem type detecting daemon that allows clients to mount storage devices. | |dsbmd_enable="NO"||DSBMD - a media mounting daemon/automounter for FreeBS, [https://www.freshports.org/sysutils/dsbmd DSBMD] is a media/filesystem type detecting daemon that allows clients to mount storage devices. | ||
− | |||
− | |||
|- | |- | ||
|kldload_vbox="vboxdrv"||kldload -- load the ''vboxdrv'' kernel module into the kernel, to use VirtualBox | |kldload_vbox="vboxdrv"||kldload -- load the ''vboxdrv'' kernel module into the kernel, to use VirtualBox | ||
Line 77: | Line 78: | ||
|vboxservice_enable="YES"||[https://www.freebsd.org/doc/handbook/virtualization-guest-virtualbox.html Guest on VirtualBox] | |vboxservice_enable="YES"||[https://www.freebsd.org/doc/handbook/virtualization-guest-virtualbox.html Guest on VirtualBox] | ||
|- | |- | ||
− | |ifconfig_em0="DHCP"||[https://www.freebsd.org/cgi/man.cgi?query=ifconfig&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports ifconfig] -- configure network interface parameters | + | |ifconfig_em0="DHCP"||[https://www.freebsd.org/cgi/man.cgi?query=ifconfig&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports ifconfig] -- configure network interface parameters |
− | |} | + | |- |
+ | |webcamd_enable="YES"||# enable use of the webcam daemon software | ||
+ | |- | ||
+ | |rc_debug="YES" | ||
+ | rc_info="YES" | ||
+ | || Add either or both entries to debug rc.conf startup when booting. Displays messages for you to see where boot fails. You can check output from dmesg or view file /var/log/messages | ||
+ | |-} | ||
Latest revision as of 17:15, 14 June 2020
Welcome to Rc.conf. |
OpenRC | ||
---|---|---|
Scripts | ||
/etc/rc rc - shell |
/etc/rc.devd The generic hook into OpenRC. |
/sbin/rcorder Ordering rc-scripts |
/etc/init.d Scripts to run OpenRC |
/usr/local/etc/init.d Scripts to run OpenRC |
|
/etc/rc.d Scripts automatically executed at boot and shutdown |
/usr/local/etc/rc.d Special scripts |
|
Configuration | ||
/etc/devd.conf Configuration file for devd(8) |
/etc/conf.d Initscript Configuration Files |
/etc/rc.conf.d Smaller configuration files |
/etc/defaults/rc.conf Specifies the default settings for all the available options. |
/etc/rc.conf The global OpenRC configuration file |
/etc/rc.conf.ghostbsd GhostBSD specific configurations |
Tools/Helper | ||
/usr/sbin/sysrc Safely edit system rc files |
/bin/rc-status Shows which services are running |
/sbin/rc-update Add or delete services |
/sbin/rc-service Locate and run an OpenRC service |
||
Back to the System |
Introduction[edit]
/etc/rc.conf
The global OpenRC configuration file.
Description[edit]
The file rc.conf(5) contains descriptive information about the local host name, configuration details for any potential network interfaces and which services should be started up at system initial boot time. In new installations, the rc.conf file is generally initialized by the system installation utility.
The purpose of rc.conf(5) is not to run commands or perform system startup actions directly. Instead, it is included by the various generic startup scripts in /etc/ which conditionalize their internal actions according to the settings found there.
The /etc/rc.conf file is included from the file /etc/defaults/rc.conf, which specifies the default settings for all the available options. Options need only be specified in /etc/rc.conf when the system administrator wishes to override these defaults. The file /etc/rc.conf.local is used to override settings in /etc/rc.conf for historical reasons.
The sysrc(8) command provides a scripting interface to modify system config files. The /usr/sbin/sysrc utility retrieves rc.conf(5) variables from the collection of system rc files and allows processes with appropriate privilege to change values in a safe and effective manner.
In addition to /etc/rc.conf.local you can also place smaller configuration files for each rc(8) script in the /etc/rc.conf.d directory.
The timed utility is a time server daemon which is normally invoked at boot time from the rc.conf(5) file. It synchronizes the host's time with the time of other machines, which are also running timed, in a local area network.
Example[edit]
The command cat /etc/rc.conf
will show you somthing like this:
Name | Description |
---|---|
root_rw_mount="NO" | Set to "YES" by default. After the file systems are checked at boot time, the root file system is remounted as read-write if this is set to "YES". Diskless systems that mount their root file system from a read-only remote NFS share should set this to "NO" in their rc.conf. |
sendmail_enable="NONE" | If set to "YES", run the sendmail(8) daemon at system boot time. If set to "NO", do not run a sendmail(8) daemon to listen for incoming network mail. This does not preclude a sendmail(8) daemon listening on the SMTP port of the loopback interface. The "NONE" option is deprecated and should not be used. It will be removed in a future release. |
sendmail_submit_enable="NO" | If set to "YES" and sendmail_enable is set to "NO", run sendmail(8) using sendmail_submit_flags instead of sendmail_flags. This is intended to allow local mail submission via a localhost-only listening SMTP service required for running sendmail(8) as a non-set-user-ID binary. Note that this does not work inside jail(2) systems, as jails do not allow binding to just the localhost interface. |
sendmail_outbound_enable="NO" | If set to "YES" and both sendmail_enable and sendmail_submit_enable are set to "NO", run [sendmail(8) using sendmail_outbound_flags instead of sendmail_flags. This is intended to allow local mail queue management for systems that do not offer a listening SMTP service. |
sendmail_msp_queue_enable="NO" | If set to "YES", start a client (MSP) queue runner sendmail(8) daemon at system boot time. As of sendmail 8.12, a separate queue is used for command line submissions. The client queue runner ensures that nothing is left behind in the submission queue. |
devfs_system_ruleset="devfsrules_common" | Rule name(s) to apply to the system /dev itself. |
kld_list="linux linux64 cuse" | kld_list: A list of kernel modules to load right after the local disks are mounted. Loading modules at this point in the boot process is much faster than doing it via /boot/loader.conf for those modules not necessary for mounting local disk. |
ntpd_sync_on_start="YES" | If set to "YES", ntpd(8) is run with the -g flag, which syncs the system's clock on startup. See ntpd(8) for more information regarding the -g option. This is a preferred alternative to using ntpdate(8) or specifying the ntpdate_enable variable. |
ifconfig_nfe0="DHCP" | ifconfig(8), It is possible to bring up an interface with DHCP by adding "DHCP" to the ifconfig_<interface> variable. |
keymap="de.kbd" | If set to "NO", no keymap is installed, otherwise the value is used to install the keymap file found in /usr/share/syscons/keymaps/<value>.kbd (if using syscons(4)) or /usr/share/vt/keymaps/<value>.kbd (if using vt(4)). |
hostname="yourname.ghostbsd-pc.home" | Your host name |
kldload_nvidia="nvidia-modeset nvidia" | kldload -- load a file into the kernel |
kldload_nvidia="nvidia-modeset nvidia" | kldload -- load a file into the kernel |
autofs_enable="YES" | If set to "YES", start the automount(8) utility and the automountd(8) and autounmountd(8) daemons at boot time. |
lpd_enable="NO" | If set to "YES", run the lpd(8) daemon at system boot time. |
cupsd_enable="YES" | cups - a standards-based, open source printing system |
dsbmd_enable="NO" | DSBMD - a media mounting daemon/automounter for FreeBS, DSBMD is a media/filesystem type detecting daemon that allows clients to mount storage devices. |
kldload_vbox="vboxdrv" | kldload -- load the vboxdrv kernel module into the kernel, to use VirtualBox |
vboxnet_enable="YES" | VirtualBox network adapter |
vboxguest_enable="YES" | Guest on VirtualBox |
vboxservice_enable="YES" | Guest on VirtualBox |
ifconfig_em0="DHCP" | ifconfig -- configure network interface parameters |
webcamd_enable="YES" | # enable use of the webcam daemon software |
rc_debug="YES"
rc_info="YES" |
Add either or both entries to debug rc.conf startup when booting. Displays messages for you to see where boot fails. You can check output from dmesg or view file /var/log/messages |