Aller au contenu principal
Kill -9 Club
Se connecter

Référence des commandes

Chaque programme que les cours tapent, une page chacun : à quoi il sert, quel paquet l'installe, ce que font ses options dans les leçons, et quelles leçons l'enseignent.

125 commandes

Comptes

  • L'enveloppe Debian autour de useradd : crée le répertoire personnel, copie /etc/skel, demande un mot de passe, et avec --system produit un compte de service sans connexion. C'est celle à employer à la main.

    3 options expliquées · 4 leçons

  • Lit et modifie la durée de vie d'un mot de passe et la date d'expiration d'un compte. chage -l répond à « ce compte va-t-il expirer ? », question qui explique un certain nombre de connexions refusées un lundi matin.

    3 options expliquées · 1 leçon

  • deluser

    À manier avec soin

    Supprime un compte. Sans --remove-home, ses fichiers restent, désormais rattachés à un UID sans nom ; avec, ils disparaissent. Un service qui tourne encore sous ce compte n'est pas arrêté pour autant.

    1 option expliquée · 1 leçon

  • Affiche la liste de contrôle d'accès complète d'un fichier, ce que le + de ls -l annonce sans détailler. À garder à côté d'une sauvegarde : rsync -a et tar sans option ne copient pas les ACL.

    1 option expliquée · 2 leçons

  • Crée un groupe, et rien de plus. Le droit qu'il représente se construit ensuite : un répertoire qui lui appartient, un chmod g+s, des comptes ajoutés avec usermod -aG.

    1 option expliquée · 1 leçon

  • Change un mot de passe, ou verrouille un compte avec -l sans le supprimer. Verrouiller ne ferme pas les sessions ouvertes ni l'accès par clé SSH : ce sont deux autres décisions.

    2 options expliquées · 1 leçon

  • Ajoute à un fichier des droits que les neuf caractères habituels ne peuvent pas exprimer : un compte précis en lecture, un groupe de plus en écriture. ls -l ne montre alors qu'un + ; le reste se lit avec getfacl.

    1 option expliquée · aucune leçon

  • Ouvre un shell sous une autre identité, en demandant le mot de passe de ce compte — pas le vôtre. Sur un serveur où root n'a pas de mot de passe, su échoue et sudo -i est la voie prévue.

    2 options expliquées · 1 leçon

  • Exécute une commande avec les droits d'un autre compte, root par défaut, et inscrit qui l'a demandée dans le journal. Ce n'est pas « devenir root » : chaque commande est autorisée ou refusée par /etc/sudoers, et c'est là que se lit ce qu'un compte peut réellement faire.

    6 options expliquées · 77 leçons

  • Affiche ou fixe le masque retiré aux permissions de chaque fichier créé dans ce shell. C'est pourquoi un fichier neuf est 644 et non 666 : ce n'est pas la commande qui le décide, c'est le masque.

    1 option expliquée · 2 leçons

  • Crée un compte avec exactement ce que vous précisez et rien d'autre : sans -m, pas de répertoire personnel ; sans -s, le shell est /bin/sh. C'est l'outil bas niveau que les scripts appellent ; pour une personne, adduser pose les bonnes questions.

    1 option expliquée · aucune leçon

  • usermod

    À manier avec soin

    Modifie un compte existant : ses groupes, son shell, sa date d'expiration, son verrouillage. Les options se ressemblent et ne font pas la même chose — -G remplace la liste des groupes, -aG y ajoute.

    5 options expliquées · 3 leçons

  • Édite /etc/sudoers en vérifiant la syntaxe avant d'enregistrer. Une faute dans ce fichier retire sudo à tout le monde, y compris à celui qui pourrait la corriger ; c'est la seule façon raisonnable de le modifier.

    2 options expliquées · 2 leçons

