52 votes

Existe-t-il un moyen de faire en sorte qu'APT installe des paquets dans mon répertoire personnel ?

Existe-t-il un moyen d'obtenir APT pour installer des paquets dans mon répertoire personnel ?

Je ne veux pas apporter de modifications à l'ensemble du système.

Sinon, existe-t-il des gestionnaires de paquets linux basés sur le répertoire personnel ?

19voto

David Pashley Points 22851

Dpkg n'a pas la fonction --relocate que RPM a. Cela vaut la peine de considérer le nombre de paquets RPM qui supportent cette fonctionnalité. En gros, ce n'est pas possible.

Ce que vous pouvez faire, c'est utiliser un chroot si vous voulez tester quelque chose avant de l'installer globalement sur le système. Pour ce faire, vous devez être capable d'accéder à l'utilisateur root. La première chose à faire est de créer un chroot de base :

\# debootstrap lenny lenny-chroot

Cela crée un chroot Lenny à l'intérieur du répertoire lenny-chroot répertoire.

Nous pouvons maintenant entrer dans le chroot :

# chroot lenny-chroot

Maintenant, nous pouvons faire ce que nous voulons et installer n'importe quoi sans que cela n'affecte le reste du système. Lorsque nous avons terminé, il suffit de taper exit ou d'appuyer sur ctrl-D

10voto

Tim Smith Points 101

Linuxbrew est un autre gestionnaire de paquets non racine pour Linux (basé sur le populaire système de gestion de paquets Homebrew pour OS X) qui compile à partir des sources et conserve les binaires dans votre répertoire personnel.

Selon la documentation, les caractéristiques de Linuxbrew sont les suivantes :

  • Peut installer un logiciel dans un répertoire personnel et ne nécessite donc pas sudo
  • Installer des logiciels qui ne font pas partie de la distribution native
  • Installer des versions actualisées de logiciels lorsque la distribution d'origine est ancienne
  • Utilisez le même gestionnaire de paquets pour gérer vos machines Mac et Linux

8voto

Zachary Scott Points 146

Le préfixe Gentoo fait exactement ce que vous voulez.

Il installe tous les paquets dans un répertoire spécifié. Aucun accès root n'est nécessaire. Si vous voulez vous en débarrasser, supprimez simplement le répertoire de base.

PS : Cela ne fonctionne pas sur Ubuntu >= 11.04, ou tout autre dérivé de Debian avec Multiarch.

4voto

En plus de l'option de compilation, il existe une option intermédiaire qui consiste à compiler dans un paquet avec une option de préfixe différente au moment de la compilation (avec "checkinstall" ou peut-être une autre méthode). L'avantage est que le paquet apparaîtra dans les gestionnaires de paquets tels que aptitude ou synaptic.

En outre, je pense qu'il est possible dans certains cas de télécharger le .deb réel et de forcer un préfixe différent via dpkg install, mais je pense que ce n'est pas quelque chose qui peut être fait avec n'importe quel paquet aléatoire, mais ils doivent avoir été compilés avec une certaine variable pour leur emplacement (plutôt que le préfixe explicite littéral) que vous exporteriez avant l'installation. Je ne sais rien de la procédure, google pour "dpkg instdir prefix".

3voto

Non, je ne pense pas que vous puissiez le faire.

Le mieux que je puisse faire pour l'instant est d'utiliser apt-get source et compilez votre paquet. Vous pourriez peut-être modifier la procédure (qui peut être plus ou moins automatisée) pour installer les paquets chez vous.

Une autre solution consiste à utiliser dpkg -X pour l'extraire dans un répertoire de votre choix.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X