Debian 8.3 no arranca despues de instalar Kali Linux exDebian

Debian 8.3 no arranca despues de instalar Kali Linux

12 envíos / 0 nuevos
Último envío
#1 Dom, 19/06/2016 - 23:01
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

Debian 8.3 no arranca despues de instalar Kali Linux

Estado: 
[SOLUCIONADO]

Hola amigos debianitas, he estado liando con un problema desde hace una semana y es que debian 8.3 no arranca despues de haber instalado kali linux rolling release.

Antes de realizar la instalación de Kali linux el estado mi pc era este:

- El esquema de particiones del disco duro es GPT.
- Windows 8.1 x64 instalado en modo UEFI.
- Debian 8.3 x64 instalado en modo UEFI.
- Grub2 reconocia windows y debian, hasta ahi todo funcionaba bien.

Luego decidi instalar Kali Linux version 2016.1 de 64 bit, quemé la iso en un DVD, coloqué el DVD en la lectora, configuré el boot mode del UEFI-BIOS en UEFI-only, reinicié la pc para que corriera el DVD pero se quedaba en pantalla negra entonces cambie el boot mode de UEFI-only a BIOS-legacy y así si se pudo iniciar la instalación.

Cuando llegué a la ventana de instalación de grub, seleccioné para que se instalara y luego siguiente siguiente y así finalizó la instalación. Se reinició la pc, cargó GRUB solo con kali, ingresé a kali y ejecuté "sudo update-grub" pero ni así pudo reconocer a debian y windows, luego de investigar encontré un tutorial en youtube para instalar kali en modo UEFI.

Realicé los pasos del tutorial, tuve que montar particiones boot, efi, proc, sys, dev. Luego de ejecutar el comando chroot removí grub e instalé grub-efi, reinicié la pc y reconoció Windows, Debian y Kali pero no arrancaba Debian.

Y como pensé que el problema era porque había instalado Kali en modo bios-legacy, lo desintalé y restauré grub a como estaba antes de instalar kali.

Justo hoy día he booteado Kali en un pendrive y cambiado el boot mode de UEFI-BIOS en UEFI-only, y por fín logré instalar Kali en modo UEFI. Luego que terminó la instalación me puse a probar si es que podia arrancar cada sistema operativo, y sí funcionaba de maravilla, hasta que configuré el timeout de Grub2 y lo actualicé con "sudo update-grub", y adivinen qué, Debian era el único que no arrancaba, o si lo hace lanza una serie de errores que se los voy a mostrar en imagenes.

UEFI-BIOS

 

Grub

 

Arrancando Debian 8.3

 

 

En este punto ejecuto el comando journalctl -xb, el log de errores está en esta pagina 
También ejecuto el comando systemctl, el log esta aqui 

 

Iniciando Kali

Ese error lo lanza al iniciar pero igual puedo entrar al entorno grafico.

Entradas de Debian en opciones avanzadas

cada vez que ejecuto "sudo update-grub" se agrega una entrada más en las opciones avanzadas de Debian.

 

Perdonen que haya sido tan detallado, espero puedan guiarme a resolver este problema.
De antemano muchas gracias.

Lun, 20/06/2016 - 08:03
AguilaRabuda
Imagen de AguilaRabuda
Desconectado/a
colaborador
se unió: 10/03/16

Hola,

Algo similar me sucedió hace un tiempo. Lo que te pasa es que compartes alguna partición entre las dos distros (ya sea la swap o la home). Entonces, cada distro ha nombrado la misma partición con un uuid distinto.

La solución es fácil, sustituye este uuid por el lugar físico de montaje de dicha partición (dev/sdax...) en /etc/fstab de cada distribución que tienes instalada.

Ya nos comentas si te ha funcionado.

 

Un saludo.

 

Lun, 20/06/2016 - 11:26
moonwatcher
Imagen de moonwatcher
Desconectado/a
moderador
se unió: 21/01/16

A modo informativo.... yo lo que hago cuando instalo alguna distro junto a Debian, es recuperar el grub de Debian en lugar de instalar otro en la distro nueva. Por ejemplo con el instalador de Debian:

Saludos.

We were but stones. Your light made us stars