SSH

  • Copie des fichiers à travers SSH, avec la syntaxe de cp. Suffisant pour un fichier ; pour une arborescence à synchroniser, rsync ne recopie que ce qui a changé.

    4 options expliquées · 1 leçon

  • Ouvre une session ou exécute une commande sur une machine distante, dans un canal chiffré et authentifié. La première connexion demande de vérifier l'empreinte du serveur ; c'est le seul moment où cette vérification a un sens.

    7 options expliquées · 6 leçons

  • Charge une clé privée dans l'agent pour la durée de la session, ce qui évite de retaper la phrase secrète — et ce qui prête la clé à tout ce qui parle à l'agent, y compris un hôte distant si -A est actif.

    4 options expliquées · 1 leçon

  • Garde des clés privées déchiffrées en mémoire et signe à la place de ssh. Il ne fait rien tant qu'ssh-add ne lui a rien confié, et eval "$(ssh-agent -s)" est ce qui le fait connaître au shell.

    1 option expliquée · 1 leçon

  • Crée une paire de clés, en change la phrase secrète, ou affiche une empreinte. La clé privée ne quitte jamais la machine où elle a été créée ; la publique se copie partout où l'on veut se connecter.

    7 options expliquées · 4 leçons

  • Le serveur SSH lui-même. sshd -t valide la configuration avant un redémarrage et sshd -T affiche ce qui s'applique réellement, première valeur obtenue pour chaque mot-clé — ce que le fichier ne montre pas.

    4 options expliquées · 5 leçons

Lire la machine

  • L'espace de chaque système de fichiers, en blocs ou avec -i en inodes. Un disque « plein » alors que df -h affiche de la place est presque toujours un df -i à 100 %.

    3 options expliquées · 9 leçons

  • Le tampon de messages du noyau : disques détectés, erreurs matérielles, processus tués par l'OOM killer. Quand un service meurt sans rien écrire dans son journal, c'est ici que la raison se trouve.

    1 option expliquée · aucune leçon

  • La taille réellement occupée par un répertoire et ce qu'il contient. df dit combien il manque ; du -sh /* | sort -h dit où c'est parti.

    3 options expliquées · 5 leçons

  • La mémoire vive et le swap : utilisée, libre, et surtout available, qui compte le cache récupérable. Une machine dont la colonne free est proche de zéro va bien ; c'est available qu'il faut lire.

    1 option expliquée · 3 leçons

  • Mesure l'activité des disques : débit, requêtes, temps d'attente, taux d'occupation. Un %util proche de 100 avec un débit faible signe un disque saturé de petites écritures, pas un disque plein.

    5 options expliquées · 1 leçon

  • Les connexions et redémarrages récents, lus dans wtmp. Il date un redémarrage sans qu'on ait à fouiller le journal, et montre qui était connecté au moment d'un incident.

    1 option expliquée · aucune leçon

  • Fait tourner, compresse et supprime les fichiers de journal selon /etc/logrotate.d/. Il tourne une fois par jour par minuterie ; logrotate -d rejoue la configuration sans rien toucher.

    1 option expliquée · 1 leçon

  • Le nom et la version de la distribution, ce que /etc/os-release contient aussi. La réponse à la première question de tout correctif : « sur quelle version êtes-vous ? »

    1 option expliquée · 1 leçon

  • Décompose un chemin composant par composant, avec les permissions de chacun. Un « Permission denied » sur un fichier lisible vient d'un répertoire parent sans x, et c'est la commande qui le montre.

    1 option expliquée · 2 leçons

  • Le même relevé que sar, par processus : quel PID consomme le CPU, écrit sur le disque, ou change de contexte trop souvent. Le chaînon entre « la machine est lente » et « c'est ce programme ».

    1 option expliquée · 1 leçon

  • Résout un lien symbolique, et avec -f toute la chaîne jusqu'au fichier réel. C'est ce qui dit quelle version un current pointe vraiment après un déploiement.

    1 option expliquée · 6 leçons

  • Le rapport des quotas d'un système de fichiers : qui consomme quoi, qui a dépassé sa limite souple et depuis quand. À lire avant de chercher une panne mystérieuse sur un compte qui « ne peut plus écrire ».

    1 option expliquée · 1 leçon

  • Relit l'historique de charge que sysstat collecte toutes les dix minutes : CPU, mémoire, disque, réseau, par tranche horaire. C'est ce qui répond à « que faisait la machine à 3 h du matin » quand personne ne regardait.

    5 options expliquées · 1 leçon

  • Fixe les quotas disque d'un compte ou d'un groupe sur un système de fichiers monté avec les options de quota. Sans ces options de montage, la commande réussit et ne limite rien.

    3 options expliquées · aucune leçon

  • L'état instantané des processus, rafraîchi. Utile pour voir ce qui consomme maintenant ; inutile pour ce qui consommait il y a une heure, que seul sar a retenu.

    4 options expliquées · 2 leçons

  • Le noyau en cours d'exécution, avec -r sa version exacte. À comparer avec ce que dpkg a installé : s'ils diffèrent, la machine attend un redémarrage.

    1 option expliquée · 1 leçon

  • Choisit lequel de plusieurs programmes installés répond à un nom générique — quel editor, quel java. Ce n'est pas un gestionnaire de versions : il ne fait que déplacer un lien symbolique.

    1 option expliquée · 1 leçon

