Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Użytkownik

Witam
Mam "mały" problem z konfiguracja Gruba 2. Otóż na komputerze mam zainstalowane dwa systemy - Debiana Sid i Windowsa 7. Jako że pozostali użytkownicy komputera używają siódemki konieczne jest aby to ona startowała jako pierwsza. Próbowałem ustawić kolejność botowania poprzez startupmanager, niestety mimo wybrania w programie Windowsa do uruchamiania, ururchamia się: Zawansowane opcje Debiana (czy jakoś tak). Edycji /etc/default/grub także próbowałem, poprzez zamienie cyfry 1 w linijce default na "Windows 7 (loader) on /dev/sda2", także próbowałem(uruchamia się Debian). Jak ustawić botowanie Windowsa jako pierwszego? Z góry dziękuje za wszelką udzieloną pomoc :D
Ostatnio edytowany przez greywolf (2013-08-16 11:48:56)
Offline







Kapelusznik








Po zmianach w /etc/default/grub trzeba wygenerować nowy konfig:
update-grub
Offline
Użytkownik

To wiem i było to robione :)
Offline







Kapelusznik








OK, wrzuć w takim razie zawartość plików /boot/grub/grub.cfg oraz /etc/default/grub na forum.
Offline
Użytkownik

/etc/default/grub:
# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT="Windows 7 (loader) on /dev/sda2" GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX=" vga=773" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entries #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start #GRUB_INIT_TUNE="480 440 1"
/boot/grub/grub.cfg
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="Windows 7 (loader) on /dev/sda2"
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 --hint='hd0,ms$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=1024x768
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=pl_PL
insmod gettext
fi
terminal_output gfxterm
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1dacdb79$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 --hint$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1dacdb79$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 --hint$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro vga=773 quiet
echo 'Wczytywanie początkowego dysku RAM...'
initrd /boot/initrd.img-3.10-1-amd64
}
submenu 'Opcje zaawansowane dla systemu Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-1dacdb79-cc20-47cc-a43f-f602ad229$
menuentry 'Debian GNU/Linux, za pomocą systemu Linux 3.10-1-amd64' --class debian --class gnu-linux --class gnu --class os $
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro vga=773 quiet
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro vga=773 quiet
echo 'Wczytywanie początkowego dysku RAM...'
initrd /boot/initrd.img-3.10-1-amd64
}
submenu 'Opcje zaawansowane dla systemu Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-1dacdb79-cc20-47cc-a43f-f602ad229$
menuentry 'Debian GNU/Linux, za pomocą systemu Linux 3.10-1-amd64' --class debian --class gnu-linux --class gnu --class os $
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro vga=773 quiet
echo 'Wczytywanie początkowego dysku RAM...'
initrd /boot/initrd.img-3.10-1-amd64
}
menuentry 'Debian GNU/Linux, za pomocą systemu Linux 3.10-1-amd64 (tryb ratunkowy)' --class debian --class gnu-linux --clas$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro single vga=773
echo 'Wczytywanie początkowego dysku RAM...'
initrd /boot/initrd.img-3.10-1-amd64
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (na /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-12BCFFBCBCFF9905' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint$
else
search --no-floppy --fs-uuid --set=root 12BCFFBCBCFF9905
fi
chainloader +1
}
menuentry 'Windows Recovery Environment (loader) (na /dev/sdb4)' --class windows --class os $menuentry_id_option 'osprober-chain-B4$
insmod part_msdos
insmod fat
set root='hd1,msdos4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos4 --hint-efi=hd1,msdos4 --hint-baremetal=ahci1,msdos4 B4FE-$
else
search --no-floppy --fs-uuid --set=root B4FE-5315
fi
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###Ostatnio edytowany przez greywolf (2013-08-03 17:25:09)
Offline







Kapelusznik








Wpis odpalający Windowsa to u Ciebie:
Windows 7 (loader) (na /dev/sda1)
Wstaw w /etc/default/grub zamiast tego co masz.
PS Ewentualnie można zmienić kolejność plików zawierających szablony do generowania grub.cfg tak żeby sekcja zawierająca Windowsa (os-prober) była przed sekcją Debiana. Albo w ogóle zamiast os-probera użyć dla Windowsa statycznego wpisu umieszczonego w pliku uwzględnianym przed standardowymi wpisami dla Debiana.
Offline
Użytkownik

