9.1 KiB
title, description
| title | description |
|---|---|
| Outils CLI pratiques | Une poignée d'outils en ligne de commande à installer sur un serveur maison, ce que chacun fait ou remplace, et les étapes pour les installer et s'en servir. |
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
Une installation minimale de Debian embarque le strict minimum, ce qui veut dire que les outils fournis sont ceux de 1995. Ils fonctionnent, mais lire la sortie de df ou chercher ce qui a rempli un disque avec du est inutilement pénible quand de meilleures versions existent et ne coûtent rien à installer.
La plupart des applications listées ici viennent directement des dépôts Debian, il n'y a donc aucune source tierce à qui faire confiance et apt les maintient à jour en même temps que le reste du système.
::note{to="/general/linux/cli-basics"}
Toutes les commandes ici se tapent dans un terminal via SSH. Si sudo, apt et cd ne vous parlent pas encore, commencez par les bases de la ligne de commande.
::
La version pressée
Une seule ligne de commande pour installer tous ceux qui viennent des dépots de Debian, et chaque section ci-dessous vous explique ce que vous venez d'installer.
sudo apt update
sudo apt install btop duf ncdu tealdeer ufw
Le sommaire
| Outil | Remplace | À quoi ça sert |
|---|---|---|
btop |
top, htop |
Surveiller le CPU, la RAM et les processus |
duf |
df -h |
L'espace libre, en lisible |
ncdu |
du -sh |
Trouver ce qui a rempli le disque |
tldr |
man |
Les cinq commandes dont vous avez vraiment besoin |
lazydocker |
docker ps et compagnie |
Gérer les conteneurs en SSH |
ufw |
iptables brut |
Un pare-feu réellement lisible |
btop, surveiller ce que fait la machine
Le remplaçant moderne de top et htop : CPU, RAM, disques, réseau et processus sur un seul écran, avec des graphiques, des couleurs et une souris qui marche. C'est ce que vous ouvrez quand quelque chose semble lent, l'équivalent du gestionnaire de tache sur Windows ou du moniteur d'activité sur Mac.
::steps{level="4"}
L'installer
sudo apt install btop
Le lancer
sudo btop
Cliquez sur un processus pour le sélectionner, :kbd{value="Esc"} ouvre le menu, :kbd{value="Q"} quitte. Les touches + et - replient et déplient les onglets si l'écran paraît chargé.
Terminé !
::
duf, l'espace disque qui se lit comme un tableau
df -h affiche tous tous vos dossiers/fichiers et vous laisse vous exploser les yeux sur les colonnes, les chiffres, les tailles. duf montre les mêmes informations groupées, alignées et colorées, avec une barre d'utilisation par système de fichiers.
::steps{level="4"}
L'installer
sudo apt install duf
Le lancer
sudo duf
Les disques locaux, les partages réseau et les montages système sont groupés séparément. Ajoutez --only local pour masquer les pseudo-systèmes de fichiers que Docker laisse derrière lui.
Terminé !
::
ncdu, trouver ce qui a mangé le disque
Quand duf vous dit que le disque est plein, ncdu vous dit pourquoi. Il parcourt un dossier, trie tout par taille réelle, et vous laisse descendre avec les flèches au lieu de lancer du -sh * vingt fois.
::steps{level="4"}
L'installer
sudo apt install ncdu
Le pointer sur un dossier
sudo ncdu /srv/docker
Les flèches pour se déplacer, :kbd{value="Enter"} pour ouvrir un dossier, :kbd{value="D"} pour supprimer l'élément sélectionné, :kbd{value="Q"} pour quitter. Sur un gros disque le premier scan prend un moment, il lit tout.
::warning
:kbd{value="D"} supprime immédiatement, avec une seule confirmation et sans corbeille. Lancez ncdu sans sudo quand vous ne faites que regarder, comme ça une touche tapée de travers ne vous fera pas vous rouler en boule en pleurant.
::
Terminé !
::
tldr, le manuel sans les 400 lignes
man tar est exhaustif et illisible. tldr tar vous donne les cinq commandes que les gens tapent vraiment, avec une ligne d'explication chacune. Ce sont des exemples maintenus par la communauté plutôt qu'un substitut au vrai manuel, et sur Debian le client est empaqueté sous le nom tealdeer.
::steps{level="4"}
L'installer
sudo apt install tealdeer
Télécharger le cache des pages
tldr --update
Les exemples sont récupérés une fois et stockés en local. La commande fonctionne donc hors ligne ensuite. À relancer tous les quelques mois.
Lui demander quelque chose
tldr rsync
Terminé !
::
lazydocker, gérer ses conteneurs depuis le terminal
La seule exception : il n'est pas empaqueté par Debian. C'est une interface texte complète pour Docker, conteneurs, images, volumes et logs sur un seul écran, avec des touches pour redémarrer, arrêter ou suivre les logs de n'importe quoi. Pratique quand vous êtes déjà en SSH et que vous n'avez pas envie d'ouvrir Dockge.
::steps{level="4"}
Télécharger la dernière version
curl -Lo /tmp/lazydocker.tar.gz "https://github.com/jesseduffield/lazydocker/releases/latest/download/lazydocker_0.25.2_Linux_x86_64.tar.gz"
Vérifiez le numéro de version actuel sur la page des releases, et prenez arm64 au lieu de x86_64 si le serveur est un Raspberry Pi ou équivalent.
Installer le binaire
sudo tar -xzf /tmp/lazydocker.tar.gz -C /usr/local/bin lazydocker
rm /tmp/lazydocker.tar.gz
/usr/local/bin est le dossier prévu pour les logiciels que vous installez vous-même, et c'est pour ça qu'apt n'y touche jamais.
Vérifier qu'il est bien là
lazydocker --version
Le lancer
sudo lazydocker
Il a besoin d'accéder au socket Docker, d'où le sudo à moins que votre utilisateur soit dans le groupe docker. Les touches à connaître :
| Touche | Ce qu'elle fait |
|---|---|
1 à 6 |
Aller à un onglet : projets, services, conteneurs, images, volumes, réseaux |
| Flèches | Se déplacer dans le onglet, la partie droite suit la sélection |
| :kbd{value="Enter"} | Passer sur le onglet principal à droite, :kbd{value="Esc"} revient |
x |
Ouvrir le menu de tout ce que vous pouvez faire avec la sélection |
m |
Suivre les logs |
s / r / p |
Arrêter, redémarrer, mettre en pause le conteneur sélectionné |
E |
Ouvrir un shell dans le conteneur |
d |
Le supprimer |
b |
Commandes groupées, dont le nettoyage des images et des volumes |
/ |
Filtrer la liste |
+ et _ |
Agrandir ou réduire les onglets |
q |
Quitter |
La casse compte : E ouvre un shell dans le conteneur, e masque ceux qui sont arrêtés.
La liste complète se trouve dans la documentation du projet.
::note
N'etant pas un package de Debian signifie qu'il ne sera pas mis à jour par apt full-upgrade. Ré-éxecutez ces étapes lorsque vous voudrez une version plus récente.
::
Terminé !
::
ufw, un pare-feu réellement lisible
Le pare-feu de Debian (iptables/nftables sous le capot) est puissant mais illisible tel quel. ufw, uncomplicated firewall, est une surcouche qui le transforme en règles courtes et compréhensibles : tout bloquer par défaut et n'ouvrir que ce que vous exposez réellement.
::steps{level="4"}
L'installer
sudo apt install ufw
Définir la politique par défaut
sudo ufw default deny incoming
sudo ufw default allow outgoing
Rien n'entre à moins qu'une règle ne l'autorise, tout ce que le serveur initie lui-même sort toujours normalement.
Autoriser ce dont vous avez réellement besoin
sudo ufw allow OpenSSH
sudo ufw allow 443/tcp
OpenSSH est un profil intégré qui correspond au port SSH, pas besoin de se souvenir duquel il s'agit. Ajoutez un allow par port que vous exposez, SWAG sur le 443 par exemple.
::warning Autorisez SSH avant d'activer le pare-feu, à l'étape suivante. Activez-le d'abord et la connexion depuis laquelle vous tapez est coupée, sans plus aucun écran branché pour réparer. ::
L'activer
sudo ufw enable
Vérifier les règles
sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
To Action From
-- ------ ----
22/tcp (OpenSSH) ALLOW IN Anywhere
443/tcp ALLOW IN Anywhere
Terminé !
::


