Système Debian Wheezy vautré

Bonsoir,

Ce soir c’est la grande soirée poisse…

Sur ma Debian 7.1 j’ai supprimé par accident /bin juste après avoir fini d’installer tout mon serveur avec réimportation de boites mail etc… (4 jours de boulot), je finissais tout juste de mettre en place la sauvegarde automatique qui n’a même pas eu le temps de tourner avant ma bêtise.

Du coup j’ai juste une session ssh ouverte et plus rien ne fonctionne ou presque parmi les commandes de base.

Ce que j’ai fait :

  • Reconstruire une debian 7.1 sur une machine virtuelle
  • Réinstaller tous les packages que j’utilise
  • Zipper le répertoire /bin et l’exporter
  • Dézipper localement et déposer par ftp l’ensemble des fichiers sur un répertoire du serveur en crise
  • Écrire un fichier php qui me recréé le répertoire /bin
  • Écrire un fichier php qui me copie les fichiers du répertoire ftp vers /bin
  • Écrire un fichier php qui me fait un chmod 755 et un chown root de tous mes fichiers dans le répertoire bin
    (oui, je n’ai jamais fait de php de ma vie donc j’ai fais 3 fichiers)

Bref, je pensais avoir sauvé les meubles, malheureusement maintenant quand je fais appel à une commande issue de /bin comme ls ou cp par exemple j’obtiens l’erreur suivante :

Segmentation fault

Et là franchement je sais plus trop quoi faire, si vous avez une idée de génie je suis vraiment preneur.

J’ai bien tenté un apt-get --reinstall install coreutils mais ça ne sert évidemment à rien, car sans le contenu de /bin plus rien ne marche, je garde ma session ssh ouverte toute la nuit en espérant avoir des réponses demain.

Merci par avance à qui pourra m’aider.

Tu place sur un support amovible tout ce qu’il te faut et tu démarre depuis un live cd comme sysrescuecd pour pouvoir y positionné ton répertoire /bin.

Attention au droits et propriétaires des dossier/fichiers.

