Question

J'ai botté mon système à partir d'un live CD Ubuntu, et je dois corriger certains problèmes de paquets. J'ai monté mon disque dur, et maintenant je veux lancer apt-get comme si je démarrais normalement. à-dire changer le répertoire de travail pour apt-get il fonctionnera sur mon disque dur. Je l'ai fait, mais je ne me souviens pas de la syntaxe. Je pense qu'il était seulement quelques-uns drapeau, comme ceci:

apt-get --root-directory=/mnt/partition1 install....

Mais je ne reçois que « l'option de ligne de commande ... On ne comprend pas ». Toutes les idées?

Était-ce utile?

La solution

chroot / mnt / partition1

Si votre système utilise plusieurs partitions de disque que vous pourriez avoir à monter certains d'entre eux afin d'obtenir le système de travail de package (je me suis arrêté la mise en place de plusieurs partitions il y a 10 ans lorsque les disques durs ont commencé à devenir trop grand pour la sauvegarde physique brute).

  

ne fonctionnerait pas si vous ne possédez pas déjà un système debian utilisable à cet endroit. - akostadinov

Si vous ne pouvez pas obtenir le système de package de travail lorsque le chroot, peut-être il est trop foiré à jamais faire confiance à nouveau - dans mon expérience l'effort pour le ramener à la vie paie rarement. Si cela arrive, soyez heureux, vous pouvez toujours accéder à votre disque dur, sauvegardez vos données et effectuer une réinstallation propre.

Certains commentaires pertinents d'autres réponses:

  

apt-get -o RootDir = / tmp / test_apt ensembles (presque) tous les chemins d'être dans les différents racine. BTW sur un système en cours d'exécution, si vous copiez / etc / apt, / usr / lib / apt, et mkdir -p usr / lib etc var / cache var / lib / dpkg var / lib / listes apt / / var / cache partielle / archives apt / / partiel et enfin toucher var / lib / dpkg / status, puis apt va travailler dans cette racine. Il peut même fonctionner en tant qu'utilisateur non root si vous ajoutez l'option -o Debug :: NoLocking = 1. L'option nolock est nécessaire parce que je ne pouvais pas trouver un moyen de définir le fichier de verrouillage dans le répertoire racine différent. - akostadinov

     

moyens de travail à l'aide de paquets de recherche et le téléchargement et ces opérations. En fait, l'installation est impossible si certains paquets essentiels ne sont pas déjà là. debootstrap peut aider si l'objectif est d'installer réellement les paquets dans une nouvelle racine pour une raison quelconque. - akostadinov

Autres conseils

Aussi cela devrait fonctionner:

sudo apt-get -o Dir=/media/partitioni1 update

Running chroot /mnt/partition1 va lancer un nouveau shell dans lequel la racine du système de fichiers est /mnt/partition1. En supposant que le apt-get sur votre disque dur fonctionne toujours correctement, vous pouvez procéder à partir de là.

dpkg --root=/mnt/partition1 -i mypackage.deb est une option qui ne nécessite pas chroot, mais ne vous oblige à télécharger le paquet vous-même.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top