bootparam(7) Miscellaneous Information Manual bootparam(7) bootparam - , Linux Linux << >>, , << >>. , , , / , . BIOS, . , , , , GRUB. ( ), . : [=_1][,_2][,_10] <<>> -- , , ( ). , 10 , , , 10 . , , 10- ( ). Most of the sorting is coded in the kernel source file init/main.c. First, the kernel checks to see if the argument is any of the special arguments 'root=', 'nfsroot=', 'nfsaddrs=', 'ro', 'rw', 'debug', or 'init'. The meaning of these special arguments is described below. : ( <>) (<>) . , foo=3,4,5,6, , <> . , <> (foo_setup()), 3, 4, 5 6, . , <> (. ), . , <>. , , PID 1 (, init(1)). , init, -- <>, , , - . init(1). , <>> , . , /sbin/init, /etc/init, /bin/init, /bin/sh. , <<>>. <>> NFS. . <>> NFS. <>, <<,>> , <>. . <>> , . , , , . , , , <>. The root device can be specified symbolically or numerically. A symbolic specification has the form /dev/XXYN, where XX designates the device type (e.g., 'hd' for ST-506 compatible hard disk, with Y in 'a'-'d'; 'sd' for SCSI compatible disk, with Y in 'a'-'e'), Y the driver letter or number, and N the number (in decimal) of the partition on this device. , . <> -- . <</ >> (, /dev/sda3 8, 3, <>). 'rootdelay=' This parameter sets the delay (in seconds) to pause before attempting to mount the root filesystem. 'rootflags=...' ( fstab(5)). 'rootfstype=...' The 'rootfstype' option tells the kernel to mount the root filesystem as if it where of the type specified. This can be useful (for example) to mount an ext3 filesystem as ext2 and then remove the journal in the root filesystem, in fact reverting its format from ext3 to ext2 without the need to boot the box from alternate media. 'ro' 'rw' <> << >> , (fsck) . , , <<>> /, , <> (. mount(8)). <> /. . 'resume=...' suspend-to-disk, . . : resume=/dev/hda2 <>> /. : reserve=iobase,extent[,iobase,extent]... . () . /, . , . , reserve=0x300,32 blah=0x300 0x300-0x31f , <>. <> , , N ( N 0). echo N > /proc/sys/kernel/panic <> Linux 2.0.22 <<>> (cold) . (warm) <> (<<>> , , . <<>> ). (hard) , . , , , . <> BIOS. 'nosmp' 'maxcpus=N' (, __SMP__.) <> <> SMP. <> , SMP, N. , <> (, klogd(8) ), . console_loglevel ( syslog(2)). , console_loglevel KERN_DEBUG. KERN_DEBUG. /proc/sys/kernel/printk ( syslog(2)), SYSLOG_ACTION_CONSOLE_LEVEL syslog(2) dmesg(8). <> (kernel profiling). prof_shift. CONFIG_PROFILE , <>. prof_shift N, CONFIG_PROFILE 2. : , : profile[address >> prof_shift]++; /proc/profile. - , , readprofile.c. /proc/profile . ramdisk (Only if the kernel was compiled with CONFIG_BLK_DEV_RAM.) In general it is a bad idea to use a ramdisk under Linux--the system will use available memory more efficiently itself. But while booting, it is often useful to load the floppy contents into a ramdisk. One might also have a system in which first some modules (for filesystem or hardware) must be loaded before the main disk can be accessed. In Linux 1.3.48, ramdisk handling was changed drastically. Earlier, the memory was allocated statically, and there was a 'ramdisk=N' parameter to tell its size. (This could also be set in the kernel image at compile time.) These days ram disks use the buffer cache, and grow dynamically. For a lot of information on the current ramdisk setup, see the kernel source file Documentation/blockdev/ramdisk.rst. : . <> N=1, ram-. N=0, ramdisk ( 0). <> N=1, ( ). N=0, ( , ). <> <> () ram-(-) N . 4096 (4 ). <> ( , ram-) N. , ram- . <> (Only if the kernel was compiled with CONFIG_BLK_DEV_RAM and CONFIG_BLK_DEV_INITRD.) These days it is possible to compile the kernel to use initrd. When this feature is enabled, the boot process will load the kernel and an initial ramdisk; then the kernel converts initrd into a "normal" ramdisk, which is mounted read-write as root device; then /linuxrc is executed; afterward the "real" root filesystem is mounted, and the initrd filesystem is moved over to /initrd; finally, the usual boot sequence (e.g., invocation of /sbin/init) is performed. For a detailed description of the initrd feature, see the kernel source file Documentation/admin-guide/initrd.rst. <> , , initrd. initrd, , /dev/initrd ( : , , /dev/initrd, , ). SCSI- : iobase -- /, SCSI. , 0x200 0x3ff. irq -- , . , 5, 7, 9, 10, 11, 12 15. , , , : IDE, , . . scsi-id -- ID, - SCSI. , . , 7, , Seagate Future Domain TMC-950 6. parity -- , - SCSI . , -- . . <>> A SCSI device can have a number of 'subdevices' contained within itself. The most common example is one of the new SCSI CD-ROMs that handle more than one disk at a time. Each CD is addressed as a 'Logical Unit Number' (LUN) of that particular device. But most devices, such as hard disks, tape drives, and such are only one device, and will be assigned to LUN zero. SCSI LUN, . , , CONFIG_SCSI_MULTI_LUN, LUN, . LUN <>, n . , n=1. H SCSI SCSI: st=buf_size[,write_threshold[,max_bufs]] . buf_size 32k , , , -- 16384 . write_threshold , ( 30 ). (max_bufs) . . : st=32,30,2 Full details can be found in the file Documentation/scsi/st.rst. IDE-/CD-ROM The IDE driver accepts a number of parameters, which range from disk geometry specifications, to support for broken controller chips. Drive-specific options are specified by using 'hdX=' with X in 'a'-'h'. <>. , - , , . Also note that 'hd=' can be used to refer to the next unspecified drive in the (a, ..., h) sequence. For the following discussions, the 'hd=' option will be cited for brevity. Support for IDE was removed in Linux 5.14. <> . . (cyls)/(heads)/(sects) fdisk. (wpcom) IDE . IRQ, irq, , , , , . <> IDE CMD-640 , , . , . <> . , hdb=noprobe hdb=1166,7,17 , , , . <> WRERR_STAT . . <> IDE, IDE CD-ROM, ATAPI. CD-ROM , , , . ST-506 (<>) The standard disk driver can accept geometry arguments for the disks similar to the IDE driver. Note however that it expects only three values (C/H/S); any more or any less and it will silently ignore you. Also, it accepts only 'hd=' as an argument, that is, 'hda=' and so on are not valid here. The format is as follows: hd=cyls,heads,sects , . Ethernet , , , IRQ, / . : ether=irq,iobase[,param_1[,...param_8]],name . param_n ( ) /, , . , param_n , , DMA . . , , . : ether=0,0,eth1 , IRQ / . / param_n Ethernet-HowTo. . There are many floppy driver options, and they are all listed in Documentation/blockdev/floppy.rst. See that file for the details. . , . Documentation/sound/oss/README.OSS ( drivers/sound/Readme.linux ) Linux. : sound=device1[,device2[,device3...[,device10]]] N 0xTaaaId, : T -- : 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16, 7=SB16-MPU401 aaa -- / . I -- (. . 10=a, 11=b, ) d -- DMA. , , . <> . <> : lp=0 lp=auto lp=reset lp=port[,port...] , , . , , , (, PLIP, PPA). . , lp=none,parport0 lp1 lp0. , lp=0. klogd(8), mount(8) Documentation/admin-guide/kernel-parameters.txt. () Artyom Kunyov , Azamat Hackimov , Dmitriy Ovchinnikov , Dmitry Bolkhovskikh , ITriskTI , Yuri Kozlov ; GNU (GNU General Public License - GPL, 3 ) , - . - , , () () () . Linux man-pages 6.18 8 2026 . bootparam(7)