Installer un bootloader [Résolu]

Questions et astuces concernant l'installation et la configuration d'archlinux
NouvelArch1
newbie
Messages : 7
Inscription : sam. 11 avr. 2020, 13:21

Installer un bootloader [Résolu]

Message par NouvelArch1 »

Bonjour à tous,

depuis que je voulais installer Arch, j’ai franchis le pas.
Tout c’est bien passé visiblement sauf que je n’ai pas de bootloader ….
comment installer ce bootloader ?
En effet quand je boot le pc je vois bien windows/debian mais pas de Arch.
Je me débrouille sous debian en mode de commande, donc ca ne me fait pas peur. Mais la je ne comprends pas, j’ai un uefi et veut installer Grub.
J’ai pourtant bien monter ma partition ou les efi se trouvent ...

Merci pour votre aide
Dernière modification par NouvelArch1 le dim. 12 avr. 2020, 11:56, modifié 1 fois.
laurent85
Elfe
Messages : 954
Inscription : mar. 16 oct. 2018, 21:05

Re: Installer un bootloader

Message par laurent85 »

Bonjour,
Utilise le bootloader grub existant de Debian, ajoute une entrée pour Arch
https://wiki.archlinux.fr/GRUB#Entr.C3. ... NU.2FLinux
NouvelArch1
newbie
Messages : 7
Inscription : sam. 11 avr. 2020, 13:21

Re: Installer un bootloader

Message par NouvelArch1 »

Bonjour et merci pour ta réponse, j'ai essayé mais ça ne marche pas
Néanmoins j'ai réussi a booter Arch avec GrubEFIReinstall
Donc ce qui prouve que Arch est bien installé. il doit bien y'avoir un moyen d'installer grub et vu que je peux booter dessus en plus
Avatar de l’utilisateur
papajoke
Elfe
Messages : 779
Inscription : sam. 30 août 2014, 19:54

Re: Installer un bootloader

Message par papajoke »

bonjour et bienvenue

