| |
wiki:os:bsd_unix:freebsd:tutos:admin:install_logiciel_freebsd [2025/03/30 14:01] – créée Thibault Seguin | wiki:os:bsd_unix:freebsd:tutos:admin:install_logiciel_freebsd [2025/04/09 23:04] (Version actuelle) – supprimée Thibault Seguin |
---|
====== Installations de logiciels sous FreeBSD sous forme binaire ou par compilation ====== | |
| |
===== Installations de logiciels avec le gestionnaire de paquets binaire ===== | |
À l'époque, **FreeBSD** été intégré avec les **exécutables** : **pkg_add**, **pkg_delete**, **pkg_info**, en autres (les **outils** de base pour les **BSD**), **exécutables** qui ont fini par être retirés de la **distribution**, suite à l'adoption complète de **pkg** créée par **Baptiste Daroussin**. **pkg** est un **gestionnaire de paquets** en **ligne de commande** hyper complet. Les **paquets** de **pkg** sont compressés avec l'**outil de compression** nommé **XZ Utils** (''fichier.tar.xz''), de plus en plus utilisé sous **Unix** en lieu et place de **gzip** et **bzip2**. | |
| |
==== Commandes à exécuter en utilisateur root ==== | |
=== Commencer pour installer le vrai pkg === | |
L'**exécutables** **pkg** présent dans ''/usr/sbin/'' n'est pas réellement le **gestionnaire de paquets** **pkg**, c'est juste un **utilitaire** pour installer le vrai **pkg**, installé dans ''/usr/local/sbin''. | |
<file>pkg</file>suite à cela, il est proposé d'installer **pkg**, répondez par l'affirmative ''y'' et ''validez''. | |
| |
=== Installer un ou plusieurs Logiciels === | |
<file>pkg install nom_du_logiciel</file>installe un **logiciel** et tous ses **dépendances**, valider par ''y'' (''yes'') via les **dépôts** de **FreeBSD**, avec l' ''option'' **install** vous pouvez également installer un **paquet** ''localement'' (hors **dépôts**). Pour installer plusieurs **logiciels** : | |
<file>pkg install nom_du_logiciel nom_du_logiciel2 nom_du_logiciel3</file> | |
Pour installer un **logiciel** sans ''confirmation'' de la part de l'**utilisateur** : | |
<file>pkg install -y nom_du_logiciel</file> | |
ou en version longue : | |
<file>pkg install --yes nom_du_logiciel</file>permet d'installer des **logiciels** sans ''confirmation'', cette ''sous-option'' est disponible pour la plupart des ''options'' de **pkg**. | |
=== Supprimer un ou plusieurs logiciels === | |
<file>pkg delete nom_du_logiciel</file>supprime un **logiciel** et ses **dépendances**. Pour faire de même avec plusieurs **logiciels** : | |
<file>pkg delete nom_du_logiciel nom_du_logiciel2 nom_du_logiciel3</file>supprime plusieurs **logiciels** et leurs **dépendances**.\\ | |
Vous pouvez également supprimer des **logiciels** avec cette ''option'' : | |
<file>pkg remove nom_du_logiciel nom_du_logiciel2 nom_du_logiciel3</file>cette ''option'' de **commande** à exactement le même effet que l' ''option'' **delete**. | |
=== Supprimer des paquets orphelins === | |
<file>pkg autoremove</file>permet de ''supprimer'' en autres les **dépendances** de **paquets** inutilisés. | |
=== Téléchargement de paquet logiciel === | |
<file>pkg fetch nom_du_logiciel</file>le **paquet** **logiciel** ''téléchager'' se retrouve dans le **cache** de **pkg** par défaut, ici ''/var/cache/pkg''. | |
<file>pkg fetch -d -o /home/user/paquets/ nom_du_logiciel</file> permet de ''télécharger'' un **logiciels** et tous ses **dépendances** (''sous-option'' **-d**) et dans un **répertoire** spécifique avec la ''sous-option'' **-o** suivi du **chemin du répertoire**. | |
=== Verrouillage et déverrouillage de paquets === | |
<file>pkg lock nom_du_logiciel</file>permet de ''vérouiller'' un **paquet** pour qu'il reste dans sa ''version'' (évite la ''modification'', la ''mise à jour'', ''réinstallation'' ou même la ''suppression'' du **paquet**). | |
<file>pkg unlock nom_du_logiciel</file> permet de ''déverrouiller'' un **paquet** ''vérouillé''. | |
=== Pour mettre à jour ou à niveau les logiciels tiers === | |
<file>pkg update</file>permet de mettre à jour les **dépôts** indiqué dans le **fichier** ''/etc/pkg/FreeBSD.conf''. | |
<file>pkg upgrade</file>permet de faire la **mise à jour** ou à **niveau** de tous les **logiciels tiers** et leurs **dépendances**. | |
| |
==== Commandes qui peuvent être exécutée en utilisateur non-privilégié ==== | |
=== Pour connaître les options disponbibles sous pkg === | |
<file>pkg help</file>permet d'avoir la liste des ''options'' du **gestionnaire de paquets** **pkg** et une courte ''description'' de celle-ci. | |
<file>pkg help install</file>permet d'avoir une ''description'' complète de l' ''option'' **install** de la **commande** **pkg**, tous les ''options'' de **pkg** ont leurs ''descriptions''. | |
<file>man pkg-install</file>permet éxactement la même chose que la **commande** pécédente. Pour des ''infos'' sur d'autres ''option'', **man pkg-delete**, **man pkg-fetch**, **man pkg-upgrade**,... | |
=== Rechercher un logiciels === | |
<file>pkg search nom_du_logiciel</file>recherche le **logiciel** par rapport à son ''nom''. | |
<file>pkg search --description nom_du_logiciel</file>recherche complète d'un **logiciel** en rapport à son ''nom'' et sa ''description''. | |
=== Pour avoir des infos sur un logiciel === | |
<file>pkg info nom_du_logiciel</file>permet d'avoir les ''informations'' du **logiciel** tel que sa ''description'' et ses ''dépendances'', en autres. | |
<file>pkg info -l nom_du_logiciel</file> | |
ou version longue : | |
<file>pkg info --list-files nom_du_logiciel</file>permet d' ''afficher'' tous les **fichiers** contenus dans le **paquet** **logiciel**. | |
<file>pkg prime-list</file>permet d'avoir la ''liste'' des **paquets** qui n'ont pas été installés ''automatiquement'' mais ''explicitement'' (sans avoir été installés comme **dépendances** d'un **paquet**). Exemple : **clamav** sans avoir installé son **interface graphique** nommé **clamtk** au préalable. | |
<file>pkg prime-origins</file>renvoie la même ''liste'' que la **commande** précédente mais en indiquant où se situe les **paquets** dans le **catalogue des logiciels portés**. | |
=== Audit de sécurité sur un ou des paquets === | |
<file>pkg audit -F</file>permet de faire un **audit de sécurité** général. | |
<file>pkg audit nom_du_logiciel</file>permet un **audit de sécurité** sur un **paquets** spécifique. | |
| |
| |
| |
===== Installations de logiciels avec le catalogue de logiciels portés (compilation) ===== | |
Pour gérer le **catalogue de logiciels portés**, il est désormais recommandé d'utiliser le **logiciel** **Git** qui est un **gestionnaire de versions décentralisé** et qui permet de ''télécharger'' les **ports** de **FreeBSD**, en ce qui concerne la **compilation** à proprement parler l'**utilitaire** en **console** nommé **make** (dispnible sur tous les **Unix**), qui est très complet sous **FreeBSD**. | |
==== En root ==== | |
=== Commencez par installer et utiliser Git === | |
<file>pkg install git</file>installe **Git** qui va permettre de ''télécharger'' le **catalogue de logiciels portés** aussi appelé **collection de ports**. | |
<file>git clone --depth 1 https://git.FreeBSD.org/ports.git /usr/ports</file>''télécharge'' les **ports logiciels** et son placés dans ''/usr/ports'' par convention. | |
<file>git -C /usr/ports pull</file>permet de ''mettre à jour'' le **catalogue de logiciels portés**. | |
=== Installer un logiciel via la collection de ports === | |
<file>find /usr/ports/ -name "weechat*"</file>la **commande** **find** est la **commande** par défaut pour la ''recherche'' de **fichiers**, **répertoire**,..., dans se cas je ''recherche'' le **logiciel** **WeeChat** pour savoir où il se trouve dans les **ports**. | |
<file>cd /usr/ports/irc/weechat</file>permet de rendre dans le **répertoire** du **logiciel porté**. | |
<file>make install clean</file>permet d' ''installer'' le **logiciel** **WeeChat**. La **commande** **make** seul permet de **compiler** le **logiciel** (**make** seul peut-être utilisé en tant qu'**utilisateur** ''non privilégié'') , l' ''option'' **install** permet d' ''installer'' le **logiciel** dans ''/usr/local/bin'' et l' ''option'' **clean** nettoie le **port** de toute **compilation** | |