Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Debian] Reconstruire la liste des paquets installes

19 réponses
Avatar
Remi Moyen
Salut,

Suite à une tentative de changement de noyau (voir mes derniers posts,
"Vieille machine et changement de noyau"), j'ai un disque dur qui a fini
par claquer. Grrr. Bon, il était peut-être déjà pas très frais avant,
n'empêche qu'il a claqué quand j'ai changé de noyau.

Bref, je suis en train de bricoler pour remettre le système d'aplomb.
Y'avait sur ce disque un certain nombre de partitions de donnée (dont,
putain, un peu plus de 300 CDs dont je m'étais paluché l'encodage un par
un...), mais surtout, y'avait /var.

Du coup, évidemment, il m'a fallu d'abord recréer quelques fichiers dans
le nouveau /var, pour que divers services se lancent bien. Mais surtout,
je me suis rappellé que c'est dans /var qu'apt (ou dpkg) stocke les
paquets disponibles, téléchargés, et surtout, surtout, installés !

Actuellement, si je fais, par exemple, un "apt-get install login", il me
dit qu'il va télécharger pleins de paquets, et installer des tonnes de
trucs. Évidemment, login est déjà installé, je vois mal un système tourner
sans !! Mais c'est normal : n'ayant plus la liste des paquets installés,
il considère que je n'en ai aucun.

Je cherche donc comment faire pour reconstituer la liste des paquets
actuellement installés sur mon système, à partir *uniquement* de
l'arborescence de fichiers existants. Je ne sais pas trop comment faire
(je pense à un truc bourrin, qui irait chercher pour chaque fichier dans
quel paquet il se trouve, et qui reconstruirait une liste probable).

D'autre part, si quelqu'un à une idée pour arriver à récupérer les données
qui étaient sur mon disque qui est mort, sachant que, j'ai testé sur deux
machines différentes, il n'est même plus reconnu dans le bios... ? L'idée
de devoir repasser tous mes CDs un par un pour les encoder me donne des
boutons...

Merci !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."

10 réponses

1 2
Avatar
Christophe CUOQ
Pour ce qui est de la reconstruction de /var je suis un peu sceptique... Par
contre, tu peux toujours tenter un petit truc qui marche de temps en temps.
Branche ton disque HS sur ton pc. Lorsque le PC démarre, tu entendras peut
etre un petit bruit au niveau du disque, comme un "tac tac". A ce moment la
essaye te taper sur le dos du disque avec le plat de la main. Ca peut
paraitre ridicule mais j'en ai fais repartir un paquet comme ca. Si le
disque repart, n'éteint surtout pas le pc. Tu peux t'en servir tant qu'il
reste allumé. C'est l'occasion ou jamais d'en faire une copie avec Ghost,
(va dans les options et demandes d'ignorer les secteurs defecteux). Sinon,
si ton disque ne fait pas de bruit alors c'est la carte controleur qui est
HS. Dans ce cas il faut que tu trouves le meme disque dur (peut etre en as
tu deux comme ca ?) et tu peux permuter la carte electronique sous le
disque. Cela n'est pas dangereux et te permettra de faire un copie.

Bon courage


"Remi Moyen" a écrit dans le message de
news:
Salut,

Suite à une tentative de changement de noyau (voir mes derniers posts,
"Vieille machine et changement de noyau"), j'ai un disque dur qui a fini
par claquer. Grrr. Bon, il était peut-être déjà pas très frais avant,
n'empêche qu'il a claqué quand j'ai changé de noyau.

Bref, je suis en train de bricoler pour remettre le système d'aplomb.
Y'avait sur ce disque un certain nombre de partitions de donnée (dont,
putain, un peu plus de 300 CDs dont je m'étais paluché l'encodage un par
un...), mais surtout, y'avait /var.

Du coup, évidemment, il m'a fallu d'abord recréer quelques fichiers dans
le nouveau /var, pour que divers services se lancent bien. Mais surtout,
je me suis rappellé que c'est dans /var qu'apt (ou dpkg) stocke les
paquets disponibles, téléchargés, et surtout, surtout, installés !

Actuellement, si je fais, par exemple, un "apt-get install login", il me
dit qu'il va télécharger pleins de paquets, et installer des tonnes de
trucs. Évidemment, login est déjà installé, je vois mal un système tourner
sans !! Mais c'est normal : n'ayant plus la liste des paquets installés,
il considère que je n'en ai aucun.

Je cherche donc comment faire pour reconstituer la liste des paquets
actuellement installés sur mon système, à partir *uniquement* de
l'arborescence de fichiers existants. Je ne sais pas trop comment faire
(je pense à un truc bourrin, qui irait chercher pour chaque fichier dans
quel paquet il se trouve, et qui reconstruirait une liste probable).

