dernière modification : 2025

Utiliser le système

Des généralités sur l’interface de travail

1. L’interface graphique

Quand on débute aujourd’hui avec Unix, l’interface graphique semble plus simple à utiliser que la ligne de commandes, car il suffit de cliquer pour réaliser les actions souhaitées. Si on sait utiliser une souris, un gestionnaire de fichiers et un éditeur de texte, on s’en sort.

Gestionnaire de fichiers, éditeur de texte et terminal sont les applications graphiques incontournables. Chaque desktop en possède un jeu qui lui est propre. Par exemple, Nautilus est le gestionnaire de fichiers de GNOME, alors que sous KDE Plasma, c’est Dolphin. Il y a donc pléthore d’applications de type gestionnaire de fichiers, éditeur de texte et terminal.

Gestionnaire de fichiers

Il permet de se déplacer dans l’arborescence des dossiers (ou répertoires) et de manipuler leur contenu : créer des fichiers, les renommer, les déplacer, les dupliquer, etc.

Editeur de texte

Il permet d’ajouter, modifier et supprimer du texte dans un fichier.

Terminal

C’est une fenêtre permettant d’exécuter des commandes en ligne (comme l’écran d’une station de travail des années 70, mais dans une fenêtre).

doc

Peu à peu, avec l’expérience, et contrairement aux apparences, on se rend compte que l’on est souvent plus efficace avec la ligne de commande, pour peu que l’on connaisse les commandes essentielles.

2. La ligne de commande

Dans un terminal, on frappe une commande, on valide et on attend la réponse. Et on recommence.

A l’époque où les interfaces graphiques sont omniprésentes, utiliser la ligne de commande peut s’apparenter à un retour au passé. Pourtant :

  • savoir utiliser les commandes en ligne permet d’élagir son domaine de compétence au-delà de Linux et d’être opérationnel sur tout système Unix ;

  • les commandes en ligne peuvent s’enchainer dans des scripts, ce qui permet d’automatiser et de planifier des actions ; automatiser des actions dans un desktop est difficile ;

  • une procédure en ligne de commandes est plus facile à documenter qu’une procédure en environnement graphique, qui nécessite de faire des copies d’écran :

    doc
  • l’environnement graphique agrémente la vie des utilisateurs, mais il n’apporte aucune nouvelle fonctionnalité.

    Sous Unix, tout est réalisable avec les commandes en ligne, alors que tout n’est pas réalisable via le desktop.

    C’est l’inverse sous Windows : tout n’est pas réalisable en ligne de commandes, il faut parfois passer par l’interface graphique.

En caricaturant, on peut dire que travailler en environnement graphique demande de passer du temps à rechercher la bonne option dans le bon menu, la bonne case à cocher dans le bon formulaire, le bon bouton à presser dans la bonne popup. Alors que travailler dans un terminal demande de connaitre les commandes et leurs options usuelles.

Heureusement pour la ligne de commande, il existe un manuel en ligne. C’est la commande man qui, pour chaque commande, explique son objectif, ses paramètres, ses options. Elle peut citer également d’autres commandes connexes, ce qui permet d’élargir progressivement son champ de connaissance. Le manuel est LA documentation de référence : les informations qu’il fournit sont précises et exhaustives (les pages de manuel sont généralement rédigées par les auteurs des commandes eux-mêmes).

Par exemple, la commande :

$ man man

affiche le mode d’emploi complet de la commande man elle-même. On a des exemples d’utilisation, et on apprend qu’il existe aussi une commande whatis.

Les pages de manuel peuvent sembler rébarbatives au début, mais on s’y habitue rapidement, car elles ont toutes la même structure :

NOM
       le nom et l'objet de la commande en 1 ligne

SYNOPSIS
        la syntaxe d'appel

DESCRIPTION
        ce qu'elle fait en détail

OPTIONS
        énumération des options

EXEMPLES
        exemples d'utilisation

VOIR AUSSI
        des commandes connexes

3. Le système de fichiers (filesystem)

Le système de fichiers est l’organisation de l’espace disque. C’est une arborescence de répertoires.

Par exemple, le répertoire personnel (le homedir) d’un utilisateur contient typiquement les sous-répertoires suivant :

home
.
├── Bureau
├── Documents
├── Images
├── Modèles
├── Musique
├── Public
├── Téléchargements
└── Vidéos

Un répertoire peut contenir des sous-répertoires, des fichiers, des liens, etc. On appelle entrée tout ce que peut contenir un répertoire. Par conséquent, répertoires, fichiers, liens hard, liens symboliques sont des entrées de répertoire.

Le répertoire racine de l’arborescence est nommée /. Voici à quoi ressemble l’arborescence de répertoires typique d’un système Unix :

/
├── bin
├── boot
├── dev
├── etc
├── home
│   ├── linus
│   ├── ken
│   ├── richard
│   └── jacquelin
├── lib
├── mnt
├── root
├── sbin
├── tmp
├── usr
└── var

Quelques répertoires à repérer :

  • bin : commandes pour les utilisateurs (binaries)

  • dev : périphériques (devices)

  • etc : fichiers de configuration

  • home : répertoires des dossiers personnels (homedirs)

  • lib : bibliothèques (librairies)

  • mnt : répertoire vide destiné aux montages

  • sbin : commandes pour le super utilisateur (system binaries)

  • tmp : répertoire ouvert à tout le monde en lecture et écriture, destiné aux fichiers temporaires

Remarques :

  • sur certains Unix, home s’appelle users ;

  • à l’origine, il n’y avait pas de répertoires sbin, toutes les commandes étaient dans bin (et cette idée revient à l’ordre du jour actuellement).

4. Commandes en ligne

Les commandes ont la forme suivante :

$ commande option1 options2... argument1 argument2...

Un argument peut être obligatoire ou facultatif. Une option est une lettre précédée d'1 tiret (option courte, exemple -a) ou bien d’un mot précédé de 2 tirets (option longue, exemple --group). Exemple :

$ id (1)
$ id root (2)
$ id root daemon (3)
$ id -g (4)
$ id -g -n (5)
$ id -gn (6)
$ id -g operator (7)
$ id --group (8)
$ id --group --name (9)
$ id --group --name root (10)
1 commande sans argument et sans option
2 commande avec 1 argument
3 commande avec 2 arguments
4 commande avec 1 option courte
5 commande avec 2 options courtes
6 équivalent à la commande précédente
7 commande avec 1 option courte et un argument
8 commande avec 1 option longue
9 commande avec 2 options longues
10 commande avec 2 options longues et un argument

Une option peut nécessiter une valeur :

$ ls --color=always /
$ ls --color=never /
$ ls --color=toto /
Résumé

commande à retenir : man