Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: Milhouse 15 Ledna 2009, 14:32:16
-
V souboru /boot/grub/menu.lst používám parametry jádra acpi=force a vga=773, která jsou ovšem úspěšně ignorována. Avšak pokud jsou napsána přímo za kernelem, fungují.
Přitom smazané splash a přidané init=/sbin/bootchartd neignoruje.
## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet acpi=force init=/sbin/bootchartd vga=773
Setkal se někdo s podobnou nefunkčností?
-
Omlouvám se, pokud jsem mimo, ale v příspěvku to nepíšeš: chceš tím říct, že po sudo update-grub se všechny ty 4 parametry, co tam máš, objeví i v těch neokomentovaných částech menu.lst, ale fungují jen dva z nich?
-
Takže "init=/sbin/bootchartd" můžeme vynechat, Bootchart funguje i bez toho.
Parametry "acpi=force" a "vga=773" Grub stále vesele ignoruje. Zajímavé je, že "quiet" akceptuje.
arrange:
Pokud ty parametry napíšu na konec řádku, jak se to dělalo dřív, je vše ok a Grub je akceptuje. Příkaz "update-grub" pokud vím, není třeba.
title Ubuntu 8.10
uuid 0d258e45-ddbd-43dd-81ad-68cf126ff1b1
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro acpi=force
initrd /boot/initrd.img-2.6.27-9-generic
quiet
Když na to tak teď koukám, "quiet" je i přímo v těchto řádcích, takže je asi ignorován i v části "#defoptions"...
-
Bug nepotvrdím, nemám kde momentálně testnout (všechno co můžu restartovat jsou jen xenové virtuály...)
Jasně bootchart je volán z initrd (scripts/init-top/bootchart)
Jestli máte chuť si hrát - rozbalte si initrd a prozkoumejte ho jestli náhodou někde nezapomíná/nepřepisuje parametry předávané dál.
Já mám na tenhle víkend jinou hračku ;)
-
Já mám na víkend už tolik hraček, že stejně žádnou nestihnu. Hlavně, když ta největší dorazí odpoledne busem. ;)
Pochybuju, že bych z "initrd" cokoliv vyčetl, ale stejně mi nejde ani rozbalit. Chyba "dev null".
Nebo:
$ 7z /boot/initrd.img-2.6.27-9-generic
-
Já mám na víkend už tolik hraček, že stejně žádnou nestihnu. Hlavně, když ta největší dorazí odpoledne busem. ;)
Pochybuju, že bych z "initrd" cokoliv vyčetl, ale stejně mi nejde ani rozbalit. Chyba "dev null".
Nebo:
$ 7z /boot/initrd.img-2.6.27-9-generic
ad.1) !google "extract initrd"
ad.2) uka celej menu.lst i s parametrama, jak jsou zapsane v defopts a tak jak to nefunguje ..
-
NTZ: defopts je o kus výše, ale když jinak nedáš. :)
# menu.lst - See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-doc/.
## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default 0
## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 12
## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
#hiddenmenu
# Pretty colours
color cyan/blue white/blue
## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command 'lock'
# e.g. password topsecret
# password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret
#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#
#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST
title Microsoft Windows XP Professional
root (hd0,0)
savedefault
makeactive
chainloader +1
### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below
## DO NOT UNCOMMENT THEM, Just edit them to your needs
## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
## default grub root device
## e.g. groot=(hd0,0)
# groot=0d258e45-ddbd-43dd-81ad-68cf126ff1b1
## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=true
## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
## lockalternative=false
# lockalternative=false
## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet acpi=force
## should update-grub lock old automagic boot options
## e.g. lockold=false
## lockold=true
# lockold=false
## Xen hypervisor options to use with the default Xen boot option
# xenhopt=
## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0
## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
## altoptions=(recovery) single
# altoptions=(recovery mode) single
## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
## howmany=7
# howmany=all
## should update-grub create memtest86 boot option
## e.g. memtest86=true
## memtest86=false
# memtest86=false
## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false
## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false
## ## End Default Options ##
title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid 0d258e45-ddbd-43dd-81ad-68cf126ff1b1
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
initrd /boot/initrd.img-2.6.27-9-generic
quiet
title
uuid 0d258e45-ddbd-43dd-81ad-68cf126ff1b1
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro single
initrd /boot/initrd.img-2.6.27-9-generic
### END DEBIAN AUTOMAGIC KERNELS LIST
# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
#title Microsoft Windows XP Professional
#root (hd0,0)
#savedefault
#makeactive
#chainloader +1
-
## OMG milhausi? co to dat bez tech komentaru?
cat /boot/grub/menu.lst | egrep -v '^#|^$'
## ukaz v tom pripade oboje is deftops !!
-
No, např. to acpi=force máš v defoptions
# defoptions=quiet acpi=force
ale nemáš je přímo v tom řádku s kernelem kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
což by mohlo znamenat, že by se Ti sudo update-grub mohl hodit... Ten automaticky ty options zkopíruje do těch řádků v kernelu. Jak jinak má grub poznat, jaké parametry při bootování tam chceš?
-
NTZ: Je fakt, že má anglina je nedostatečná, ale zkoušel jsem to i bez komentářů se stejným výsledkem.
Jinak protoč: "## DO NOT UNCOMMENT THEM, Just edit them to your needs"
arrange: Měl jsem za to, že ty parametry z toho řádku použije jako volby z kernelu. Né že si je zkopíruje na řádek s kernelem, to umím taky. Možná máš ale pravdu, při generování kernelu při upgrade, si je tam sám dosadí, jinak bych to musel dělat ručně.
Ale "sudo update-grub" po tvém upozornění jsem provedl se stejným výsledkem. Ovšem raději to v pondělí ještě jednou prověřím!
Potom ale nechápu, proč v odstavci s "defoptions" není stejné upozornění, jako v jiných, např.: "## should update-grub create memtest86 boot option"
Zatím díky.
-
...
všechno mezi
### BEGIN AUTOMAGIC KERNELS LIST
...
### END DEBIAN AUTOMAGIC KERNELS LIST
je zpracováváno pomocí update-grub, přičemž všechno mezi
## ## Start Default Options ##
...
## ## End Default Options ##
jsou parametry pro update-grub, a je to zakomentované proto, aby se to nesnažil parsovat grub a neházel případné errory
jinak ntz asi myslel aby jsi sem dával jen řádky, které nejsou zakomentované/prázdné
-
Zkusil jsem to prověřit
arrange@arrange-desktop:/boot/grub$ sudo -i
[sudo] password for arrange:
root@arrange-desktop:~# cd /boot/grub/
root@arrange-desktop:/boot/grub# cp menu.lst menu.lst2 #záloha menu.lst
root@arrange-desktop:/boot/grub# diff menu.lst menu.lst2 #žádný rozdíl
root@arrange-desktop:/boot/grub# grep defoptions menu.lst #co máme v defoptions teď?
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions= #pomocí sed do defoptions přidáme =acpi=force
root@arrange-desktop:/boot/grub# sed -i 's:\#\ defoptions\=:\#\ defoptions\=acpi\=force:g' menu.lst
root@arrange-desktop:/boot/grub# diff menu.lst menu.lst2 #kontrola - změna provedena
85c85
< # defoptions=acpi=force
---
> # defoptions=
root@arrange-desktop:/boot/grub# grep defoptions menu.lst #kontrola 2
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=acpi=force
root@arrange-desktop:/boot/grub# grep vmlinuz menu.lst #v kernelech jsou teď jen parametry ro
# kernel /vmlinuz root=/dev/hda2 ro
kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro
kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro single
kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro
kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro single
root@arrange-desktop:/boot/grub# update-grub #jdeme na to
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.27-10-generic
Found kernel: /boot/vmlinuz-2.6.27-8-generic
Found kernel: /boot/memtest86+.bin
Replacing config file /var/run/grub/menu.lst with new version
Updating /boot/grub/menu.lst ... done
root@arrange-desktop:/boot/grub# diff menu.lst menu.lst2 #změnilo se něco?
85c85
< # defoptions=acpi=force
---
> # defoptions=
128c128
< kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro acpi=force
---
> kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro
139c139
< kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro acpi=force
---
> kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro
root@arrange-desktop:/boot/grub# grep vmlinuz menu.lst #v kernelech je navíc parametr acpi=force, hurá, kontrola2
# kernel /vmlinuz root=/dev/hda2 ro
kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro acpi=force
kernel /boot/vmlinuz-2.6.27-10-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro single
kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro acpi=force
kernel /boot/vmlinuz-2.6.27-8-generic root=UUID=ed7fc63f-c720-43e2-8589-9cd42e8271b5 ro single
root@arrange-desktop:/boot/grub# No a pak už Ti to musí fungovat, protožePokud ty parametry napíšu na konec řádku, jak se to dělalo dřív, je vše ok a Grub je akceptuje.
-
arrange: Krása, hezky a elegantně jsi to napsal.
V práci to vyzkouším, jsem teda zvědav.
-
Takže jsem se to pokusil udělat stejně:
pavel@m10PC001:~$ sudo -i
[sudo] password for pavel:
root@m10PC001:~#
root@m10PC001:~# cd /boot/grub/
root@m10PC001:/boot/grub#
root@m10PC001:/boot/grub# cp menu.lst menu.lst2
root@m10PC001:/boot/grub# diff menu.lst menu.lst2
root@m10PC001:/boot/grub# grep defoptions menu.lst
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions= quiet
root@m10PC001:/boot/grub# sed -i 's:\#\ defoptions\=:\#\ defoptions\=acpi\=force:g' menu.lst
root@m10PC001:/boot/grub# diff menu.lst menu.lst2
91c91
< # defoptions=acpi=force quiet
---
> # defoptions= quiet
root@m10PC001:/boot/grub# grep defoptions menu.lst
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=acpi=force quiet
root@m10PC001:/boot/grub# grep vmlinuz menu.lst
# kernel /vmlinuz root=/dev/hda2 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro single
------------------------------------------ 1. pokus ---------------------------------------------
root@m10PC001:/boot/grub# update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.27-9-generic
Updating /boot/grub/menu.lst ... done
Instalátor se mě ptal, jakou verzi souboru chci nainstalovat. Ponechal jsem "lokální instalovanou verzi menu.lst". Měl jsem asi dát verzi z balíku.
root@m10PC001:/boot/grub# diff menu.lst menu.lst2
91c91
< # defoptions=acpi=force quiet
---
> # defoptions= quiet
root@m10PC001:/boot/grub# grep vmlinuz menu.lst
# kernel /vmlinuz root=/dev/hda2 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro single
------------------------------------------ 2. pokus ---------------------------------------
root@m10PC001:/boot/grub# update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.27-9-generic
Updating /boot/grub/menu.lst ... done
Instalátor se již neptal, a změny se neprovedli:
root@m10PC001:/boot/grub# grep vmlinuz menu.lst
# kernel /vmlinuz root=/dev/hda2 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=0d258e45-ddbd-43dd-81ad-68cf126ff1b1 ro single
Prozatimní výsledek:
Měl jsem asi dát verzi menu.lst z balíku. Ale je stejně divné, že se změny neprovedli...
Co dál?
-
Tak to přece jenom vypadá na ten bug ... (https://bugs.launchpad.net/ubuntu/+source/grub/+bug/202009).
Můžeš zkusit přejmenovat menu.lst a spustit update-grub znovu, nebo úplně přeinstalovat grub (http://ubuntuforums.org/showthread.php?t=1003779). Nejbezpečnější ale asi bude editovat to menu ručně.
Zdá se, že když dáš v těch možnostech lokální verzi, menu.lst se už neupdatuje, a nenašel jsem jinou možnost jak to zvrátit zpátky než ten reinstall :(
-
Fajn, alespoň, že jsem nekecal. :)
Má anglina není nicmoc, takže to k tomu bugu nebudu připisovat. Opsat do toho řádku mi to nedělá problémy a vrtat do grubu nemám náladu. Takže to nechám být.
Byla tedy chyba ponechat "lokální verzi"? Měl jsem dát tu " z balíku"? Tím bych ale přišel o změny právě v tom "# defoptions", že?
Jinka díky za trpělivost. ;)
-
Podle toho, co vím, tak o ty volby v defoptions bys neměl přijít, jestli si dobře pamatuju, tak při upgradu na 8.10 se mě grub taky ptal, co chci dělat s menu.lst a volil jsem "nahradit", ale mé původní volby zůstaly. Nevím ale, jak to teď ověřit.
Teď si ale dávej pozor, aby se Ti nestalo, že při upgradu kernelu se Ti ten nový nezapíše do grubu (viz ten bug)! Asi ho tam budeš muset dát ručně.
-
Ano dám si pozor, i když se nic nestane, když se to neudělá. A ručně editovat jde i při startu. ;)
Díky, Milhouse. [vyřešeno]