bootparam(7) Miscellaneous Information Manual bootparam(7) JMENO bootparam - Uvod do parametru pro zavedeni jadra Linuxu POPIS Jadro operacniho systemu Linux akceptuje 'parametry na prikazove radce' neboli 'parametry pro zavedeni operacniho systemu' pri startu systemu. Obecne, takto lze jadru predat informace o hardware, ktere si jadro nemuze zjistit samo nebo aby se predeslo chybne detekci ze strany jadra. When the kernel is booted directly by the BIOS, you have no opportunity to specify any parameters. So, in order to take advantage of this possibility you have to use a boot loader that is able to pass parameters, such as GRUB. Seznam parametru The kernel command line is parsed into a list of strings (boot arguments) separated by spaces. Most of the boot arguments have the form: jmeno[=hodnota_1][,hodnota_2]...[,hodnota_10] kde 'jmeno' je jednoznacne klicove slovo, pouzite pro rozpoznani, pro kterou cast jadra se pripadne hodnoty (jsou-li uvedeny), pouziji. Povsimnete si, ze hodnota 10 je skutecnym limitem, protoze soucasny kod neumi zpracovat vice nez 10 hodnot oddelenych carkami pro jedno klicove slovo. (Ve zvlast slozitych pripadech vsak muzete pouzit totez klicove slovo s dalsimi parametry, pokud je to podporovano danou setup funkci ovladace.) 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. Dale pak prochazi seznamem setup funkci, kde kontroluje, zda zadany retezec (rekneme 'foo') je propojen s funkci ('foo_setup()') pro urcity ovladac ci cast jadra. Jestlize predate jadru radek foo=3,4,5,6 tak jadro prohleda pole bootsetups, aby zjistilo, zda je retezec registrovan. Jestlize ano, je zavolana funkce k 'foo' pridruzena (foo_setup()) a jsou ji predany parametry 3, 4, 5 a 6 tak, jak se objevily na prikazove radce. Cokoli ve tvaru 'foo=bar', co neni akceptovano jako parametr, se bude interpretovat jako promenna prostredi, ktera ma byt nastavena. Prikladem budiz pouziti 'TERM=vt100' jako zavadeci parametr. Any remaining arguments that were not picked up by the kernel and were not interpreted as environment variables are then passed onto PID 1, which is usually the init(1) program. The most common argument that is passed to the init process is the word 'single' which instructs it to boot the computer in single user mode, and not launch all the usual daemons. Check the manual page for the version of init(1) installed on your system to see what arguments it accepts. Obecne zavadeci parametry (nespojene s ovladaci) 'init=...' Nastavuje prikaz pro proces jedna, ktery bude spusten po natazeni jadra. Jestlize neni uvedeno (nebo jej nelze najit), jadro zkusi nejprve /sbin/init, potom /etc/init, pak /bin/init, potom /bin/sh a vyhlasi kernel panic, selze-li i posledni varianta. 'nfsaddrs=...' Nastavuje zavadeci adresu pro NFS na dany retezec. Je pouzita pri zavadeni ze site (net boot). 'nfsroot=...' Nastavuje jmeno NFS korenu na dany retezec. Jestlize retezec nezacina '/' nebo ',' nebo cislici, pak se pred nej pripise '/tftpboot/'. Toto jmeno se pouzije pri zavadeni ze site. 'root=...' Tento parametr rika jadru, ktere zarizeni ma byt pouzito jako korenovy souborovy system pro zavedeni systemu. Implicitne se tento parametr nastavuje v dobe prekladu jadra jako korenove zarizeni, na kterem je jadro prekladano. Na prekryti tohoto implicitniho nastaveni na druhou disketovou jednotku pouzijte 'root=/dev/fd1'. 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. Poznamenejme, ze tato jmena nemaji nic spolecneho se zarizenimi v adresari /dev; to je jen cira konvence. Komplikovanejsi a mene prenositelna specifikace korenoveho zarizeni sestava z cisel zarizeni major/minor. (Priklad: /dev/sda3 ma major 8, minor 3, takze 'root=0x803' je alternativni zapis.) 'rootdelay=' This parameter sets the delay (in seconds) to pause before attempting to mount the root filesystem. 'rootflags=...' This parameter sets the mount option string for the root filesystem (see also 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' a 'rw' Parametr 'ro' rika jadru, aby pripojilo korenovy souborovy system pouze pro cteni, takze muze probehnout kontrola konzistence souboroveho systemu (pomoci fsck). Zadny proces nemuze na tento souborovy system psat dokud neni 'pre-pripojen' i pro zapis, napriklad prikazem 'mount -w -n -o remount /'. (Viz take mount(8).) Parametr 'rw' rika jadru, aby pripojilo korenovy souborovy system pro cteni i zapis; toto je implicitni nastaveni. 'resume=...' This tells the kernel the location of the suspend-to-disk data that you want the machine to resume from after hibernation. Usually, it is the same as your swap partition or file. Example: resume=/dev/hda2 'reserve=...' Ochrana intervalu V/V adres pred testovanim. Parametry maji tvar: reserve=iobase,extent[,iobase,extent]... Na nekterych pocitacich je treba zakazat ovladacum pristup pri hledani zarizeni (auto-probing) do vybraneho intervalu adres. Tim lze obejit zarizeni, ktere spatne reaguje na automatickou detekci, nebo lze zabranit nespravne detekci ci identifikaci, nebo dosahnout napriklad zakazani pristupu na zarizeni, ktere nechceme jadrem inicializovat. Parametr reserve urcuje rozsah V/V adres, ktery nema byt prochazen pri hledani. Zadny ovladac nesmi na dane adresy pristupovat, ledaze by mu tak bylo explicitne receno jinym zavadecim parametrem. Napriklad parametry: reserve=0x300,32 bla=0x300 rikaji vsem ovladacum, aby, krome ovladace 'bla', vynechaly adresy od 0x300 do 0x31f. 'panic=N' Nastane-li kernel panic, system se implicitne nebude pokouset znovu startovat, nastavite-li vsak tento parametr, pak bude jadro znovu startovat po uplynuti N vterin (je-li N > 0). Toto lze nastavit take pomoci echo N > /proc/sys/kernel/panic 'reboot=[warm|cold][,[bios|hard]]' Od verze 2.0.22 je reboot implicitne studenym startem. Chcete-li pouzit starsi implicitni chovani, pouzijte 'reboot=warm'. (Studeny start muze byt vyzadovan pro reset nejakeho hardware, naproti tomu muze znicit jeste nezapsana data z vyrovnavaci pameti. Teply start muze byt rychlejsi.) Implicitne je reboot typu hard (radic klavesnice je pozadan o vygenerovani signalu RESET, nicmene existuje nejmene jeden motherboard, kde toto nefunguje. Pak je nutno pouzit variantu 'reboot=bios', ktera misto toho pozada BIOS o reboot. 'nosmp' a 'maxcpus=N' (Pouze je-li definovano __SMP__.) Parametr 'nosmp' ci 'maxcpus=0' zakaze podporu vice procesoru; parametr 'maxcpus=N' omezi pocet aktivnich procesoru na N. Parametry pro vyvojare jadra 'debug' Kernel messages are handed off to a daemon (e.g., klogd(8) or similar) so that they may be logged to disk. Messages with a priority above console_loglevel are also printed on the console. (For a discussion of log levels, see syslog(2).) By default, console_loglevel is set to log messages at levels higher than KERN_DEBUG. This boot argument will cause the kernel to also print messages logged at level KERN_DEBUG. The console loglevel can also be set on a booted system via the /proc/sys/kernel/printk file (described in syslog(2)), the syslog(2) SYSLOG_ACTION_CONSOLE_LEVEL operation, or dmesg(8). 'profile=N' Je mozno zapnout tzv. kernel profiling, jestlize chceme zjistit, kde jadro spotrebovava cas CPU. Profiling je zapnut nastavenim promenne prof_shift na nenulovou hodnotu. Toho lze dosahnout bud nastavenim CONFIG_PROFILE pri prekladu jadra nebo parametrem 'profile='. Povsimnete si, ze hodnota prof_shift bude budto zadana hodnota nebo hodnota promenne prostredi CONFIG_PROFILE_SHIFT (je-li nastavena) nebo implicitne 2. Vyznam teto hodnoty je presnost takoveho pocitani: kazdy takt (pokud je CPU aktivni v jadre) zvetsuje pocitadlo: profile[address >> prof_shift]++; Neupravenou informaci o profilingu lze za behu ziskat ctenim /proc/profile. Pro porozumeni teto informaci lze pouzit napriklad readprofile.c. Zapis do /proc/profile vynuluje pocitadla. Parametry pro vyuziti ramdisku (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.txt (Documentation/ramdisk.txt in older kernels). Jsou zde ctyri parametry, dve logicke hodnoty a dve cela cisla. 'load_ramdisk=N' Jestlize je N=1, nahraj ramdisk, jestlize N=0, nenahravej jej (toto je implicitni nastaveni). 'prompt_ramdisk=N' Pro N=1, jadro pozada o vlozeni diskety (implicitni nastaveni). Pro N=0 jadro o nic nezada. (tento parametr neni nikdy potreba) 'ramdisk_size=N' nebo (zastarale) 'ramdisk=N' Nastavi maximalni velikost ramdisku(u) na N kB. Implicitne 4096 (4 MB). 'ramdisk_start=N' Nastavi cislo pocatecniho bloku (offset na diskete odkud bude ramdisk nahravan) na N. Toto ma vyznam napriklad pokud tataz disketa obsahuje jak jadro tak ramdisk. 'noinitrd' (Pouze je-li jadro prelozeno s CONFIG_BLK_DEV_RAM a CONFIG_BLK_DEV_INITRD.) Nyni je mozno prelozit jadro s podporou initrd. Jestlize je tato varianta povolena, pri startu systemu se nahraje jak jadro tak inicialni ramdisk, ktery jadro pote zmeni na 'normalni' ramdisk pripojeny pro cteni i zapis jako korenovy svazek. Pote je je spusten program /linuxrc; nato je pripojen skutecny korenovy svazek a initrd je pripojeno jako /initrd; nakonec je aktivovana obvykla posloupnost zavadeni (tj. spusteni /sbin/init). For a detailed description of the initrd feature, see the kernel source file Documentation/admin-guide/initrd.rst (or Documentation/initrd.txt before Linux 4.10). Parametr 'noinitrd' zakazuje pouziti initrd i v pripade, ze jadro bylo prelozenou s podporou initrd. Data z initrd jsou pristupna pres /dev/initrd. (Toto zarizeni muze byt pouzito jen jednou: data jsou uvolnena z pameti, jakmile posledni proces uzavre /dev/initrd.) Zavadeci parametry pro zarizeni SCSI Notace pouzita v teto sekci: iobase -- prvni V/V port pouzity SCSI adapterem. Jsou uvadeny v sestnactkove soustave, obvykle lezi v intervalu od 0x200 do 0x3ff. irq -- cislo preruseni, ktera je nastaveno pri konfiguraci karty. Spravne hodnoty zavisi na typu karty, obvykle se jedna o jednu z hodnot 5, 7, 9, 10, 11, 12 a 15. Ostatni hodnoty jsou pouzity jinymi obvyklymi zarizenimi jako IDE disky, diskety, seriove porty aj. scsi-id -- ID, kterym se SCSI zarizeni jednoznacne identifikuje v ramci jedne SCSI sbernice. Pouze nektere karty povoluji tuto hodnotu nastavit, ostatni ji maji permanentne nastavenou bez moznosti zmeny. Obvykla hodnota je 7, ale napriklad karty Seagate and Future Domain TMC-950 pouzivaji 6. parity -- zda SCSI adapter ocekava, ze pripojena zarizeni pouzivaji paritu pri komunikaci. Nastaveni parametru na jedna kontrolu parity povoli, nula ji zakaze. Opet, ne vsechny adaptery povoluji toto nastavit jako parametr. 'max_scsi_luns=...' 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. Nektera spatne navrzena SCSI zarizeni nejsou schopna pracovat jako jednotky s nenulovym LUN. Jestlize neni pri prekladu jadra nastaveno CONFIG_SCSI_MULTI_LUN, pak bude jadro pri startu testovat pouze LUN=0. Pomoci parametru 'max_scsi_luns=n' lze pri startu nastavit, kolik LUN se ma testovat. Povolene hodnoty jsou od jedne do osmi. Hodnota n=1 zakazuje zkouset jine LUN nez 0. Nastaveni SCSI pasky Nektere parametry pro SCSI paskovy ovladac lze zadat nasledovne: st=buf_size[,write_threshold[,max_bufs]] Prvni dve cisla jsou hodnoty v kB. Implicitni hodnota buf_size je 32 kB, pricemz maximalni hodnota, kterou lze zadat je az 16384 kB. write_threshold je prahova hodnota obsazeni vyrovnavaci pameti pro provedeni zapisu na pasku, implicitne je nastavena na 30 kB. Hodnota max_bufs urcuje nejvetsi povoleny pocet vyrovnavacich pameti pro dane zarizeni (implicitni hodnota je dve). Priklad: st=32,30,2 Podrobnosti jsou uvedeny v souboru Documentation/scsi/st.txt (nebo v pripade starsich jader drivers/scsi/README.st) ve zdrojovem kodu jadra. Pevne disky Parametry pro IDE Disky/CD-ROM Ovladac IDE akceptuje radu parametru, od geometrie disku az po obchazeni chyb specifickych zarizeni. Specificke parametry jsou zadany pomoci 'hdX=' kde X je v intervalu 'a'-'h'. Parametry spolecne nekolika zarizenim maji prefix 'hd='. Kombinace obou zpusobu zadavani funguje podle ocekavani. 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. See the file Documentation/ide/ide.txt (or Documentation/ide.txt in older kernels, or drivers/block/README.ide in ancient kernels) in the Linux kernel source for more details. Parametry 'hd=cyls,heads,sects[,wpcom[,irq]]' Specifikace fyzicke geometrie disku. Pouze prvni tri parametry jsou povinne. Stopa/hlava/sektory jsou ty, ktere pouziva program fdisk. Hodnota wcomp (predkompenzace pro zapis) se pro IDE disky nevyuziva. IRQ je hodnota preruseni pro ovladac, na nejz je zarizeni pripojeno. (Toto neni parametr specificky pro disk.) Parametr 'hd=serialize' Dvojite IDE rozhrani CMD-640 obsahuje chybu, ktera muze za urcitych okolnosti (na obe rozhrani se pouzivaji v tutez chvili) muze znicit vase data. Tento parametr rika, ze pozadavky na obe rozhrani se budou radit do fronty, a tedy nikdy nebudou oslovena najednou obe rozhrani. Parametr 'hd=noprobe' Netestuj dane zarizeni. Napr. hdb=noprobe hdb=1166,7,17 zakaze testovani, ale nastavi geometrii, a tak je toto zarizeni stane pouzitelne pro operacni system. Parametr 'hd=nowerr' Nektera zarizeni maji chybne stale nastaveny priznak WRERR_STAT. Tento parametr povoluje obejiti teto chyby. Parametr 'hd=cdrom' Tento parametr rika, ze namisto disku je pripojena ATAPI CD-ROM. Obvykle je CD-ROM detekovana a rozpoznana automaticky, ale v pripade ze se tak nestalo, toto je mozna pomoc. Standardni parametry pro ST-506 Disk Driver ('hd=') Standardni ovladac akceptuje geometrii podobne jako IDE driver; ocekava vsak presne tri hodnoty (Stopa/Hlava/Sektory), v pripade jineho poctu vas potichu ignoruje. Navic rozumi pouze 'hd=' jako parametru, tedy 'hda=' neni povoleny zapis. Format: hd=cyls,heads,sects Jestlize mate instalovany dva disky, opakujte parametry pro druhy disk. Ethernet Ruzne ovladace maji ruzne parametry, ale obecne maji vsechny IRQ, V/V adresu a jmeno. Takze zakladni forma parametru je: ether=irq,iobase[,param_1[,...param_8]],name Prvni neciselny parametr je chapan jako jmeno. Hodnoty param_n (jsou-li pouzity) maji ruzny vyznam pro ruzne adaptery. Typicky urcuji adresu sdilene pameti, vyber rozhrani, kanal DMA aj. Obvykle se pouziva tento parametr pro autoprobe druhe sitove karty (implicitne se hleda jen prvni): ether=0,0,eth1 Poznamenejme, ze hodnoty 0 pro IRQ a iobase nuti ovladace k autodetekci. The Ethernet-HowTo has extensive documentation on using multiple cards and on the card/driver-specific implementation of the param_n values where used. Interested readers should refer to the section in that document on their particular card. Ovladac pro radic disketove jednotky There are many floppy driver options, and they are all listed in Documentation/blockdev/floppy.txt (or Documentation/floppy.txt in older kernels, or drivers/block/README.fd for ancient kernels) in the Linux kernel source. See that file for the details. Ovladac zvukovych karet The sound driver can also accept boot arguments to override the compiled-in values. This is not recommended, as it is rather complex. It is described in the Linux kernel source file Documentation/sound/oss/README.OSS (drivers/sound/Readme.linux in older kernel versions). It accepts a boot argument of the form: sound=device1[,device2[,device3...[,device10]]] where each deviceN value is of the following format 0xTaaaId and the bytes are used as follows: T - typ zarizeni: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16, 7=SB16-MPU401 aaa - V/V adresa (sestnactkove). I - IRQ sestnactkove (tj. 10=a, 11=b, ...) d - kanal DMA. Jak vidite, je to pomerne zmatecne, takze lepsi prelozit jadro s konkretnimi hodnotami. Parametr ve tvaru 'sound=0' zakaze pouziti zvukove karty. Ovladac tiskarny 'lp=' Syntaxe: lp=0 lp=auto lp=reset lp=port[,port...] Muzete rict ovladaci tiskarny, ktere porty ma pouzivat a ktere ne. Druha moznost se hodi, pokud nechcete, aby ovladac tiskarny zabral vsechny dostupne paralelni porty, takze je mohou vyuzivat jine ovladace (napr. PLIP, PPA). Format parametru je vicero jmen portu. Napriklad lp=none,parport0 pouzije prvni paralelni port pro lp1 a zakaze lp0. Pro uplny zakaz ovladace tiskarny je mozno pouzit lp=0. DALSI INFORMACE klogd(8), mount(8) For up-to-date information, see the kernel source file Documentation/admin-guide/kernel-parameters.txt. PREKLAD Preklad teto prirucky do spanelstiny vytvorili Jiri Pavlovsky a Pavel Heimlich Tento preklad je bezplatna dokumentace; Prectete si GNU General Public License Version 3 nebo novejsi ohledne podminek autorskych prav. Neexistuje ZADNA ODPOVEDNOST. Pokud narazite na nejake chyby v prekladu teto prirucky, poslete e-mail na adresu . Linux man-pages 6.06 31. rijna 2023 bootparam(7)