Pagina 3 di 4
Re: blocco all'avvio
Inviato: domenica 28 marzo 2010, 22:41
da educatore
Codice: Seleziona tutto
[quote="redrobin"]
È proprio quello che non mi convince. Proviamoci! Fai prima un backup del file [code]/etc/grub.d/30_os-prober
; poi lo modifichi e scrivi
Codice: Seleziona tutto
menuentry "Microsoft Windows XP *** Edition (on /dev/sda1)" {
set root=(hd0,1)
chainloader +1
}
In alternativa la stessa cosa si potrebbe fare nel file /etc/grub.d/40_custom.
In ogni caso poi bisogna dare [code]sudo update-grub
Scusa redrobin, ma con me ci vuole pazienza ::),
Faccio un backup del file
Ok. E poi lo modifico
Cancello il testo e ci metto quello postato da te? Oppure aggiungo a piè di lista? Oppure sostituisco qualcosa? ???[/code][/code]
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 9:18
da redrobin
Se hai fatto il backup, sostituisci il contenuto del file con quello che ho scritto io. Magari dimmi cosa c'è scritto attualmente in quel file.
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 9:27
da educatore
Codice: Seleziona tutto
Il contenuto di 30_os-prober è questo
[code]#! /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
if [ "${LROOT}" != "${LBOOT}" ]; then
LKERNEL="${LKERNEL#/boot}"
LINITRD="${LINITRD#/boot}"
fi
cat << EOF
menuentry "${LLABEL} (on ${DEVICE})" {
EOF
save_default_entry | sed -e "s/^/\t/"
prepare_grub_to_access_device ${LBOOT} | 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
E io l'ho sostituito con questo:
Codice: Seleziona tutto
menuentry "Microsoft Windows XP *** Edition (on /dev/sda1)" {
set root=(hd0,1)
chainloader +1
}
[/code]
Quando faccio update-grub, però, mi esce questa cosa:
Codice: Seleziona tutto
root@educatore-laptop:/home/educatore# sudo gedit /etc/grub.d/30_os-prober
root@educatore-laptop:/home/educatore# sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-20-generic
Found initrd image: /boot/initrd.img-2.6.31-20-generic
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
/etc/grub.d/30_os-prober: 1: menuentry: not found
/etc/grub.d/30_os-prober: 2: Syntax error: "(" unexpected
Ho provato a riavviare, ma niente da fare. >:( navigando un pò qua e là ho visto che il mio problema ce l'hanno anche altri. La cosa, da quello che ho potuto capire, dipende proprio dalle novità introdotte dal Grub2. Ovviamente, alle novità, si è aggiunta la mia incompetenza e chissà quali pasticci avrò combinato. Potreste indicarmi qualche link che introduce alla conoscenza di Grub2?
Sono sicuro, comunque, che con l'aiuto di redrobin, patel e chiunque vorrà darmi una mano, riuscirò a tornare al dual boot Ubuntu - XP.
Attendo fiducioso. (good)Grazie
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 9:38
da patel
io utilizzerei l'alternativa
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 10:37
da educatore
patel ha scritto:
io utilizzerei l'alternativa
Ciao patel, buongiorno (good). Quindi tu dici che è meglio tentare con
. Va bene ci provo. Sostituisco il contenuto del file con quello che ha scritto redrobin. (good).
Con
modificato cosa faccio? Ritorno al vecchio file o lo cancello? E se c'è necessità di cancellarlo, come si cancella?
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 12:31
da patel
se ormai lo hai modificato provalo così, dai il sudo update-grub e vedi che succede
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 12:32
da redrobin
Il 30_os-prober rimettilo come prima allora.
Modifica il 40_custom.
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 12:47
da educatore
Grazie ragazzi, sto scrivendo da un negozio mediaworld, con un computer della mela. E' proprio vero! La tecnologia è ormai sempre con noi

. Appena torno a casa provo come dice redrobin. Il tentativo consigliato da patel l'ho già provato. Allora, rimetto il vecchio 30_os-prober e cambio solo il 40_custom mettendo il testo di redrobin. Ok provo e posto (b2b) grazie
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 12:57
da patel
le due cose sono equivalenti per quanto riguarda l'avvio di win, servono solamente a visualizzare la voce di win nel menù di avvio, non risolvono i problemi di win (se ci sono)
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 14:25
da GiovEdi
educatore ha scritto:
...
GRUB.CFG
Codice: Seleziona tutto
#
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
...
ciao educatore
ti stanno già aiutando a risolvere il tuo problema
io avrei bisogno di sapere se quello che hai postato sopra è stato copiato bene
ti spiego:
manca un rigo
fondamentale
vorrei appunto capire se manca perché non lo hai copiato bene oppure se manca perché c'è un bug da qualche parte in xubuntu
puoi confermare per favore il contenuto del file /boot/grub/grub.cfg ?
grazie in anticipo
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 14:48
da educatore
Ciao GiovEdi, mi spiace perchè non riesco a capire bene la tua domanda, però ti posto il GRUB.CFG per intero. Così avrai tutti gli elementi che ti occorrono. Poi fammi sapere qual'è il rigo che manca:
Codice: Seleziona tutto
#
# 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=(hd0,6)
search --no-floppy --fs-uuid --set 0271bb41-82d3-4aef-97c5-86231ac42dd9
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=10
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/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-20-generic" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 0271bb41-82d3-4aef-97c5-86231ac42dd9
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=0271bb41-82d3-4aef-97c5-86231ac42dd9 ro quiet splash
initrd /boot/initrd.img-2.6.31-20-generic
}
menuentry "Ubuntu, Linux 2.6.31-20-generic (recovery mode)" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 0271bb41-82d3-4aef-97c5-86231ac42dd9
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=0271bb41-82d3-4aef-97c5-86231ac42dd9 ro single
initrd /boot/initrd.img-2.6.31-20-generic
}
menuentry "Ubuntu, Linux 2.6.31-14-generic" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 0271bb41-82d3-4aef-97c5-86231ac42dd9
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=0271bb41-82d3-4aef-97c5-86231ac42dd9 ro quiet splash
initrd /boot/initrd.img-2.6.31-14-generic
}
menuentry "Ubuntu, Linux 2.6.31-14-generic (recovery mode)" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,6)
search --no-floppy --fs-uuid --set 0271bb41-82d3-4aef-97c5-86231ac42dd9
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=0271bb41-82d3-4aef-97c5-86231ac42dd9 ro single
initrd /boot/initrd.img-2.6.31-14-generic
}
### 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/30_os-prober ###
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### 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 ###
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 15:01
da educatore
patel ha scritto:
le due cose sono equivalenti per quanto riguarda l'avvio di win, servono solamente a visualizzare la voce di win nel menù di avvio, non risolvono i problemi di win (se ci sono)
ubuntu.
Ciao patel, in effetti la voce di windows nel menù d'avvio esiste. Allora, secondo te, XP ha problemi. Anche questo è vero, perchè le altre volte per farlo ripartire ho fatto fixmbr e fixboot dalla consolle di ripristino. Poi ho utilizzato il wiki per grub2 da te consigliato, ma riparte solo Xubuntu. A questo punto credo di aver fatto errori nell'applicare le istruzioni del wiki da te consigliato.
Adesso ci riprovo. Prima o poi la spunto!

Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 15:58
da educatore
Niente da fare >:(
Dopo aver fatto fixmbr e fixboot di Xp che funziona, ho messo il cdlive di Xubuntu 9.10, la situazione dellHD è questa
Codice: Seleziona tutto
Dispositivo Boot Start End Blocks Id System
/dev/sda1 * 1 2789 22394610 c W95 FAT32 (LBA)
/dev/sda3 2790 4574 14338012+ f W95 Esteso (LBA)
/dev/sda5 4479 4574 771088+ 82 Linux swap / Solaris
/dev/sda6 2790 4478 13566829+ 83 Linux
Sono andato in
http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/Ripristino
poi ho dato questi comandi:
Codice: Seleziona tutto
sudo mount /dev/sda6 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
mount /dev/sda6 /boot
grub-install /dev/sda
update-grub
rub-install --recheck /dev/sda
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
Dove ho sbagliato? ???

Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 17:26
da GiovEdi
educatore ha scritto:
sudo mount /dev/sda6 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
mount /dev/sda6 /boot
grub-install /dev/sda
update-grub
grub-install --recheck /dev/sda
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
Dove ho sbagliato? ???
se non hai la partizione di /boot separata, il comando in grassetto è sbagliato
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 18:06
da educatore
Ciao GiovEdi, grazie per l'aiuto. Scusami, però non ho molta pratica di linux e non so cosa è la partizione di /boot separata ???. L'ultima volta che ho installato xubuntu 9.10 l'ho fatto con l'opzione manuale dallo slash /. Allora pensavo che si trattasse di una partizione di /boot separata. Ma forse non è così? Allora riprovo senza partizione. Che dici?
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 20:07
da educatore
GiovEdi ha scritto:
educatore ha scritto:
sudo mount /dev/sda6 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
mount /dev/sda6 /boot
grub-install /dev/sda
update-grub
grub-install --recheck /dev/sda
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
Dove ho sbagliato? ???
se non hai la partizione di /boot separata, il comando in grassetto è sbagliato
Ho provato anche senza il comando in grassetto, ma non riesco a risolvere
all'update del grub il terminale risponde che os-prober non conosce il file system di XP
Codice: Seleziona tutto
root@educatore-laptop:/home/educatore# sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-20-generic
Found initrd image: /boot/initrd.img-2.6.31-20-generic
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
/etc/grub.d/30_os-prober: 1: }#!: not found
Found Microsoft Windows XP Professional on /dev/sda1
grub-probe: error: unknown filesystem
done
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 21:11
da redrobin
Hai rimesso il file os-probe come era prima?
Re: blocco all'avvio
Inviato: lunedì 29 marzo 2010, 22:01
da educatore
Ragazzi ci sono riuscito