J’aimerais bien, mais le serveur est chez un hébergeur à l’étranger… :’(

D’ailleurs au vu de ce que je comprends d’une erreur de type Segmentation fault, il s’agirait d’une erreur mémoire lorsque le programme appelle un secteur de la mémoire et que celui-ci ne contient pas ce qu’il attend.

Ceci aurait effectivement une certaine logique vu ce que j’ai fait jusque là, donc je me demande si un simple reboot peut corriger le problème.

L’ennui c’est que si je suis complètement à coté de la plaque, le serveur ne rebootera pas et ça en sera fini…

je verrai plutôt l’utilisation d’une commande de gestion des paquetage qui réinstallerai les fichiers constatés comme manquants dans le système (/bin) alors que le paquetage est considéré comme installé.
Ce qui permettrait de réinstaller la même version de fichier que celle qui a été effacée dans /bin.

Je cherche, mais il faudrait des personnes plus expérimentées que moi avec les commande de gestion de paquetages.

La copie du “/bin” zippé a sûrement été faite à partir des fichiers d’une autre version => “segmentation fault”.

En résummé, je cherche la commande qui réinstallera les paquetages qui ont été installés (un peu comme “dpkg -l” ou avec “aptitude”) mais dont les fichiers sont effectivement manquants dans le système (/bin/*)

Tant que les commandes du dossier “/usr/sbin” et “/usr/bin” sont là et que un accès au compte root par “su” ou “sudo” est possible, il y a de l’espoir…

Peut-être un problème lié à l’architecture i386 ou amd64.

Effectivement j’en viens à me demander si j’ai bien pris la bonne version de debian pour la restauration du contenu de /bin, un collègue m’a fait la même remarque, je vais aller vérifier ça et je vous dit.

Edit :

Apparemment mon serveur utilise la version suivante : 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1 i686

Plus qu’à vérifier si c’est bien ça que j’ai pris pour ma machine virtuelle, à 2 heure du matin on n’est plus sûr de rien…

Redit :

Sur ma machine virtuelle j’avais mis ça : Linux debian 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1 i686

Misère, ça veut dire que c’est globalement identique, pas rassurant mon erreur “Segmentation Fault” du coup…

Question subsidiaire, mon serveur dédié est un Quad-Core Xeon X3220, pensez-vous que les bin générés sur ma machine virtuelle en local sont différents si le processeur simulé n’est pas un Quad-Core ?

j’ai trouvé un des fichiers du dossier “/bin” dont le groupe devrait être modifié et le bit SUID activé:

-rwsr-xr-- 1 root fuse 30864 janv. 2 2013 fusermount

mais vu que déjà “ls” renvoie une seg fault …
d’autre part certains fichiers du dossier “/bin” sont des liens, et je me demande si PHP a pu les recréer.
ex:

lrwxrwxrwx 1 root root 6 juil. 29 2012 bzcmp -> bzdiff -rwxr-xr-x 1 root root 2140 juil. 29 2012 bzdiff lrwxrwxrwx 1 root root 6 juil. 29 2012 bzegrep -> bzgrep
Je voudrais aussi savoir si tu as accès au compte root (par su ou sudo) sur ce serveur, et si tu peux utiliser dpkg ou apt-get.
Sinon, il faudra que je (ou quelqu’un d’autre) trouve une autre méthode que celle que je suis en train de tester.

Merci

non, ce sont les mêmes binaires.

tu ne peux vraiment pas booter ton serveur distant sur un système de dépannage prévu par l’hébergeur?

la plupart des VPS ont ça. Pour les dédiés c’est peut-être différent.

[quote=“MicP”]j’ai trouvé un des fichiers du dossier “/bin” dont le groupe devrait être modifié et le bit SUID activé:

-rwsr-xr-- 1 root fuse 30864 janv. 2 2013 fusermount

mais vu que déjà “ls” renvoie une seg fault …
d’autre part certains fichiers du dossier “/bin” sont des liens, et je me demande si PHP a pu les recréer.
ex:

lrwxrwxrwx 1 root root 6 juil. 29 2012 bzcmp -> bzdiff -rwxr-xr-x 1 root root 2140 juil. 29 2012 bzdiff lrwxrwxrwx 1 root root 6 juil. 29 2012 bzegrep -> bzgrep
Je voudrais aussi savoir si tu as accès au compte root (par su ou sudo) sur ce serveur, et si tu peux utiliser dpkg ou apt-get.
Sinon, il faudra que je (ou quelqu’un d’autre) trouve une autre méthode que celle que je suis en train de tester.

Merci[/quote]

Oui j’ai une session ssh ouverte avec root, donc dans l’absolu j’ai accès à tous les fichiers. Le problème c’est que sans /bin une fonction comme apt-get install qui a vite fait de faire appel à la fonction mount ne fonctionne pas vraiment.

dkpg semble également fonctionner.

Pour ce qui est des liens symboliques, je ne m’en fais pas trop, déjà si j’arrive à faire fonctionner la fonction cp et par extension scp j’aurai fait un grand pas en avant dans la résolution du problème.

[quote=“agentsteel”]
non, ce sont les mêmes binaires.

tu ne peux vraiment pas booter ton serveur distant sur un système de dépannage prévu par l’hébergeur?

la plupart des VPS ont ça. Pour les dédiés c’est peut-être différent.[/quote]

Oui tout à fait, il y a une fonction rescue qui monte un système bsd en mémoire qui a accès au disque du serveur, après reboot le serveur se relance sur le disque.

Le truc c’est que pour l’instant le serveur fonctionne grace aux process qui sont encore présents (les quelques sites et les boites mails présents sont opérationnels), dès que je vais passer en mode rescue je vais donc provoquer une interruption de service et j’aimerai avoir toutes les cartes en main avant d’y arriver.

Par contre si les binaires sont les mêmes je me demande pourquoi j’ai un “Segmentation Fault”, je pense que je vais simuler la suppression du /bin sur une machine virtuelle, recopier le /bin ensuite depuis une autre machine virtuelle pour voir ce qui se passe.

je viens de faire un test sur une machine virtuelle.
j’ai renommé “/bin/mount” en “/bin/mount00” et j’ai utilisé “dpkg” pour installer “mc” => pas de problèmes.
Par contre, “/bin/sh”, “/bin/rm” et “/bin/tar” sont indispensables au fonctionnement de “dpkg”.
Donc, “dpkg” et compagnie ne sont pas utilisables sans “/bin”.
Comme le disait bin_loser, cette méthode ne convient donc pas à la situation.

Toutefois, je me demande si le “Segment fault” observé ne serait pas la conséquence d’une différence entre les versions de paquetage.
On pourrait comparer les version importées sur le serveur avec celles qui sont citées dans “/var/log/apt/history.log” du serveur.

Peut-être une piste en effet.

Pour info voici le détail de tout ce qui était dans /var/log/apt/history.log avant que je prenne la main sur le système.

Start-Date: 2013-07-23  07:14:44
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install locales
Install: locales:i386 (2.13-38)
End-Date: 2013-07-23  07:14:49

Start-Date: 2013-07-23  09:14:53
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install busybox
Install: busybox:i386 (1.20.0-7)
End-Date: 2013-07-23  09:14:55

Start-Date: 2013-07-23  09:14:57
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install initramfs-tools
Install: libklibc:i386 (2.0.1-3.1, automatic), klibc-utils:i386 (2.0.1-3.1, automatic), initramfs-tools:i386 (0.109.1)
End-Date: 2013-07-23  09:15:01

Start-Date: 2013-07-23  09:15:05
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install linux-image-686-pae
Install: linux-image-3.2.0-4-686-pae:i386 (3.2.46-1, automatic), linux-base:i386 (3.5, automatic), libuuid-perl:i386 (0.02-5, automatic), linux-image-686-pae:i386 (3.2+46)
End-Date: 2013-07-23  09:15:21

Start-Date: 2013-07-23  09:15:23
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install pciutils
Install: libpci3:i386 (3.1.9-6, automatic), pciutils:i386 (3.1.9-6)
End-Date: 2013-07-23  09:15:27

Start-Date: 2013-07-23  09:15:29
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install usbutils
Install: libusb-1.0-0:i386 (1.0.11-1, automatic), usbutils:i386 (005-3)
End-Date: 2013-07-23  09:15:33

Start-Date: 2013-07-23  09:15:36
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install acpi
Install: acpi:i386 (1.6-1)
End-Date: 2013-07-23  09:15:38

Start-Date: 2013-07-23  09:15:41
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install acpid
Install: module-init-tools:i386 (9-3, automatic), acpid:i386 (2.0.16-1+deb7u1)
End-Date: 2013-07-23  09:15:44

Start-Date: 2013-07-23  09:15:46
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install acpi-support-base
Install: acpi-support-base:i386 (0.140-5)
End-Date: 2013-07-23  09:15:48

Start-Date: 2013-07-23  09:15:51
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install libc6-i686
Install: libc6-i686:i386 (2.13-38)
End-Date: 2013-07-23  09:15:53

Start-Date: 2013-07-23  09:15:55
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install openssh-server
Install: libkeyutils1:i386 (1.5.5-3, automatic), libedit2:i386 (2.11-20080614-5, automatic), libkrb5-3:i386 (1.10.1+dfsg-5, automatic), libkrb5support0:i386 (1.10.1+dfsg-5, automatic), libwrap0:i386 (7.6.q-24, automatic), libbsd0:i386 (0.4.2-1, automatic), libk5crypto3:i386 (1.10.1+dfsg-5, automatic), openssh-client:i386 (6.0p1-4, automatic), libgssapi-krb5-2:i386 (1.10.1+dfsg-5, automatic), openssh-server:i386 (6.0p1-4)
End-Date: 2013-07-23  09:16:10

Start-Date: 2013-07-23  09:16:37
Upgrade: libkrb5-3:i386 (1.10.1+dfsg-5, 1.10.1+dfsg-5+deb7u1), libkrb5support0:i386 (1.10.1+dfsg-5, 1.10.1+dfsg-5+deb7u1), libk5crypto3:i386 (1.10.1+dfsg-5, 1.10.1+dfsg-5+deb7u1), libgssapi-krb5-2:i386 (1.10.1+dfsg-5, 1.10.1+dfsg-5+deb7u1)
End-Date: 2013-07-23  09:16:43

Start-Date: 2013-07-23  09:16:45
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install laptop-detect
Install: laptop-detect:i386 (0.13.7)
End-Date: 2013-07-23  09:16:47

Start-Date: 2013-07-23  09:16:50
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install discover
Install: libdiscover2:i386 (2.1.2-5.2, automatic), discover:i386 (2.1.2-5.2), libexpat1:i386 (2.1.0-1, automatic), discover-data:i386 (2.2010.10.18, automatic)
End-Date: 2013-07-23  09:16:56

Start-Date: 2013-07-23  09:16:59
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove -o APT::Install-Recommends=false install installation-report
Install: installation-report:i386 (2.49)
End-Date: 2013-07-23  09:17:01

Start-Date: 2013-07-23  09:17:03
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove -o APT::Install-Recommends=false install popularity-contest
Install: popularity-contest:i386 (1.56)
End-Date: 2013-07-23  09:17:06

Start-Date: 2013-07-23  09:17:22
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y -o APT::Install-Recommends=true -o APT::Get::AutomaticRemove=true install task-english whois python2.6-minimal mlocate m4 mime-support file exim4-base w3m libswitch-perl less dnsutils bsd-mailx apt-listchanges rpcbind doc-debian procmail dc perl-modules python-support bind9-host liblockfile-bin db5.1-util mutt patch nfs-common exim4-config reportbug texinfo python2.7 time exim4 python-minimal debian-faq krb5-locales ucf libclass-isa-perl ftp lsof wamerican bash-completion gettext-base at bc python-reportbug python host perl exim4-daemon-light ncurses-term bzip2 telnet python-apt
Install: dmsetup:i386 (1.02.74-7, automatic), ispell:i386 (3.3.02-6, automatic), ibritish:i386 (3.3.02-6, automatic), wamerican:i386 (7.1-1), bzip2:i386 (1.0.6-4), mlocate:i386 (0.23.1-1), libpth20:i386 (2.0.7-16, automatic), python-support:i386 (1.0.15), python2.6-minimal:i386 (2.6.8-1.1), exim4-config:i386 (4.80-7), libnfsidmap2:i386 (0.25-4, automatic), bind9-host:i386 (9.8.4.dfsg.P1-6+nmu2), mime-support:i386 (3.52-1), telnet:i386 (0.17-36), python-debian:i386 (0.1.21, automatic), lsof:i386 (4.86+dfsg-1), iso-codes:i386 (3.41-1, automatic), libclass-isa-perl:i386 (0.36-3), bash-completion:i386 (2.0-1), task-english:i386 (3.14.1), krb5-locales:i386 (1.10.1+dfsg-5+deb7u1), dnsutils:i386 (9.8.4.dfsg.P1-6+nmu2), libswitch-perl:i386 (2.16-2), exim4-daemon-light:i386 (4.80-7), perl:i386 (5.14.2-21), libcap2:i386 (2.22-1.2, automatic), mutt:i386 (1.5.21-6.2), reportbug:i386 (6.4.4), libsasl2-modules:i386 (2.1.25.dfsg1-6+deb7u1, automatic), bc:i386 (1.06.95-2), m4:i386 (1.4.16-3), doc-debian:i386 (6.1), dc:i386 (1.06.95-2), at:i386 (3.1.13-2), libdns88:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), ienglish-common:i386 (3.3.02-6, automatic), ncurses-term:i386 (5.9-10), libpcre3:i386 (8.30-5, automatic), python-apt:i386 (0.8.8.2), whois:i386 (5.0.23), libasprintf0c2:i386 (0.18.1.1-9, automatic), libevent-2.0-5:i386 (2.0.19-stable-3, automatic), psmisc:i386 (22.19-1+deb7u1, automatic), xml-core:i386 (0.13+nmu2, automatic), python2.6:i386 (2.6.8-1.1, automatic), python2.7:i386 (2.7.3-6), python-minimal:i386 (2.7.3-4), libisccc80:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), libdevmapper1.02.1:i386 (1.02.74-7, automatic), geoip-database:i386 (20130213-1, automatic), util-linux-locales:i386 (2.20.1-5.3, automatic), libtokyocabinet9:i386 (1.4.47-2, automatic), procmail:i386 (3.22-20), python2.7-minimal:i386 (2.7.3-6, automatic), time:i386 (1.7-24), liblwres80:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), python-soappy:i386 (0.12.0-4, automatic), libtirpc1:i386 (0.2.2-5, automatic), python:i386 (2.7.3-4), ftp:i386 (0.17-27), dictionaries-common:i386 (1.12.11, automatic), ca-certificates:i386 (20130119, automatic), w3m:i386 (0.5.3-8), libxml2:i386 (2.8.0+dfsg1-7+nmu1, automatic), libbind9-80:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), libgpm2:i386 (1.20.4-6, automatic), debian-faq:i386 (5.0.1), file:i386 (5.11-2), liblockfile-bin:i386 (1.09-5), sgml-base:i386 (1.26+nmu4, automatic), ucf:i386 (3.0025+nmu3), gettext-base:i386 (0.18.1.1-9), perl-modules:i386 (5.14.2-21), libgeoip1:i386 (1.4.8+dfsg-3, automatic), rpcbind:i386 (0.2.0-8), libldap-2.4-2:i386 (2.4.31-1+nmu2, automatic), libisccfg82:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), python-fpconst:i386 (0.7.2-5, automatic), libsasl2-2:i386 (2.1.25.dfsg1-6+deb7u1, automatic), bsd-mailx:i386 (8.1.2-0.20111106cvs-1), libgpgme11:i386 (1.2.0-1.4, automatic), exim4:i386 (4.80-7), openssl:i386 (1.0.1e-2, automatic), libgc1c2:i386 (7.1-9.1, automatic), exim4-base:i386 (4.80-7), patch:i386 (2.6.1-3), host:i386 (9.8.4.dfsg.P1-6+nmu2), python-reportbug:i386 (6.4.4), apt-listchanges:i386 (2.85.11), libisc84:i386 (9.8.4.dfsg.P1-6+nmu2, automatic), libgssglue1:i386 (0.4-2, automatic), python-chardet:i386 (2.0.1-2, automatic), iamerican:i386 (3.3.02-6, automatic), nfs-common:i386 (1.2.6-4), db5.1-util:i386 (5.1.29-5), lsb-release:i386 (4.1+Debian8+deb7u1, automatic), less:i386 (444-4), libmagic1:i386 (5.11-2, automatic), texinfo:i386 (4.13a.dfsg.1-10), python-debianbts:i386 (1.11, automatic), liblockfile1:i386 (1.09-5, automatic), python-apt-common:i386 (0.8.8.2, automatic)
End-Date: 2013-07-23  09:19:40

Start-Date: 2013-07-23  09:19:43
End-Date: 2013-07-23  09:19:43

Start-Date: 2013-07-23  09:19:48
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install grub-common
Install: libfuse2:i386 (2.9.0-2+deb7u1, automatic), os-prober:i386 (1.58, automatic), libfreetype6:i386 (2.4.9-1.1, automatic), grub-common:i386 (1.99-27+deb7u1)
End-Date: 2013-07-23  09:19:54

Start-Date: 2013-07-23  09:20:00
Commandline: apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install grub-pc
Install: grub2-common:i386 (1.99-27+deb7u1, automatic), grub-pc:i386 (1.99-27+deb7u1), grub-pc-bin:i386 (1.99-27+deb7u1, automatic)
End-Date: 2013-07-23  09:20:07

Edit : vu que rien d’évident ne ressort j’imagine (à tord ?) que tous les outils de base sont dans un package qui les regroupe, mais alors lequel…

En fait ils ne sont pas tous dans un seul paquetage, mais plusieurs.

dpkg -S, --search motif-du-fichier-à-rechercher ... Recherche un fichier dans les paquets installés. je ne suis pas encore sûr que cette commande me renvoie la liste complète, mais voilà ce que ça donne sur mon système où j’ai tenté une recherche des fichiers installés contenants la chaîne “/bin” :

[code]dpkg -S /bin
bzip2, initscripts, sysvinit-utils, kbd, kmod, sed, less, console-setup, iproute, netcat-traditional, cpio, acl, base-files, netcat-openbsd, xserver-xorg-input-vmmouse, gzip, psmisc, procps, mount, net-tools, util-linux, iputils-ping, busybox, fuse, ntfs-3g, coreutils, bash, hostname, login, tar, nano, bsdutils, debianutils, dash, grep: /bin

dpkg-query -s bzip2 | grep Version
Version: 1.0.6-4

dpkg-query -L bzip2
/.
/bin
/bin/bzip2
/bin/bunzip2
/bin/bzcat
/bin/bzip2recover
/bin/bzexe
/bin/bzgrep
/bin/bzmore
/bin/bzdiff
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/bzcmp.1.gz
/usr/share/man/man1/bzdiff.1.gz
/usr/share/man/man1/bzegrep.1.gz
/usr/share/man/man1/bzexe.1.gz
/usr/share/man/man1/bzfgrep.1.gz
/usr/share/man/man1/bzgrep.1.gz
/usr/share/man/man1/bzip2.1.gz
/usr/share/man/man1/bzless.1.gz
/usr/share/man/man1/bzmore.1.gz
/usr/share/doc
/usr/share/doc/bzip2
/usr/share/doc/bzip2/changelog.gz
/usr/share/doc/bzip2/changelog.Debian.gz
/usr/share/doc/bzip2/copyright
/bin/bzcmp
/bin/bzegrep
/bin/bzfgrep
/bin/bzless
/usr/share/man/man1/bunzip2.1.gz
/usr/share/man/man1/bzcat.1.gz
/usr/share/man/man1/bzip2recover.1.gz
[/code]

Je n’ai pas eu encore le temps d’aller assez loin (démarches administratives et autres ce matin…)
Je cherche une commande permettant de n’extraire d’un paquetage que les fichiers du dossier “/bin”.
J’ai trouvé des options pour ignorer les scripts de configuration, et d’autres options intéressantes pour extraire dans un dossier cible précis,
en fait, je suis en train d’apprendre, et j’espère que quelqu’un de plus compétant que moi viendra nous faire gagner du temps…

Merci pour tes efforts MiCp je me sens moins seul :slightly_smiling:

J’ai tenté un truc suite à une page fort intéressante que j’ai trouvé sur le sujet (celle-ci : serverfault.com/questions/297439 … to-recover).

Du coup j’ai tenté un petit :

cd /var/cache/apt/archives dpkg -x coreutils_8.13-3.5_i386.deb /

Pas de bol je me prends l’erreur :

Visiblement tar est appelé pour détricoter le .deb et comme tar est dans /bin ça marche pas.

Juste pour voir, que retourne

Je me disais que ce problème de “Segmentation fault” pourrait être l’occasion d’ouvrir un nouveau fil dans la rubrique “programmation”,
parceque si ça se trouve, ce n’est pas le dossier “/bin” importé qui posait problème, mais autre chose…

J’ai parcouru le lien que tu transmet, et effectivement, c’est un peu la même idée, mais je constate qu’ils ont quand même été obligé de stopper la machine, ce que tu cherche justement à éviter.

[quote=“jcsm33”]Juste pour voir, que retourne

# ldd /bin/tar Segmentation fault

[quote=“MicP”]Je me disais que ce problème de “Segmentation fault” pourrait être l’occasion d’ouvrir un nouveau fil dans la rubrique “programmation”,
parceque si ça se trouve, ce n’est pas le dossier “/bin” importé qui posait problème, mais autre chose…[/quote]

Ca me semble assez peu probable, le système se portait très bien avant que je commence à tout saloper.

Je penche pour les causes suivantes :

  • Les fichiers recopiés par php pour meubler mon /bin qui ne lui plaisent pas (corruption quelconque)
  • Les fichiers importés ne sont pas compatibles avec mon install
  • Je n’ai pas pu importer tous les fichiers dont il a besoin

Je crains que ça se finisse en “nuit de la réinstall” toute cette affaire… Avec un peu de chance le mode recovery me permettra de régler le problème, mais il faudra tout de même que je me prépare à tout réinstaller derrière si ça ne se passe pas bien (ce à quoi je m’attends).

Et ce que je te proposé en tout début, cela n’aurait pas été plus simple ?

De plus tu ne précisé pas que ton serveur été distant et que tu n’avais pas la main dessus directement.

  • EDIT - Après je dit ça mais si c’est un serveur déjà en production, ce n’est pas normale qu’il n’y est pas déjà de sauvegarde :whistle:

[quote=“Clochette”]Et ce que je te proposé en tout début, cela n’aurait pas été plus simple ?

De plus tu ne précisé pas que ton serveur été distant et que tu n’avais pas la main dessus directement.
[/quote]

Oui désolé il manquait cette info, d’où la réponse que je t’avais faite juste après.

[quote=“Clochette”]

  • EDIT - Après je dit ça mais si c’est un serveur déjà en production, ce n’est pas normale qu’il n’y est pas déjà de sauvegarde :whistle:[/quote]

Pour l’histoire complète c’est un serveur de prod qui est tombé pour cause matérielle, sans récupération possible.
Du coup, l’hébergeur m’a remis à disposition un serveur vierge, que j’ai reconstruit depuis les sauvegardes que j’avais en urgence, car comme c’est (entre autres) un serveur mail, je n’avais pas envie de rater trop de données.
J’ai bossé un peu tous les soirs pour restaurer le bazar (sites associatifs et cie), jusqu’à hier soir ou j’ai tout finalisé et où j’avais tout juste installé l’application de sauvegarde qui devait commencer son boulot à 1h du matin… Et c’est à 23h30 avant d’aller me coucher que j’ai viré /bin en pensant me trouver dans un autre répertoire (dans le noir j’ai fait cd // au lieu de cd … et du coup je me situais pas à l’endroit prévu).

Effectivement, j’aurai du commencer par installer l’application de sauvegarde, mais là je plaide le pas de bol quand même…

Comme bash est dans /bin, essaye ça