D'autre part, si quelqu'un à une idée pour arriver à récupérer les données
qui étaient sur mon disque qui est mort, sachant que, j'ai testé sur deux
machines différentes, il n'est même plus reconnu dans le bios... ? L'idée
de devoir repasser tous mes CDs un par un pour les encoder me donne des
boutons...

Merci !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."


Avatar
Ronald
Le Tue, 10 Aug 2004 10:04:18 +0200, Christophe CUOQ a écrit :

C'est l'occasion ou jamais d'en faire une
copie avec Ghost, (va dans les options et demandes d'ignorer les secteurs
defecteux). Sinon, si ton disque ne fait pas de bruit alors c'est la carte
controleur qui est HS. Dans ce cas il faut que tu trouves le meme disque
dur (peut etre en as tu deux comme ca ?) et tu peux permuter la carte
electronique sous le disque. Cela n'est pas dangereux et te permettra de
faire un copie.



C'est quoi Ghost?

Avatar
Christophe CUOQ
Symantec Norton Ghost. Va faire un tour sur le web, c'est un logiciel
permettant de faire des repliques exacts de disques durs.

"Ronald" a écrit dans le message de news:


C'est l'occasion ou jamais d'en faire une
copie avec Ghost, (va dans les options et demandes d'ignorer les
secteurs


defecteux). Sinon, si ton disque ne fait pas de bruit alors c'est la
carte


controleur qui est HS. Dans ce cas il faut que tu trouves le meme disque
dur (peut etre en as tu deux comme ca ?) et tu peux permuter la carte
electronique sous le disque. Cela n'est pas dangereux et te permettra de
faire un copie.



C'est quoi Ghost?



Avatar
Vincent Bernat
OoO En cette matinée ensoleillée du mardi 10 août 2004, vers 09:31,
Remi Moyen disait:

Je cherche donc comment faire pour reconstituer la liste des paquets
actuellement installés sur mon système, à partir *uniquement* de
l'arborescence de fichiers existants. Je ne sais pas trop comment faire
(je pense à un truc bourrin, qui irait chercher pour chaque fichier dans
quel paquet il se trouve, et qui reconstruirait une liste probable).


Tu peux récupérer la liste des paquets en regardant
/usr/share/doc. Chaque paquet y a laissé quelque chose. Pour les
numéros de version, il y a le changelog.Debian.gz dans chaque
répertoire.

Maintenant, à supposer que tu parviennes à reconstruire la base de
dpkg à partir de ces informations, il te restera un problème de
taille : tu as perdu la totalité des scripts d'installation et de
suppression des paquets, ce qui pourra provoquer quelques
comportements curieux.

Il me semble que le plus simple est de réinstaller l'intégralité des
paquets (dont tu connais la liste). Je pense que tu as également perdu
la base debconf, il te faudra donc répondre de nouveau à un certain
nombre de questions. Cela nécessite bien sûr d'avoir soit des CD, soit
une connexion assez solide.
--
#ifdef STUPIDLY_TRUST_BROKEN_PCMD_ENA_BIT
2.4.0-test2 /usr/src/linux/drivers/ide/cmd640.c

Avatar
Ronald
Le Tue, 10 Aug 2004 10:13:50 +0200, Christophe CUOQ a écrit :

Symantec Norton Ghost. Va faire un tour sur le web, c'est un logiciel
permettant de faire des repliques exacts de disques durs.

Ah ben oui, c'est le 'g' qui m'a trompé, mais bon pourquoi aller se

prendre la tête avec un logiciel tiers - pas sur non plus qu'il
existe pour linux - alors que dd peut le faire

Avatar
Christophe CUOQ
Pour ton information tu peux créé une disquette Ghost qui boot sous PC DOS
et qui fait la copie en dehors de tout autre OS que ce soit Windows, Linux
ou autre chose. Par contre je doute que dd soit capable d'ignorer les
secteurs défectueux...


"Ronald" a écrit dans le message de news:


Symantec Norton Ghost. Va faire un tour sur le web, c'est un logiciel
permettant de faire des repliques exacts de disques durs.

Ah ben oui, c'est le 'g' qui m'a trompé, mais bon pourquoi aller se

prendre la tête avec un logiciel tiers - pas sur non plus qu'il
existe pour linux - alors que dd peut le faire



Avatar
Vincent Bernat
OoO En cette matinée pluvieuse du mardi 10 août 2004, vers 10:42,
"Christophe CUOQ" disait:

Pour ton information tu peux créé une disquette Ghost qui boot sous
PC DOS et qui fait la copie en dehors de tout autre OS que ce soit
Windows, Linux ou autre chose. Par contre je doute que dd soit
capable d'ignorer les secteurs défectueux...


Il y a l'option "noerror".
--
Usenet: lisez bourré, postez déchirés.
-+- LC in <http://neuneu.mine.nu> : Le postage sans peine. -+-