. Ho rimesso il file os-probe come era prima (grazie [glow=red,2,300]redrobin[/glow]), poi ho rifatto la procedura del wiki
http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/Ripristino (come diceva [glow=red,2,300]patel)[/glow] stavolta però, come mi ha fatto notare [glow=red,2,300]GiovEdi[/glow] ho fatto anche
mount /dev/sda6 /boot. In realtà prima non lo avevo dato. Ho pensato, però, che, siccome avevo installato Xubuntu con l'opzione manuale dallo slash /, allora era come un partizione di boot separata. Insomma, almeno credo che sia andata così :-[. Adesso funziona tutto. Un bel lavoro di squadra. Grazie a tutti ragazzi (b2b) (good)
E' stata una bella avventura per uno, come me, che da poco si è avvicinato a linux. Ho imparato a smanettare con gparted, a distinguere tra grub e grub2, ho scoperto molti comandi linux da terminale e tante altre cose. Poichè io faccio l'insegnante di lettere in un ITIS, dove si studia Informatica, appena rivedo colleghi e studenti più esperti di me farò un figurone. Certe volte scherzano e mi snobbano. Ma io non mollo. Mi piace fare l'analisi del testo della Divina Commedia, ma sono affascinato dal mondo linux e dalle sue potenzialità. Scusate se vi ho annoiato con le mie chiacchiere.
Grazie ancora
Re: [Risolto] blocco all'avvio
Inviato: martedì 30 marzo 2010, 7:20
da patel
è stato il os-probe ripristinato a risolvere, non il mount /dev/sda6 /boot di una partizione che non esiste.
installare Xubuntu con l'opzione manuale dallo slash / NON è come un partizione di boot separata.
Re: [Risolto] blocco all'avvio
Inviato: martedì 30 marzo 2010, 10:26
da redrobin
(good)
ps: viva la letteratura e viva l'informatica al servizio di altre scienze! (b2b)