J'installe Ubuntu 16.04 sur un disque dur externe (sdb). Mon ordinateur possède également un disque dur interne Windows 10 (sda).
Lors de la phase de partitionnement, j'ai choisi d'installer le chargeur de démarrage sur le disque dur externe (sdb).
Lorsque Uniquity installe le système, il monte le ESP (sda2) de Windows 10 et copie les chargeurs de démarrage Ubuntu/grub, alors qu'il aurait dû monter le ESP créé sur le disque dur externe ( sdb1)./dev/sda2 est le Win10 ESP et il est monté sur/target/boot/efi./dev/sdb1 est le bon ESP mais n'est pas touché.
Comme les informations de démarrage ne se trouvent pas sur le disque dur externe, le disque Windows 10 doit être présent pour pouvoir démarrer Ubuntu, car les informations de démarrage pointant vers Ubuntu se trouvent sous Windows ESP - pas exactement optimale.
La question est: puis-je forcer Ubiquity à utiliser sdb1 comme ESP? Cela a du sens par défaut car c'est là que j'ai choisi d'installer grub mais apparemment pas.
Ubiquity est la version 2.21.63. Je reviens sur cette question car j'ai besoin d'Ubuntu sur cet ordinateur. J'ai déposé un rapport de bogue à l'origine mais il est toujours indécis/non attribué.
Eh bien, je n'ai pas trouvé de solution, mais j'ai trouvé une solution de contournement.
dmesg | grep ata
pour trouver l’ID du lecteur interne. Dans mon cas, c'était ata1.00e
pour modifier la configuration de grub.libata.force=1.00:disable
à la fin de linux
. 1.00
vient de ata1.00
f10
et la machine devrait démarrer et Linux ne devrait pas voir le lecteur - vérifiez avec lsblk
/dev/sda
Je recommanderais également d'ajouter ceci à la configuration grub du système installé afin qu'il ne voie même pas le lecteur interne. Je ne veux rien qui lui arrive.
Merci à https://askubuntu.com/a/387261/440238 pour la partie libata.force=1.00:disable
.
En plus de celle fournie par Brady Dean, deux solutions de contournement me sont proposées:
gdisk
, sgdisk
ou cgdisk
, cela signifierait le changer de EF00 à n'importe quoi d'autre. (0700 le rendra visible en tant que partition FAT normale sous Windows.)parted
, supprimez le "drapeau de démarrage" de l'ESP./dev/sda
, mais remarquera celui qui se trouve sur /dev/sdb
et procède normalement./dev/sda
. Oublier cette étape peut avoir peu ou pas de conséquences négatives, mais selon le code de type que vous utilisez, Windows peut commencer à l'afficher comme une partition normale. et si vous devez réinstaller Windows (ou un autre système d'exploitation), il peut être important que le code de type soit correct.Notez que je n'ai jamais essayé cette approche, je ne peux donc pas garantir qu'elle fonctionnera. Si cela ne fonctionne pas, alors ces informations doivent être ajoutées au rapport de bogue référencé dans la question.
ubiquity -b
. Le programme d'installation devrait démarrer, mais il le fera d'une manière qui entraînera l'installation de GRUB et non ./etc/fstab
pour identifier le ESP que vous souhaitez utiliser, montez-le sur /boot/efi
et installez soit rEFInd (via un paquet Debian ou PPA), soit le fichier de base habituel. paquet efi./dev/sdb
plutôt qu'un autre sur /dev/sda
. Vous devrez peut-être utiliser une astuce de code de type, comme dans la solution précédente. ou peut-être que configurer /etc/fstab
, comme avec rEFInd, ferait l'affaire.J'utilise fréquemment la méthode ubiquity -b
pour installer sur des ordinateurs qui amorcent plusieurs distributions, car gérer GRUB est dans ce cas un peu gênant et, au pire, totalement impraticable. rEFInd fait un bien meilleur travail avec de telles installations. Bien sûr, il s’agit d’un problème quelque peu différent de celui d’obtenir tous vos éléments installés sur /dev/sdb
plutôt que sur /dev/sda
, mais la même solution devrait fonctionner.