Erreur lors de l'installation de Git avec Apt-Get

11

Lorsque j'essaie d'installer git sur une distribution de serveur d'Ubuntu 11.04, j'obtiens une erreur. J'ai utilisé la commande suivante:

sudo apt-get install git

Et cela a généré cette erreur:

(Reading database ... 
dpkg: warning: files list file for package `git' missing, assuming package has no files currently installed.
(Reading database ... 20310 files and directories currently installed.)
Preparing to replace git 1:1.7.4.1-3 (using .../git_1%3a1.7.4.1-3_i386.deb) ...
/var/lib/dpkg/tmp.ci/preinst: 12: dpkg-maintscript-helper: not found
dpkg: error processing /var/cache/apt/archives/git_1%3a1.7.4.1-3_i386.deb (--unpack):
 subprocess new pre-installation script returned error exit status 127
/var/lib/dpkg/tmp.ci/postrm: 14: dpkg-maintscript-helper: not found
dpkg: error while cleaning up:
 subprocess new post-removal script returned error exit status 127
Errors were encountered while processing:
 /var/cache/apt/archives/git_1%3a1.7.4.1-3_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

J'utilise les référentiels suivants:

# deb cdrom:[Ubuntu 8.04.3 _Hardy Heron_ - Release i386 (20090713.1)]/ hardy main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://us.archive.ubuntu.com/ubuntu/ natty main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ natty main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://us.archive.ubuntu.com/ubuntu/ natty-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ natty-updates main restricted


## main & restricted repositories
# deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted

#deb http://security.ubuntu.com/ubuntu lucid-security main restricted
#deb-src http://security.ubuntu.com/ubuntu lucid-security main restricted

## universe repositories
#deb http://us.archive.ubuntu.com/ubuntu/ lucid universe
#deb-src http://us.archive.ubuntu.com/ubuntu/ lucid universe
#deb http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe restricted main
#deb-src http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe

#deb http://security.ubuntu.com/ubuntu lucid-security universe
#deb-src http://security.ubuntu.com/ubuntu lucid-security universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://us.archive.ubuntu.com/ubuntu/ natty universe
deb-src http://us.archive.ubuntu.com/ubuntu/ natty universe
deb http://us.archive.ubuntu.com/ubuntu/ natty-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ natty-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ natty multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ natty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ natty-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ natty-updates multiverse

Quelqu'un a une idée de ce qui se passe ou comment je peux résoudre ce problème et faire installer git?

[edit] Voici la sortie du dpkg de la politique apt-cache:

dpkg:
  Installed: 1.15.5.6ubuntu4
  Candidate: 1.16.0~ubuntu7.1
  Version table:
     1.16.0~ubuntu7.1 0
        500 http://us.archive.ubuntu.com/ubuntu/ natty-updates/main Packages
     1.16.0~ubuntu7 0
        500 http://us.archive.ubuntu.com/ubuntu/ natty/main Packages
 *** 1.15.5.6ubuntu4 0
        100 /var/lib/dpkg/status

Et maintenant apt est complètement cassé. J'ai tenté de mettre à jour dpkg, car j'ai remarqué qu'il s'agissait de quelques versions obsolètes. Il a échoué car il n'a pas pu installer git. J'ai essayé la purge apt-get, la mise à jour apt-get clean et apt-get. Toujours le même problème. J'ai tenté de supprimer git et j'ai obtenu ceci:

Removing git-core ...
dpkg: error processing git (--remove):
 Package is in a very bad inconsistent state - you should
 reinstall it before attempting a removal.
Errors were encountered while processing:
 git
E: Sub-process /usr/bin/dpkg returned an error code (1)
Daniel Bingham
la source
1
Pouvez-vous modifier votre question et ajouter la sortie de «apt-cache policy dpkg»?
ajmitch
@ajmitch C'est fait.
Daniel Bingham
Combien de temps dois-je attendre avant de pouvoir commencer une prime pour cette question? J'ai vraiment besoin d'une réponse à cette question assez rapidement :(
Daniel Bingham
Vos problèmes semblent être
dus à
@ajmitch Oh tu sais quoi? Je l'ai fait il y a quelque temps. J'avais besoin d'une version mise à jour de vim qui était dans le dépôt natty mais pas celle lucide et je ne voulais pas gérer une mise à jour complète. Merci de me le rappeler!
Daniel Bingham

Réponses:

5

Juste au cas où: c'est le cas apt-get install git-core, pas seulement apt-get install git.

Marc-André Appel
la source
1
Je ne sais pas quand cela a changé, mais git devrait également fonctionner, pas seulement git-core. Certainement dans natty, le paquet git est vraiment git
Hamish Downer
Depuis le 10.04, je devais le faire git-core, sinon j'ai eu le même message d'erreur.
Marc-André Appel
Non, même erreur.
Daniel Bingham
La description de git-coredit "obsolète".
Louis Waweru
1
À l'origine, le gitpackage était destiné aux outils interactifs GNU, que personne n'utilise réellement. De nos jours, se gitréfère au Git VCS, et git-coreest obsolète.
Jörg W Mittag
5

D'accord, je l'ai réparé. J'ai dû supprimer manuellement le paquet, puis forcer dpkg à se vider. Ensuite, je l'ai installé à partir de git-core et cela a bien fonctionné. Pour supprimer manuellement le package auquel je suis allé

/var/cache/apt/archives

Et le git_1%3a1.7.4.1-3_i386.debfichier supprimé . Après cela, je suis allé

/var/lib/dpkg/info

Et a fait ls | grep gitet supprimé tout ce qui s'est passé. Après, j'ai couru

sudo dpkg --remove --force-remove-reinstreq git

Pour nettoyer le dpkg du paquet. Une fois cela fait, j'ai pu installer git à la git-coreplace du gitpaquet et cela a très bien fonctionné.

Daniel Bingham
la source
J'ai rencontré le même problème et cela l'a aussi résolu pour moi.
John Fiala