Comment gérer les paquets sur FreeBSD 10.1 avec Pkg

introduction

Le gestionnaire de paquets binaires de FreeBSD, * pkg *, peut être utilisé pour gérer facilement l’installation d’applications précompilées, les packages Debian et RPM équivalents à FreeBSD. Par rapport à l’autre méthode d’installation logicielle répandue sur FreeBSD, compiler * ports * avec la collection de logiciels portés, en utilisant des packages, offre une alternative plus simple et plus rapide qui fonctionne dans de nombreuses situations. Toutefois, les packages ne sont pas aussi flexibles que les ports car ils ne peuvent pas être personnalisés. Si vous devez personnaliser les options de compilation de vos installations logicielles, utilisez https://www.digitalocean.com/community/tutorials/how-to. -install-and-manage-ports-on-freebsd-10-1 [ports] au lieu de packages.

Dans ce tutoriel, nous allons vous montrer comment gérer les paquets sous FreeBSD 10.1. Cela inclut l’installation et la suppression de packages, parmi d’autres tâches connexes.

Conditions préalables

Pour utiliser les commandes de ce tutoriel, vous devez disposer d’un accès * root * sur un serveur FreeBSD. En d’autres termes, vous devez pouvoir vous connecter au serveur en tant qu’utilisateur root ou autre utilisateur disposant des privilèges de superutilisateur via la commande sudo. Si vous prévoyez d’utiliser root, vous pouvez omettre la partie + sudo + des exemples de commandes.

Comment installer de nouveaux paquets avec Pkg

Si vous connaissez le nom du paquet que vous voulez installer, vous pouvez l’installer en utilisant la commande + pkg + comme ceci:

sudo pkg install

Vous pouvez également spécifier plusieurs packages à installer, séparés par des espaces, comme ceci:

sudo pkg install

Par exemple, installons Nginx, un serveur Web populaire, avec + pkg +:

sudo pkg install nginx

L’exécution de cette commande lancera l’installation du package que vous avez spécifié. Tout d’abord, votre système recherchera les mises à jour du catalogue du référentiel de packages. S’il est déjà complètement mis à jour, recherchez le package spécifié. Si le paquet est trouvé, le paquet et les paquets dont il dépend seront listés. Un message de confirmation apparaîtra alors.

Dans ce cas, seul le package + nginx + sera installé. Répondez à l’invite avec + y + pour confirmer:

New packages to be INSTALLED:
   nginx: 1.6.2_1,2

The process will require 654 KB more space.
244 KB to be downloaded.

Proceed with this action? [y/N]:

Une fois l’installation du paquet confirmée, le ou les paquetages listés seront téléchargés et installés sur le système. Certains packages afficheront des informations ou des instructions post-installation importantes concernant l’utilisation de l’application. Une fois l’installation terminée, veillez à suivre les remarques post-installation.

Si vous utilisez le shell par défaut, + tcsh +, ou + csh +, vous devez reconstruire la liste des binaires dans votre + PATH + avec cette commande:

rehash

Il est également important de noter que les applications qui sont services ne démarrent pas automatiquement et ne sont pas activées en tant que service après leur installation. Voyons comment exécuter les services maintenant.

Comment exécuter des services

Sous FreeBSD, les services installés avec les packages fournissent un script d’initialisation de service dans + / usr / local / etc / rc.d +. Dans l’exemple de Nginx, qui s’exécute en tant que service, le script de démarrage s’appelle + nginx +. Notez que vous devez substituer le nom de script de service approprié, au lieu du «nginx» en surbrillance, lors de l’exécution des commandes.

Pour montrer ce qui se passe si vous essayez de démarrer un service qui n’est pas activé, essayez d’utiliser la commande + service + pour démarrer votre logiciel immédiatement après l’avoir installé:

sudo service  start

Le service ne démarre pas et vous rencontrerez un message ressemblant à ceci:

Cannot 'start' . Set _enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'.

Pour activer le service, suivez les instructions dans le message et ajoutez la ligne suivante à + ​​/ etc / rc.conf +:

_enable="YES"

Vous pouvez soit ouvrir + / etc / rc.conf + dans un éditeur et ajouter la ligne, soit utiliser l’utilitaire + sysrc + pour mettre à jour le fichier comme suit:

sudo sysrc _enable=yes

Maintenant, le service est activé. Il démarrera au démarrage de votre système et vous pouvez utiliser la sous-commande + start + tentée précédemment:

sudo service  start

Si vous souhaitez exécuter le service une fois, sans l’activer, vous pouvez utiliser la sous-commande + onestart +. Démarrer un service de cette manière lancera le script de démarrage immédiatement, mais il ne sera pas démarré au démarrage du système. Essayez-le maintenant:

sudo service  onestart

L’utilisation de la sous-commande + onestart + est utile si vous souhaitez tester la configuration de vos services avant de les activer.

Comment afficher les informations sur les paquets avec Pkg

