[installation] Installation sur Mac Book (Résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

[installation] Installation sur Mac Book (Résolu)

Message par Lezard »

Bonjour à tous.
J'aimerais installer archlinux sur mon macbook pro (début 2015).
D'après ce tutoriel, le wifi ne fonctionne pas (j'ai pu le constater en essayant pacstrap), il faut donc utiliser l'adaptateur Thunderbolt/Ethernet. Cependant, je ne possède pas cet adaptateur.
J'aimerais donc savoir s'il est possible de faire sans, par exemple en téléchargeant les paquets depuis un autre ordinateur pour les installer ensuite sur le macbook.
Merci d'avance.
Dernière modification par Lezard le ven. 10 juil. 2015, 15:18, modifié 1 fois.
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

As-tu essayé de configurer le WiFi ? La méthode la plus simple est d'utiliser la commande wifi-menu depuis le média d'installation d'Arch Linux.
Si c'est un soucis de pilote, tu peux te référer à la section du WiFi sur MacBook, et télécharger des paquets si nécessaires. Tu pourras ensuite installer les paquets depuis le média d'installation, te connecter au WiFi et installer Arch Linux si tout va bien. :)
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Effectivement la commande wifi-menu fonctionne, je suis d'ailleurs assez étonné que ce soit si simple :)
Merci beaucoup !
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Il y a certains chipsets WiFi qui sont très bien gérés par le noyau, et dans ce cas là, ça marche out-the-box. ;)
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

:)

Par contre, j'ai maintenant un autre problème.
J'ai suivi les tutoriels pour l'installation, et, au redémarrage, un message d'erreur s'affiche :

Code : Tout sélectionner

error: no such device: ad41etc...
Loading Linux core repo kernel
error: no such partition
Loading initial ramdisk
alloc magic is broken at 0x74a2...: 74ab...
Aborted. Press any key to exit.
Je l'ai refait 2 autres fois, en suivant "à la lettre" le tuto pour macbook, et le même message d'erreur s'affiche...

Après une recherche sur google, j'ai trouvé que beaucoup ont eu des erreurs semblables, notamment ici.
Cependant, je n'ai pas su trouver de solution satisfaisante.
Ai-je mal cherché ?
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

J'ai essayé encore une autre fois, cette fois-ci en installant syslinux à la place de grub. J'ai donc essayé ceci, en m'inspirant des wikis de Syslinux, ESP et Macbook :

Code : Tout sélectionner

