Bien utiliser son ordinateur
Initiation à l'informatique pour tous
Vous êtes ici :
Choix du système :
Votre IP (2) : 3.16.70.99;
Vous pouvez lire cette page si vous voulez approfondir vos connaissances du monde Unix, en particulier du système Linux, mais cette connaissance n'est pas indispensable pour utiliser une distribution Linux.
Sommaire [masquer]
1. (très) Petite histoire de Linux
1.1. La genèse
1.2. L'aboutissement
3.1. Notions de base
3.1.1. Syntaxe générale d'une commande
3.1.2. Les chemins
3.1.3. Les métacaractères
3.1.4. Les expressions régulières
3.1.5. Les redirections
3.1.6. Les propriétés du terminal
3.1.6.1. Propriétés
3.1.6.2. Raccourcis
3.2. Les commandes les plus courantes
3.2.1. Commandes de base
3.2.2. Commandes d'informations
3.2.3. Opérations sur les fichiers
3.2.4. Commandes système
4. Installation / désinstallation d'un logiciel
4.1. Principe
4.2.1. Les paquets
4.2.2. Les dépôts
4.3. Installation d'un logiciel
4.3.1. Installation par la logithèque
4.3.2. Installation par un lien sur le site d'Ubuntu
4.3.3. Installation par le gestionnaire de paquets Synaptic
4.3.3.1. Présentation sommaire de Synaptic
4.3.3.2. Installation d'un logiciel
4.3.4. Installation « à la main »
4.3.4.1. Outils en ligne de commande
4.3.4.2. Installation d'un logiciel
4.4. Désinstallation d'un logiciel
4.4.1. Désinstallation par la logithèque
4.4.2. Désinstallation par le gestionnaire de paquets Synaptic
4.4.2.1. Désinstallation d'un paquet
4.4.2.2. Désinstallation de plusieurs paquets
4.4.2.3. Différence entre « suppression » et « suppression complète »
Le système Unix a été créé en 1969 par Ken Thompson, aux USA, dans les Laboratoires Bell. Dès sa conception, Unix est un système d'exploitation multitâche (c'est à dire qu'il peut effectuer plusieurs tâches à la fois voir Note) et multi-utilisateur (chaque utilisateur a son propre environnement comme s'il était le seul utilisateur de la machine).
Écrit à l'origine en assembleur – donc difficilement portable – il a été ré-écrit en C dès l'invention de ce langage par Dennis Ritchie en 1971. À cette époque (à partir de 1975), le code source du système d'exploitation était livré avec les machines et pouvait être modifié et complété par les utilisateurs. Le coût modique de la licence a participé à son extension, en particulier dans le milieu universitaire.
Deux filières principales d'Unix ont cohabité pendant de nombreuses années : BSD (pour « Berkeley Software Distribution » développé à l'Université de Berkeley en Californie) et System V (prononcez « système 5 », développé par la société AT&T, propriétaire des Laboratoires Bell) et qui est à l'origine de la norme POSIX qui définit les interfaces utilisateurs et les interfaces de programmation (API) – norme que s'évertue de respecter un certain Linus Torvalds qui développe un système d'exploitation pour PC en 1991 : le noyau Linux.
Note : En réalité un processeur ne peut effectuer qu'une tâche à la fois, mais il donne l'illusion d'en effectuer plusieurs en attribuant un temps donné à chaque tâche et en passant au bout de ce temps à la tâche suivante et ainsi de suite jusqu'à revenir à la première.
En 1991, Linus Torvalds, alors étudiant à Helsinki, en Finlande, développe un noyau de système d'exploitation de type Unix pour pallier l'indisponibilité chronique du serveur informatique de son université. Ce sera le noyau Linux.
Quelques années avant, en 1983, Richard Stallman, chercheur en intelligence artificielle au MIT (Massachusetts Institute of Technology à Cambridge aux États-Unis), lance le projet de développer un système d'exploitation libre compatible Unix appelé GNU (prononcez « gnou » comme l'antilope) – acronyme récursif : Gnu's Not Unix, soit en français : « GNU n'est pas Unix », qui serait gratuit, contrairement à Unix. Si le développement du noyau (nommé Hurd) a pris du retard, de nombreux outils sont disponibles, dont un compilateur performant et des commandes portant le même nom que leur équivalent d'origine sous Unix.
L'association du noyau Linux et des logiciels développés dans le projet GNU aboutira au système d'exploitation GNU/Linux, souvent abrégé en Linux. La sélection de logiciels utilitaires ajoutés au système de base forme une distribution GNU/Linux. Ce site ne traite que de quelques distributions : Ubuntu et Linux Mint ainsi que de leurs variantes.
Si la majorité des ordinateurs personnels n'utilise pas un système d'exploitation GNU/Linux, il n'en est pas de même des autres ordinateurs. Une majorité de serveurs utilisent ce noyau ainsi que la quasi totalité des superordinateurs. Les téléphones portables, tablettes et smartphones qui fonctionnent sous Android utilisent le noyau Linux. De nombreuses Box qui vous permettent d'accéder à Internet fonctionnent également avec un noyau Linux.
Toutes les distributions de Linux utilisent la même architecture de fichiers, quasiment identique aux systèmes Unix.
Contrairement à Windows qui a plusieurs « entrées » indépendantes appelées C:, D:, E: etc., Linux n'a qu'une seule entrée qu'on appelle la racine (ou souvent root en anglais) et désignée par le symbole « / ».
Les dossiers (appelés également répertoires ou directories en anglais) principaux situés directement sous la racine sont listés ci-dessous :
Votre compte utilisateur sera directement sous /home/utilisateur où utilisateur est le nom de votre compte. Toutes vos données sont regroupées ici. Pour l'exemple, supposons que votre compte porte le nom d'Alice et qu'un second utilisateur a son propre compte au nom de Bernard. Tous les documents d'Alice seront dans /home/alice et ceux de Bernard dans /home/bernard.
La plupart du temps, vous n'avez pas besoin de taper des commandes dans un terminal car les actions courantes peuvent être effectuées par l'intermédiaire de l'interface graphique, soit en cliquant sur des icônes ou des liens, soit en lançant des programmes accessibles par le menu.
Cependant, en cas de problème, ou pour effectuer certaines opérations sur les fichiers, ou tout simplement par curiosité, vous pouvez être amené à exécuter certaines commandes de base ou un peu plus évoluées.
De nombreuses commandes peuvent être exécutées en mode « utilisateur », mais certaines commandes qui ont un impact sur le système d'exploitation ou sur la sécurité des fichiers ne peuvent être utilisées qu'en mode « super-utilisateur ». Elles doivent alors être précédées du terme sudo qui signifie « super user do », que l'on peut traduire par « faire en tant que super-utilisateur ». Avant d'exécuter la commande, le système vous demandera d'entrer votre mot de passe.
Avant de voir les commandes en détail, vous devez connaître quelques notions de base. Afin d'illustrer ces notions, je donne quelques exemples faisant intervenir les commandes ls qui liste le contenu d'un répertoire, cd qui permet de changer de répertoire et pwd qui indique où l'on se trouve dans l'arborescence (le répertoire où l'on est). Ces commandes seront explicitées dans la liste des commandes.
De nombreuses commandes utilisent la syntaxe générale suivante :
commande [options] [arguments]
où :
commande
est le nom de la commande ;
[options]
représente les options de la commande qui sont parfois facultatives, mais si elles sont présentes, elles doivent être précédées du signe « - » (version courte) ou parfois de deux signes « -- » (version longue). La version courte tient sur un seul caractère alors que la version longue utilise un ou plusieurs mots ;
[arguments]
est une liste d'arguments à passer à la commande. Pour de nombreuses commandes que nous allons voir ici, la liste des arguments se réduit au nom du ou des fichiers sur lesquels porte la commande. Pour certaines commandes cette partie est absente.
La syntaxe []
indique au lecteur une partie facultative de la commande mais ne fait pas partie de la commande.
Pour obtenir de l'aide sur une commande : man commande
Pour obtenir de l'aide en français sur une commande : commande --help
Note : comme le séparateur des champs d'une commande est le caractère espace, il ne doit pas y avoir d'espace entre les symboles « - » ou « -- » et les valeurs des options. Si un argument est un nom de fichier ou de dossier (avec son chemin éventuel) qui comporte les espaces, le nom complet (chemin + nom) doit être mis entre guillemets ou entre apostrophes pour qu'il soit compris comme un unique argument.
Une chaine entre guillemets est interprétée par le système alors qu'une chaine entre apostrophes n'est pas intéprétée. Par exemple, dans la chaine "$HOME/Images", le terme $HOME est interprété comme la variable système du même nom et sera remplacée par la valeur de cette variable, alors que la même chaine placée entre apostrophes ne sera pas interprétée et le système indiquera que le chemin $HOME/Images n'existe pas.
Lorsqu'une commande porte sur un fichier, il faut indiquer l'endroit où se situe le fichier dans l'arborescence, c'est à dire indiquer le chemin du fichier. Il y a deux façons d'indiquer ce chemin :
/home/rene/Documents
;
./Documents
(si vous êtes dans le répertoire /home/rene). Le « ./ » peut être omis s'il n'y a pas d'ambiguïté.
Le caractère « . » (point) indique l'endroit où l'on se trouve dans l'arborescence des fichiers (appelé le répertoire courant).
Le caractère « .. » (double point) indique le niveau au-dessus duquel on se trouve dans l'arborescence (appelé le répertoire parent) : pour remonter de 2 niveaux dans l'arborescence (donc en relatif), vous devez entrer la commande : cd ../..
Le symbole « / » est le séparateur des répertoires.
Votre répertoire personnel peut être désigné par la variable système : $HOME (obligatoirement en majuscule) ou par le symbole « ~ » (tilde).
Dans les exemples suivants, le nom de votre compte est remplacé par « utilisateur ». Chez moi, comme mon compte utilisateur est « rene », je remplace donc « utilisateur » par « rene ».
Ouvrez un terminal et tapez les commandes suivantes :
cd $HOME
pour revenir dans votre « home » (à la racine de votre compte utilisateur) au cas ou vous avez ouvert un terminal ailleurs.
pwd
pour vérifier que vous êtes bien dans votre « home » (/home/utilisateur).
cd ./Documents
vous êtes maintenant dans le répertoire /home/utilisateur/Documents.
pwd
pour vérifier où vous êtes : /home/utilisateur/Documents.
ls
pour voir tous les fichiers du répertoire Documents.
ls -l
pour voir tous les fichiers du répertoire Documents en détail (avec les droits, l'appartenance, la taille, etc.). « -l » est une option de la commande « ls » qui signifie « format long ». Il n'y a pas d'espace entre le signe « - » et le « l ».
cd ../Images
pour aller dans le répertoire /home/utilisateur/Images (chemin relatif).
pwd
vérification : vous devez être dans /home/utilisateur/Images.
ls ~
pour voir les fichiers de la racine de votre home (/home/utilisateur) alors que vous êtes dans le répertoire /home/utilisateur/Images.
ls -l ~
la même commande que ci-dessus en version longue.
Remarque : sur de nombreuses distributions, la commande ls -l
peut être abrégée en ll
. C'est ce que l'on appelle un alias, c'est à dire l'écriture abrégée d'une commande que l'on peut définir dans le fichier caché .profile ou le plus souvent dans .bashrc, à la racine de votre compte utilisateur.
Ce sont des caractères qui peuvent remplacer un ou plusieurs caractères dans une commande.
Leur signification dépend de l'interpréteur de commandes utilisé dans le terminal (qu'on appelle aussi le shell). Pour les distributions prises en compte sur ce site, l'interpréteur de commandes par défaut est BASH, acronyme de Bourne Again Shell.
Pour savoir quel interpréteur utilise votre terminal, tapez la commande :
echo $SHELL
si la réponse est /bin/bash, c'est que vous utilisez bien l'interpréteur BASH.
Les métacaractères les plus courants dans BASH sont :
ls *.jpg
liste (ls) tous les fichiers du répertoire courant dont le nom se termine par .jpg (l'extension .jpg désignant des fichiers de photos).
ls DSC[FN]*.jpg
liste toutes les photos (nom se terminant par .jpg) du répertoire courant prises par un appareil Fuji (préfixe DSCF) ou Nikon (préfixe DSCN).
ls *[!0-9].jpg
liste tous les fichiers qui ne contiennent pas de chiffre juste avant le nom de l'extension (pour lister, par exemple toutes les photos qui ont été renommées).
Et pour terminer, un exemple plus complet :
ls -l ~/Images/[vVaB]*.*p*g
liste (au format long) tous les fichiers dont le nom commence par une des lettres : v, V, a ou B, suivi de 0 ou plusieurs caractères quelconques (*), suivi d'un point (.) marquant l'extension et se terminant par *p*g dans le dossier Images de l'utilisateur (~/Images). L'expression *p*g signifie que les fichiers jpg et png qui représentent les images au format jpg et png seront listés.
Les expressions régulières, appelées aussi expressions rationnelles, sont une extension des métacaractères vus précédemment. Ces expressions sont très puissantes et très utilisées pour, par exemple, rechercher du texte dans un document. À titre d'exemple, l'expression régulière #[a-zA-Z-_]+@[a-zA-Z-]+\.[a-zA-Z]{2,6}#
permet de trouver toutes les adresses courriel dans un document texte.
Malheureusement, ces expressions n'ont pas été standardisées et différents moteurs d'expressions régulières utilisent des syntaxes différentes. POSIX a essayé de standardiser ces expressions, mais d'autres systèmes coexistent, tels que Tcl, Perl et PCRE (pour le langage PHP). Un exellent article de Wikipédia détaille en particulier les fonctions principales de ces expressions.
Chaque commande utilise par défaut 3 flux standards. Dans les exemples précédents, vous entrez les commandes à partir du clavier et les résultats de la commande sont écrits dans le terminal. Dans ces exemples, l'entrée standard est le clavier et la sortie standard est le terminal. En cas d'erreur sur la commande, un message d'erreur est affiché également dans le terminal qui est aussi la sortie d'erreur standard.
En langage informatique, on dit que les processus (les commandes sont des processus) utilisent 3 flux standards qui sont :
Il est possible de changer chacun de ces flux par défaut, c'est ce que l'on appelle les redirections.
Une commande peut prendre ses paramètres dans un fichier par exemple ou bien d'une autre commande. C'est une redirection d'entrée.
De même la sortie d'une commande peut être redirigée vers un fichier ou vers l'entrée d'une autre commande.
Enfin, la sortie d'erreur peut être aussi redirigée vers un fichier, vers une autre commande ou vers la « poubelle ». La « poubelle » est un fichier spécial à ne pas confondre avec la « corbeille » du bureau. Tout ce qui est écrit dans ce fichier disparaît et n'est jamais récupérable. Ce fichier est désigné par /dev/null.
Le mécanisme de redirection est très puissant avec seulement 6 redirections :
Pour ces exemples, allez vous placer dans le répertoire Modèles qui est un dossier système (donc qui existe obligatoirement) :
cd ~/Modèles
vous êtes maintenant dans le répertoire Modèles (si vous avez bien orthographié le nom : majuscule et accents).
ls -l ~
liste (au format long) tous les fichiers de votre dossier personnel (votre « home »). En réponse à cette commande vous devez voir s'écrire plusieurs lignes dans le terminal (une ligne par fichier), dont au moins les dossiers : Bureau, Documents, Images, Modèles, Musique, Public, Téléchargements et Vidéos.
ls -l ~ >liste
rien ne s'écrit dans le terminal. La sortie de la commande ls a été redirigée vers le fichier liste qui a été créé pour recevoir le résultat. Comme rien n'est précisé, le fichier liste a été créé à l'endroit ou vous êtes, c'est à dire dans le dossier Modèles.
ls
avec cette commande vous devez voir que le fichier liste existe bien dans ce répertoire.
more liste
la commande more permet de visualiser le contenu du ficher spécifié. Vous voyez donc le contenu du fichier liste.
ls *toto*
liste tous les fichiers du répertoire courant (donc le répertoire Modèles dans notre exemple) dont le nom contient la chaîne « toto ». Comme ce fichier n'existe pas, un message d'erreur s'écrit dans le terminal : ls: impossible d'accéder à 'toto': Aucun fichier ou dossier de ce type.
ls *toto* 2>mes_erreur
aucun message d'erreur ne s'affiche dans le terminal, mais le fichier mes_erreur a été créé et contient ce message. Il ne doit pas avoir d'espace entre le 2 (qui représente la sortie d'erreur) et le symbole de redirection de sortie >. Le nom de fichier peut être collé au symbole > ou séparé par une espace.
ls *titi* 2>>mes_erreur
même exemple que ci-dessus avec un autre nom qui n'existe pas (enfin, j'espère !). Le message d'erreur est écrit à la fin du fichier mes_erreur avec la redirection 2>> de la sortie d'erreur.
Enfin, un exemple utilisant le pipe pour diriger la sortie d'une commande sur l'entrée de la suivante :
ls -l /boot/grub | grep grub
la commande grep est un filtre qui n'affichera que les lignes contenant la chaîne de caractères passée en paramètre (la chaîne « grub » dans cet exemple). La commande ls liste les fichiers contenus dans le répertoire /boot/grub et envoie chaque ligne (donc ici le nom de chaque fichier trouvé) à la commande grep qui compare la chaîne de caractères reçue à la chaîne grub passée en paramètre et affiche la ligne si la chaîne reçue contient la chaîne grub. Vous devez voir s'afficher 2 lignes dans le terminal correspondant aux noms de fichiers grub.cfg et grubenv.
Vous pouvez aussi rediriger le résultat de la commande grep dans un fichier, par exemple :
ls /boot/grub | grep grub > lsgrub
le fichier lsgrup contient alors les noms des fichiers grub.cfg et grubenv, chacun sur une ligne. Ce type de fichier peut ensuite être utilisé comme entrée d'une autre commande (avec le symbole <).
more lsgrup
pour visualiser le fichier créé par la commande précédente.
Le terminal s'exécute dans une fenêtre, qui, comme toutes les fenêtres, peut être redimensionnée. Il est possible d'ouvrir autant de terminaux que l'on veut. Ce qui suit s'applique à l'interpréteur BASH. D'autres interpréteurs peuvent avoir des propriétés identiques que je n'ai pas testées.
Sous Linux, les terminaux ont quelques propriétés dont on ne peut plus s'en passer lorsqu'on les a utilisées. Je cite ici les plus courantes.
ls ~/Doc
puis la touche Tab. La commande est alors complétée en ls ~/Documents
. Le nombre de caractères à taper doit être suffisant pour distinguer deux noms proches. Si les premières lettres tapées ne correspondent à aucun nom, la touche Tab n'a aucun effet. C'est une indication qu'aucun nom ne correspond et qu'on a probablement fait une erreur de saisie. Ce qui est vrai pour les chemins l'est aussi pour les noms des commandes.
Note : si un nom de chemin ou de fichier comporte un caractère espace, il doit être mis entre parenthèses car l'espace est un séparateur dans une commande (séparateur entre une commande et une option ou un argument par exemple).
Note : le nombre de commandes enregistrées dans l'historique est défini dans le fichier caché « .bashrc » dans votre « home » à la ligne HISTSIZE=1000. Vous pouvez changer cette valeur par défaut pour en mettre une valeur plus élevée ou plus faible, à votre convenance.
history
. Chaque commande est affichée précédée de son numéro d'ordre. Lorsque vous avez trouvé votre commande dans cette liste, tapez son numéro d'ordre précédé du symbole « ! » (point d'exclamation) au lieu de son nom pour l'exécuter. Exemple : !226
pour exécuter la 226e commande de la liste. Il ne doit pas avoir d'espace entre le point d'exclamation et le numéro.
clear
pour effacer le contenu du terminal.
Plusieurs raccourcis sont intéressants à connaître lorsqu'on utilise le terminal.
Cette liste de commandes n'est pas exhaustive. Elle est classée par thèmes. Les options des commandes peuvent souvent être regroupées derrière le signe « - ». Pour plus de détails sur ces commandes, vous pouvez taper le nom de la commande dans votre navigateur précédé de « commande » et suivi de « ubuntu » ou « linux ». Par exemple pour avoir des détails sur la commande chown (changer le propriétaire d'un fichier), tapez « commande chown ubuntu ».
Remarque : dans les tableaux suivants, si rien n'est précisé, le terme de fichier désigne les fichiers et les répertoires (qui sont des fichiers particuliers vus par le système Linux).
Vous pouvez trouver la liste complète des commandes bash par ordre alphabétique sur le site wikibooks.org en français.
Les commandes dangereuses sont signalées par ce logo : .
nom | signification | action | options principales | Exemples | ||
---|---|---|---|---|---|---|
cd | change directory | pour se déplacer dans les répertoires | - | retourne dans le répertoire précédent |
cd ~/Téléchargements
|
|
.. | remonte au répertoire parent | |||||
echo | echo | affiche la chaîne de caractère passée en paramètre. Utile pour afficher le résultat de certaines commandes | -n | n'ajoute pas de caractère de fin de ligne |
echo "mon message"
|
|
-e | interprète les caractères de formatage (sauts de ligne, de page,tabulations...) | |||||
ls | list | affiche le contenu d'un répertoire | -l | affichage détaillé du répertoire |
ls -la pour lister aussi les fichiers cachés
|
|
-a | affiche également les fichiers cachés (ceux qui commencent par un point) | |||||
pwd | print working directory | affiche le nom du répertoire actuel |
pwd
|
|||
sudo | super user do | exécute la commande suivante comme super-utilisateur |
sudo lshw (voir cette commande ci-dessous)
|
nom | signification | action | options principales / commentaire | Exemples | |
---|---|---|---|---|---|
--help | help | affiche l'aide en français sur une commande | c'est une option des commandes en version longue |
find --help affiche l'aide de la commande find
|
|
date | date | affiche la date actuelle du système | +%s | affiche le temps Unix en secondes (nombre de secondes depuis le 1er janvier 1970 à 0 heure) |
date +%s
|
df | disk free | affiche l'espace libre sur un disque ou une partition | -h | indique l'espace en Mio ou Gio |
df -TH /home
|
-H | indique l'espace en Mo ou Go | ||||
-T | indique en plus le type du système de fichiers | ||||
file | file | affiche le type mime du fichier et d'autres informations sur le fichier suivant son type | décode les informations contenues dans les en-têtes internes des fichiers |
file photo1254.jpg
|
|
free | free | affiche l'utilisation de la mémoire | -h | affiche dans l'unité appropriée (ko, Mo, Go) |
free -ht
|
-t | affiche en plus le total (RAM + swap) | ||||
history | history | affiche l'historique des commandes passées dans le terminal | pour exécuter une ancienne commande tapez son numéro précédé de « ! » (sans espace) |
history affiche l'historique!245 exécute la commande 245 de l'historique
|
|
hostname | host name | affiche le nom de l'ordinateur sur le réseau local | aucun | hostname | |
lshw | list hardware | affiche les caractéristiques des composants de l'ordinateur. Devrait être exécuté en super-utilisateur | -html | affiche au format html pour être lisible dans un navigateur web |
sudo lshw -html > matos.html
|
-X | lance l'interface graphique |
sudo lshw -X
|
|||
lspci | list pci | affiche les périphériques pci connectés |
lspci
|
||
lsusb | list usb | affiche les périphériques usb connectés |
lsusb
|
||
man | manual | affiche le manuel d'une commande spécifiée | très nombreuses options pour la recherche et l'affichage. Tapez « q » pour quitter le manuel |
man uname
|
|
ps | processes snapshot | affiche les processus en cours. Pour obtenir l'aide sur cette commande, tapez « ps --aide tous » | -u | affiche seulement les processus de l'utilisateur courant |
ps -au affiche les processus utilisateur et rootps -faux
|
-au | affiche les processus de tous les utilisateurs | ||||
-faux | regroupe les processus avant affichage | ||||
stat | statut | affiche les informations sur un fichier ou un système de fichiers | -f | affiche l'état du système de fichiers |
stat ~/Documents stat -f ~/Documents
|
uname | unix name | affiche les informations du système | -n | affiche le nom de l'ordinateur (équivalent à hostname) |
uname -a
|
-o | affiche le nom du système d'exploitation | ||||
-s | affiche le nom du noyau | ||||
-a | affiche toutes les informations | ||||
whereis | where is | recherche le chemin du programme spécifié | affiche les chemins du fichier source, de l'exécutable et du manuel. Si la réponse est seulement le nom du programme, c'est qu'il n'est pas installé |
whereis firefox
|
|
which | which | recherche le chemin du programme spécifié | affiche le chemin du programme qui sera exécuté. Si rien ne s'affiche c'est que le programme n'est pas installé |
which firefox
|
|
whoami | who am I | affiche le nom de connexion de l'utilisateur |
whoami
|
nom | signification | action | options principales / commentaire | Exemples | ||
---|---|---|---|---|---|---|
cat | concatenate | concatène ou affiche des fichiers texte | -n | affiche les numéros de ligne |
cat fich_1.txt fich_2.txt > fich_3.txt crée le fichier fich_3.txt et y place le contenu de fich_1.txt et de fich_2.txtcat fich_3.txt affiche le contenu du fichier fich_3.txt
|
|
cmp | compare | compare deux fichiers textes ou binaires et indique les différences | -b | affiche le premier octet qui diffère (en octal) |
cmp -l -i 440 fich1 fich2 : compare les fichiers à partir de l'octet 440 et affiche toutes les différences
|
|
-l | affiche en octal tous les octets qui diffèrent | |||||
-i | ignore les N premiers octets des fichiers | |||||
cp | copy | copie des fichiers ou des répertoires, éventuellement sous un autre nom | -R | copie récursivement les fichiers |
cp -R Audio/* Sauve_audio : copie tous les fichiers (*) du répertoire Audio dans le répertoire Sauve_audio
|
|
diff | difference | affiche les différences entre deux fichiers textes | -i | insensible à la casse |
diff -i fich1.txt fixh2.txt voir cette page pour l'interprétation du résultat
|
|
-b | ignore les diffrénces de nombre d'espaces | |||||
ln | link | crée un lien physique ou symbolique vers un fichier | -s | crée un lien symbolique |
ln -s ~/rep_cible MonLien crée un lien symbolique appelé MonLien qui pointe vers le répertoire ~/rep_cible. Un double-clic sur MonLien dans le navigateur de fichiers montre les fichiers du dossier ~/rep_cible. Un lien peut pointer vers un répertoire ou vers un fichier.
|
|
mkdir | make directory | crée un répertoire | -p | crée les répertoires parents s'ils n'existent pas |
mkdir ~/Photos crée le répertoire Photos dans le homemkdir -p ~/Photos/2020/vacances crée le répertoire vacances et leurs parents Photos et 2020 s'ils n'existaient pas
|
|
mv | move | renomme ou déplace un ou plusieurs fichiers | -i | demande confirmation avant d'écraser le fichier cible s'il existe |
mv DSCF1234.JPG Père_Noel.jpg renomme Père_Noel.jpg le fichier DSCF1234.JPG
|
|
-u | ne déplace que si le fichier source est plus récent que le fichier cible |
mv -u ~/Images/*.jpg ~/Photos déplace tous les fichiers de photos (*.jpg) du répertoire ~/Images vers le répertoire ~/Photos sans écraser les fichiers plus récents de même nom de ce répertoire
|
||||
rename | rename | renomme des fichiers | utilise des expressions régulières de type perl |
rename 'y/A-Z/a-z/' * convertit les noms de tous les fichiers du répertoire courant en minusculesrename 's/\.html$/.xhtml/' * renomme tous les fichiers avec l'extension « html » en « xhtml »
|
||
rm | remove | supprime des fichiers | -i | demande confirmation avant chaque suppression |
rm ~/essai/* supprime tous les fichiers du répertoire essai sans avertissementrm -R ~/essai supprime le répertoire essai et tous les fichiers et répertoires qu'il contient sans avertissement
|
|
-R | supprime récursivement des répertoires et leur contenu | |||||
rmdir | remove directory | supprime des répertoires vides | -p | supprime les répertoires parents |
rmdir ~/Photos/2020/vacances supprime le répertoire vacancesrmdir -p ~/Photos/2020/vacances supprime les répertoires vacances, 2020 et Photos
|
|
touch | touch | crée un fichier vide ou modifie la date d'un fichier | -m | modifie seulement la date de modification |
touch nouveau.txt crée le fichier vide nouveau.txt
|
|
-r | donne la même date que celle du fichier qui suit |
touch -r ancien.txt nouveau.txt : affecte la date du fichier ancien.txt au fichier nouveau.txt
|
||||
-t | définit une date au format CCYYMMDDhhmm.ss |
touch -t 202105111521.18 Lola.txt définit l'heure d'accès et de modification du fichier Lola.txt au 11 mai 2021 à 15h21min18s
|
Certaines commandes ne peuvent être utilisées que par le propriétaire des fichiers ou par le super-utilisateur. Dans ce second cas il faut faire précéder les commandes par « sudo ».
nom | signification | action | options principales / commentaire | Exemples | |
---|---|---|---|---|---|
chmod | change mode | change les permissions des fichiers | -R |
change récursivement les permissions les permissions peuvent être notées en octal (de 0 à 7) ou en « rwx » pour chaque entité (u, g, o ou a pour all) |
chmod 754 Monfichier atribue pour Monfichier les droits rwx au propriétaire (7), rx au groupe (5) et r au « reste du monde » (4)chmod o-w Monfichier enlève le droit d'ecriture pour « other » (le reste du monde) sur Monfichier
|
chgrp | change group | change le groupe propriétaire | -R | change récursivement les fichiers et répertoires |
chgrp famille /vacances/*.jpg les fichiers de photos (*.jpg) du répertoire vacances appartiennent maintenant au groupe famille
|
chown | change owner | change le propriétaire des fichiers | -R | change récursivement les fichiers et répertoires |
chown rene MonFichier le propriétaire de MonFichier est maintenant renechown rene:famille MonFichier ce fichier appartient maintenant à rene du groupe famille
|
: | ce séparateur permet de changer simultanément de propriétaire et de groupe | ||||
find | find | recherche des fichiers | -name | recherche par le nom |
find ~ -iname *.pdf recherche dans le home ( ~ ) tous les fichiers ( * ) avec l'extension pdf en majuscule ou minuscule (iname)find ~/Images -type d recherche tous les répertoires (-type d) dans ~/Images
|
-iname | nom de fichier insensible à la casse | ||||
-type | recherche d'un type de fichier | ||||
grep | global regular expression print | recherche de chaîne de caractères dans un fichier texte ou une commande | -n | retourne le numéro de ligne |
grep -ni "annie m" répertoire.txt retourne toutes les lignes du fichier répertoire.txt qui contiennent la chaîne annie m en majuscule ou minusculels | grep cle retourne tous les noms de fichiers (ls) qui ont la chaîne cle dans leur nom
|
-i | chaîne insensible à la casse |
Sous Windows, pour installer un logiciel, vous le cherchez sur différents sites, puis vous le téléchargez, le plus souvent sous un format d'exécutable (extension .exe pour un logiciel « autoextractible ») ou d'installateur (extension .msi pour être installé par « Windows installer »), plus rarement sous un format compressé (fichier .zip). Ensuite, vous l'installez par un double-clic sur le fichier téléchargé et vous suivez les instructions. Si tout se passe bien, le logiciel est disponible. Parfois, l'installation n'aboutit pas et un message vous indique qu'il manque un fichier (souvent un fichier .dll qui est une librairie dynamique partagée dont le programme a besoin pour fonctionner). Vous pouvez aussi avoir un message tel que : ce programme ne peut fonctionner qu'avec la version 4.5 de .NET Framework
, auquel cas, il vous faudra aussi télécharger la bonne version du framework.
Sous Linux, c'est complètement différent, à la fois plus simple et mieux géré. Les deux principales différences sont :
Cela est possible grâce à un mécanisme particulier : la gestion des paquets.
Bien que la gestion des logiciels soit basée sur le même principe pour toutes les distributions de Linux, les commandes peuvent être différentes en fonction de la distribution mère. Je ne développerai ici que celles basées sur la distribution mère Debian qui concerne les variantes d'Ubuntu et de Linux Mint documentées dans ce site.
Sous Linux, un gestionnaire de paquets remplace les divers systèmes d'installation sous Windows. Le logiciel que l'on veut installer est contenu dans un fichier que l'on appelle un paquet. Pour les distributions basées sur Debian, ces fichiers ont l'extension .deb. En fait un paquet contient en même temps tous les « bouts de programmes » constituant le logiciel, mais aussi toutes les instructions pour l'installer et toutes les dépendances. Les dépendances sont les autres programmes et bibliothèques dont il a besoin pour fonctionner (c'est un peu l'équivalent des .dll sous Windows).
Lors de l'installation du logiciel, le gestionnaire lit les dépendances et cherche si elles sont déjà installées sur votre ordinateur. Si c'est le cas, il indiquera au logiciel ou elles se trouvent, sinon il cherchera les fichiers manquant, puis les chargera et les installera avec votre accord. Le gestionnaire installe alors le logiciel demandé, met à jour les dépendances et le menu. Il devient disponible directement pour l'utilisateur, très souvent sans avoir à redémarrer l'ordinateur.
Sous Linux, tous les logiciels sont stockés sur des serveurs de fichiers Linux répartis un peu partout sur la planète et qui contiennent tous pratiquement les mêmes fichiers. Ceci évite l'engorgement des serveurs si un grand nombre d'utilisateurs veut télécharger les mêmes fichiers en même temps. C'est qui se passe lors des mises à jour par exemple. C'est pour cela que les mises à jour sous Linux sont très rapides (rien à voir avec la lenteur des mises à jour sous Windows). Vous pouvez choisir le serveur de logiciels dans le gestionnaire de paquets ou conserver celui proposé par défaut.
Les logiciels sont regroupés dans des ensembles appelés des dépôts APT (repository en anglais) ou plus simplement « dépôts ». Vous n'avez donc pas à aller dénicher un logiciel sur le web pour le télécharger, avec tous les risques que cela comporte. Avant d'être admis dans un dépôt, le logiciel et ses dépendances sont testés. Ils sont bien sûr exempts de publicités, virus, barres d'outils et autres gadgets qui polluent les ordinateurs sous Windows. Les dépôts sont divisés en plusieurs branches et sections. La branche correspond à l'utilité du dépôt : principale, mises à jour de sécurité, rétro-portage, etc. La section regroupe des paquets selon leur maintenance par les développeurs d'Ubuntu et par leur licence.
Les sections principales sont (les noms sont uniquement en anglais) :
Vous pouvez également télécharger les codes sources d'un logiciel pour voir son fonctionnement, le modifier et le compiler sur votre ordinateur (utilisateur averti).
Il existe aussi d'autres dépôts, gérés par les partenaires de Canonical (société qui développe et gère Ubuntu) ainsi que des « dépôts personnels » désignés par ppa (pour Personal Package Archive en anglais).
Chaque version d'Ubuntu a ces propres dépôts.
Vous avez plusieurs possibilités pour installer un logiciel :
Quelle que soit la solution utilisée, elle utilise toujours le gestionnaire de paquets apt (signifiant Advanced Packaging Tool, soit « outil de paquetage avancé ») pour télécharger les paquets et vérifier les dépendances puis fait appel à dpkg (signifiant Debian package), qui est l'outil de bas niveau d'installation de paquets Debian. Dpkg est appelé par des outils de plus haut niveau et plus conviviaux à utiliser.
Note 1 : les exemples suivants utilisent la distribution Linux Mint MATE. Les différences avec les autres distributions sont minimes et vous devriez vous y retrouver facilement.
Note 2 : j'ai choisi le logiciel Tuxpaint comme exemple pour illustrer l'installation et la désinstallation car il comporte plusieurs paquets et plusieurs dépendances pour son installation complète. De nombreux logiciels sont plus simples à installer que celui-ci.
Pour simplifier encore le téléchargement des logiciels, chaque distribution possède un gestionnaire de logiciels. C'est un programme appelé Logithèque qui présente tous les logiciels présents dans les dépôts, pour la version du système d'exploitation installé. Comme ces logiciels sont très nombreux (plusieurs milliers), ils sont classés par catégories.
Vous accédez à la logithèque par le menu Applications, catégorie Administration, puis Logithèque.
Pour télécharger un logiciel avec la logithèque, vous avez deux possibilités :
Par exemple, vous cherchez un logiciel de dessin d'utilisation très simple à l'usage des enfants. Dans la catégorie Graphisme, sous catégorie Dessin, vous trouvez Tuxpaint parmi le choix proposé. La description sommaire indique « Programme Paint pour jeunes enfants », ce qui correspond à ce que l'on cherche. Un clic sur son nom vous donne une description détaillée du logiciel (parfois en anglais, ce qui n'est pas le cas ici) et la possibilité de le télécharger. Pour l'installer, cliquez sur le bouton Installation.
Comme c'est un programme que vous installez sur votre système, c'est à dire que vous faites une modification du système, votre mot de passe est demandé pour autoriser son installation. Lorsque l'installation est terminée, le bouton se change en Supprimer.
Quittez la logithèque. Dans le menu Applications, vous retrouvez Tux Paint dans la catégorie Éducation. Vous l'exécutez comme d'habitude par un clic sur son nom. C'est aussi simple que ça.
Dans la catégorie Préférences, vous trouvez son programme de configuration qui a été installé en même temps.
Dans votre navigateur favori, tapez « tuxpaint:ubuntu » et cliquez sur le site correspondant au lien https://doc.ubuntu-fr.org/tuxpaint (ou cliquez directement sur ce lien).
Il vous suffit ensuite de suivre les indications d'installation. Des liens spéciaux (souvent en vert) facilitent l'installation des logiciels, comme sur l'illustration de gauche.
Cliquez sur le lien tuxpaint.
Votre autorisation est demandée pour ouvrir le lien apt. Si vous cochez la case de cette fenêtre, le site sera toujours autorisé à ouvrir les liens « apt » sans vous poser la question. Pour ne pas diminuer la protection de mon ordinateur, je ne coche pas cette case. C'est une question de choix personnel. Dans tous les cas, cliquez sur le bouton Choisir une application.
Dans la nouvelle fenêtre, vous devez choisir une application pour ouvrir le lien apt. Par défaut l'application AptURL est sélectionnée et le bouton Ouvrir le lien est accessible. Cliquez simplement sur ce bouton.
Si aucune application n'est sélectionnée, ce bouton est grisé (il n'est plus actif - vous ne pouvez pas cliquer dessus). Cela arrive parfois lorsqu'on a désélectionné par inadvertance l'application par défaut (AptURL). Il faut alors la sélectionner par un clic souris, ce qui rend le bouton actif.
Pour information, l'application AptURL gère le protocole d'apt et permet d'aller chercher les paquets nécessaires sur le serveur Ubuntu pour installer le logiciel.
La fenêtre suivante vous demande si vous voulez installer le logiciel. À cette étape vous pouvez encore annuler l'installation (bouton Cancel sur l'illustration de gauche). En cliquant sur le petit triangle à gauche du mot Description, vous avez une description du logiciel à installer.
Si le logiciel est déjà installé, un message vous l'indique à la place de cette fenêtre.
Dans le cas contraire, l'installation commence. Elle se fait en deux parties.
Dans un premier temps, les paquets sont téléchargés à partir du serveur sélectionné par apturl. Si vous cliquez sur le petit triangle à gauche du mot Détails, vous voyez ce qu'il se passe à cette étape : la liste des paquets en téléchargement est indiquée avec leur taille.
Dans un second temps, les paquets téléchargés sont installés (par dpkg). Vous pouvez aussi voir le détail de l'installation en cours.
Lorsque l'installation est terminée, sous Linux Mint MATE, dans le menu Applications, catégorie Éducation, vous trouvez le logiciel Tux Paint. Dans le menu, catégorie Préférences, vous trouvez son programme de configuration (son nom interne est tuxpaint-config) qui a été installé en même temps.
Dans la page de documentation Ubuntu de Tuxpaint, il est indiqué que vous pouvez également installer le paquet tuxpaint-stamps-default pour avoir des tampons supplémentaires. En fait si vous cliquez sur ce lien, le système vous indiquera que ce programme est déjà installé (ce qui est visible sur l'illustration de droite de téléchargement du logiciel). Le paquet tuxpaint-config a été également installé en même temps.
Ceci est assez courant car le logiciel évolue et les pages web ne sont pas forcément à jour. Dans le cas de Tuxpaint, le programme de tampons supplémentaires était séparé du programme principal et il fallait l'installer séparément (c'est l'équivalent d'une option). Il est maintenant considéré comme intégré au logiciel et est installé d'office, même s'il se présente comme un programme séparé au niveau des paquets. Le programme de configuration est aussi intégré au niveau de l'installation. C'est aussi toute la puissance de l'installateur de logiciels apt de gérer ces configurations pour faciliter la vie des utilisateurs.
Dans les distributions Ubuntu et dérivées (Linux Mint), le gestionnaire de paquets s'appelle Synaptic. Il est accessible par le menu Applications, catégorie Administration, puis Gestionnaire de paquets Synaptic. C'est une interface graphique complète pour apt qui permet l'installation et la désinstallation des paquets depuis les dépôts APT. Comme il ne fonctionne qu'en mode super-utilisateur (puisqu'il permet des modifications du système), une fenêtre demande votre mot de passe pour l'exécuter.
La figure de gauche montre l'interface de Synaptic dans sa configuration par défaut. Tous les paquets connus de la distribution sont listés dans le panneau de droite de la fenêtre car les options Catégories et Toutes sont sélectionnées. La case en regard de chaque paquet indique son état suivant une légende que vous pouvez afficher par le menu AIde en cliquant sur l'élément Légende de l'icône.
Une case blanche indique un paquet non installé.
Une case rouge indique un paquet cassé, ce qui arrive parfois lors d'une mauvaise manipulation ou lors d'une installation ou d'une mise à jour s'il y a eu un problème sur le réseau ou une coupure de courant. Dans ce cas, le menu Édition permet de Réparer les paquets cassés. Après réparation, vous pouvez aussi Actualiser la liste des paquets qui indiquera les éventuelles erreurs restantes.
Pour rechercher un paquet particulier, utilisez le bouton Rechercher, situé en haut à droite de la fenêtre Synaptic. Une fenêtre de recherche permet d'entrer le nom du paquet. Une fois le nom entré, cliquez sur le bouton Rechercher pour lancer la recherche dans tous les paquets connus du système.
Pour installer le logiciel Tuxpaint, entrez son nom dans la fenêtre de recherche, puis cliquez sur le bouton de recherche (voir illustration de droite ci-dessus). Synaptic recherche tous les paquets qui contiennent le nom tuxpaint et les présente dans le panneau de droite. Il a trouvé 6 paquets, dont un nommé tuxpaint, qui correspond au logiciel que l'on veut installer.
Cliquez sur la case en face de son nom. Dans le menu contextuel qui apparaît, cliquez sur l'élément Sélectionner pour installation. Une nouvelle fenêtre indique la liste des paquets qui doivent être installés pour le bon fonctionnement de ce logiciel de dessin. C'est ce que l'on appelle les dépendances (voir figure de droite).
Cliquez alors sur le bouton Ajouter à la sélection.
Cinq paquets sont sélectionnés pour être installés. Ils sont surlignés en vert et la case correspondante contient un motif indiquant « pour installation ».
Cliquez sur le bouton Appliquer, en haut à gauche pour lancer l'installation.
Une nouvelle fenêtre résume toutes les opérations qui vont être effectuées. Vous pouvez voir le détail de ces opérations en cliquant sur le bouton Afficher les informations détaillées. La case à cocher, si elle est cochée, ne lancera que le téléchargement des paquets sélectionnés sans les installer. Sauf cas particulier, laissez-la décochée. Les paquets seront alors téléchargés puis installés.
À cette étape, vous pouvez encore annuler toutes les opérations sélectionnées (téléchargement des paquets et leur installation) en cliquant sur le bouton Annuler.
Pour l'installation, cliquez sur le bouton Appliquer. Cette fenêtre se ferme et l'installation commence. Le déroulement de l'avancement de l'installation est visualisé dans une nouvelle fenêtre (voir illustration à droite). Vous pouvez suivre de déroulement détaillé en cliquant sur le petit triangle à gauche de Informations détaillées.
Une case à cocher permet de fermer automatiquement cette fenêtre à la fin de l'installation. En cas de problème rencontré, une fenêtre de message indiquera la cause de l'impossibilité d'installer correctement le logiciel. Si tout ce passe correctement (ce qui est quand même la presque totalité des cas), aucun message ne sera émis.
À la fin de l'installation, la liste des paquets est mise à jour et vous verrez la liste des paquets installés dans l'interface de Synaptic avec le numéro de version de chaque paquet. Vous pouvez ensuite quitter Synaptic.
Remarque : Le paquet tuxpaint-dev n'est pas sélectionné. Il s'agit du code source du logiciel. S'agissant d'un logiciel libre, le code source est toujours disponible pour être étudié, voire modifié par toute personne ayant des connaissances en développement informatique (et qu'on appelle des « développeurs »). La plupart des logiciels libres sont développés et maintenus par un grand nombre de personnes dans le monde, sous la direction d'un ou plusieurs responsables. Par curiosité, vous pouvez cliquer sur ce lien qui vous montre les développeurs impliqués dans l'élaboration de ce logiciel (développement, portage sur différentes plateformes, documentation, traduction...).
Ce chapitre liste quelques possibilités de gérer les paquets en ligne de commande dans un terminal : installer, mettre à jour ou désinstaller les paquets.
Apt est le nom du gestionnaire de paquets au format APT. C'est aussi le nom d'une commande pour installer, mettre à jour et désinstaller des paquets en gérant leurs dépendances comme expliqué au début du chapitre sur l'installation des logiciels.
Les deux autres commandes principales sont apt-get, la plus complète et aptitude, plus lourde et ne devrait être utilisée que par des personnes confirmées. Aptitude propose en plus une interface semi-graphique qui demande une certaine habitude par rapport à l'interface en ligne de commande. Toutes ces commandes se ressemblent beaucoup dans leurs options pour gérer les paquets APT. La commande apt rassemble les fonctionnalités des commandes apt-get et apt-cache. Dans les exemples suivants, j'utiliserai les commandes apt-get et apt-cache par habitude, mais vous pouvez utiliser à la place la commande apt si vous voulez en vous reportant au tableau pour les équivalences.
Le tableau suivant regroupe les commandes apt et apt-get pour gérer les paquets. Dans ces commandes l'ensemble <nom_du_paquet> est à remplacer par le nom réel du paquet. Par exemple pour l'installation du logiciel Tuxpaint, la commande doit être : sudo apt-get install tuxpaint
.
Action | apt-get / apt-cache | apt | Commentaire | |
---|---|---|---|---|
Installation | sudo apt-get install <nom_du_paquet> | sudo apt install <nom_du_paquet> | installe le logiciel avec ses dépendances | |
Désinstallation simple | sudo apt-get remove <nom_du_paquet> | sudo apt remove <nom_du_paquet> | désinstalle uniquement le paquet, sans désinstaller les éventuelles dépendances | |
Désinstallation avancée | sudo apt-get remove --purge <nom_du_paquet> | sudo apt purge <nom_du_paquet> | désinstalle le paquet avec ses fichiers de configuration (équivalent de suppression complète de Synaptic) | |
Désinstallation avec dépendances | sudo apt-get autoremove <nom_du_paquet> | sudo apt autoremove <nom_du_paquet> | désinstalle le paquet avec ses dépendances, mais laisse les fichiers de configuration | |
Désinstallation totale | sudo apt-get autoremove --purge <nom_du_paquet> | sudo apt autoremove --purge <nom_du_paquet> | désinstalle le paquet avec ses dépendances et ses fichiers de configuration | |
Information | apt-cache search <nom_du_paquet> | apt search <nom_du_paquet> | affiche des informations sur les paquets | |
Information détaillée | apt-cache show <nom_du_paquet> | apt show <nom_du_paquet> | affiche des informations détaillées sur le paquet | |
Mise à jour (dépôts) | sudo apt-get update | sudo apt update | met à jour la liste des paquets recencés dans le fichier /etc/apt/sources.list. | |
Mise à jour (paquets) | sudo apt-get upgrade | sudo apt upgrade | met à jour les paquets installés |
Avant d'installer un logiciel, il est intéressant de voir la liste des paquets qui en dépendent, même si cette démarche n'est pas obligatoire.
Ouvrez un terminal et tapez la commande : apt-cache search tuxpaint
ce qui a pour effet de lister tous les paquets qui contiennent la chaîne de caractères « tuxpaint » dans leur nom ou dans leur description. La figure à gauche montre le résultat de cette commande. 6 paquets dont le nom commence par tuxpaint sont listés avec une courte description et, plus surprenant, un paquet nommé junior-art qui fait figure d'intrus. Pour en savoir plus sur ce paquet, tapez la commande : apt-cache show junior-art
qui donne une description détaillée de ce paquet où l'on voit que le mot « tuxpaint » apparaît dans sa description : Outils pour que les enfants puissent produire des dessins. Le plus simple d'entre eux est tuxpaint, destiné aux jeunes enfants. Il supporte le son et est facile à utiliser..
. ce qui explique pourquoi il est listé avec les 6 autres paquets.
Maintenant, nous allons installer le logiciel Tuxpaint par la commande : sudo apt-get install tuxpaint
Comme l'installation d'un logiciel modifie le système, il faut écrire « sudo » devant la commande apt-get pour avoir les privilèges du super-utilisateur et entrer son mot de passe. La commande indique que 4 paquets supplémentaires seront également installés (donc en plus du paquet tuxpaint demandé). Différentes informations sont également fournies, comme l'espace disque qui sera occupé. À cette étape, vous pouvez encore annuler l'installation en tapant « n » à la question : Souhaitez-vous continuer ? Si vous entrez « o » (en majuscule ou minuscule) pour OUI, l'installation est effectuée et le détail des opérations est affiché dans le terminal.
Le logiciel Tuxpaint est alors disponible dans le menu Applications, dans la catégorie Éducation.
Tout comme pour l'installation, il y a plusieurs moyens de désinstaller un logiciel : par la logithèque, par le gestionnaire de paquets synaptic ou par des commandes Linux.
Ouvrez le menu de la logithèque par le bouton en haut à droite et sélectionnez l'élément Afficher les applications installées comme sur l'illustration de gauche.
La logithèque présente alors la liste des applications installées (voir la figure de droite). Pour désinstaller un programme, cliquez sur son nom puis sur le bouton de désinstallation. Comme pour l'installation, votre mot de passe sera demandé. Si ce programme est lui même une dépendance d'autres programmes, une fenêtre d'avertissement vous indiquera la liste des programmes qui devront être désinstallés en même temps. Jusqu'à ce niveau, vous pouvez toujours annuler cette action.
Dans cet exemple, nous allons désinstaller le logiciel de dessin Tuxpaint qui a été installé comme exemple par la logithèque (voir plus haut). Comme vous pouvez le voir sur l'illustration de droite, plusieurs programmes ont un nom contenant le terme « Tuxpaint ». Ces programmes ont été installés en même temps que le programme Tuxpaint. Ce sont des dépendances du programme principal.
Un autre programme, nommé Timgm6mb-soundfont a également été installé. Pour savoir s'il a un rapport avec Tuxpaint, cliquez dessus. Dans la fenêtre d'explication, une phrase pas très explicite et en anglais nous apprend que ce programme était intégré au programme MuseScore, mais qu'il en est maintenant détaché. C'est un programme de « police sonore » (traduction personnelle de sound font) qui permet d'écrire et de jouer de la musique. Mais le lien avec le programme de dessin n'est pas évident. Cliquez sur le bouton Supprimer (pour voir). Une fenêtre « popup » indique que ce programme est lié à 3 programmes : libfluidsynth2, libsdl-mixer1.2 et tuxpaint. Les 2 premiers sont des bibliothèques (appelées aussi librairies en anglais). C'est une déduction car les bibliothèques ont des noms qui commencent par lib. Il a donc bien été chargé en même temps que l'installation de Tuxpaint. Cliquez sur le bouton Annuler, puis revenez dans la fenêtre principale en cliquant sur ← (la flèche en haut à gauche).
L'installation de Tuxpaint a entraîné l'installation de 4 autres paquets : Timgm6mb-soundfont, Tuxpaint-config, Tuxpaint-plugins-default et Tuxpaint-stamps-default. Vous pouvez regarder ce que font ces paquets et comment ils sont liés au logiciel principal Tuxpaint en procédant comme ci-dessus, puis revenez dans la fenêtre principale.
Nous allons désinstaller ce programme et toutes ses dépendances. Une bonne façon de procéder est de désinstaller d'abord le programme principal. Normalement les dépendances directes sont aussi supprimées, mais nous allons voir, sur cet exemple, que ce n'est pas toujours le cas.
Cliquez sur Tuxpaint, puis sur le bouton Supprimer. Votre mot de passe est demandé, puis la désinstallation commence. Dans cet exemple, aucune dépendance n'est supprimée. Procédez de la même façon avec les paquets Tuxpaint-config, Tuxpaint-plugins-default et Tuxpaint-stamps-default. Pour ce dernier paquet une fenêtre d'avertissement indique que tuxpaint-data sera aussi supprimé. Confirmez et la désinstallation se poursuit. Terminez en désinstallant le dernier paquet nommé Timgm6mb-soundfont qui désinstallera également les deux librairies associées.
La désinstallation du logiciel Tuxpaint est maintenant complète.
Comme exemple, nous allons désinstaller le logiciel Tuxpaint qui a été installé précédemment, par la logithèque, par Synaptic ou à la main.
Lancez le logiciel Synaptic (menu Applications, catégorie Administration, puis Gestionnaire de paquets Synaptic).
Dans la fenêtre de Synaptic, cliquez sur le bouton Rechercher et tapez le nom du paquet principal : tuxpaint dans la fenêtre de recherche, puis validez en cliquant sur le bouton Rechercher (voir l'illustration à gauche).
Dans le panneau de droite de la fenêtre, les paquets relatifs à Tuxpaint sont marqués d'une case en vert qui indique qu'ils sont installés. Si ce n'est pas le cas, c'est que le logiciel Tuxpaint n'a pas été installé ou qu'il a déja été désinstallé.
Remarque : ne faites aucune action avant d'avoir lu tout ce paragraphe. Cet exemple sert à illustrer la désinstallation d'un logiciel contenu dans un seul paquet.
Cliquez (avec le bouton gauche) sur la case en face de Tuxpaint. Dans le menu contextuel qui s'ouvre, cliquez sur l'élément Sélectionner pour suppression complète. C'est en principe le dernier élément du menu. La case verte porte maintenant le symbole « sélectionné pour suppression complète » (croix orange sous Linux Mint MATE) comme sur l'illustration à gauche.
Cliquez ensuite sur le bouton Appliquer situé en haut à gauche pour valider cette modification. Une nouvelle fenêtre (voir l'illustration de droite) propose d'appliquer ces modifications et indique le résumé des opérations. À cette étape, vous pouvez annuler les opérations (donc ici, annuler la désinstallation du paquet tuxpaint). En cliquant sur le petit triangle devant À supprimer complètement..., vous pouvez voir l'ensemble de ce qui sera supprimé. Dans notre exemple, seul le paquet tuxpaint sera supprimé. Le bouton Afficher les informations détaillées donne ces mêmes informations sous une autre forme.
Cliquez sur le bouton Supprimer (en bas à droite) pour confirmer cette suppression. Le paquet est alors supprimé et la liste des paquets est mise à jour. Un message vous informe que la modification a réussi (voir l'illustration à droite). En cliquant sur le petit triangle en bas de la fenêtre, vous pouvez voir le détail de toutes les opérations exécutées lors de la désinstallation du paquet.
Fermez ensuite cette fenêtre.
Dans la fenêtre Synaptic mise à jour, vous pouvez voir que seul le paquet tuxpaint a été désinstallé. C'est d'ailleurs ce qui a été demandé. Lors de l'installation du logiciel Tuxpaint, en sélectionnant le paquet tuxpaint, plusieurs paquets ont été installés en même temps. Ces autres paquets étaient nécessaires au fonctionnement de ce logiciel. Mais la désinstallation fonctionne autrement : il est possible de désinstaller un seul paquet, sans toucher aux paquets associés, pour, par exemple, faire une mise à jour d'un unique paquet sans réinstaller l'ensemble du logiciel concerné.
Dans le cas de ce logiciel (Tuxpaint), il aurait fallut désinstaller tous les paquets concernés. Vous pouvez recommencer l'opération décrite ci-dessus pour chacun des paquets, ou les enlever d'un coup comme décrit dans le paragraphe suivant.
Le logiciel Tuxpaint comprend plusieurs paquets. Pour désinstaller complètement ce type de logiciel, il faut désinstaller tous les paquets concernés. C'est ce que nous allons faire ici.
Pour connaitre les paquets associés à Tuxpaint, cliquez avec le bouton droit sur la ligne du paquet principal tuxpaint, puis cliquez sur l'élément Propriétés du menu contextuel. Dans la fenêtre qui s'ouvre, cliquez sur l'onglet Dépendances et repérez la liste des paquets.
Les noms des paquets commencent par le nom du paquet principal (tuxpaint dans notre exemple). Les bibliothèques (noms qui commencent par lib) sont gérées automatiquement. Si certaines ne sont plus nécéssaiares à d'autres logiciels, elle seront désinstallées en même temps que les paquets. Dans notre exemple, les paquets tuxpaint-data, tuxpaint-plugins-default et tuxpaint-config (recommandé) sont listés. Le paquet tuxpaint-stamps-default n'apparait pas dans cette liste, ce qui arrive parfois. Pour savoir s'il peut être supprimé également ou s'il est une dépendance d'un autre logiciel que Tuxpaint, faites un clic droit sur la ligne du paquet dans la fenêtre principale de Synaptic, puis sur l'élément Propriétés. Dans l'onglet Dépendances, seul le paquet tuxpaint apparait (recommandé). Ceci signifie que ce paquet n'est utilisé par aucun autre logiciel sur votre ordinateur. Il peut donc aussi être supprimé.
Pour supprimer ces 5 paquets, faites un clic gauche sur chacun de ces paquets, puis sur l'élément Sélectionner pour suppression complète. Les lignes concernées sont surlignées en rouge et les cases correspondantes portent une croix orange sur fond vert. Cliquez ensuite sur le bouton Appliquer situé en haut à gauche pour valider cette modification. Voir l'illustration de droite.
Une nouvelle fenêtre propose d'appliquer ces modifications et indique le résumé des opérations. À cette étape, vous pouvez encore annuler les opérations en cliquant sur le bouton Annuler. Pour désinstaller le logiciel, cliquez sur le bouton Appliquer. Les paquets sélectionnés sont alors supprimés et la liste des paquets est mise à jour. Un message vous informe que la modification a réussi. Fermez cette fenêtre et vérifiez que les paquets relatifs à Tuxpaint sont bien désinstallés (la case en face de ces paquets doit être blanche).
Vous avez pu voir que le menu des opérations possibles sur un paquet comprennet les éléments Sélectionner pour suppression et Sélectionner pour suppression complète.
En général, un logiciel est accompagné d'un ou plusieurs fichiers de configuration (souvent placés dans /etc), de fichiers de préférences, placés dans les dossiers personnels et des fichiers de logs (dans /var).
L'option Sélectionner pour suppression supprime seulement le paquet et ses dépendances.
L'option Sélectionner pour suppression complète supprime en plus les fichiers de configuration.
Pour Tuxpaint, le fichier de configuration /etc/tuxpaint/tuxpaint.conf et les fichiers de préférences current_id.txt et lockfile.dat dans le dosier caché $HOME/.tuxpaint sont installés en même temps que le logiciel.
Avec l'option Sélectionner pour suppression complète, le fichier /etc/tuxpaint/tuxpaint.conf est également enlevé de l'ordinateur (ainsi que le répertoire tuxpaint dans /etc) alors qu'avec l'option Sélectionner pour suppression il aurait été conservé. Dans les deux cas, les fichiers dans $HOME/.tuxpaint/ sont conservés. Les dessins réalisés avec ce logiciel sont enregistrées dans ce répertoire, dossier $HOME/.tuxpaint/saved et sont aussi conservés. Si vous voulez les supprimer, vous devez les supprimer manuellement (avec le navigateur de fichiers par exemple.
Nous allons ici supprimer le logiciel Tuxpaint qui a été installé pour servir d'exemple.
D'après tableau des commandes, vous avez plusieurs possibilités pour désinstaller partiellement ou totalement un logiciel en ligne de commande. Si un paquet a été mal installé, à cause d'une coupure de courant par exemple, il est possible de ne désinstaller que ce paquet, sans désinstaller ses dépendances. À l'inverse, si un logiciel que vous avez testé ne correspond pas à votre besoin, vous allez le désinstaller complètement. C'est ce que nous allons faire ici.
Ouvrez votre terminal favori et entrez la commande suivante (en mode super-utilisateur car elle va modifier le système) :
sudo apt-get autoremove --purge tuxpaint
Après avoir entré votre mot de passe (pour que la commande soit exécutée avec les privilèges du super-utilisateur), apt-get liste les paquets qui vont être supprimés et indique l'espace disque récupéré. À cette étape, vous pouvez annuler l'opération en répondant « n » à la question Souhaitez-vous continuer ? [O/n]. Si vous répondez « O » (ou « o ») la procédure de désinstallation va s'effectuer.
Pour effacer complètement les traces de ce logiciel, vous devez supprimer également les fichiers créés par ce logiciel dans votre répertoire $HOME (dessins enregistrés, fichiers de préférences), par exemple en tapant la commande :
rm -R $HOME/.tuxpaint
qui signifie : supprimer (rm pour remove) récursivement (-R) le fichier caché (.tuxpaint) et tout son contenu du répertoire $HOME (qui est votre dossier personnel). Comme signalé par le triangle rouge, cette commande est très dangereuse : si vous tapez rm -R $HOME ou rm -R ~, vous detruisez irrémédiablement tous vos documents.