Le lien explique le rôle du shell dans le terminal, qui est essentiel pour démarrer des programmes. Il présente les trois shells les plus populaires : bash, le shell par défaut sur Linux ; zsh, le shell par défaut sur Mac depuis 2025 ; et fish, connu pour être plus convivial. Le zine mentionne également que bash et zsh sont des "POSIX shells", suivant un standard pour les shells Unix, bien qu'il existe des différences entre eux. Il fournit des informations sur l'emplacement des fichiers de configuration pour chaque shell : ~/.bashrc ou ~/.bash_profile pour bash, ~/.zshrc pour zsh, et ~/.config/fish/config.fish pour fish. Enfin, il offre un conseil pour déterminer quel fichier de configuration bash utilise.
La page explique comment gérer plusieurs programmes, ou "jobs", dans un même onglet de terminal. Les programmes peuvent s'exécuter au premier plan, en arrière-plan ou être arrêtés (mis en pause). En utilisant &, un programme peut être exécuté en arrière-plan, ce qui est utile pour des tâches parallèles comme la conversion de fichiers. La commande jobs permet de lister les tâches en arrière-plan ou arrêtées, et vous pouvez les manipuler en les ramenant au premier plan avec fg, en les tuant avec kill, ou en les détachant avec disown. Lorsque vous fermez un onglet de terminal, toutes les tâches sont tuées par un signal SIGHUP, mais cela peut être évité avec disown ou nohup. Un conseil est donné pour tuer les programmes récalcitrants : utilisez Ctrl+Z pour les arrêter, puis kill pour les terminer
Le lien explique le rôle d'un émulateur de terminal, qui consiste principalement à convertir les actions de l'utilisateur (comme la frappe et le clic) en octets pour les envoyer, et à recevoir des octets pour les afficher visuellement. Il aborde brièvement l'histoire des terminaux, mentionnant qu'ils étaient autrefois des machines distinctes dans les années 80, et explique que les octets échangés peuvent être du texte, des codes d'échappement pour les couleurs, ou des caractères de contrôle. L'émulateur de terminal gère également des fonctions comme le copier-coller et la gestion des couleurs et des polices, offrant souvent une bibliothèque de thèmes pour personnaliser l'apparence. Enfin, il mentionne comment les combinaisons de touches comme Ctrl-X sont traduites en octets.
La page explique comment les émulateurs de terminal utilisent 16 couleurs configurables, connues sous le nom de "couleurs ANSI". Ces couleurs peuvent être personnalisées via les paramètres de l'émulateur de terminal ou en exécutant un script qui utilise des codes d'échappement. Les programmes peuvent utiliser ces couleurs en imprimant des codes d'échappement spécifiques, comme illustré par l'exemple echo -e "\033[34m blue text". Cependant, les couleurs ANSI par défaut souffrent souvent de problèmes de contraste, rendant le texte difficile à lire. La solution recommandée est d'utiliser un émulateur de terminal avec une fonctionnalité de "contraste minimum", comme iTerm ou Kitty, pour améliorer la lisibilité. De plus, les programmes désactivent généralement les couleurs lorsqu'ils écrivent dans un pipe pour éviter les problèmes d'affichage.
Le lien explique comment les clics de souris dans un terminal peuvent être gérés soit par l'émulateur de terminal, soit par le programme en cours d'exécution. L'émulateur de terminal est utile pour des actions comme copier du texte, tandis que certains programmes, comme tmux ou vim, peuvent prendre le contrôle de la souris pour des fonctionnalités spécifiques, comme redimensionner des panneaux ou naviguer dans des menus. Ce processus, appelé "mouse reporting", permet aux programmes de recevoir des codes d'échappement pour localiser les clics de souris. L'article mentionne également des astuces pour forcer l'émulateur de terminal à reprendre le contrôle de la souris et discute du comportement de la molette de défilement dans différents programmes.
La page explique que différents émulateurs de terminal utilisent divers codes d'échappement pour effectuer des actions comme effacer l'écran. Les systèmes disposent d'une base de données appelée "terminfo" qui contient ces codes d'échappement, permettant aux programmes de savoir comment interagir avec le terminal. La variable d'environnement TERM est utilisée pour identifier le type de terminal, mais cela peut poser problème lors de l'utilisation de SSH avec des systèmes anciens et des émulateurs modernes. Des solutions sont proposées pour résoudre ces problèmes, comme installer le fichier terminfo approprié ou utiliser un émulateur de terminal différent. Autre possibilité : définir TERM=xterm-256color fonctionne assez souvent
La page présente des raccourcis clavier utiles pour travailler dans un terminal. Parmi les raccourcis mentionnés, on trouve des commandes pour éditer du texte comme Ctrl + W pour supprimer le mot précédent et Ctrl + U pour supprimer une ligne entière. Pour quitter ou gérer des processus, on peut utiliser Ctrl + C, Ctrl + Z, ou Ctrl + D. Des raccourcis pour naviguer dans le texte incluent Ctrl + A pour aller au début de la ligne et Ctrl + E pour la fin. D'autres astuces utiles incluent Ctrl + L pour effacer l'écran et Ctrl + R pour rechercher dans l'historique. Enfin, des combinaisons comme Ctrl + Shift + C/V sont utilisées pour copier et coller dans l'émulateur de terminal.
Le comic "Meet the TTY Driver" de Wizard Zines présente le pilote TTY, une partie obscure mais essentielle des systèmes informatiques. Il explique que lorsque vous démarrez un émulateur de terminal, le système crée une paire de "pseudoterminal" composée de deux fichiers, permettant la communication entre l'émulateur de terminal et le programme. Le pilote TTY est responsable de plusieurs fonctions, comme la gestion de la taille de la fenêtre du terminal, l'envoi de signaux comme SIGHUP lors de la fermeture du terminal, et le mode canonique pour la saisie de texte. Il est également la raison pour laquelle des combinaisons de touches comme Ctrl+C fonctionnent de manière cohérente. Le pilote TTY peut aussi mettre en pause la sortie et gérer les processus au premier plan.
Le comic "stty" de Wizard Zines explore les configurations du pilote TTY dans les terminaux. Il explique comment utiliser la commande stty -a pour voir la configuration actuelle, y compris la taille de la fenêtre. Le comic mentionne des fonctionnalités par défaut comme le gel du terminal avec Ctrl+S et son dégel avec Ctrl+Q, et comment désactiver cette fonction avec stty -ixon. Il aborde aussi la possibilité de changer les raccourcis clavier, comme Ctrl+C, bien que cela soit déconseillé en raison du chaos potentiel. Enfin, il souligne que les programmes doivent configurer le pilote TTY pour des fonctionnalités avancées, comme les touches fléchées, et que des bibliothèques comme readline ou ncurses peuvent aider à gérer ces configurations.
Un guide pour la sécurisation d'un serveur linux
Je repartage ça, ça peut être utile ^^
Un outil graphique pour aider à générer des commandes Linux / Unix de manière graphique
L'article présente l'utilisation de base de Imagemagick
10 commandes linux méconnues et pourtant bien utiles : renommage de fichiers en masse, afficher la progression d'une copie de fichier, afficher les numéros de ligne, etc.
L'autuer partage 13 astuces pour le terminal : répéter, corriger, etc. Je ne les connaissais pas toutes
Une astuce intéressante si un système linux met beaucoup de temps à démarrer
L'auteur montre que faire quand on se retrouve face à une simple invite du chargeur de démarrage grub.
L'article explique comment surveiller les logs sur un serveur Linux pour améliorer la sécurité et diagnostiquer les problèmes. Il détaille l'emplacement des fichiers de logs dans /var/log et l'utilisation d'outils comme journalctl pour analyser les logs de démarrage et de connexion. Il aborde également la configuration de la rotation des logs via /etc/logrotate.conf.
L'article relate l'expérience de l'auteur avec un scanner Brother DS-620 sous Ubuntu, confronté à l'obsolescence logicielle due à une dépendance rompue avec libsane. Pour résoudre ce problème, l'auteur propose deux solutions : installer le paquet en mode forcé, ce qui n'est pas pérenne, ou créer un faux package pour satisfaire la dépendance du pilote Brother. Cette dernière méthode permet de continuer à utiliser le scanner sans remplacer le matériel, contribuant ainsi à réduire les déchets électroniques.
OpenRC, depuis sa version 0.60 sortie en février 2025, permet désormais de gérer des services utilisateurs, une fonctionnalité auparavant réservée à Systemd. Cette mise à jour permet de lancer automatiquement des applications spécifiques à l'utilisateur, comme un lecteur audio en mode serveur, dès la connexion, et de les arrêter à la déconnexion. OpenRC offre ainsi une gestion plus flexible et moderne des services, avec des fonctionnalités telles que la supervision et la relance automatique en cas de crash.