mkdir -p /boot/efi/EFI/arch/
cp /boot/vmlinuz-linux /boot/efi/EFI/arch/vmlinuz-linux.efi
cp /boot/initramfs-linux.img /boot/initramfs-linux-fallback.img /boot/efi/EFI/arch
pacman -S efibootmgr
mount -t vfat /dev/sda1 /boot/efi
mkinitcpio -p linux
mkdir -p /boot/efi/EFI/syslinux
cp -r /usr/lib/syslinux/efi64/* /boot/efi/EFI/syslinux
mount -t efivarfs efivarfs /sys/firmware/efi/efivars
efibootmgr -c -d /dev/sda -p 1 -l /boot/efi/EFI/syslinux/syslinux.efi -L "arch-syslinux"
mount /dev/sda1 /mnt
mkdir -p /mnt/EFI/boot
cp /boot/efi/EFI/syslinux/syslinux.efi /mnt/EFI/boot/bootx64.efi
Cependant, lors du démarrage, il m'affiche cette fois-ci un écran tout noir. Je pense donc que j'ai oublié une étape quelque part...
Est-ce que vous sauriez m'aider s'il vous plaît ? Merci d'avance :)
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Tu ne vois pas un soucis ? Tu copies tes fichiers "dans l'ESP" et tu monte ton ESP après la copie.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Oulaa ! Effectivement, je m'en étais pas rendu compte !
Je dois donc déplacer mount -t vfat /dev/sda1 /boot/efi juste avant la copie des fichiers, j'imagine. À part ça, ça a l'air correct ?
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Le mount va en tête. Copier les initramfs puis les recréer n'a pas de sens, l'inverse un peu plus. Ce n'est pas ainsi qu'on utilise la commande efibootmgr.
Je vois pas mal de choses qui ne vont pas en fait.

Code : Tout sélectionner

mkdir /boot/efi
mount -t vfat /dev/sda1 /boot/efi
mkinitcpio -p linux
mkdir -p /boot/efi/EFI/arch/
cp /boot/vmlinuz-linux /boot/efi/EFI/arch/vmlinuz-linux.efi
cp /boot/initramfs-linux.img /boot/initramfs-linux-fallback.img /boot/efi/EFI/arch

mount -t efivarfs efivarfs /sys/firmware/efi/efivars
pacman -S efibootmgr syslinux
mkdir -p /boot/efi/EFI/syslinux
cp /usr/lib/syslinux/efi64/* /boot/efi/EFI/syslinux
efibootmgr -c -d /dev/sda -p 1 -l '\EFI\syslinux\syslinux.efi' -L "arch-syslinux"
Ça me paraît plus simple et plus correct.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Merci pour cette "correction" :)
Cependant ça fait toujours la même chose... Je pense ne pas avoir tout compris. Est-ce que mon interprétation est bonne ?

Code : Tout sélectionner

# on monte  l'esp:
mkdir /boot/efi
mount -t vfat /dev/sda1 /boot/efi
# on génère les initramfs (les premiers programmes qui sont lancés au démarrage ?) et on les met dans l'esp:
mkinitcpio -p linux
mkdir -p /boot/efi/EFI/arch/
cp /boot/vmlinuz-linux /boot/efi/EFI/arch/vmlinuz-linux.efi
cp /boot/initramfs-linux.img /boot/initramfs-linux-fallback.img /boot/efi/EFI/arch
# on monte efivarfs (le format de l'efi ?):
mount -t efivarfs efivarfs /sys/firmware/efi/efivars
#on met tout ce qu'il faut dans le dossier syslinux:
pacman -S efibootmgr syslinux
mkdir -p /boot/efi/EFI/syslinux
cp /usr/lib/syslinux/efi64/* /boot/efi/EFI/syslinux
# et on ajoute /dev/sda aux disque sur lesquels on peut démarrer (le "\boot\efi" est facultatif ? tu ne l'as pas mis...):
efibootmgr -c -d /dev/sda -p 1 -l '\boot\efi\EFI\syslinux\syslinux.efi' -L "arch-syslinux"
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Oui, c'est ça. Juste quelques explications supplémentaires sur cette ligne :

Code : Tout sélectionner

efibootmgr -c -d /dev/sda -p 1 -l '\boot\efi\EFI\syslinux\syslinux.efi' -L "arch-syslinux"
-c : pour créer une nouvelle entrée de boot dans l'UEFI
-d : le disque où se trouve l'ESP
-p : le numéro de partition de l'ESP (si l'ESP est /dev/sda1, c'est donc 1)
-L : c'est le label de l'entrée de boot, donc son petit nom pour la différencier des autres entrées de boot
-l : désigne l'application EFI à lancer ; son chemin est absolu à l'ESP lui-même (et non au système)

Donc c'est normal que je n'ai pas mis /boot/efi. C'est juste un point de montage qu'on utilise habituellement pour l'ESP. :)

Peux-tu nous donner la sortie de efibootmgr s'il te plaît ?
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Voilà :

Code : Tout sélectionner

efibootmgr
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0080,0009,0008,0007,0006,0005,0004,0003,0002,0001
Boot0000* ubuntu
Boot0001* opensuse-secureboot
Boot0002* opensuse-secureboot
Boot0003* arch_grub
Boot0004* Syslinux
Boot0005* Syslinux
Boot0006* Syslinux
Boot0007* arch-syslinux
Boot0008* arch-syslinux
Boot0009* archlinux
Boot0080* Mac OS X
Boot0081* Mac OS X
Boot0082* 
BootFFFF* 
(j'avais déjà installé opensuse et ubuntu auparavant, mais je les ai enlevés)

Et merci pour l'explication ! :)
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Waouw, il va falloir faire du ménage là. :)

Tu peux supprimer toutes les entrées inutiles avec la commande efibootmgr -B -b 000X. Au point où tu en es, tu peux virer toutes les entrées de boot entre la 0000 et la 0009 incluses.
Ensuite, relance la commande :

Code : Tout sélectionner

efibootmgr -c -d /dev/sda -p 1 -l '\EFI\syslinux\syslinux.efi' -L "arch-syslinux"
Une fois fait, redémarre sur cette nouvelle entrée de boot, et dis-nous ce qui se passe.

Si ça ne boot toujours pas, donne-nous la sortie de la commande efitbootmgr -v dans ce cas.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Code : Tout sélectionner

efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000
Boot0000* arch-syslinux	HD(1,GPT,f772b756-f29d-4e2d-96e6-6ce8c7f4ba1f,0x28,0x64000)/File(\EFI\syslinux\syslinux.efi)
(j'ai supprimé toutes les entrées, vu que mac os n'est plus installé)

En fait, j'ai l'impression qu'il arrive à démarrer "au bon endroit", mais qu'après il sait plus quoi faire...
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Et tu as créé un fichier de configuration pour Syslinux ? Il faut que ça soit /boot/efi/EFI/syslinux/syslinux.cfg.

Je te laisse lire la partie configuration pour que tu saches quoi mettre dedans.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Ce fichier existait déjà dans boot/syslinux. Je l'ai copié dans boot/efi/EFI/syslinux/syslinux.cfg.. Ily a quelque chose de particulier à faire/à changer ?
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

J'ai apporté quelques modifications :

Code : Tout sélectionner

...
DEFAULT arch
PROMPT 1        # Set to 1 if you always want to display the boot: prompt
...
LABEL arch
    MENU LABEL Arch Linux
    LINUX /boot/vmlinuz-linux
    APPEND root=/dev/sda2 rw
    INITRD /boot/initramfs-linux.img

LABEL archfallback
    MENU LABEL Arch Linux Fallback
    LINUX /boot/vmlinuz-linux
    APPEND root=/dev/sda2 rw
    INITRD /boot/initramfs-linux-fallback.img
...
Du coup, je suppose qu'un menu devrait s'afficher, et qu'on a pas besoin de copier /boot/vmlinuz-linux et compagnie dans /boot/efi/EFI/arch. Mais je n'ai rien vu de tout cela.

Et est-ce que

Code : Tout sélectionner

efibootmgr -c -d /dev/sda -p 1 -l 'EFI\boot\bootx64.efi' -L "arch-syslinux" efibootmgr -c -d /dev/sda -p 1 -l '\EFI\syslinux\syslinux.efi' -L "arch-syslinux"
, ça revient au même ? (vu que j'ai copié syslinux.efi dans bootx64.efi)
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Vérifier que toutes les informations sont correctes dedans. Par exemple, chez toi, la ligne

Code : Tout sélectionner

LINUX ../vmlinuz-linux
devient

Code : Tout sélectionner

LINUX ../arch/vmlinuz-linux.efi
Sinon, si tu as qu'un seul OS sur ta machine, tu peux regarder la page EFISTUB, ça t'évitera d'utiliser un bootloader.

EDIT : En effet, efibootmgr -c -d /dev/sda -p 1 -l '\EFI\boot\bootx64.efi' -L "arch-syslinux" revient au même.
Et non, ce que tu dis est incorrect. Ton ESP est ta racine pour ton UEFI, donc tu n'as pas accès au répertoire /boot à ce moment là.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Lezard
Hankyu
Messages : 23
Inscription : lun. 06 juil. 2015, 10:39

Re: [installation] Installation sur Mac Book

Message par Lezard »

Xorg a écrit :Sinon, si tu as qu'un seul OS sur ta machine, tu peux regarder la page EFISTUB, ça t'évitera d'utiliser un bootloader.
Je préfèrerais avoir Mac OS en parallèle.

J'ai fait ce que tu m'as dit. J'ai vérifié que vmlinuz-linux.efi etc. se trouvaient bien dans le dossier arch. Cependant ça me fait toujours la même chose.

Une question qui me tracasse : comme j'ai activé PROMPT 1, comment ça se fait que je n'aie aucun menu qui s'affiche ? Est-ce que c'est syslinux qui ne démarre pas ?
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [installation] Installation sur Mac Book

Message par Xorg »

Il me semble que le prompt de Syslinux ressemble à un écran noir avec écrit en blanc boot: dessus.
Donc essaye plutôt de mettre PROMPT 0 pour voir le menu.

Pour le menu, il faut avoir au moins le code suivant :

Code : Tout sélectionner

DEFAULT menu.c32
PROMPT 0
Sachant que tu peux remplacer menu.c32 par vesamenu.c32 pour avoir un menu graphique si tu préfères.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Répondre