Maison > Tutoriel système > Linux > Comment installer et gérer les logiciels à partir de la source à l'aide de GNU Stow dans Linux

Comment installer et gérer les logiciels à partir de la source à l'aide de GNU Stow dans Linux

William Shakespeare
Libérer: 2025-03-16 10:51:11
original
618 Les gens l'ont consulté

Ce tutoriel explique comment GNU Stow simplifie la gestion des logiciels installés à partir de Source dans Linux. Il utilise des liens symboliques pour garder les installations organisées, empêcher les conflits et faciliter les mises à jour / le retrait.

Qu'est-ce que GNU Stow?

GNU Stow est un gestionnaire de liaisons symbolique rationalisant l'installation du logiciel de code source sur les systèmes Linux et Unix. Il organise des fichiers, permettant une gestion et une maintenance efficaces en créant des liens symboliques d'un emplacement central aux fichiers logiciels réels. Cela empêche les conflits entre plusieurs packages. Il est particulièrement utile pour les utilisateurs qui gèrent leurs propres installations et configurations, souvent jumelés avec le contrôle de version. C'est gratuit et open-source.

Comment fonctionne GNU Stow

Stow suppose que chaque progiciel réside dans son propre répertoire (par exemple, /usr/local/stow/package1 ). stow package1 crée des liens symboliques de ce répertoire aux emplacements système appropriés (comme /usr/local/bin ). stow -D package1 supprime ces liens.

Caractéristiques GNU Stow

  • Liens symboliques: crée des liens symboliques, en évitant les conflits de fichiers.
  • Gestion des packages: gère le logiciel installé dans des emplacements spécifiques à l'utilisateur ou à l'échelle du système.
  • Mises à niveau / déménagements faciles: la mise à jour ou la suppression d'un package est simple; Stow gère automatiquement les liens symboliques.
  • Configuration flexible: personnalisable pour répondre aux besoins individuels.

Avantages de l'utilisation de GNU Stow

  • Gestion simplifiée des packages: installation, mises à jour et suppression faciles. Plusieurs versions du même package peuvent coexister.
  • Évitement des conflits: les répertoires de package isolés minimisent les conflits de fichiers.
  • Reproductibilité: les environnements logiciels plus faciles à reproduire et à documenter.

Cas d'utilisation

Idéal pour les développeurs en compilant régulièrement des logiciels à partir de la source et en gérant les fichiers de configuration (fichiers de points) sur plusieurs systèmes.

Utilisation de base

Installez un package: cd /usr/local/stow; stow package1 Désinstaller un package: cd /usr/local/stow; stow -D package1

Installation de logiciels à partir de la source à l'aide de GNU Stow (Curl Exemple)

  1. Système de mise à jour: sudo apt update (Debian / Ubuntu), sudo yum update (Centos / Rhel), etc.
  2. Installer des outils de développement: sudo apt install build-essential libssl-dev (Debian / Ubuntu pour Curl avec OpenSSL), ajustez pour votre système et le backend TLS souhaité (GNUTLS nécessite différentes bibliothèques).
  3. Installez GNU Stow: sudo apt install stow (Debian / Ubuntu), ajustez pour votre distribution.
  4. Télécharger et extraire Curl: wget https://github.com/curl/curl/releases/download/curl-8_8_0/curl-8.8.0.tar.gz; tar xvf curl-8.8.0.tar.gz (remplacer par la dernière version réelle).
  5. Configurer la construction: cd curl-8.8.0; ./configure --with-ssl --prefix=/usr/local/stow/curl-8.8.0 (ou --with-gnutls pour gnutls).
  6. Compiler: make
  7. Installer: sudo make install
  8. Gérer avec STOW: cd /usr/local/stow; sudo stow curl-8.8.0
  9. Vérifier: curl --version

Comment installer et gérer les logiciels à partir de la source à l'aide de GNU Stow dans Linux

Logiciel de mise à jour

  1. Désinstaller l'ancienne version: cd /usr/local/stow; sudo stow -D curl-8.7.1 (remplacer par l'ancienne version).
  2. Télécharger, extraire, configurer et créer une nouvelle version: Répétez les étapes 4-7 de la section d'installation.
  3. Gérer la nouvelle version avec Stow: cd /usr/local/stow; sudo stow curl-8.8.0
  4. Vérifier: curl --version
  5. Supprimer l'ancien répertoire (facultatif): sudo rm -rf /usr/local/stow/curl-8.7.1

Utilisation avancée

Stow propose des options pour les packages relocalisés ( --dir , --target ), les exécutions sèches ( -n ), la sortie verbale ( -v ), l'ignorant des fichiers ( .stow-local-ignore ), restow ( -R ), destow ( -D ), adoptant des fichiers existants ( --adopt ), en gérant les conflits ( --override ) et en spécifiant des directeurs personnalisés. Voir la page man stow pour plus de détails.

Feuille de triche GNU Stow (résumé des commandes et options communes)

  • stow package_name : Stow un package.
  • stow -D package_name : dénouez un package.
  • stow -R package_name : remanier un package.
  • stow --dir=/path/to/packages package_name : spécifiez le répertoire source.
  • stow --target=/path/to/target package_name : Spécifiez le répertoire cible.
  • stow -n package_name : Run sèche.
  • stow -v package_name : sortie verbale.
  • stow --adopt package_name : adopter les fichiers existants.
  • stow --override package_name : Remplacez les conflits.

Des questions fréquemment posées (FAQ) (couvertes de texte d'origine, mais pourraient être résumées ici pour brièveté)

Conclusion

GNU Stow est un outil précieux pour gérer efficacement le logiciel construit par source dans Linux, améliorer l'organisation et simplifier les mises à jour et les déménagements. Son utilisation de liens symboliques empêche les conflits et rend la gestion simple de versions logicielles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal