#1 Le 04/11/2009, à 19:30
- Bullit84
Modifier le Grub sur Ubuntu 9.10
Salut à tous
Je viens d'installer Ubuntu 9.10, et j'ai voulus comme avec les versions précédentes en éditant le menu.lst en root. J'ai constaté que ce fichier n'y été plus. Je me suis dirigé vers la doc du Grub2 mais je ne comprends franchement quedal.
Je voudrais renommer les entrées et mettre Windows 7 en 1er
Quelq'un pourrait-il m'aider ?
Merci de vos réponses
Hors ligne
#2 Le 04/11/2009, à 19:56
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
Salut
Tu peux montrer le contenu du fichier /etc/grub.d/30_os-prober ?
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#3 Le 04/11/2009, à 20:11
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
voila le fichier
#! /bin/sh -e
# grub-mkconfig helper script.
# Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc.
#
# GRUB is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# GRUB is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GRUB. If not, see <http://www.gnu.org/licenses/>.
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
. ${libdir}/grub/grub-mkconfig_lib
found_other_os=
adjust_timeout () {
if [ "x${found_other_os}" = "x" ] ; then
if [ "x${GRUB_HIDDEN_TIMEOUT}" != "x" ] ; then
if [ "x${GRUB_HIDDEN_TIMEOUT_QUIET}" = "xtrue" ] ; then
verbose=
else
verbose=" --verbose"
fi
if [ "x${GRUB_HIDDEN_TIMEOUT}" = "x0" ] ; then
cat <<EOF
if [ \${timeout} != -1 ]; then
if keystatus; then
if keystatus --shift; then
set timeout=-1
else
set timeout=0
fi
else
if sleep$verbose --interruptible 3 ; then
set timeout=0
fi
fi
fi
EOF
else
cat << EOF
if [ \${timeout} != -1 ]; then
if sleep$verbose --interruptible ${GRUB_HIDDEN_TIMEOUT} ; then
set timeout=0
fi
fi
EOF
fi
fi
fi
}
if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then
adjust_timeout
exit 0
fi
if [ -z "`which os-prober 2> /dev/null`" -o -z "`which linux-boot-prober 2> /dev/null`" ] ; then
# missing os-prober and/or linux-boot-prober
adjust_timeout
exit 0
fi
OSPROBED="`os-prober | tr ' ' '^' | paste -s -d ' '`"
if [ -z "${OSPROBED}" ] ; then
# empty os-prober output, nothing doing
adjust_timeout
exit 0
fi
for OS in ${OSPROBED} ; do
DEVICE="`echo ${OS} | cut -d ':' -f 1`"
LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`"
LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`"
BOOT="`echo ${OS} | cut -d ':' -f 4`"
if [ -z "${LONGNAME}" ] ; then
LONGNAME="${LABEL}"
fi
echo "Found ${LONGNAME} on ${DEVICE}" >&2
found_other_os=1
case ${BOOT} in
chain)
cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" {
EOF
save_default_entry | sed -e "s/^/\t/"
prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
case ${LONGNAME} in
Windows\ Vista*|Windows\ 7*)
;;
*)
cat << EOF
drivemap -s (hd0) \${root}
EOF
;;
esac
cat <<EOF
chainloader +1
}
EOF
;;
linux)
LINUXPROBED="`linux-boot-prober ${DEVICE} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
for LINUX in ${LINUXPROBED} ; do
LROOT="`echo ${LINUX} | cut -d ':' -f 1`"
LBOOT="`echo ${LINUX} | cut -d ':' -f 2`"
LLABEL="`echo ${LINUX} | cut -d ':' -f 3 | tr '^' ' '`"
LKERNEL="`echo ${LINUX} | cut -d ':' -f 4`"
LINITRD="`echo ${LINUX} | cut -d ':' -f 5`"
LPARAMS="`echo ${LINUX} | cut -d ':' -f 6- | tr '^' ' '`"
if [ -z "${LLABEL}" ] ; then
LLABEL="${LONGNAME}"
fi
cat << EOF
menuentry "${LLABEL} (on ${DEVICE})" {
EOF
save_default_entry | sed -e "s/^/\t/"
prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
cat << EOF
linux ${LKERNEL} ${LPARAMS}
EOF
if [ -n "${LINITRD}" ] ; then
cat << EOF
initrd ${LINITRD}
EOF
fi
cat << EOF
}
EOF
done
;;
macosx)
OSXUUID="`grub-probe --target=fs_uuid --device ${DEVICE} 2> /dev/null`"
cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" {
EOF
save_default_entry | sed -e "s/^/\t/"
prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
cat << EOF
insmod vbe
do_resume=0
if [ /var/vm/sleepimage -nt10 / ]; then
if xnu_resume /var/vm/sleepimage; then
do_resume=1
fi
fi
if [ \$do_resume == 0 ]; then
xnu_uuid ${OSXUUID} uuid
if [ -f /Extra/DSDT.aml ]; then
acpi -e /Extra/DSDT.aml
fi
xnu_kernel /mach_kernel boot-uuid=\${uuid} rd=*uuid
if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then
xnu_mkext /System/Library/Extensions.mkext
else
xnu_kextdir /System/Library/Extensions
fi
if [ -f /Extra/Extensions.mkext ]; then
xnu_mkext /Extra/Extensions.mkext
fi
if [ -d /Extra/Extensions ]; then
xnu_kextdir /Extra/Extensions
fi
if [ -f /Extra/devtree.txt ]; then
xnu_devtree /Extra/devtree.txt
fi
if [ -f /Extra/splash.jpg ]; then
insmod jpeg
xnu_splash /Extra/splash.jpg
fi
if [ -f /Extra/splash.png ]; then
insmod png
xnu_splash /Extra/splash.png
fi
if [ -f /Extra/splash.tga ]; then
insmod tga
xnu_splash /Extra/splash.tga
fi
fi
}
EOF
;;
hurd|*)
echo " ${LONGNAME} is not yet supported by grub-mkconfig." >&2
;;
esac
done
adjust_timeout
Edit : utilisez les balises code, svp
Dernière modification par xabilon (Le 04/11/2009, à 20:28)
Hors ligne
#4 Le 04/11/2009, à 20:15
- yannpk
Re : Modifier le Grub sur Ubuntu 9.10
et si tu installes start up manager?
Hors ligne
#5 Le 04/11/2009, à 20:19
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
c'est à dire ?
Hors ligne
#6 Le 04/11/2009, à 20:19
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
start UpManager sur Windows ?
Hors ligne
#7 Le 04/11/2009, à 20:21
- yannpk
Re : Modifier le Grub sur Ubuntu 9.10
ben non dans les dépots ubuntu,ce qui te permet de modifier tes options de démarage.Ordre de démarrage des distri,couleur..
Hors ligne
#8 Le 04/11/2009, à 20:26
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
Je vais tester ca je te tiens au courant
Hors ligne
#9 Le 04/11/2009, à 20:27
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
Euh ... désolé, je me suis planté ...
Bon, pour l'ordre de présentation des entrées, il faut que 30_os-prober soit lancé avant 10_linux, donc il faut renommer 30_os-prober :
sudo mv /etc/grub.d/30_os-prober /etc/grub.d/09_os-prober
sudo update-grub
Pour changer le nom, je sais pas encore, je me documente. Pour l'instant tu peux le faire directement dans le fichier /boot/grub/grub.cfg (même si ce n'est pas recommandé).
Si tu remets grub à jour, le nom redeviendra comme avant
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#10 Le 04/11/2009, à 20:31
- yannpk
Re : Modifier le Grub sur Ubuntu 9.10
Je vais tester ca je te tiens au courant
Une fois installer tu vas dans système,administration,gestionnaire d'amorçage start up manager qui te proposera plusieurs options.
Hors ligne
#11 Le 04/11/2009, à 20:35
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
c'était franchement plus pratique le menu.lst
Hors ligne
#12 Le 04/11/2009, à 20:36
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
pas top startupmanager
Hors ligne
#13 Le 04/11/2009, à 20:37
- yannpk
Re : Modifier le Grub sur Ubuntu 9.10
il en faut pour tous les goût.
Hors ligne
#14 Le 04/11/2009, à 20:40
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
Merci pour ton début d'aide xabilon ça m'a mis les entrées dans l'ordre reste plus qu'a pouvoir les renommer
Hors ligne
#15 Le 04/11/2009, à 20:51
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
Grub2 n'est pas encore généralisé, et StartupManager ne prend pas en compte toutes les options de Grub2.
D'ici un certain temps, je pense que StartupManager sera mis à jour pour mieux s'occuper de Grub2.
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#16 Le 04/11/2009, à 20:52
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
ok merci si tu as du nouveau pour renommer les entrée n'hésite pas
Merci encore
Hors ligne
#17 Le 04/11/2009, à 21:22
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
En fait j'ai trouvé que 2 façons de changer le nom de l'entrée :
- Modifier directement le nom dans /boot/grub/grub.cfg
L'inconvénient c'est que à chaque fois qu'un update-grub sera fait (mannuellement, lors d'une mise à jour d'un noyau ou autre), le nom redeviendra comme avant.
- Désactiver la détection automatique de Windows, et faire ajouter une entrée pour Windows définie par l'utilisateur. L'inconvénients, c'est que si tu changes Windows de place, ou que tu installes d'autres Linux sur ton disque, ils ne seront pas détectés automatiquement.
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#18 Le 04/11/2009, à 21:36
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
Le problème c'est que je ne peux pas enregistrer mon grub.cfg après l'avoir modifier, il me dit que mon HDD est en lecture seul
Hors ligne
#19 Le 04/11/2009, à 21:53
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
Même si tu le modifies en root ?
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#20 Le 04/11/2009, à 21:55
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
oui ça m'étonne vu que c'est mon système de fichier
Hors ligne
#21 Le 04/11/2009, à 21:56
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
je peux modifier les autres fichiers mais pas celui la
Hors ligne
#22 Le 04/11/2009, à 21:57
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
Je crois avoir lu quelque chose sur la protection de grub.cfg ...
Bon, il reste la solution 2 ...
De toute façon, l'une ou l'autre, ce n'est pas "propre". Le mieux c'est de garder le nom actuel, et attendre voir si ça évolue.
Sinon, montre le contenu de /boot/grub.cfg et de /etc/default/grub, entre des balises code pour faciliter la lisibilité
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#23 Le 04/11/2009, à 22:01
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s /boot/grub/grubenv ]; then
have_grubenv=true
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
saved_entry=${prev_saved_entry}
save_env saved_entry
prev_saved_entry=
save_env prev_saved_entry
fi
insmod ext2
set root=(hd1,1)
search --no-floppy --fs-uuid --set e6b55acb-6460-4e4b-915b-7818ca1858c5
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=5
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/white
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/09_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" {
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set 384d001f4cffd59a
chainloader +1
}
### END /etc/grub.d/09_os-prober ###
### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-14-generic-pae" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd1,1)
search --no-floppy --fs-uuid --set e6b55acb-6460-4e4b-915b-7818ca1858c5
linux /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=e6b55acb-6460-4e4b-915b-7818ca1858c5 ro quiet splash
initrd /boot/initrd.img-2.6.31-14-generic-pae
}
menuentry "Ubuntu, Linux 2.6.31-14-generic-pae (recovery mode)" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd1,1)
search --no-floppy --fs-uuid --set e6b55acb-6460-4e4b-915b-7818ca1858c5
linux /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=e6b55acb-6460-4e4b-915b-7818ca1858c5 ro single
initrd /boot/initrd.img-2.6.31-14-generic-pae
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
/etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# 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 entrys
#GRUB_DISABLE_LINUX_RECOVERY="true"
Hors ligne
#24 Le 04/11/2009, à 22:15
- xabilon
Re : Modifier le Grub sur Ubuntu 9.10
D'accord
D'abord, on remet tout comme c'était :
sudo mv /etc/grub.d/09_os-prober /etc/grub.d/30_os-prober
Ensuite tu copies/colles le paragraphe pour Windows de grub.cfg, à la fin du script /etc/grub.d/40_custom, en mettant le nom que tu veux entre les guillemets, à la place de "Windows 7 (loader) (on /dev/sda1)"
40_custom ressemblera donc à ça :
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Le nom que tu veux mettre" {
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set 384d001f4cffd59a
chainloader +1
}
Tu sauves et tu quittes.
Ensuite on désactive os-prober dans /etc/default/grub, en ajoutant cette ligne :
GRUB_DISABLE_OS_PROBER=true
Puis on met 40_custom à la même place qu'était 09_os-prober, pour avoir Win en premier :
sudo mv /etc/grub.d/40_custom /etc/grub.d/09_custom
sudo update-grub
Puis tu vérifies /boot/grub/grub.cfg pour voir si tout est correct
Pour passer un sujet en résolu : modifiez le premier message et ajoutez [Résolu] au titre.
Hors ligne
#25 Le 04/11/2009, à 22:31
- Bullit84
Re : Modifier le Grub sur Ubuntu 9.10
oui ça a modifié le grub.cfg merci
et y aurait-il une méthode pour renommer aussi les entrées d'Ubuntu ?
A force tu va dire que je suis chiant
Hors ligne