Devoxx Paris 2014 – Linux 101

Le 16 avril dernier, j’ai eu la chance de participer à mon premier Devoxx. Parmi les conférences auxquelles j’ai assisté, une m’a particulièrement marquée: Linux 101. J’y ai vu un bel aperçu de commandes Linux directement utilisables au quotidien, grâce au très bon duo Pierre-Antoine Grégoire et Frédérick Weisbecker. Le premier travaille chez Agile Partner, et le second chez RedHat, sur le noyau du système. Même s’ils ont essayé dans un premier temps de nous faire croire qu’ils ne connaissent rien à Linux, l’assistance n’a pas été dupe.

Nous avons réalisé un voyage de 3h dans l’univers Linux, avec pour seul compagnon le terminal, et quelques slides pour résumer de temps en temps. Notons que les sièges de l’auditorium de l’hôtel Mariott étaient confortables, et l’assistance réactive, ce qui a rendu la présentation encore plus sympathique.

Les thèmes abordés étaient très différents, en commençant par la description de l’architecture du file system, passant par les périphériques de sortie, les droits d’accès et la gestion des utilisateurs, l’historique de commandes ou encore les disques et les points de montage.

J’en ai retenu quelques commandes qui peuvent être utiles au quotidien:

  • stat : afficher des informations sur des fichiers ou répertoires passés en arguments
$> stat /tmp
Fichier : «/tmp»
Taille : 4096       Blocs : 8          ES blocs : 4096   répertoire
Device : 805h/2053d Inode : 3145729     Liens : 9
Accès : (1777/drwxrwxrwt)  UID : (    0/    root)   GID : (    0/    root)
Accès : 2014-04-22 18:49:45.377529471 +0200
Modi. : 2014-04-22 19:02:48.809503235 +0200
Chgt  : 2014-04-22 19:02:48.809503235 +0200
Créé  : -

  • who : afficher des informations sur les utilisateurs connectés
$> who
lucie    tty7         2014-04-25 09:52 (:0)
lucie    pts/0        2014-04-25 09:54 (:0)
lucie    pts/1        2014-04-25 10:55 (:0)
lucie    pts/7        2014-04-25 11:02 (:0)
lucie    pts/10       2014-04-25 17:03 (:0)

  • man : affiche le manuel pour la commande passée en paramètre
$> man ls
LS(1)                          User Commands                          LS(1)
NAME
      ls - list directory contents
[...]

  • apropos : liste les commandes du manuel qui comprennent dans leur description les mots passés en arguments
$> apropos apr
apropos (1)          - Chercher le nom et la description des pages de manuel
ldap.conf (5)        - LDAP configuration file/environment variables

  • which : retrouver l’emplacement d’une commande passée en argument
$> which java
/home/dev/outils/jdk/bin/java

  • history : affiche les dernières entrées de la console, avec leur id
$> history
 [...]
 516  apropos apr
 517  stat /tmp
 518  which java
 519  history

  • ! (bang) : exécute la dernière commande comprenant l’argument. Peut également être utilisé avec l’id passé par history
$> !518
$> which java
/home/dev/outils/jdk/bin/java

  • locate : permet de retrouver tous les fichiers comprenant le mot passé en argument. Attention, cette commande s'appuie sur une base de données qui est générée régulièrement, donc pas forcément à jour. Pour l'actualiser, utiliser la commande updatedb
$> locate java
/etc/.java
/etc/java-7-openjdk
/etc/javascript-common
[...]

  • grep : recherche la chaine de charactères passée en paramètre dans les fichiers donnés
$> grep default index.html
<p>This is the default web page for this server.</p>

  • pstree: affiche le graphe des processus en cours d’exécution
$> pstree
init─┬─NetworkManager─┬─dhclient
    │                ├─dnsmasq
    │                └─3*[{NetworkManager}]
    ├─accounts-daemon───2*[{accounts-daemon}]
[...]

La liste de toutes les commandes présentées est disponible ici.

En conclusion, cette conférence était selon moi très didactique, et orientée à juste titre vers les utilisateurs réguliers mais non experts de linux.
Dans quelques semaines, la vidéo de la conférence devrait paraître sur Parleys, je vous invite à la regarder pour approfondir cet article.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.