[[HomePage]] > [[ComponentHowTo Components and HowTos]] > [[BootIndex Booting]] ====General kernel parameters==== ==ROOT== This is actually a parameter that is used by the kernel/init process before Puppy takes over, but you are likely to get strange error messages and a failed boot if your command line does not include the expected ##root=/dev/ram0## because Puppy normally loads into a ramdisk. ==INITRD== The initial ramdisk should always be ##initrd=image.gz## with Puppy Linux 1.//x// and ##initrd=initrd.gz## with Puppy 2.//x//. ==RAMDISK_SIZE== This may be needed by people who have remastered Puppy 1.//x//. The kernel is configured with a 12288KB maximum ramdisk, and image.gz once expanded has to fit into this. If bigger, the boot parameter "ramdisk_size=" has to be used to specify a suitable size to hold all of image.gz (uncompressed) plus some spare space. For example: ##ramdisk_size=15360## would result in a 15360KB maximum ramdisk. ==LOGLEVEL== This controls the amount of messages displayed while booting (log level). If you are having problems booting then increasing this could give you more info helpful for debugging/troubleshooting. Beginning with Puppy 2.11, ##loglevel=3## is used by default, which reduces the onboot display of messages to be limited to noncritical & critical errors. With Puppy 2.11 and later, the detailed boot messages are logged to /tmp/bootkernel.log, /initrd/tmp/bootinit.log, /tmp/sysinit.log. Detailed ongoing messages are logged to /tmp/xerrs.log (X) and /var/log/messages (kernel). Using ##loglevel=4## would show everything mentioned before and warning conditions that should be taken care of. Normally, without this parameter being specified, the log level would be set to 5, which would display everything mentioned before and normal but significant events. Recent versions of (Puppy 2.10 or later?) have the log level set to 3 in the kernel. Using ##loglevel=7## would show all the messages during boot including kernel debugging messages, and would be recommended to use for troubleshooting problems during booting. ==DEBUG/QUIET== Using ##debug## is the same as ##loglevel=7## & ##quiet## is the same as ##loglevel=4##. They would be used by themselves without a = and see the above loglevel section for more. ==ACPI== If this is omitted then Puppy Linux will automatically determine if [[http://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface ACPI]] is available. Now if the BIOS is dated 2000 or earlier for Puppy 1.//x// or 2001 or earlier for Puppy 2.//x// then ACPI won't be used. But if you are sure that your [[http://en.wikipedia.org/wiki/BIOS BIOS]] has ACPI support anyways then use ##acpi=force## to enable it. Now, also, using ACPI may cause problems with some computers, so you can outright disable it by using ##acpi=off##. But some other options would be to use ##acpi=noirq## to specify to not use ACPI for IRQ routing, add ##acpi=strict## option to be less tolerant of platforms that are not strictly ACPI specification compliant (i.e. disable platform workarounds), and ##acpi=ht## to run only enough ACPI to enable [[http://en.wikipedia.org/wiki/Hyper-threading Hyper-Threading]]. ==APM== If this is omitted then Puppy Linux will automatically determine if [[http://en.wikipedia.org/wiki/Advanced_Power_Management APM]] should be used if ACPI is not available. To enable/disable APM yourself, use ##apm=on## or ##apm=off##. ==IDE== Booting from some CompactFlash and other drives need this: ##ide=nodma## ==PCI== ##pci=noacpi## Do not use ACPI for IRQ routing or for PCI scanning. Doesn't disable as much as ##acpi=off## does so try this instead if ACPI is causing problems. ##pci=bios## Force the use of the [[http://en.wikipedia.org/wiki/Peripheral_Component_Interconnect PCI]] BIOS by not accessing the hardware directly. This means that the kernel should trust the BIOS, which is not the standard thing to do (as BIOSes are known to lie more often than they are known to be valid). Use this only if your machine has a nonstandard PCI host bridge and the normal boot method is not working properly. ##pci=nobios## Do not use the PCI BIOS, but access the hardware directly instead. This is the default method of probing for PCI devices in all kernels after 2.6.13 (which includes Puppy 2.//x//). ##pci=biosirq## Use PCI BIOS calls to get the interrupt routing table. These calls are known to be buggy on several machines and hang these machine when used, but on other machines they are the only way to get the interrupt routing table. Try this option if the kernel is unable to allocate [[http://en.wikipedia.org/wiki/Interrupt_request IRQs]] or discover secondary PCI buses on your motherboard. ==PNPBIOS== Set the main [[http://en.wikipedia.org/wiki/Plug-and-play Plug and Play (PnP)]] BIOS settings. ##pnpbios=on## enables the PnP BIOS subsystem. ##pnpbios=off## disables the PnP BIOS subsystem. ##pnpbios=curr## tells the PnP BIOS subsystem to use the current static settings and ##pnpbios=no-curr## tells the subsystem to probe for dynamic settings if possible. ==KBD-RESET== "Normally on i386 based machines, the Linux kernel does not reset the keyboard controller at boot, since the BIOS is supposed to do this. But as usual, not all machines do what they should. Supplying this option may help if you are having problems with your keyboard behaviour. It simply forces a reset at initialization time. (Some have argued that this should be the default behaviour anyways)." ==VGA== When the kernel is booted with boot-parameter ##vga=791## (for 1024x768 for example), the Puppy commandline (prior to starting X) is a VESA graphics mode, meaning that you get more lines on the screen and more characters per line. You also get a penguin logo while booting. If you use ##vga=ask## then it will prompt you with a list of various video modes that you can use. Then you can use the corresponding number in place of ask for the next boot. There are some additional arguments for [[http://www.tldp.org/HOWTO/BootPrompt-HOWTO-6.html SCSI peripherals]] and old [[http://www.tldp.org/HOWTO/BootPrompt-HOWTO-9.html CD-ROMs (Non-SCSI/ATAPI/IDE)]]. Also you can try ide1=0x180,0x386 or ide2=0x180,0x386 if your PCMCIA IDE CD-ROM is not being detected. ==Useful titbits of info== 48MB = 49152KB, 64MB=65536KB, 128MB=131072KB, 512MB=524288KB, 1GB=1048576KB - i.e. there are 1024 kilobytes (KB) in a megabyte (MB). Puppy v0.7.4 uses a 64MB ramdisk, v0.7.6 uses only 48MB, recent versions need 64-128MB. See [[http://web.archive.org/web/20061122041325/http://www.puppylinux.com/config-puppy.htm Barry's old notes on configuring Puppy]]. This page is suggested by http://www.murga.org/~puppy/viewtopic.php?p=8550#8550. See also from Barry, for newer puppies [[http://bkhome.org/blog/?viewDetailed=01813 Extended help at bootup]] See [[http://www.tldp.org/HOWTO/BootPrompt-HOWTO.html The Linux BootPrompt-HowTo]] for a detailed explanation of most of the Linux boot prompt arguments. The book, //[[http://www.kroah.com/lkn/ Linux Kernel in a Nutshell]]//, specifically Chapter 9: Kernel Boot Command-Line Parameter Reference, is freely available online and is very helpful for more on this subject, as well. For a more complete list, see the documentation in **kernel-parameters.txt** included with kernel source that you're Puppy is using. For example, [[http://fxr.watson.org/fxr/source/Documentation/kernel-parameters.txt?v=linux-2.4.22 kernel 2.4.22]] is similar to the version used with Puppy 1.//x// or the one included with [[http://fxr.watson.org/fxr/source/Documentation/kernel-parameters.txt?v=linux-2.6.11.8 kernel 2.6.11.8]] which would be similar for Puppy 2.//x//. [[http://www.wlug.org.nz/bootparam(7) bootparam]] - Introduction to boot time parameters of the Linux kernel ==Related Pages== [[BootLoaders]] [[InstallationFrugal]] [[TableOfBIOSKeys]] ---- ==Categories== [[CategoryInstallation]] [[CategoryCommandLine]]