# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR The FreeBSD Project # This file is distributed under the same license as the FreeBSD Documentation package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: FreeBSD Documentation VERSION\n" "POT-Creation-Date: 2025-11-08 16:17+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: YAML Front Matter: description #: documentation/content/en/books/handbook/boot/_index.adoc:1 #, no-wrap msgid "An introduction to the FreeBSD Booting Process, demonstrates how to customize the FreeBSD boot process, including everything that happens until the FreeBSD kernel has started, probed for devices, and started init" msgstr "" #. type: YAML Front Matter: part #: documentation/content/en/books/handbook/boot/_index.adoc:1 #, no-wrap msgid "Part III. System Administration" msgstr "" #. type: YAML Front Matter: title #: documentation/content/en/books/handbook/boot/_index.adoc:1 #, no-wrap msgid "Chapter 15. The FreeBSD Booting Process" msgstr "" #. type: Title = #: documentation/content/en/books/handbook/boot/_index.adoc:15 #, no-wrap msgid "The FreeBSD Booting Process" msgstr "" #. type: Title == #: documentation/content/en/books/handbook/boot/_index.adoc:53 #, no-wrap msgid "Synopsis" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:57 msgid "" "The process of starting a computer and loading the operating system is " "referred to as \"the bootstrap process\", or \"booting\". FreeBSD's boot " "process provides a great deal of flexibility in customizing what happens " "when the system starts, including the ability to select from different " "operating systems installed on the same computer, different versions of the " "same operating system, or a different installed kernel." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:61 msgid "" "This chapter details the configuration options that can be set. It " "demonstrates how to customize the FreeBSD boot process, including everything " "that happens until the FreeBSD kernel has started, probed for devices, and " "started man:init[8]. This occurs when the text color of the boot messages " "changes from bright white to grey." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:63 msgid "Read this chapter to learn:" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:65 msgid "The components of the FreeBSD bootstrap system and how they interact." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:66 msgid "" "The options that can be passed to the components in the FreeBSD bootstrap in " "order to control the boot process." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:67 msgid "The basics of setting device hints." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:68 msgid "" "How to boot into single- and multi-user mode and how to properly shut down a " "FreeBSD system." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:72 msgid "" "This chapter only describes the boot process for FreeBSD running on x86 and " "amd64 systems." msgstr "" #. type: Title == #: documentation/content/en/books/handbook/boot/_index.adoc:75 #, no-wrap msgid "FreeBSD Boot Process" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:81 msgid "" "Turning on a computer and starting the operating system poses an interesting " "dilemma. By definition, the computer does not know how to do anything until " "the operating system is started. This includes running programs from the " "disk. If the computer can not run a program from the disk without the " "operating system, and the operating system programs are on the disk, how is " "the operating system started?" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:86 msgid "" "This problem parallels one in the book The Adventures of Baron Munchausen. " "A character had fallen part way down a manhole, and pulled himself out by " "grabbing his bootstraps and lifting. In the early days of computing, the " "term _bootstrap_ was applied to the mechanism used to load the operating " "system. It has since become shortened to \"booting\"." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:90 msgid "" "On x86 hardware, the Basic Input/Output System (BIOS) is responsible for " "loading the operating system. The BIOS looks on the hard disk for the " "Master Boot Record (MBR), which must be located in a specific place on the " "disk. The BIOS has enough knowledge to load and run the MBR, and assumes " "that the MBR can then carry out the rest of the tasks involved in loading " "the operating system, possibly with the help of the BIOS." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:97 msgid "" "FreeBSD provides for booting from both the older MBR standard, and the newer " "GUID Partition Table (GPT). GPT partitioning is often found on computers " "with the Unified Extensible Firmware Interface (UEFI). However, FreeBSD can " "boot from GPT partitions even on machines with only a legacy BIOS with " "man:gptboot[8]. Work is under way to provide direct UEFI booting." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:102 msgid "" "The code within the MBR is typically referred to as a _boot manager_, " "especially when it interacts with the user. The boot manager usually has " "more code in the first track of the disk or within the file system. " "Examples of boot managers include the standard FreeBSD boot manager boot0, " "also called Boot Easy, and GNU GRUB, which is used by many Linux(R) " "distributions." msgstr "" #. There is extref:{faq}[a frequently asked question] about GRUB. Beyond the answer there, // #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:107 msgid "" "Users of GRUB should refer to https://www.gnu.org/software/grub/grub-" "documentation.html[GNU-provided documentation]." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:111 msgid "" "If only one operating system is installed, the MBR searches for the first " "bootable (active) slice on the disk, and then runs the code on that slice to " "load the remainder of the operating system. When multiple operating systems " "are present, a different boot manager can be installed to display a list of " "operating systems so the user can select one to boot." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:118 msgid "" "The remainder of the FreeBSD bootstrap system is divided into three stages. " "The first stage knows just enough to get the computer into a specific state " "and run the second stage. The second stage can do a little bit more, before " "running the third stage. The third stage finishes the task of loading the " "operating system. The work is split into three stages because the MBR puts " "limits on the size of the programs that can be run at stages one and two. " "Chaining the tasks together allows FreeBSD to provide a more flexible loader." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:121 msgid "" "The kernel is then started and begins to probe for devices and initialize " "them for use. Once the kernel boot process is finished, the kernel passes " "control to the user process man:init[8], which makes sure the disks are in a " "usable state, starts the user-level resource configuration which mounts file " "systems, sets up network cards to communicate on the network, and starts the " "processes which have been configured to run at startup." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:123 msgid "" "This section describes these stages in more detail and demonstrates how to " "interact with the FreeBSD boot process." msgstr "" #. type: Title === #: documentation/content/en/books/handbook/boot/_index.adoc:125 #, no-wrap msgid "The Boot Manager" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:129 msgid "" "The boot manager code in the MBR is sometimes referred to as _stage zero_ of " "the boot process. By default, FreeBSD uses the boot0 boot manager." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:133 msgid "" "The MBR installed by the FreeBSD installer is based on [.filename]#/boot/" "boot0#. The size and capability of boot0 is restricted to 446 bytes due to " "the slice table and `0x55AA` identifier at the end of the MBR. If boot0 and " "multiple operating systems are installed, a message similar to this example " "will be displayed at boot time:" msgstr "" #. type: Block title #: documentation/content/en/books/handbook/boot/_index.adoc:135 #, no-wrap msgid "[.filename]#boot0# Screenshot" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:143 #, no-wrap msgid "" "F1 Win\n" "F2 FreeBSD\n" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:145 #, no-wrap msgid "Default: F2\n" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:151 msgid "" "Other operating systems will overwrite an existing MBR if they are installed " "after FreeBSD. If this happens, or to replace the existing MBR with the " "FreeBSD MBR, use the following command:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:155 #, no-wrap msgid "# fdisk -B -b /boot/boot0 device\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:159 msgid "" "where _device_ is the boot disk, such as [.filename]#ad0# for the first IDE " "disk, [.filename]#ad2# for the first IDE disk on a second IDE controller, or " "[.filename]#da0# for the first SCSI disk. To create a custom configuration " "of the MBR, refer to man:boot0cfg[8]." msgstr "" #. type: Title === #: documentation/content/en/books/handbook/boot/_index.adoc:161 #, no-wrap msgid "Stage One and Stage Two" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:166 msgid "" "Conceptually, the first and second stages are part of the same program on " "the same area of the disk. Due to space constraints, they have been split " "into two, but are always installed together. They are copied from the " "combined [.filename]#/boot/boot# by the FreeBSD installer or `bsdlabel`." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:169 msgid "" "These two stages are located outside file systems, in the first track of the " "boot slice, starting with the first sector. This is where boot0, or any " "other boot manager, expects to find a program to run which will continue the " "boot process." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:172 msgid "" "The first stage, [.filename]#boot1#, is very simple, since it can only be " "512 bytes in size. It knows just enough about the FreeBSD _bsdlabel_, which " "stores information about the slice, to find and execute [.filename]#boot2#." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:177 msgid "" "Stage two, [.filename]#boot2#, is slightly more sophisticated, and " "understands the FreeBSD file system enough to find files. It can provide a " "simple interface to choose the kernel or loader to run. It runs loader, " "which is much more sophisticated and provides a boot configuration file. If " "the boot process is interrupted at stage two, the following interactive " "screen is displayed:" msgstr "" #. type: Block title #: documentation/content/en/books/handbook/boot/_index.adoc:179 #, no-wrap msgid "[.filename]#boot2# Screenshot" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:188 #, no-wrap msgid "" ">> FreeBSD/i386 BOOT\n" "Default: 0:ad(0,a)/boot/loader\n" "boot:\n" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:193 msgid "" "To replace the installed [.filename]#boot1# and [.filename]#boot2#, use " "`bsdlabel`, where _diskslice_ is the disk and slice to boot from, such as " "[.filename]#ad0s1# for the first slice on the first IDE disk:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:197 #, no-wrap msgid "# bsdlabel -B diskslice\n" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:203 msgid "" "If just the disk name is used, such as [.filename]#ad0#, `bsdlabel` will " "create the disk in \"dangerously dedicated mode\", without slices. This is " "probably not the desired action, so double check the _diskslice_ before " "pressing kbd:[Return]." msgstr "" #. type: Title === #: documentation/content/en/books/handbook/boot/_index.adoc:206 #, no-wrap msgid "Stage Three" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:210 msgid "" "The loader is the final stage of the three-stage bootstrap process. It is " "located on the file system, usually as [.filename]#/boot/loader#." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:212 msgid "" "The loader is intended as an interactive method for configuration, using a " "built-in command set, backed up by a more powerful interpreter which has a " "more complex command set." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:215 msgid "" "During initialization, loader will probe for a console and for disks, and " "figure out which disk it is booting from. It will set variables " "accordingly, and an interpreter is started where user commands can be passed " "from a script or interactively." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:218 msgid "" "The loader will then read [.filename]#/boot/loader.rc#, which by default " "reads in [.filename]#/boot/defaults/loader.conf# which sets reasonable " "defaults for variables and reads [.filename]#/boot/loader.conf# for local " "changes to those variables. [.filename]#loader.rc# then acts on these " "variables, loading whichever modules and kernel are selected." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:223 msgid "" "Finally, by default, loader issues a 10 second wait for key presses, and " "boots the kernel if it is not interrupted. If interrupted, the user is " "presented with a prompt which understands the command set, where the user " "may adjust variables, unload all modules, load modules, and then finally " "boot or reboot. crossref:boot[boot-loader-commands,Loader Built-In " "Commands] lists the most commonly used loader commands. For a complete " "discussion of all available commands, refer to man:loader[8]." msgstr "" #. type: Block title #: documentation/content/en/books/handbook/boot/_index.adoc:225 #, no-wrap msgid "Loader Built-In Commands" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:229 #, no-wrap msgid "Variable" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:231 #: documentation/content/en/books/handbook/boot/_index.adoc:320 #, no-wrap msgid "Description" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:232 #, no-wrap msgid "autoboot _seconds_" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:234 #, no-wrap msgid "Proceeds to boot the kernel if not interrupted within the time span given, in seconds. It displays a countdown, and the default time span is 10 seconds." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:235 #, no-wrap msgid "boot [`-options`] [`kernelname`]" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:237 #, no-wrap msgid "Immediately proceeds to boot the kernel, with any specified options or kernel name. Providing a kernel name on the command-line is only applicable after an `unload` has been issued. Otherwise, the previously-loaded kernel will be used. If _kernelname_ is not qualified, it will be searched under _/boot/kernel_ and _/boot/modules_." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:238 #, no-wrap msgid "boot-conf" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:240 #, no-wrap msgid "Goes through the same automatic configuration of modules based on specified variables, most commonly `kernel`. This only makes sense if `unload` is used first, before changing some variables." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:241 #, no-wrap msgid "help [`_topic_`]" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:243 #, no-wrap msgid "Shows help messages read from [.filename]#/boot/loader.help#. If the topic given is `index`, the list of available topics is displayed." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:244 #, no-wrap msgid "include `_filename_` ..." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:246 #, no-wrap msgid "Reads the specified file and interprets it line by line. An error immediately stops the `include`." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:247 #, no-wrap msgid "load [-t ``_type_``] `_filename_`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:249 #, no-wrap msgid "Loads the kernel, kernel module, or file of the type given, with the specified filename. Any arguments after _filename_ are passed to the file. If _filename_ is not qualified, it will be searched under _/boot/kernel_ and _/boot/modules_." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:250 #, no-wrap msgid "ls [-l] [``_path_``]" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:252 #, no-wrap msgid "Displays a listing of files in the given path, or the root directory, if the path is not specified. If `-l` is specified, file sizes will also be shown." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:253 #, no-wrap msgid "lsdev [`-v`]" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:255 #, no-wrap msgid "Lists all of the devices from which it may be possible to load modules. If `-v` is specified, more details are printed." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:256 #, no-wrap msgid "lsmod [`-v`]" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:258 #, no-wrap msgid "Displays loaded modules. If `-v` is specified, more details are shown." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:259 #, no-wrap msgid "more `_filename_`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:261 #, no-wrap msgid "Displays the files specified, with a pause at each `LINES` displayed." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:262 #, no-wrap msgid "reboot" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:264 #, no-wrap msgid "Immediately reboots the system." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:265 #, no-wrap msgid "set `_variable_`, set `_variable=value_`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:267 #, no-wrap msgid "Sets the specified environment variables." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:268 #, no-wrap msgid "unload" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:269 #, no-wrap msgid "Removes all loaded modules." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:273 msgid "" "Here are some practical examples of loader usage. To boot the usual kernel " "in single-user mode:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:277 #, no-wrap msgid " boot -s\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:280 msgid "" "To unload the usual kernel and modules and then load the previous or " "another, specified kernel:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:285 #, no-wrap msgid "" " unload\n" " load /path/to/kernelfile\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:288 msgid "" "Use the qualified [.filename]#/boot/GENERIC/kernel# to refer to the default " "kernel that comes with an installation, or [.filename]#/boot/kernel.old/" "kernel#, to refer to the previously installed kernel before a system upgrade " "or before configuring a custom kernel." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:291 msgid "" "Use the following to load the usual modules with another kernel. Note that " "in this case it is not necessary the qualified name:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:297 #, no-wrap msgid "" "unload\n" "set kernel=\"mykernel\"\n" "boot-conf\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:300 msgid "To load an automated kernel configuration script:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:304 #, no-wrap msgid " load -t userconfig_script /boot/kernel.conf\n" msgstr "" #. type: Title === #: documentation/content/en/books/handbook/boot/_index.adoc:307 #, no-wrap msgid "Last Stage" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:312 msgid "" "Once the kernel is loaded by either loader or by boot2, which bypasses " "loader, it examines any boot flags and adjusts its behavior as necessary. " "crossref:boot[boot-kernel,Kernel Interaction During Boot] lists the commonly " "used boot flags. Refer to man:boot[8] for more information on the other " "boot flags." msgstr "" #. type: Block title #: documentation/content/en/books/handbook/boot/_index.adoc:314 #, no-wrap msgid "Kernel Interaction During Boot" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:318 #, no-wrap msgid "Option" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:321 #, no-wrap msgid "`-a`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:323 #, no-wrap msgid "During kernel initialization, ask for the device to mount as the root file system." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:324 #, no-wrap msgid "`-C`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:326 #, no-wrap msgid "Boot the root file system from a CDROM." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:327 #, no-wrap msgid "`-s`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:329 #, no-wrap msgid "Boot into single-user mode." msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:330 #, no-wrap msgid "`-v`" msgstr "" #. type: Table #: documentation/content/en/books/handbook/boot/_index.adoc:331 #, no-wrap msgid "Be more verbose during kernel startup." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:335 msgid "" "Once the kernel has finished booting, it passes control to the user process " "man:init[8], which is located at [.filename]#/sbin/init#, or the program " "path specified in the `init_path` variable in `loader`. This is the last " "stage of the boot process." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:339 msgid "" "The boot sequence makes sure that the file systems available on the system " "are consistent. If a UFS file system is not, and `fsck` cannot fix the " "inconsistencies, init drops the system into single-user mode so that the " "system administrator can resolve the problem directly. Otherwise, the " "system boots into multi-user mode." msgstr "" #. type: Title ==== #: documentation/content/en/books/handbook/boot/_index.adoc:341 #, no-wrap msgid "Single-User Mode" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:346 msgid "" "A user can specify this mode by booting with `-s` or by setting the " "`boot_single` variable in loader. It can also be reached by running " "`shutdown now` from multi-user mode. Single-user mode begins with this " "message:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:350 #, no-wrap msgid "Enter full pathname of shell or RETURN for /bin/sh:\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:354 msgid "" "If the user presses kbd:[Enter], the system will enter the default Bourne " "shell. To specify a different shell, input the full path to the shell." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:359 msgid "" "Single-user mode is usually used to repair a system that will not boot due " "to an inconsistent file system or an error in a boot configuration file. It " "can also be used to reset the `root` password when it is unknown. These " "actions are possible as the single-user mode prompt gives full, local access " "to the system and its configuration files. There is no networking in this " "mode." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:362 msgid "" "While single-user mode is useful for repairing a system, it poses a security " "risk unless the system is in a physically secure location. By default, any " "user who can gain physical access to a system will have full control of that " "system after booting into single-user mode." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:365 msgid "" "If the system `console` is changed to `insecure` in [.filename]#/etc/ttys#, " "the system will first prompt for the `root` password before initiating " "single-user mode. This adds a measure of security while removing the " "ability to reset the `root` password when it is unknown." msgstr "" #. type: Block title #: documentation/content/en/books/handbook/boot/_index.adoc:367 #, no-wrap msgid "Configuring an Insecure Console in [.filename]#/etc/ttys#" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:377 #, no-wrap msgid "" "# name getty type status comments\n" "#\n" "# If console is marked \"insecure\", then init will ask for the root password\n" "# when going to single-user mode.\n" "console none unknown off insecure\n" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:382 msgid "" "An `insecure` console means that physical security to the console is " "considered to be insecure, so only someone who knows the `root` password may " "use single-user mode." msgstr "" #. type: Title ==== #: documentation/content/en/books/handbook/boot/_index.adoc:384 #, no-wrap msgid "Multi-User Mode" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:387 msgid "" "If init finds the file systems to be in order, or once the user has finished " "their commands in single-user mode and has typed `exit` to leave single-user " "mode, the system enters multi-user mode, in which it starts the resource " "configuration of the system." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:391 msgid "" "The resource configuration system reads in configuration defaults from " "[.filename]#/etc/defaults/rc.conf# and system-specific details from " "[.filename]#/etc/rc.conf#. It then proceeds to mount the system file " "systems listed in [.filename]#/etc/fstab#. It starts up networking " "services, miscellaneous system daemons, then the startup scripts of locally " "installed packages." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:393 msgid "" "To learn more about the resource configuration system, refer to man:rc[8] " "and examine the scripts located in [.filename]#/etc/rc.d#." msgstr "" #. type: Title == #: documentation/content/en/books/handbook/boot/_index.adoc:395 #, no-wrap msgid "Device Hints" msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:400 msgid "" "During initial system startup, the boot man:loader[8] reads " "man:device.hints[5]. This file stores kernel boot information known as " "variables, sometimes referred to as \"device hints\". These \"device " "hints\" are used by device drivers for device configuration." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:406 msgid "" "Device hints may also be specified at the Stage 3 boot loader prompt, as " "demonstrated in crossref:boot[boot-loader, Stage Three]. Variables can be " "added using `set`, removed with `unset`, and viewed `show`. Variables set " "in [.filename]#/boot/device.hints# can also be overridden. Device hints " "entered at the boot loader are not permanent and will not be applied on the " "next reboot." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:408 msgid "" "Once the system is booted, man:kenv[1] can be used to dump all of the " "variables." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:411 msgid "" "The syntax for [.filename]#/boot/device.hints# is one variable per line, " "using the hash \"#\" as comment markers. Lines are constructed as follows:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:415 #, no-wrap msgid " hint.driver.unit.keyword=\"value\"\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:418 msgid "The syntax for the Stage 3 boot loader is:" msgstr "" #. type: delimited block . 4 #: documentation/content/en/books/handbook/boot/_index.adoc:422 #, no-wrap msgid " set hint.driver.unit.keyword=value\n" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:426 msgid "" "where `driver` is the device driver name, `unit` is the device driver unit " "number, and `keyword` is the hint keyword. The keyword may consist of the " "following options:" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:428 msgid "`at`: specifies the bus which the device is attached to." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:429 msgid "`port`: specifies the start address of the I/O to be used." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:430 msgid "`irq`: specifies the interrupt request number to be used." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:431 msgid "`drq`: specifies the DMA channel number." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:432 msgid "`maddr`: specifies the physical memory address occupied by the device." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:433 msgid "`flags`: sets various flag bits for the device." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:434 msgid "`disabled`: if set to `1` the device is disabled." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:437 msgid "" "Since device drivers may accept or require more hints not listed here, " "viewing a driver's manual page is recommended. For more information, refer " "to man:device.hints[5], man:kenv[1], man:loader.conf[5], and man:loader[8]." msgstr "" #. type: Title == #: documentation/content/en/books/handbook/boot/_index.adoc:439 #, no-wrap msgid "Shutdown Sequence" msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:442 msgid "" "Upon controlled shutdown using man:shutdown[8], man:init[8] will attempt to " "run the script [.filename]#/etc/rc.shutdown#, and then proceed to send all " "processes the `TERM` signal, and subsequently the `KILL` signal to any that " "do not terminate in a timely manner." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:448 msgid "" "To power down a FreeBSD machine on architectures and systems that support " "power management, use `shutdown -p now` to turn the power off immediately. " "To reboot a FreeBSD system, use `shutdown -r now`. One must be `root` or a " "member of `operator` in order to run man:shutdown[8]. One can also use " "man:halt[8] and man:reboot[8]. Refer to their manual pages and to " "man:shutdown[8] for more information." msgstr "" #. type: Plain text #: documentation/content/en/books/handbook/boot/_index.adoc:450 msgid "" "Modify group membership by referring to crossref:basics[users-" "synopsis,“Users and Basic Account Management”]." msgstr "" #. type: delimited block = 4 #: documentation/content/en/books/handbook/boot/_index.adoc:454 msgid "" "Power management requires man:acpi[4] to be loaded as a module or statically " "compiled into a custom kernel." msgstr ""