Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/04/2015, à 13:09

Larcenn

[Résolu] /boot vidé par accident

Bonjour a tous

Je vous explique mon problème, j'ai un serveur dédié sous Ubuntu Linux 14.04.1.

Durant une mise a jour j'ai eu une erreur car le /boot était plein, j'ai chercher un script qui permet de vidanger les anciens Kernel non utilisé.
Le problème c'est qu'il m'a supprimer l'intégralité du /boot... HOURA !


Et bien entendu je ne m'en suis rendu compte qu'une fois la machine relancée.

J'ai donc démarrer avec un mode de secours, monter mon disque dur, et copier par SSH les fichiers depuis un autre serveur de même version.

Une fois la machine relancée, et sous l'invite de GRUB> j'ai executer ces commandes :

set prefix=(hd0,msdos2)/home/grub
set root=hd0,msdos2
insmod normal
insmod boot
insmod linux
normal

Grub repasse en mode normal, et me propose de lancer une version, mais aucunes ne fonctionne même ne mode Recovery ....

Une idée ?


Edit modo : modification du titre

Dernière modification par cqfd93 (Le 29/04/2015, à 16:25)

Hors ligne

#2 Le 29/04/2015, à 13:16

Larcenn

Re : [Résolu] /boot vidé par accident

en lançant avec un mode rescue, je constate que j'ai 2 partitions, l'un qui se nome sda1 et l'autre sda2

Dans sda1 j'ai un dossier /grub et un /lost+found
Dans sda2 j'ai tout mon systeme.

J'essaye de copier mes fichiers dans le sda1 et je vous tiens au courant.

Hors ligne

#3 Le 29/04/2015, à 13:16

mazarini

Re : [Résolu] /boot vidé par accident

Peut être refaire le "update-grub" (ou grub-update)
Ca se fait en mode secours avec un chroot après avoir monté tes partitions.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#4 Le 29/04/2015, à 13:25

src

Re : [Résolu] /boot vidé par accident

A mon avis il faut faire un chroot et réinstaller le kernel + réinstaller grub
De mémoire voila les commandes , après avoir booté sur un LiveCD (sda2 est ton rootfs, sda1 ton /boot) :

# mount /dev/sda2 /mnt
# mount /dev/sda1 /mnt/boot
# chroot /mnt
# apt-get install --reinstall grub-pc linux-image-amd64
# update-grub2

Et ensuite tu prie Chuck Norris...

Dernière modification par src (Le 29/04/2015, à 13:26)


Actuellement sur Manjaro Xfce (amd64)

Hors ligne

#5 Le 29/04/2015, à 13:33

Rufus T. Firefly

Re : [Résolu] /boot vidé par accident

Salut,

Je pense qu'il faut installer un noyau et ça ne revient pas à simplement copier des fichiers...
Si tu peux démarrer avec un livecd, c'est assez facile. Tu "greffes" (chroot) ton système live sur ton linux mort. Et à partir de là tu peux installer un noyau.
En live :

sudo -i
mount /dev/racine /mnt <= remplacer racine par la bonne partition, sda2 (?, à vérifier avec fdisk -l)
mount /dev/part_boot /mnt/boot <= remplacer part_boot par la bonne partition
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount -t proc /proc /mnt/proc
mount --bind /run /mnt/run
mount -t sysfs /sys /mnt/sys
chroot /mnt

Une fois que c'est fait, le système du disque est actif, via le système du live

Ne reste plus qu'à installer un noyau avec apt-get install (sudo est inutile, tu es en root)
Je ne peux pas t'en dire plus, j'utilise debian et il se peut que ce soit un peu différent. En tous cas, il y a au moins un paquet linux-image et un paquet linux-headers. Le reste arrive peut-être via les dépendances...
Pour terminer, un petit update-grub pour régénérer un menu correct.
Re-démarrer...

Edit : grillé !


Edit bis : qu'est-ce que tu entends par "en lançant par un mode rescue" ? Normalement, pour démarrer en rescue, il faut aussi qu'il y ait un noyau... Et s'il y en a un...