Processus

  • Envoie un signal à un PID : TERM par défaut, qui demande au processus de s'arrêter, KILL qui ne demande rien. Le -9 du nom de ce site est le second : il ne laisse ni fermer les fichiers ni écrire quoi que ce soit.

    2 options expliquées · 2 leçons

  • Trouve des PID par nom ou par motif, sans le grep qui se trouve lui-même. pgrep -a affiche aussi la commande, ce qui évite de tuer le mauvais processus à l'étape suivante.

    3 options expliquées · 4 leçons

  • pkill

    À manier avec soin

    Envoie un signal à tous les processus dont le nom correspond au motif. Le motif est une expression régulière et correspond à une partie du nom : pkill node atteint aussi node_exporter.

    1 option expliquée · 1 leçon

  • La liste des processus à cet instant, avec leur PID, leur propriétaire et leur commande. ps aux montre tout ; ps -o pid,ppid,cmd choisit les colonnes, ce qui rend la sortie lisible par un script.

    5 options expliquées · 5 leçons

  • Les processus sous forme d'arbre, chaque enfant sous son parent. C'est ainsi qu'on voit qu'un node orphelin est le petit-fils d'un bash que quelqu'un a fermé, et pas un service.

    1 option expliquée · 1 leçon

Fichiers

  • chmod

    À manier avec soin

    Change les permissions. chmod 777 fait disparaître le message d'erreur et le problème avec — le problème étant que n'importe qui peut désormais écrire ce fichier.

    2 options expliquées · 4 leçons

  • chown

    À manier avec soin

    Change le propriétaire et le groupe d'un fichier. Un service qui « ne peut pas écrire » dans son propre répertoire a presque toujours un chown manquant après une copie faite par root.

    2 options expliquées · 2 leçons

  • Copie des fichiers. Sans -a, la copie perd le propriétaire, les dates et les liens symboliques ; c'est correct pour un fichier de travail et faux pour une configuration ou une sauvegarde.

    4 options expliquées · 2 leçons

  • Parcourt une arborescence et sélectionne des fichiers sur leurs propriétés : nom, taille, date, propriétaire, permissions. Chaque test est une option, et -exec ou -delete agit sur ce qui reste ; tester sans action d'abord.

    17 options expliquées · 8 leçons

  • Copie un fichier en fixant en une commande le propriétaire, le groupe et le mode — install -o root -g root -m 0644. C'est cp puis chown puis chmod, sans la fenêtre où le fichier a les mauvais droits.

    4 options expliquées · 3 leçons

  • Crée un lien : dur par défaut, symbolique avec -s. ln -sfn remplace un lien existant en une seule opération, ce que le déploiement par current exige.

    3 options expliquées · 6 leçons

  • Liste le contenu d'un répertoire. ls -l montre les neuf caractères de permissions, le propriétaire et le groupe — les trois choses à lire avant de conclure qu'un accès refusé est un bug.

    5 options expliquées · 14 leçons

  • Crée un répertoire. mkdir -p crée aussi les parents manquants et ne se plaint pas si le répertoire existe — ce qui rend la commande réexécutable, mais échoue quand même si un fichier porte ce nom.

    1 option expliquée · 2 leçons

  • Déplace ou renomme. Sur le même système de fichiers, c'est un changement de nom instantané, ce qui rend le basculement d'un lien current atomique ; entre deux disques, c'est une copie suivie d'une suppression.

    4 options expliquées · 3 leçons

  • rm

    À manier avec soin

    Supprime des fichiers, sans corbeille ni confirmation. Ce que rm -rf efface est parti ; la seule protection est ce que vous avez tapé avant Entrée, et une variable vide y transforme /var/www/$app en /var/www/.

    4 options expliquées · 3 leçons

  • Tout ce que le système sait d'un fichier : inode, permissions en octal, dates de modification et de changement, nombre de liens. C'est ls -l sans arrondi ni omission.

    2 options expliquées · 6 leçons

  • Crée un fichier vide, ou met à jour la date d'un fichier existant. Le fichier vide qui signale « ce script a tourné » ou qui active une règle (/etc/cron.allow) est souvent créé ainsi.

    1 option expliquée · 2 leçons

  • Affiche une arborescence indentée, ce que ls -R fait en moins lisible. tree -L 2 limite la profondeur, ce qui fait tenir un répertoire de déploiement sur un écran.

    1 option expliquée · 1 leçon

  • truncate

    À manier avec soin

    Fixe la taille d'un fichier, en le coupant ou en l'étendant avec des zéros. truncate -s 0 vide un journal sans le supprimer, donc sans casser le descripteur qu'un processus garde ouvert dessus.

    1 option expliquée · aucune leçon