Avatar
Ronald
Le Tue, 10 Aug 2004 10:47:12 +0200, Vincent Bernat a écrit :

OoO En cette matinée pluvieuse du mardi 10 août 2004, vers 10:42,
"Christophe CUOQ" disait:

Pour ton information tu peux créé une disquette Ghost qui boot sous
PC DOS et qui fait la copie en dehors de tout autre OS que ce soit
Windows, Linux ou autre chose. Par contre je doute que dd soit
capable d'ignorer les secteurs défectueux...


Il y a l'option "noerror".


Et je me demande si noerror convertie les erreurs de lecture en zero à
l'écriture ou si il faut rajouter sync.


Avatar
Remi Moyen
On Tue, 10 Aug 2004, Christophe CUOQ wrote:

Pour ce qui est de la reconstruction de /var je suis un peu sceptique... Par
contre, tu peux toujours tenter un petit truc qui marche de temps en temps.
Branche ton disque HS sur ton pc. Lorsque le PC démarre, tu entendras peut
etre un petit bruit au niveau du disque, comme un "tac tac".


Hum, non, je crois pas. Enfin, je veux dire, je n'ai jamais entendu ça
pendant mes tests, et pourtant j'avais le disque à la main ou presque.
Mais bon, je vérifierais.

Sinon, si ton disque ne fait pas de bruit alors c'est la carte
controleur qui est HS. Dans ce cas il faut que tu trouves le meme disque
dur (peut etre en as tu deux comme ca ?) et tu peux permuter la carte
electronique sous le disque. Cela n'est pas dangereux et te permettra de
faire un copie.


Ah, ça doit plutôt être ça.

Par "même disque", tu veux dire de la même marque et d'un modèle proche,
ou *strictement* le même disque (même capacité, etc.) ? Parce que je dois
avoir quelques disques similaires à la maison (du même fabriquant, acheté
à peu près au même moment), mais aucun n'est exactement le même.

Si je fais l'échange et que ça marche pas, est-ce que je risque de griller
le contrôleur de l'autre disque (et de me retrouver avec deux disques
fichus...) ?

Bon courage


Merci... :-/

P.S. : si tu pouvais répondre après le message initial, ça serait mieux.
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."

Avatar
Remi Moyen
On Tue, 10 Aug 2004, Vincent Bernat wrote:

Je cherche donc comment faire pour reconstituer la liste des paquets
actuellement installés sur mon système, à partir *uniquement* de
l'arborescence de fichiers existants. Je ne sais pas trop comment faire
(je pense à un truc bourrin, qui irait chercher pour chaque fichier dans
quel paquet il se trouve, et qui reconstruirait une liste probable).


Tu peux récupérer la liste des paquets en regardant
/usr/share/doc. Chaque paquet y a laissé quelque chose. Pour les
numéros de version, il y a le changelog.Debian.gz dans chaque
répertoire.


Mouais. Mais rien d'automatique ? Faut que je me bricole moi-même le
script qui fera ça ?

Maintenant, à supposer que tu parviennes à reconstruire la base de
dpkg à partir de ces informations, il te restera un problème de
taille : tu as perdu la totalité des scripts d'installation et de
suppression des paquets, ce qui pourra provoquer quelques
comportements curieux.


Argh, oui, j'y pensais plus. Et y'a pas moyen de récupérer juste les
scripts à partir des paquets ? Ils n'ont pas été modifiés, je crois, lors
de leur installation, donc il devrait être possible de les extraire des
paquets tout seuls, non ?

Il me semble que le plus simple est de réinstaller l'intégralité des
paquets (dont tu connais la liste).


Mouais... Est-ce que ça ne risque pas de perturber des choses, de
réinstaller des paquets dont les fichiers sont déjà là, mais qui ne sont
pas enregistrés dans la base des paquets installés ? Typiquement, est-ce
qu'il ne va pas écraser brutalement tous les fichiers de configuration
actuels (en se disant "ce paquet n'est pas installé, donc ce fichier non
plus, donc je mets le fichier standard"), y compris ceux que j'ai
personnalisés ?

Évidemment, je peux faire une copie brutale de /etc avec laquelle je
ré-écraserais tout après mes réinstallations, mais comme je pense que je
ne retrouverais pas tous les paquets du premier coup (certains me
reviendront en tête à l'usage, plus tard -- quoique, avec
/usr/share/doc...), ça risque d'être un peu lourd de faire ça à chaque
fois.

Je pense que tu as également perdu
la base debconf, il te faudra donc répondre de nouveau à un certain
nombre de questions. Cela nécessite bien sûr d'avoir soit des CD, soit
une connexion assez solide.


Bon, là, y'a pas trop de problème. Mon adsl chauffera un peu, mais après
tout, je suis pas pressé :-)
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."


1 2