Je faisais des trucs sur mon PC Ubuntu, quand je l’ai fait
Sudo apt-get autoremove tar
et foiré mon ordinateur. J'ai apparemment voulu réinstaller tar, mais au lieu de cela je l'ai supprimé en pensant que je l'installerais après son retrait. C'était une erreur et je regrette de l'avoir fait.
Maintenant, je peux difficilement faire quoi que ce soit avec du goudron non installé sur mon ordinateur. Je ne peux installer aucun paquet en utilisant apt-get
, ni installer de paquets en utilisant dpkg
. J'ai essayé de télécharger un fichier .deb
de tar et de l'installer sur mon ordinateur à l'aide de dpkg
, mais comme je l'ai dit, je ne pouvais pas le faire non plus.
Je ne peux pas installer tar avec apt-get
non plus, donc je ne savais plus comment installer tar sur mon ordinateur.
J'ai essayé de chercher sur des sites Web, y compris AU, mais je n'ai pas trouvé de solution à cela.
Comment installer tar sans avoir installé tar sur votre ordinateur? (les solutions avec apt-get, dpkg, etc. ne fonctionneront pas) Je suis sur Ubuntu 14.04 LTS.
J'ai résolu le problème avec certaines solutions de contournement, mais cela fonctionne. Ce ne serait peut-être pas le meilleur moyen de résoudre le problème. J'ai eu la réponse en suivant quelques parties de commentaire de @ steeldriver et en ajoutant certaines des miennes.
Tout d’abord, vous devez télécharger le fichier . Deb pour tar .
Allez dans votre dossier Téléchargements, en utilisant la commande
cd ~/Downloads/
et ensuite faire
ls | grep tar
pour vous assurer que le téléchargement a réussi. Vous devriez obtenir une sortie similaire à
tar_1.27.1-1ubuntu0.1_i386.deb
Sinon, vous devriez essayer de télécharger à nouveau.
Je vais utiliser le nom mytar.deb
pour la réponse, mais remplacez-le par le nom réel de votre fichier .deb
Maintenant, vous devez extraire le contenu du fichier .deb
sans à l'aide de tar.
D'abord faire
ar x mytar.deb
which extraira les fichiers de l'archive dans le répertoire en cours. Pour lister les fichiers présents, faites
ar t mytar.deb
qui produira quelque chose de similaire à
debian-binary
control.tar.gz
data.tar.xz
data.tar.xz
contient les fichiers à copier. Nous ne pouvons pas utiliser tar
pour les extraire car notre ordinateur actuel ne dispose pas de la commande tar.
Commençons par convertir data.tar.xz
en data.tar
. Pour ce faire, faites
xz -dc < data.tar.xz > data.tar
qui devrait créer un nouveau fichier data.tar
.
Maintenant, nous devons créer un lien vers busybox comme mentionné par @steeldriver dans les commentaires. Alors faites
Sudo ln -s /bin/busybox /usr/local/bin/tar
créer un lien symbolique.
Ensuite, vous utilisez essentiellement busybox au lieu de tar. Donc, si vous utilisez la commande tar, il appelle plutôt busybox. Maintenant faire
mkdir temp
créer un répertoire factice. ensuite
tar -xf data.tar -C temp/
extraire le fichier .tar
et extraire son contenu dans le répertoire temp
. Changez le répertoire de travail en temp
en utilisant
cd temp
Alors fais,
ls -pal
pour obtenir une sortie comme
total 28
drwxrwxr-x 5 ashish ashish 4096 Jan 11 08:41 ./
drwxr-xr-x 23 ashish ashish 12288 Jan 11 08:41 ../
drwxr-xr-x 2 ashish ashish 4096 Jan 11 08:41 bin/
drwxr-xr-x 2 ashish ashish 4096 Jan 11 08:41 etc/
drwxr-xr-x 5 ashish ashish 4096 Jan 11 08:41 usr/
Si vous n'obtenez pas les dossiers tels que bin
, etc
et usr
, vous avez commis une erreur.
Maintenant, vous pouvez simplement copier tous les fichiers de ces dossiers vers les destinations réelles (/bin/tar
, /usr/local/bin/tar
etc.), puis
tar --help
Si vous obtenez une sortie montrant les commandes de tar, ça marche!
Maintenant faire
Sudo apt-get install --reinstall tar
qui devrait réinstaller tar. Si cela vous donne une erreur en disant que vous exécutez apt-get -f install
, faites-le puis réinstallez tar, cela fonctionnera pour moi sur Ubuntu 14.04 LTS.
Vous pouvez exécuter un live-cd de votre version d'ubuntu distro pour copier le fichier tar de live distro sur votre disque dur.
Montez votre disque dur sur/mnt: (si votre disque dur est/dev/sdb1)
mount /dev/sda1 /mnt
Copier/bin/tar dans/mnt/bin/tar
cp /bin/tar /mnt/bin/tar
Si cela ne suffit pas, vous pouvez essayer de copier d'autres fichiers liés à tar. Vous pouvez les lister avec dpkg:
$ dpkg -L tar
/bin
/bin/tar
/usr
/usr/sbin
/usr/sbin/tarcat
/usr/sbin/rmt-tar
/usr/share
/usr/share/doc
/usr/share/doc/tar
/usr/share/doc/tar/changelog.Debian.gz
/usr/share/doc/tar/copyright
/usr/share/doc/tar/NEWS.Debian.gz
/usr/share/doc/tar/NEWS.gz
/usr/share/doc/tar/README.Debian
/usr/share/doc/tar/THANKS.gz
/usr/share/doc/tar/AUTHORS
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/rmt-tar.8.gz
/usr/share/man/man1
/usr/share/man/man1/tarcat.1.gz
/usr/share/man/man1/tar.1.gz
/usr/lib
/usr/lib/tar
/usr/lib/mime
/usr/lib/mime/packages
/usr/lib/mime/packages/tar
/etc
/etc/rmt