Texte

  • Traite un texte champ par champ et ligne par ligne, avec un petit langage. awk '{print $2}' suffit à extraire une colonne séparée par des espaces, ce que cut fait mal.

    1 option expliquée · 2 leçons

  • Extrait des colonnes d'un texte, par caractère ou par champ avec -d et -f. Suffisant pour /etc/passwd ; awk prend le relais quand le séparateur est un nombre variable d'espaces.

    2 options expliquées · aucune leçon

  • Les différences entre deux fichiers, ligne par ligne. diff -u produit le format que git et patch lisent, et c'est ce qu'on colle dans un rapport pour montrer ce qui a changé dans une configuration.

    1 option expliquée · 1 leçon

  • Cherche un motif dans des fichiers ou dans ce qu'on lui envoie, et rend la ligne — ou avec -q seulement un code de sortie, ce qui en fait un test dans un script. Le motif est une expression régulière sauf avec -F.

    9 options expliquées · 17 leçons

  • Les premières lignes d'un fichier ou d'un flux. head -1 sur la sortie d'une commande en garde la première ligne, ce qui suffit souvent à un script.

    1 option expliquée · 3 leçons

  • Colle des fichiers ligne à ligne, côte à côte. Avec -sd+, il transforme une colonne de nombres en 1+2+3, que bc peut additionner.

    2 options expliquées · aucune leçon

  • Trie des lignes. sort -h comprend les tailles de du -h, sort -n les nombres, et sans option le tri est alphabétique — où 10 vient avant 9.

    3 options expliquées · 2 leçons

  • Les dernières lignes d'un fichier, et avec -f celles qui arrivent au fil de l'eau. Pour un service systemd, journalctl -f est la même chose sans avoir à connaître le chemin du fichier.

    2 options expliquées · 10 leçons

  • Écrit ce qu'il reçoit à la fois dans un fichier et sur la sortie standard. sudo tee est la façon d'écrire un fichier appartenant à root depuis un pipe, là où sudo echo > fichier échoue.

    1 option expliquée · 1 leçon

  • Remplace ou supprime des caractères dans un flux : tr -d '\r' retire les fins de ligne Windows qui rendent un script « introuvable » alors qu'il est là.

    2 options expliquées · aucune leçon

  • Supprime les lignes répétées adjacentes, ou avec -c les compte. Il ne voit que les voisines : sort | uniq -c est la paire, et uniq seul sur un fichier non trié ne dédoublonne rien.

    1 option expliquée · 1 leçon

  • Compte les lignes, les mots et les octets. wc -l sur la sortie d'un grep ou d'un ls transforme une liste en un nombre — la forme que prend une vérification dans un script.

    2 options expliquées · 1 leçon

  • Construit et exécute une commande à partir de ce qu'il lit sur l'entrée standard. Avec find -print0 | xargs -0, les noms de fichiers contenant des espaces cessent d'être coupés en deux.

    2 options expliquées · 1 leçon