grub s'installe comme avec une debian c'est une commande grub classique, grub-install c'est dans le wiki :wink:
ici, la difficulté, puisque tu as oublié de l'installer (ou installé en mbr ?) c'était de booter sur l'archlinux - un chroot depuis ta debian faisait l'affaire (ou depuis iso d'install)
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17235
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: Installer un bootloader

Message par benjarobin »

Non, je te déconseille d'installer un nouveau Grub ! laurent85 a tout a fait raison, il suffit d'ajouter une entrée dans l'entrée du Grub de debian.
Tu nous dis cela ne marche pas. Mais sans aucune autre information difficile d'aider. Qu'est ce que tu as fait ? Qu'est ce que tu as ajouté comme entrée et comment ?
On peut voir le contenu du Grub.cfg de debian ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
NouvelArch1
newbie
Messages : 7
Inscription : sam. 11 avr. 2020, 13:21

Re: Installer un bootloader

Message par NouvelArch1 »

Merci pour vos réponses,

quand je boot avec GrubEFIReinstall il m’indique qu’il boot sur le fichier boot\vmlinuz-linux qui se trouve dans mon disque racine, non dans mon efi.

J'ai en effet suivi ce lien : https://wiki.archlinux.fr/GRUB#Entr.C3. ... NU.2FLinux
voici mon fichier /boot/grub/custom.cfg (car le etc/… rien ne s’affiche) :

Code : Tout sélectionner

menuentry "Other Linux" {
#	set root=(hd0,10)
	search --set=root --fs-uuid 4a087bbd-9c39-4fe1-a073-ff77b04a652f
	linux /boot/vmlinuz-linux
	initrd /boot/initramfs-linux.img
}
Je vois bien mon "Other Linux" apparaître mais il m’affiche une erreur
En effet désolé j’ai été trop vite et j’aurai du plus vous détailler :

Code : Tout sélectionner

:: running early hook [udev]
Starting version 245.4-2-arch
:: running hook [udev]
:: Triggering uevents :::
ERROR : devise ‘’ not found. Skipping fsck.
:: mounting ‘’ on real root
mount : /new_root :no filesystem type specified
You are now being dropped into an emergency shell.
Sh : can’t access tty ; job control turned off
[rootfs   ]#

Je ne comprends pas pourquoi il démarre parfaitement avec GrubEFIReinstall et là il bug et démarre en mode debogage

et voici mon fichier /boot/grub/Grub.cfg de Debian :

Code : Tout sélectionner

#
# 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
  set have_grubenv=true
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

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_gpt
insmod ext2
set root='hd0,gpt8'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8  1656196e-1c0e-4e3b-a47a-698324eb3af2
else
  search --no-floppy --fs-uuid --set=root 1656196e-1c0e-4e3b-a47a-698324eb3af2
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=fr_FR
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=30
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=menu
    set timeout=5
  # Fallback normal timeout code in case the timeout_style feature is
  # unavailable.
  else
    set timeout=5
  fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_gpt
insmod ext2
set root='hd0,gpt8'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8  1656196e-1c0e-4e3b-a47a-698324eb3af2
else
  search --no-floppy --fs-uuid --set=root 1656196e-1c0e-4e3b-a47a-698324eb3af2
fi
insmod png
if background_image /usr/share/desktop-base/futureprototype-theme/grub/grub-4x3.png; then
  set color_normal=white/black
  set color_highlight=black/white
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
	set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1656196e-1c0e-4e3b-a47a-698324eb3af2' {
	load_video
	insmod gzio
	if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
	insmod part_gpt
	insmod ext2
	set root='hd0,gpt8'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8  1656196e-1c0e-4e3b-a47a-698324eb3af2
	else
	  search --no-floppy --fs-uuid --set=root 1656196e-1c0e-4e3b-a47a-698324eb3af2
	fi
	echo	'Chargement de Linux 4.19.0-8-amd64…'
	linux	/boot/vmlinuz-4.19.0-8-amd64 root=UUID=1656196e-1c0e-4e3b-a47a-698324eb3af2 ro  quiet
	echo	'Chargement du disque mémoire initial…'
	initrd	/boot/initrd.img-4.19.0-8-amd64
}
submenu 'Options avancées pour Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-1656196e-1c0e-4e3b-a47a-698324eb3af2' {
	menuentry 'Debian GNU/Linux, avec Linux 4.19.0-8-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.0-8-amd64-advanced-1656196e-1c0e-4e3b-a47a-698324eb3af2' {
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt8'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8  1656196e-1c0e-4e3b-a47a-698324eb3af2
		else
		  search --no-floppy --fs-uuid --set=root 1656196e-1c0e-4e3b-a47a-698324eb3af2
		fi
		echo	'Chargement de Linux 4.19.0-8-amd64…'
		linux	/boot/vmlinuz-4.19.0-8-amd64 root=UUID=1656196e-1c0e-4e3b-a47a-698324eb3af2 ro  quiet
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-4.19.0-8-amd64
	}
	menuentry 'Debian GNU/Linux, with Linux 4.19.0-8-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.0-8-amd64-recovery-1656196e-1c0e-4e3b-a47a-698324eb3af2' {
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt8'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8  1656196e-1c0e-4e3b-a47a-698324eb3af2
		else
		  search --no-floppy --fs-uuid --set=root 1656196e-1c0e-4e3b-a47a-698324eb3af2
		fi
		echo	'Chargement de Linux 4.19.0-8-amd64…'
		linux	/boot/vmlinuz-4.19.0-8-amd64 root=UUID=1656196e-1c0e-4e3b-a47a-698324eb3af2 ro single 
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-4.19.0-8-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 Boot Manager (sur /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-efi-7E48-0082' {
	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  7E48-0082
	else
	  search --no-floppy --fs-uuid --set=root 7E48-0082
	fi
	chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
	fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###

### 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 ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
et dans mon disque EFI je vois bien dans le dossier efi des dossiers de tous mes os sauf Arch

Merci pour votre aide par avance
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17235
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: Installer un bootloader

Message par benjarobin »

Code : Tout sélectionner

menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-4a087bbd-9c39-4fe1-a073-ff77b04a652f' {
        load_video
        insmod gzio
        insmod part_gpt
        insmod ext2
        set root='hd0,gpt4'   # <--- A mettre à jour, voir le contenu de %hints_string
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root %hints_string %fs_uuid  # <--- A mettre à jour
        else
          search --no-floppy --fs-uuid --set=root %fs_uuid  # <--- A mettre à jour
        fi
        echo    'Chargement de Linux linux…'
        linux   /boot/vmlinuz-linux root=UUID=4a087bbd-9c39-4fe1-a073-ff77b04a652f rw
        echo    'Chargement du disque mémoire initial…'
        initrd  /boot/initramfs-linux.img
}
Il faut bien sûr modifier la ligne search, voir wiki pour cela : https://wiki.archlinux.org/index.php/GR ... I/GPT_mode
Donc depuis ton Linux tu dois lancer les commandes :

Code : Tout sélectionner

grub-probe --target=fs_uuid /chemin/vers/boot/vmlinuz-linux
grub-probe --target=hints_string /chemin/vers/boot/vmlinuz-linux
afin d'obtenir ce qu'il faut remplacer (%hints_string et %fs_uuid) dans search --no-floppy --fs-uuid --set=root %hints_string %fs_uuid

Donc depuis debian tu montes la partition contenant vmlinuz-linux quelque part, puis tu lances les commandes données plus haut

Si tu n'as pas de partition boot séparé, alors le root de Grub est le même que le root passé à vmlinuz-linux
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
NouvelArch1
newbie
Messages : 7
Inscription : sam. 11 avr. 2020, 13:21

Re: Installer un bootloader

Message par NouvelArch1 »

PARFAIT, franchement je suis étonné, un grand merci !
Mais je voudrais comprendre qu'est ce que j'ai loupé d'après vous ?
Car j'ai simulé sous virtualbox avant, et le démarrage j'ai toujours eu des problèmes
donc j'ai reinstaller 3-4 fois avant de passer sur ma machine cette fois avec problèmes de démarrage mais différents.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17235
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: Installer un bootloader

Message par benjarobin »

Pour l'installation sous virtualbox normalement si tu suis le wiki, cela devrait fonctionner directement. Par défaut virtualbox ne boot pas en UEFI, à moins que cela ai changé depuis. Donc il faut faire une installation classique MBR/legacy.
Difficile de dire / deviner comme cela..
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre