web-dev-qa-db-fra.com

Que faire lorsque je reçois une erreur "tentative de lecture ou d'écriture en dehors du disque" hd0 "et que la réparation du démarrage ne résout pas le problème?

J'ai essayé d'installer Xubuntu 13.10 sur un ordinateur plus ancien. J'ai remarqué certaines difficultés lors de l'installation qui pourraient être pertinentes pour mes problèmes. Notamment:

  1. La résolution de l'écran était extrêmement basse. Les fenêtres étaient beaucoup plus grandes que l'écran et j'ai dû les déplacer pour accéder au bouton "Suivant".

  2. Le curseur de la souris était un flou de couleurs qui clignotait tout le temps.

L'installation est terminée et j'ai essayé de redémarrer l'ordinateur. Immédiatement j'ai eu:

error: attempt to read or write outside of disk 'hd0'. 
Entering rescue mode... 
grub rescue>

J'ai créé un disque USB Boot Repair , je l'ai démarré et j'ai choisi la réparation par défaut. L'application m'a dit que le problème est réparé et que si cela ne résout pas mon problème, je devrais montrer ce lien à quelqu'un qui peut m'aider.

Que devrais-je faire ensuite? J'ai déjà essayé d'installer Ubuntu et Xubuntu, tous deux sans succès.

MODIFIER:

J'ai trouvé une solution de contournement.

  1. Insérez le Xubuntu Live USB
  2. Sélectionnez "essayer Xubuntu"
  3. Dans le menu des paramètres sélectionnez "installer Xubuntu"

Cela a résolu le problème pour moi. Puisqu'il est résolu, je ne peux pas tester la réponse.

34
Martin Drozdik

Localisez la partition dans laquelle Linux est présent à l'aide de la technique suivante.

grub rescue > ls
(hd0) (hd0, msdos9)
grub rescue > ls (hd0,msdos9)/
grub rescue > ls (hd0,msdos8)/
grub rescue > ls (hd0,msdos5)/ # suppose this is root and bootloader of linux
grub rescue > ls (hd0,msdos5)/
grub rescue > set root=(hd0,msdos5)
grub rescue > set prefix=(hd0,msdos5)/boot/grub
grub rescue > insmod normal
grub rescue > normal

Maintenant, le menu de démarrage du système apparaît. Démarrez sous Linux.

Sudo update-grub
Sudo grub-install  /dev/sda # If the drive is hd0 the equivalent is sda, if it's hd1 then use sdb

Cela corrige le chargeur de démarrage.

33
user223882

Pour toute autre personne ayant ce problème:

Cela m'arrivait là où une nouvelle installation ou une nouvelle réparation fonctionnerait et redémarrerait, mais la prochaine fois que je redémarrerais, la même "erreur de lecture" se produirait. La plupart du temps, le noyau s'affolait et l'ordinateur nécessitait un redémarrage brutal.

J'ai suivi certains conseils et fait une nouvelle installation en utilisant les options avancées (n'utilisez pas "effacer le disque et installer ubuntu") en utilisant ces paramètres de partition:

  1. Créez une partition ext4 de 1 Go (1024 Mo) sur le début du disque; monté dans "/ boot"
  2. Créez votre espace d'installation souhaité dans ext4 monté dans "/" MOINS votre zone d'échange
  3. Utilisez l’espace restant pour l’échange. (TOUTES les partitions seront primaires)
  4. Dans le menu déroulant de l'installation de démarrage, sélectionnez votre partition "/ boot". Pas la racine du lecteur par défaut!
26
Andrew

Il peut être facilement résolu par l’invite de sauvetage Grub. La première réponse n'est pas tout à fait complète et j'ai eu la même erreur au début. Voici comment cela fonctionne:

Nous devons d'abord trouver la partition primaire. Ce sera là que se trouveront les fichiers essentiels nécessaires au démarrage de Linux. Nous entrons donc ici -

Grub> ls

Vous devriez maintenant voir une liste comparable à (hd0) (hd0, msdos5) (hd0, msdos1). Notez que vous pouvez avoir différentes partitions que moi, ainsi que plusieurs lecteurs, mais le processus est le même.

Maintenant, recherchez les partitions pour trouver le principal -

Grub> ls (hd0)
Grub> ls (hd0,msdos5)
Grub> ls (hd0,msdos1)

Jusqu'à ce que grub génère une liste de fichiers sur cette partition ou indique le type de système de fichiers et la date de la dernière modification.

2ème nous avons besoin de mettre en place quelques choses une fois que nous avons trouvé notre partition principale -

Grub> set prefix=(hd0,msdos1)/boot/grub
Grub> set root=(hd0,msdos1)
Grub> set

Une fois la dernière commande définie exécutée, Grub affichera une liste de paramètres différents. Vérifions maintenant que nous avons défini la racine et le préfixe corrects -

Grub> ls /boot

Grub devrait sortir une liste de fichiers contenus dans/boot.

3ème nous devons définir le point de montage et charger le noyau -

Grub> linux /vmlinuz root=/dev/sda1
Grub> initrd /initrd.img

Et enfin, nous démarrons le système -

Grub> boot

Si vous finissez par démarrer dans le shell busybox, entrez simplement fsck /dev/sda1. Ensuite, entrez exit et votre système démarrera normalement.

4
Zach Parker

J'ai résolu ce problème en rapprochant ma partition Linux du début du disque dur. Lorsque la partition Linux était à la fin de mon disque dur de 120 Go (40 Go à partir de la fin), j'ai eu ce problème. Aucune solution n'a fonctionné. Après avoir déplacé la partition Linux vers l'espace de 40 Go à 80 Go, le problème a disparu.

3
John

Après avoir recherché de nombreuses heures, j'ai essayé cette solution et elle fonctionne bien pour réinstaller le noyau:

Sudo dpkg --configure -a
Sudo apt-get install --reinstall linux-image-$(uname -r)
1
Zeyad Assem

Je parviens à résoudre ce problème après avoir utilisé le paquet disque vmdk de la machine virtuelle OVA dans virt-manager/QEMU/KVM. La machine virtuelle échouait avec ce message d'erreur.

La solution était de convertir vmdk en qcow2:

qemu-img convert -O qcow2 MyAppliance-disk1.vmdk MyAppliance.qcow2

Et utiliser à la place l'image convertie dans virt-manager.

0
Honza

J'ai eu ce problème en essayant d'installer Ubuntu 18 Server et Xubuntu 18 sur un serveur Dell. La sélection de UEFI au lieu de Legacy dans le menu BIOS a corrigé le problème.

0
arzach84