Shell

  • Le shell interactif par défaut des comptes humains sur Ubuntu, et l'interpréteur de la plupart des scripts d'administration. bash -n vérifie la syntaxe d'un script sans l'exécuter ; bash -x montre chaque commande au moment où elle tourne.

    2 options expliquées · 1 leçon

  • Édite la table des tâches planifiées d'un compte. Sur une machine systemd, une minuterie fait la même chose avec un journal, un statut et un rattrapage des exécutions manquées — crontab reste ce que vous trouverez sur les machines existantes.

    2 options expliquées · 2 leçons

  • La date et l'heure, dans le format que vous demandez. date -u +%Y%m%dT%H%M%SZ nomme une sauvegarde ou une version de façon triable ; date -d @1700000000 traduit un horodatage Unix.

    4 options expliquées · 2 leçons

  • Détache un travail du shell qui l'a lancé, pour qu'il survive à la fermeture du terminal. Un dépannage, pas une méthode : un service qui doit tourner a besoin d'une unité systemd.

    1 option expliquée · 1 leçon

  • Affiche l'environnement, ou lance une commande dans un environnement modifié. En première ligne d'un script, #!/usr/bin/env bash trouve bash où qu'il soit installé.

    1 option expliquée · 1 leçon

  • Prend un verrou sur un fichier le temps d'exécuter une commande, pour qu'une deuxième instance attende ou renonce. C'est ce qui empêche une sauvegarde lancée par minuterie de chevaucher la précédente.

    5 options expliquées · 1 leçon

  • Les processus lancés depuis ce shell et encore attachés à lui, avec leur numéro. Ce qui figure ici meurt avec le terminal ; disown ou tmux sont les façons de l'éviter.

    2 options expliquées · 1 leçon

  • Règle le comportement du shell. set -euo pipefail en tête d'un script le fait s'arrêter à la première commande qui échoue, à la première variable non définie, et sur une erreur au milieu d'un pipe — au lieu de continuer comme si de rien n'était.

    3 options expliquées · 2 leçons

  • Sur Debian et Ubuntu, /bin/sh est dash, pas bash. Un script qui commence par #!/bin/sh et utilise [[, des tableaux ou source échoue — en production, pas dans le terminal où vous l'avez testé.

    1 option expliquée · 1 leçon