Lun, 20/06/2016 - 14:49 (Responder a #3)
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

Acabo de detectar el problema, y es cuando hago "sudo update-grub" en Debian o Kali, Si es en Debian entonces Grub encuentra los kernel de debian y kali pero hace arrancar a ambos con el kernel de Debian por eso no funcionaba Kali; pero si hago el "update grub" desde Kali igualmente Grub encuentra los dos kernel pero hace arrancar a ambos con el kernel de Kali y es por eso que Debian no funcionaba.

El kernel de Debian es el 3.16.0-4 y el de Kali Linux es 4.3.0

 

Solo cuando edito las entradas de Kali y Debian en Grub puedo hacer que funcionen ambos pero eso siempre es manual.

 

 

¿Hay alguna manera de configurar Grub2 para que Debian y Kali arranquen cada uno con su respectivo kernel?

 

Y con respecto al fstab, esta es la información que tengo.

fstab de Debian

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda3 during installation
UUID=b72153b4-05b0-4681-847e-f67e84d24977 /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
#UUID=181eb415-e925-4919-ac68-63659205edf0 /boot           ext2    defaults        0       2
# /boot/efi was on /dev/sda2 during installation
#UUID=6CA4-4E40  /boot/efi       vfat    umask=0077      0       1
# /home was on /dev/sda6 during installation
UUID=0673f38a-85c1-4008-acf0-3eaa6885205c /home           ext4    defaults        0       2
# /opt was on /dev/sda5 during installation
UUID=49ab8949-e66d-4a98-bdca-678c04827b1f /opt            ext4    defaults        0       2
# /usr/share/icons was on /dev/sda11 during installation
UUID=fc2dc0de-e8a5-4abe-9070-31c47cf95ba1 /usr/share/icons ext4    defaults        0       2
# /usr/share/themes was on /dev/sda12 during installation
UUID=0cd7f35c-1e4e-4c4c-9d04-f314463ed62c /usr/share/themes ext4    defaults        0       2
# swap was on /dev/sda4 during installation
UUID=5eee9c33-6da6-429b-9d50-a03327cc4a7f none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
UUID=181eb415-e925-4919-ac68-63659205edf0	/boot	ext2	defaults	0	2
UUID=6CA4-4E40	/boot/efi	vfat	defaults	0	1
kael@DarkzZero:~$ sudo mount /dev/sda3 /mnt

 

fstab de Kali Linux

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda3 during installation
UUID=b72153b4-05b0-4681-847e-f67e84d24977 /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
#UUID=181eb415-e925-4919-ac68-63659205edf0 /boot           ext2    defaults        0       2
# /boot/efi was on /dev/sda2 during installation
#UUID=6CA4-4E40  /boot/efi       vfat    umask=0077      0       1
# /home was on /dev/sda6 during installation
UUID=0673f38a-85c1-4008-acf0-3eaa6885205c /home           ext4    defaults        0       2
# /opt was on /dev/sda5 during installation
UUID=49ab8949-e66d-4a98-bdca-678c04827b1f /opt            ext4    defaults        0       2
# /usr/share/icons was on /dev/sda11 during installation
UUID=fc2dc0de-e8a5-4abe-9070-31c47cf95ba1 /usr/share/icons ext4    defaults        0       2
# /usr/share/themes was on /dev/sda12 during installation
UUID=0cd7f35c-1e4e-4c4c-9d04-f314463ed62c /usr/share/themes ext4    defaults        0       2
# swap was on /dev/sda4 during installation
UUID=5eee9c33-6da6-429b-9d50-a03327cc4a7f none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
UUID=181eb415-e925-4919-ac68-63659205edf0	/boot	ext2	defaults	0	2
UUID=6CA4-4E40	/boot/efi	vfat	defaults	0	1

 

 

Lun, 20/06/2016 - 15:34
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

No me queda claro finalmente cual grub ( el de debian ,o el de kali) es el que esta funcionando .

Una alternativa que uso cuando grub y varios sistemas causan problemas es ,deshabilitar el OSprober del grub que corresponda ( esto se hace editando  /etc/defaulut/grub  y  descomentar o agregar la linea que lo indica )

Luego simplemente agrego una o unas entradas en /etc/grub.d/40_custom  ,indicando el o los sistemas operativos que quiero iniciar 

Lun, 20/06/2016 - 15:56 (Responder a #5)
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

He seguido el tutorial de Rescue mode en el instalador de Debian y llegué hasta este punto, si mi disco duro tuviese el esquema de particiones MBR sin dudarlo escribiria /dev/sda y Grub se instalaría en el MBR, pero tengo el esquema de particiones GPT y no tengo idea donde instalarlo, o en /dev/sda para instalar grub en el MBR de GPT o en /dev/sda1 que es la particion boot que tengo.

Lun, 20/06/2016 - 15:59 (Responder a #6)
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

El Grub de Kali es el que tengo funcionando.

Lun, 20/06/2016 - 17:33
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

Gracias caliban, he desactivado los scripts 10_linux y 30_os-prober o mejor dicho les he quitado el permiso de lectura, he leido un poquillo de ello en esta web

~$ ls -l /etc/grub.d
total 76
-rwxr-xr-x 1 root root  9424 dic 14  2015 00_header
-rwxr-xr-x 1 root root  6058 dic 14  2015 05_debian_theme
-rw-r--r-- 1 root root 12261 dic 14  2015 10_linux
-rwxr-xr-x 1 root root 11082 dic 14  2015 20_linux_xen
-rwxr-xr-x 1 root root  1552 jun 20 14:40 25_custom
-rw-r--r-- 1 root root 11692 dic 14  2015 30_os-prober
-rwxr-xr-x 1 root root  1416 dic 14  2015 30_uefi-firmware
-rwxr-xr-x 1 root root   214 jun 20 14:40 40_custom
-rwxr-xr-x 1 root root   216 dic 14  2015 41_custom
-rw-r--r-- 1 root root   483 dic 14  2015 README

 

He agregado manualmente las entradas en el archivo 25_custom

#!/bin/sh
exec tail -n +3 $0

menuentry 'Windows 8.1' --class windows --class os {
	insmod part_gpt
	insmod fat
	set root='hd0,gpt2'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  6CA4-4E40
	else
	  search --no-floppy --fs-uuid --set=root 6CA4-4E40
	fi
	chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry 'Debian 8.3 (debian-jessie)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  181eb415-e925-4919-ac68-63659205edf0
		else
		  search --no-floppy --fs-uuid --set=root 181eb415-e925-4919-ac68-63659205edf0
		fi
		linux /vmlinuz-3.16.0-4-amd64 root=UUID=b72153b4-05b0-4681-847e-f67e84d24977 ro quiet
		initrd /initrd.img-3.16.0-4-amd64
	}

menuentry 'Kali GNU/Linux Rolling (kali-rolling)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  181eb415-e925-4919-ac68-63659205edf0
		else
		  search --no-floppy --fs-uuid --set=root 181eb415-e925-4919-ac68-63659205edf0
		fi
		linux /vmlinuz-4.3.0-kali1-amd64 root=/dev/sda10 ro initrd=/install/gtk/initrd.gz quiet
		initrd /initrd.img-4.3.0-kali1-amd64
	}

Luego de esto ejecuté "sudo update-grub" en la terminal.

Ahora si puedo arrancar los 3 Sistemas operativos sin problemas.

Muchas gracias amigos, gracias por ayudarme a resolver este problema que me tenía loco toda una semana.

PD: Me gustaría agregar una entrada de "Apagar Sistema" en el Grub asi tipo el comando poweroff
PD2: Todavia me queda la duda de como recuperar grub en un disco GPT usando el instalador de Debian.
 

Lun, 20/06/2016 - 18:02
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

Para tus preguntas quiza puedas pasar por

Para las entradas que uso,el mejor resultado sobre todo cuando estas experimentando y para evitar que grub confunda particiones uso el siguiente  esquema de entradas 

menuentry "blablabla" {
insmod part_msdos
insmod ext2
search --set=root --fs-uuid 4427f33b-226a-4449-b88e-71106c7f14e9
search --no-floppy --fs-uuid --set=root 4427f33b-226a-4449-b88e-71106c7f14e9
linux /vmlinuz root=UUID=4427f33b-226a-4449-b88e-71106c7f14e9  ro quiet
initrd /initrd.img
}
menuentry "sid en sdb1 recovery" {
insmod part_msdos
insmod ext2
search --set=root --fs-uuid 4427f33b-226a-4449-b88e-71106c7f14e9
search --no-floppy --fs-uuid --set=root 4427f33b-226a-4449-b88e-71106c7f14e9
linux /boot/vmlinuz-4.5.0-1-686-pae root=UUID=4427f33b-226a-4449-b88e-71106c7f14e9  ro single
initrd /boot/initrd.img-4.5.0-1-686-pae
}

Claro que adecuas al las UUID que corresponda ,de este modo grub busca la partición por su UUID cosa mas segura, también podrías usar LEVELS ,  por otra parte siempre agrego la entrada recovery por si las moscas ,y de ultima si te fijas en  / ,  no en /boot,   debian guarda dos imágenes  la ultima , y  otra  llamada  OLD , si incluís esa también , tendrás una entrada  con un kernel viejo,por seguridad . 

initrd /initrd.img  #  imagen actual 
initrd /initrd.img.old # kernel anterior

En conclusión tendrás siempre una entrada con kernel actualizado, un kernel anterior  y un recovery .

Lun, 20/06/2016 - 20:07
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

Estoy confundido, mencionas que en el recovery debo indicar el kernel en / y no /boot pero veo que en el ejemplo está /boot, aparte tengo 2 kernels funcionando.
Lo del UUID si lo entendi perfectamente, entonces cambiare de /dev/sda10 al UUID de esa partición.

Lun, 20/06/2016 - 20:47
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

perdón, me he expresado mal , en el enlace que te puse explican en detalle.

Recovery si te fijas  linux " ro single"

Me refería al uso del kernel antiguo  si  initrd  /initrd.img   fijate que apunta  a  /  y a su vez existe una /initrd.img.old

una corresponde al kernel actual y otra al inmediato anterior.

Hace un listado de  /  y vas a ver  las imagens con un enlace simbolico que apunta a /boot 

Ejemplo:

lrwxrwxrwx   1 root root    31 jun  9 13:05 initrd.img -> boot/initrd.img-4.6.0-1-686-pae
lrwxrwxrwx   1 root root    31 jun  9 13:05 initrd.img.old -> boot/initrd.img-4.5.0-2-686-pae

 

 

Lun, 20/06/2016 - 22:48
kael
Imagen de kael
Desconectado/a
se unió: 19/06/16

He listado el directorio raiz /   y aparecen los enlaces simbolicos que mencionaste

lrwxrwxrwx   1 root root    31 jun 13 16:06 initrd.img -> /boot/initrd.img-3.16.0-4-amd64
lrwxrwxrwx   1 root root    27 jun 13 16:06 vmlinuz -> boot/vmlinuz-3.16.0-4-amd64

y para la entrada de Debian siguiendo tu esquema, lo he colocado de esta forma

#Intento 1

menuentry 'Debian 8.3 (debian-jessie)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		search --set=root --fs-uuid 181eb415-e925-4919-ac68-63659205edf0
		search --no-floppy --fs-uuid --set=root 181eb415-e925-4919-ac68-63659205edf0
		linux /vmlinuz root=UUID=b72153b4-05b0-4681-847e-f67e84d24977 ro quiet
		initrd /initrd.img
	}


#Intento 2

menuentry 'Debian 8.3 (debian-jessie)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt1'
		search --set=root --fs-uuid 181eb415-e925-4919-ac68-63659205edf0
		search --no-floppy --fs-uuid --set=root 181eb415-e925-4919-ac68-63659205edf0
		linux /vmlinuz root=UUID=b72153b4-05b0-4681-847e-f67e84d24977 ro quiet
		initrd /initrd.img
	}

 

Pero Grub lanza el siguiente error, para cualquiera de esos dos intentos:

 

También intente con esto

menuentry 'Debian 8.3 (debian-jessie)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt1'
		search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  181eb415-e925-4919-ac68-63659205edf0
		linux /vmlinuz root=UUID=b72153b4-05b0-4681-847e-f67e84d24977 ro quiet
		initrd /initrd.img
	}

Pero igual sigue lanzando el mismo error de que el fichero /vmlinuz no ha sido encontrado.
 

Esta entrada sí funciona, he visto que la condicional if se cumple, así que se pueden quitar algunas lineas de codigo. Es muy buena idea hacer referencia al kernel actual mediante el enlace simbolico vmlinuz pero cómo hacerlo.

Además estoy trabajando con GPT.

menuentry 'Debian 8.3 (debian-jessie)' --class gnu-linux --class gnu --class os {
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  181eb415-e925-4919-ac68-63659205edf0
		else
		  search --no-floppy --fs-uuid --set=root 181eb415-e925-4919-ac68-63659205edf0
		fi
		linux /vmlinuz-3.16.0-4-amd64 root=UUID=b72153b4-05b0-4681-847e-f67e84d24977 ro quiet
		initrd /initrd.img-3.16.0-4-amd64
	}