Dernière modification par Rufus T. Firefly (Le 29/04/2015, à 13:44)


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#6 Le 29/04/2015, à 14:15

mazarini

Re : [Résolu] /boot vidé par accident

Rufus T. Firefly a écrit :

...
Edit bis : qu'est-ce que tu entends par "en lançant par un mode rescue" ? Normalement, pour démarrer en rescue, il faut aussi qu'il y ait un noyau... Et s'il y en a un...

Un serveur dans un datacenter peut être démarré en "mode rescue", ca correspond à ce que tu proposes avec un cd live sans mettre le cd.

Autrement, j'ai souvent des problèmes en chroot  avec les partitions que je résous de mémoire par un "mount all" ou un reboot. J'ai des messages concernant des problèmes de partitions non trouvées (alors qu'elles sont bien montées) lors de commande comme update-grub.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#7 Le 29/04/2015, à 14:26

Larcenn

Re : [Résolu] /boot vidé par accident

Merci infiniment de vos réponses !

Je vais essayer ce que vous me proposez, et oui je confirme quand je parle de mode Rescue c'est de l'équivalent LiveCD, mais sur le réseau.

Mon serveur est bien dans un datacenter.

EDIT :

J'ai donc fait :

# mount /dev/sda2 /mnt
# mount /dev/sda1 /mnt/boot
# chroot /mnt

Jusque là pas de probléme, par contre quand je fait :

# apt-get install --reinstall grub-pc linux-image-amd64

il me retourne :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
E: Impossible de trouver le paquet linux-image-amd64

Si je fait un

apt-get install

Il me retourne :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
3 partiellement installés ou enlevés.
Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
E: Can not write log (Is /dev/pts mounted?) - openpty (2: Aucun fichier ou dossier de ce type)
Paramétrage de linux-image-3.13.0-49-generic (3.13.0-49.83) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
initrd.img(/boot/initrd.img-3.13.0-49-generic
) points to /boot/initrd.img-3.13.0-49-generic
 (/boot/initrd.img-3.13.0-49-generic) -- doing nothing at /var/lib/dpkg/info/linux-image-3.13.0-49-generic.postinst li                                    ne 491.
vmlinuz(/boot/vmlinuz-3.13.0-49-generic
) points to /boot/vmlinuz-3.13.0-49-generic
 (/boot/vmlinuz-3.13.0-49-generic) -- doing nothing at /var/lib/dpkg/info/linux-image-3.13.0-49-generic.postinst line                                     491.
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 3.13.0-49-generic /boot/vmlinuz-3.13.0-49-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.13.0-49-generic /boot/vmlinuz-3.13.0-49-generic
update-initramfs: Generating /boot/initrd.img-3.13.0-49-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 3.13.0-49-generic /boot/vmlinuz-3.13.0-49-generic
/usr/sbin/grub-probe : erreur : impossible de trouver un périphérique pour / (/dev est-il monté ?).
run-parts: /etc/kernel/postinst.d/zz-update-grub exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-3.13.0-49-generic.postinst line 1025.
dpkg: error processing package linux-image-3.13.0-49-generic (--configure):
 le sous-processus script post-installation installé a retourné une erreur de sortie d'état 2
dpkg: des problèmes de dépendances empêchent la configuration de linux-image-extra-3.13.0-49-generic :
 linux-image-extra-3.13.0-49-generic dépend de linux-image-3.13.0-49-generic ; cependant :
 Le paquet linux-image-3.13.0-49-generic n'est pas encore configuré.

dpkg: error processing package linux-image-extra-3.13.0-49-generic (--configure):
 problèmes de dépendances - laissé non configuré
dpkg: des problèmes de dépendances empêchent la configuration de linux-image-generic :
 linux-image-generic dépend de linux-image-3.13.0-49-generic ; cependant :
 Le paquet linux-image-3.13.0-49-generic n'est pas encore configuré.
 linux-image-generic dépend de linux-image-extra-3.13.0-49-generic ; cependant :
 Le paquet linux-image-extra-3.13.0-49-generic n'est pas encore configuré.

dpkg: error processing package linux-image-generic (--configure):
 problèmes de dépendances - laissé non configuré
Des erreurs ont été rencontrées pendant l'exécution :
 linux-image-3.13.0-49-generic
 linux-image-extra-3.13.0-49-generic
 linux-image-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)