systemd

  • Lit le journal de systemd, par unité (-u), par période (--since), par démarrage (-b), en direct (-f). C'est là que la sortie d'un service est allée quand il n'écrit dans aucun fichier.

    19 options expliquées · 25 leçons

  • shutdown

    À manier avec soin

    Arrête ou redémarre la machine, tout de suite ou à l'heure dite, en prévenant les sessions ouvertes. shutdown -c annule ce qui est planifié.

    2 options expliquées · 1 leçon

  • Pilote les unités systemd : démarrer, arrêter, activer au démarrage, lire l'état. status dit ce qui se passe maintenant, is-enabled ce qui se passera au prochain démarrage ; ce sont deux questions différentes.

    19 options expliquées · 47 leçons

  • Liste les fichiers d'unité que vous avez surchargés ou remplacés, et en quoi ils diffèrent de ceux du paquet. C'est la réponse à « qu'a-t-on modifié sur cette machine » sans fouiller /etc/systemd.

    1 option expliquée · 1 leçon

  • Lance une commande comme unité transitoire, avec un journal et des limites, sans écrire de fichier d'unité. --on-active=10m la planifie en une fois, ce qu'on faisait avec at.

    2 options expliquées · 1 leçon

Réseau

  • Obtient et renouvelle des certificats Let's Encrypt en prouvant le contrôle du domaine, et installe une minuterie pour le renouvellement. certbot renew --dry-run répète la procédure sans rien émettre.

    5 options expliquées · 2 leçons

  • Envoie une requête HTTP (ou autre) et montre la réponse. curl -I ne lit que les en-têtes, -v montre l'échange complet, TLS compris — c'est ainsi qu'on distingue « le serveur répond mal » de « le serveur ne répond pas ».

    12 options expliquées · 17 leçons

  • Interroge le DNS et montre la réponse brute, avec le TTL et le serveur qui a répondu. dig +short pour la valeur ; dig @1.1.1.1 pour demander à un résolveur précis plutôt qu'au cache local.

    1 option expliquée · 11 leçons

  • iptables

    À manier avec soin

    Le pare-feu par règles historique de Linux ; sur un Ubuntu récent, une couche de compatibilité au-dessus de nftables. Les règles vivent en mémoire : ce que vous ajoutez disparaît au redémarrage si rien ne le sauvegarde.

    4 options expliquées · 1 leçon

  • Un client SMTP minimal qui remet le courrier d'une machine à un relais authentifié, sans faire tourner un serveur de messagerie. C'est ce qui permet à cron et aux scripts d'envoyer une alerte.

    1 option expliquée · 1 leçon

  • Ouvre une connexion TCP ou UDP brute vers un port, ou écoute dessus. nc -zv hôte 5432 dit si le port est ouvert avant qu'on accuse la base de données.

    3 options expliquées · 4 leçons

  • nft

    À manier avec soin

    L'outil du pare-feu nftables, qui remplace iptables. nft list ruleset montre l'ensemble des règles réellement chargées, quel que soit l'outil qui les a posées — ufw compris.

    1 option expliquée · 1 leçon

  • Le serveur web et mandataire inverse des cours d'hébergement. La commande elle-même sert surtout à nginx -t, qui valide la configuration avant un rechargement : une configuration invalide rechargée laisse tourner l'ancienne, sans le dire fort.

    3 options expliquées · 11 leçons

  • Scanne les ports d'une machine depuis l'extérieur, et montre ce qu'un attaquant verrait. À lancer sur ses propres serveurs après chaque changement de pare-feu — et uniquement sur les siens.

    3 options expliquées · 1 leçon

  • La boîte à outils TLS : openssl s_client se connecte et montre le certificat que le serveur présente réellement, openssl x509 lit un certificat sur disque. Le premier est ce qu'il faut quand le navigateur dit « non sécurisé » sans dire pourquoi.

    6 options expliquées · 3 leçons

  • Envoie des paquets ICMP et mesure la réponse. Il prouve qu'une machine est joignable au niveau IP ; il ne dit rien du port 443, et un pare-feu qui bloque ICMP le fait échouer sur un serveur parfaitement sain.

    1 option expliquée · 2 leçons

  • Lit et modifie la configuration de Postfix. postconf -n n'affiche que ce qui diffère des valeurs par défaut — la vue qu'il faut quand on cherche pourquoi le courrier ne part pas.

    1 option expliquée · 1 leçon

  • Les sockets ouverts : qui écoute sur quel port, quelles connexions sont établies, et avec -p quel processus. ss -tlnp est la commande qui répond à « quelque chose écoute-t-il déjà sur le 80 ? »

    4 options expliquées · 14 leçons

  • Capture les paquets qui passent par une interface et les affiche, filtrés par hôte, port ou protocole. C'est le juge de paix : quand deux machines se contredisent sur ce qui a été envoyé, tcpdump montre ce qui a réellement circulé.

    5 options expliquées · 1 leçon

  • Télécharge un fichier depuis une URL vers le disque, en reprenant là où il s'était arrêté avec -c. Là où curl sert à examiner une réponse, wget sert à la garder.

    1 option expliquée · 1 leçon