Pour afficher des informations sur les paquets * installés *, vous pouvez utiliser la commande + pkg info +, comme ceci:

pkg info

Ceci imprimera diverses informations sur le paquet spécifié, y compris une description du logiciel, les options avec lesquelles il a été compilé et une liste des bibliothèques dont il dépend.

Comment mettre à jour les paquets installés avec Pkg

Vous pouvez installer les dernières versions disponibles des packages installés sur votre système avec cette commande:

sudo pkg upgrade

L’exécution de cette commande comparera vos packages installés avec les versions du catalogue de référentiels et imprimera une liste des packages pouvant être mis à jour vers une version plus récente:

Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
Checking for upgrades (2 candidates): 100%
Processing candidates (2 candidates): 100%
The following 2 packages will be affected (of 0 checked):

Installed packages to be UPGRADED:
   python27: 2.7.8_6 -> 2.7.9
   perl5: 5.18.4_10 -> 5.18.4_11

The process will require 2 MB more space.
23 MB to be downloaded.

Proceed with this action? [y/N]:

Répondez avec un + y + à l’invite pour procéder à la mise à niveau des packages répertoriés.

Comment supprimer des paquets avec Pkg

Si vous connaissez le nom du paquet que vous voulez supprimer, vous pouvez le supprimer en utilisant la commande + pkg + comme ceci:

sudo pkg delete

Vous pouvez également spécifier plusieurs packages à supprimer, séparés par des espaces, comme ceci:

sudo pkg delete

Supprimons le package Nginx que nous avons installé précédemment:

sudo pkg delete

Vous verrez un message semblable au suivant avec une invite de confirmation:

Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
   nginx-1.6.2_1,2

The operation will free 654 KB.

Proceed with deinstalling packages? [y/N]:

Répondez à l’invite avec + y + pour confirmer l’action de suppression du paquet.

Comment supprimer les dépendances inutilisées

Si vous supprimez un package qui a installé des dépendances, celles-ci seront toujours installées. Pour supprimer les packages qui ne sont plus requis par aucun package installé, exécutez cette commande:

sudo pkg autoremove

La liste des paquets qui seront supprimés sera imprimée, suivie d’une invite. Répondez + y + à l’invite de confirmation si vous souhaitez supprimer les packages répertoriés.

Comment trouver des paquets avec Pkg

Pour rechercher des packages binaires disponibles dans le référentiel, utilisez la commande + pkg search +.

Par nom de paquet

Le moyen le plus simple de rechercher est le nom du paquet. Si vous voulez chercher le nom du paquet, utilisez la commande comme ceci:

pkg search

Par exemple, pour rechercher des paquets avec “nginx” dans le nom, utilisez cette commande:

pkg search nginx

Ceci imprimera une liste des paquets, y compris les numéros de version, avec “nginx” dans le nom:

nginx-1.6.2_1,2
nginx-devel-1.7.8
p5-Nginx-ReadBody-0.07_1
p5-Nginx-Simple-0.07_1
p5-Test-Nginx-0.24

Si vous souhaitez lire les informations détaillées sur les packages répertoriés, utilisez l’option + -f + comme ceci:

pkg search -f

Ceci imprimera les informations sur les packages pour chaque package correspondant au nom de package spécifié.

Par description

Si vous n’êtes pas sûr du nom du paquet que vous voulez installer, vous pouvez également rechercher les descriptions des paquets disponibles dans le référentiel en spécifiant l’option + -D +. Par défaut, la correspondance de modèle n’est pas sensible à la casse:

pkg search -D

Par exemple, pour rechercher tous les paquets avec “java” dans la description, utilisez la commande comme ceci:

pkg search -D java

Ceci imprimera les noms de tous les paquets disponibles avec le motif spécifié dans le champ de description, ainsi que la description.

Comment en savoir plus sur l’utilisation de Pkg

Pkg est un utilitaire très flexible qui peut être utilisé de nombreuses manières qui ne sont pas abordées dans ce tutoriel. Heureusement, il constitue un moyen simple de rechercher les options et les sous-commandes disponibles et leur fonction.

Pour imprimer les options et les sous-commandes disponibles, utilisez cette commande:

pkg help

Pour lire les pages de manuel des différentes sous-commandes, utilisez + pkg help + et spécifiez la commande que vous voulez apprendre, comme ceci:

pkg help

Par exemple, si vous souhaitez en savoir plus sur l’utilisation de + pkg search +, entrez cette commande:

pkg help search

Cela affichera une page de manuel qui explique comment utiliser + pkg search +.

Conclusion

Vous devez maintenant en savoir assez sur l’utilisation de + pkg + pour gérer les paquets binaires sur votre serveur FreeBSD.

Si vous voulez en savoir plus sur la gestion des logiciels sur votre serveur FreeBSD, assurez-vous de lire * ports * avec ce tutoriel: https://www.digitalocean.com/community/tutorials/how-to-install-and-manage -ports-on-freebsd-10-1 [Comment installer et gérer des ports sur FreeBSD 10.1].