Dernière modification par Larcenn (Le 29/04/2015, à 14:37)

Hors ligne

#8 Le 29/04/2015, à 15:03

Larcenn

Re : [Résolu] /boot vidé par accident

J'ai également voulu reinstaller grub-pc

apt-get install grub-pc

Mais il me répond :


Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty-updates/main grub-common amd64 2.02~beta2-9ubuntu1
  Ne parvient pas à résoudre « ftp.free.fr »
Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty-updates/main grub2-common amd64 2.02~beta2-9ubuntu1
  Ne parvient pas à résoudre « ftp.free.fr »
Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty-updates/main grub-pc-bin amd64 2.02~beta2-9ubuntu1
  Ne parvient pas à résoudre « ftp.free.fr »
Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty-updates/main grub-pc amd64 2.02~beta2-9ubuntu1
  Ne parvient pas à résoudre « ftp.free.fr »
Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty/main grub-gfxpayload-lists amd64 0.6
  Ne parvient pas à résoudre « ftp.free.fr »
Err http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/ trusty/main os-prober amd64 1.63ubuntu1
  Ne parvient pas à résoudre « ftp.free.fr »
E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/g/grub2/grub-common_2.02~beta2-9ubuntu1_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/g/grub2/grub2-common_2.02~beta2-9ubuntu1_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/g/grub2/grub-pc-bin_2.02~beta2-9ubuntu1_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/g/grub2/grub-pc_2.02~beta2-9ubuntu1_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/g/grub-gfxpayload-lists/grub-gfxpayload-lists_0.6_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer http://ftp.free.fr/mirrors/ftp.ubuntu.com/ubuntu/pool/main/o/os-prober/os-prober_1.63ubuntu1_amd64.deb  Ne parvient pas à résoudre « ftp.free.fr »

E: Impossible de récupérer quelques archives, peut-être devrez-vous lancer apt-get update ou essayer avec --fix-missing ?

Alors que l'adresse fonctionne chez moi.

Hors ligne

#9 Le 29/04/2015, à 15:15

src

Re : [Résolu] /boot vidé par accident

Ceci est probablement du à l'absence de réseau, il faut le configurer.


Actuellement sur Manjaro Xfce (amd64)

Hors ligne

#10 Le 29/04/2015, à 15:25

Larcenn

Re : [Résolu] /boot vidé par accident

En fait j'avais fait une erreur, j'ai tout recommencer a zéro et je n'ai plus cette erreur.

Je suis en train de tenter de réinstaller le noyaux

Hors ligne

#11 Le 29/04/2015, à 15:43

mazarini

Re : [Résolu] /boot vidé par accident

Pour info, il faut aussi faire les mount indiqués par Rufus :

mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount -t proc /proc /mnt/proc
mount --bind /run /mnt/run
mount -t sysfs /sys /mnt/sys

Monter uniquement les partitions ne suffit pas.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#12 Le 29/04/2015, à 15:44

Larcenn

Re : [Résolu] /boot vidé par accident

Ayé !

Donc ma procédure :

sudo -i
mount /dev/racine /mnt <= remplacer racine par la bonne partition, sda2 (?, à vérifier avec fdisk -l)
mount /dev/part_boot /mnt/boot <= remplacer part_boot par la bonne partition
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount -t proc /proc /mnt/proc
mount --bind /run /mnt/run
mount -t sysfs /sys /mnt/sys
chroot /mnt

Ensuite un petit

apt-get update
apt-get remove grub-pc
apt-get install grub-pc linux-image-amd64

On configure grub-pc, on reboote, et ça marche !

Un immense merci a vous tous pour votre aide. You rock !

Hors ligne