Intégrité et confinement

  • Détection d'intrusion par empreintes : une base de référence des fichiers, puis un rapport de ce qui a changé. Elle ne vaut que si la base a été prise sur une machine saine et conservée hors de celle-ci.

    1 option expliquée · 1 leçon

  • Charge, recharge ou retire un profil AppArmor. apparmor_parser -r recharge un profil modifié sans redémarrer le service qu'il confine — la commande qu'on cherche quand un service a le droit d'écrire un fichier et qu'AppArmor le lui refuse.

    1 option expliquée · 1 leçon

  • Compare les fichiers installés aux sommes de contrôle de leur paquet. Un binaire modifié sans que dpkg le sache est soit une intrusion, soit un cp d'urgence oublié ; dans les deux cas, c'est ce qu'il fallait savoir.

    4 options expliquées · 1 leçon

Git

  • Le gestionnaire de versions, employé ici pour les fichiers de configuration autant que pour le code : qui a changé quoi, quand, et comment revenir. git status et git log sont les deux commandes à connaître avant toutes les autres.

    16 options expliquées · 9 leçons

Paquets

  • Ajoute une source de paquets (un PPA le plus souvent) et sa clé. Chaque source ajoutée est un tiers à qui vous faites confiance pour tout ce qu'il publie ; la liste doit rester courte.

    1 option expliquée · aucune leçon

  • L'interface de gestion des paquets pour un humain : update, upgrade, install, avec une barre de progression et une sortie qui change d'une version à l'autre — ce qui la rend impropre aux scripts.

    2 options expliquées · 5 leçons

  • La même chose qu'apt, avec une sortie stable et des options faites pour les scripts : apt-get install -y dans un script d'installation, apt dans un terminal.

    1 option expliquée · aucune leçon

  • Le gestionnaire de paquets bas niveau : installe un .deb, liste ce qui est installé (dpkg -l), dit à quel paquet appartient un fichier (dpkg -S). Il ne résout pas les dépendances — c'est le travail d'apt.

    6 options expliquées · 4 leçons

  • Repose les questions de configuration d'un paquet installé — le fuseau horaire, les locales, le clavier. C'est la façon prévue de changer ce que l'installation a demandé une fois.

    1 option expliquée · aucune leçon

  • L'interpréteur JavaScript qui fait tourner les applications des cours d'hébergement. node --version est la première chose à comparer entre la machine où ça marche et celle où ça ne marche pas.

    2 options expliquées · 2 leçons

  • Le gestionnaire de paquets de Node. npm ci installe exactement ce que package-lock.json décrit, ce que npm install ne garantit pas — et c'est ci qu'un déploiement doit appeler.

    2 options expliquées · 4 leçons

  • Installe des paquets confinés et mis à jour automatiquement par Canonical. Les mises à jour se retardent plus qu'elles ne se désactivent — à savoir avant d'installer un service ainsi sur un serveur.

    2 options expliquées · 1 leçon