hm i przy każdym nowym jądrze trzebaby to robić od nowa?
Offline







Kapelusznik








Wystarczy raz.
Offline
Użytkownik

Działa! Wielkie dzięki :D
Offline

Członek DUG


Dla porządku można też trzymać poszczególne wpisy w oddzielnych plikach w /etc/grub.d
Liczba w nazwie pliku będzie decydować o kolejności w menu:
Dla Windowsa: 06_windows
#!/bin/sh
cat<<EOF
menuentry 'Windows 7' --class windows --class os $menuentry_id_option 'osprober-chain-12BCFFBCBCFF9905' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint$
else
search --no-floppy --fs-uuid --set=root 12BCFFBCBCFF9905
fi
chainloader +1
}
EOFDla Debiana: 07_debian
#!/bin/sh
cat<<EOF
menuentry 'Debian' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1dacdb79$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 --hint$
else
search --no-floppy --fs-uuid --set=root 1dacdb79-cc20-47cc-a43f-f602ad229995
fi
echo 'Wczytywanie systemu Linux 3.10-1-amd64...'
linux /boot/vmlinuz-3.10-1-amd64 root=UUID=1dacdb79-cc20-47cc-a43f-f602ad229995 ro vga=773 quiet
echo 'Wczytywanie początkowego dysku RAM...'
initrd /boot/initrd.img-3.10-1-amd64
}
EOFTrzeba tylko nadać wykonywalność i update-grub. Jak po restarcie wszystko jest ok, można anulować wykonywalność plikom /etc/grub.d 10_linux i 30_os-prober żeby mieć porządek w menu.
Offline
Użytkownik

ech ale jestem spostrzegawczy :D a wystarczyłoby zajrzeć do grub.cfg i poczytać go, zaraz bym zobaczył ten błąd
@loop
Porządek w menu mi nie potrzebny, i tak na nie patrze właściwie, chociaż dobrze wiedzieć o takim czymś, może się kiedyś przydać.
Jeszcze raz chciałbym podziękować za sprawną i szybką pomoc. Mam nadzieje że zostane tu na dłużej.
Offline




Imperator





/etc/default/grub
GRUB_DEFAULT= x
w x wstawiasz liczbe. Chodzi o kolejny wpis menuentry w pliku /bott/grub/grub.cfg
Jeśli wpis windowsa jest 3 . Wstawiasz 2 Jeśli 4 wstawiasz 3
Po czym
update-grub2
U mnie uruchamia Pierwszy i jedyny wpis w grubie
[yampress@debian ~]$ cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""
[yampress@debian ~]$ cat /boot/grub/grub.cfg
...
...
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, za pomocą systemu Linux 3.9-1-amd64' --class debian --class gnu-linux --class gnu --class os {
...
...
Ostatnio edytowany przez Yampress (2013-08-04 12:58:59)
Offline





Szczawiożerca






@Yampress:
Przy aktualizacji jądra Twoje numerki diabli wezmą.
Offline



Członek DUG




yossarian dlaczego? Przecież jak się to zmienia w /etc/default/grub to przy generowaniu grub.cfg (update-grub, grub-mkconfig itd...) wszystko generuje się według tego pliku w /etc.. ?

Offline





Szczawiożerca






dominbik napisał(-a):
yossarian dlaczego? Przecież jak się to zmienia w /etc/default/grub to przy generowaniu grub.cfg (update-grub, grub-mkconfig itd...) wszystko generuje się według tego pliku w /etc.. ?
Bo zmieni się nr, pod którym jest Windows?
Offline



Członek DUG




A rozumiem. Wcześniej w Debianie zawsze zostawiałem tylko aktualny kernel to nie miałem z tym problemu a w Archu normalnie tak jest.

Offline




Imperator





yossarian napisał(-a):
@Yampress:
Przy aktualizacji jądra Twoje numerki diabli wezmą.
nie wezną. Ja nie proponowałem przestawianie miejsca windowsa w /boot/grub/grub.cfg
Jeśli się to zrobi to tak będzie jak mówisz. Jeśli nie to będzie ok. :P
Ostatnio edytowany przez Yampress (2013-08-05 15:44:22)
Offline
Strony: 1