Transfert et archives

  • Décompresse un .gz, en remplaçant l'archive par le fichier. gunzip -c écrit sur la sortie standard sans toucher à l'archive, ce qui permet de lire un journal tourné sans le décompresser sur disque.

    1 option expliquée · 1 leçon

  • Compresse un fichier en le remplaçant par sa version .gz. gzip -k garde l'original ; sans, il disparaît, ce qui surprend la première fois sur un journal encore ouvert.

    2 options expliquées · 2 leçons

  • rsync

    À manier avec soin

    Synchronise deux arborescences en ne transférant que les différences, localement ou à travers SSH. -a conserve permissions, dates et liens ; -n répète sans rien écrire, et c'est par lui qu'il faut commencer.

    9 options expliquées · 6 leçons

  • Calcule ou vérifie l'empreinte SHA-256 d'un fichier. sha256sum -c compare un téléchargement à l'empreinte publiée — la seule preuve que le fichier reçu est celui annoncé.

    1 option expliquée · 1 leçon

  • Regroupe une arborescence en un seul fichier, et le défait. Sans --acls --xattrs, il perd les ACL ; sans -p à l'extraction, les permissions suivent votre umask et non l'archive.

    10 options expliquées · 2 leçons

Chiffrement

  • Chiffre, signe et vérifie des fichiers avec des clés publiques. Ici, il chiffre les sauvegardes avant qu'elles quittent la machine et vérifie les signatures des paquets — deux usages où la clé privée doit être sauvegardée ailleurs, sinon la sauvegarde chiffrée ne vaut rien.

    19 options expliquées · 1 leçon

Sessions de terminal

  • Une session de terminal qui survit à la déconnexion : ce qui tourne dedans continue quand SSH tombe, et se retrouve avec tmux attach. Pour une opération longue lancée à la main, c'est l'assurance qu'une coupure réseau ne la tuera pas.

    4 options expliquées · 1 leçon

Conteneurs

  • docker

    À manier avec soin

    Construit et fait tourner des conteneurs. docker ps, docker logs et docker exec sont le trio du dépannage ; docker compose décrit plusieurs conteneurs dans un fichier plutôt que dans une ligne de commande de deux cents caractères.

    20 options expliquées · 7 leçons

Bases de données

  • dropdb

    À manier avec soin

    Supprime une base de données entière. --if-exists évite l'erreur quand elle n'existe pas, ce qui rend un script réexécutable — et rend aussi la commande silencieuse.

    1 option expliquée · aucune leçon

  • Le client interactif de MariaDB, l'équivalent de psql. mariadb -e exécute une requête depuis un script ; SHOW DATABASES et SHOW GRANTS sont les deux premières choses à regarder sur un serveur inconnu.

    1 option expliquée · 1 leçon

  • Exporte une base MariaDB en SQL. --single-transaction obtient une copie cohérente des tables InnoDB sans les verrouiller, ce qu'une sauvegarde sur un service en production exige.

    5 options expliquées · 1 leçon

  • Exporte une base en SQL ou en format archive, de façon cohérente, sans arrêter le service. C'est la sauvegarde logique ; tant qu'une restauration n'a pas été essayée, ce n'est qu'un fichier.

    2 options expliquées · 2 leçons

  • Exporte toutes les bases et ce que pg_dump ne prend pas : les rôles et leurs mots de passe. pg_dumpall --globals-only à côté d'un pg_dump par base est la combinaison qui restaure vraiment.

    1 option expliquée · 1 leçon

  • Dit si un serveur PostgreSQL accepte les connexions, par un code de sortie. C'est le test de disponibilité d'un script de déploiement ou d'un healthcheck, sans mot de passe ni requête.

    1 option expliquée · aucune leçon

  • pg_restore

    À manier avec soin

    Restaure une archive pg_dump -Fc, en tout ou en partie (-t une table). -l liste le contenu de l'archive sans rien restaurer ; c'est par là qu'on commence.

    1 option expliquée · 1 leçon

  • Le client interactif de PostgreSQL. psql -c exécute une requête depuis un script ; \l, \dt et \du répondent aux trois premières questions — quelles bases, quelles tables, quels rôles.

    6 options expliquées · 12 leçons