lexique des commandes linux

Linux est un sytème puissant qui dispose de nombreux outils et commandes pour l’administration système et le traitement des données. Les commandes Linux sont des instructions que vous pouvez utiliser pour interagir avec le système d’exploitation. Elles constituent un outil puissant et flexible pour naviguer dans les fichiers, gérer les processus, configurer le système. Ce lexique vous permettra de maitriser les commandes Linux essentielles pour naviguer dans le système, gérer des fichiers, administrer votre serveur et bien plus.

Quelques commandes courantes sur Linux :

ll existe des centaines de commandes Linux disponibles, chacune avec ses propres options et fonctionnalités.

Les commandes Linux peuvent sembler intimidantes au premier abord, mais elles constituent un outil puissant et flexible pour les utilisateurs de tous niveaux.

En prenant le temps d’apprendre quelques commandes de base, vous pouvez débloquer un monde de possibilités et améliorer votre expérience Linux.

A

apt

apt est un outil puissant et convivial pour gérer les paquets logiciels sur les distributions Debian et Ubuntu. Il permet d’installer, de mettre à jour et de supprimer des logiciels de manière simple et efficace.

apt fonctionne en s’appuyant sur des dépôts de logiciels, qui sont des serveurs distants contenant des paquets pré-compilés pour votre distribution Linux.

Fonctions principales:

Installation de logiciels :

apt install

Mise à jour des logiciels installés :

apt update
apt upgrade

Suppression de logiciels :

apt remove

Recherche de logiciels :

apt search

Conseils:

Il est important de mettre à jour régulièrement les logiciels installés pour garantir leur sécurité et leurs performances.
Vous pouvez utiliser la commande apt-cache pour obtenir des informations détaillées sur les paquets disponibles.
Il existe des alternatives à apt pour la gestion des paquets, comme yum et dnf.

adduser

La commande adduser est un outil simple et convivial pour ajouter des utilisateurs à un système Linux. Elle permet de créer un nouveau compte utilisateur avec les informations de base nécessaires, comme le nom d’utilisateur, le mot de passe et le groupe principal.

La syntaxe de base de la commande adduser est la suivante :

adduser

: Le nom du nouvel utilisateur à créer.

Exemple :

adduser toto

Informations complémentaires:

adduser lance ensuite un dialogue interactif pour demander des informations supplémentaires sur l’utilisateur, comme son nom complet, son numéro de téléphone et son numéro d’identification.
Vous pouvez également spécifier des options supplémentaires lors de l’appel de la commande adduser pour prédéfinir certaines valeurs, comme le groupe principal ou le shell par défaut.
Il existe des alternatives à adduser pour la création d’utilisateurs, comme useradd et mkpasswd.

Options utiles:

-g : Définir le groupe principal de l’utilisateur.
-d <répertoire> : Définir le répertoire personnel de l’utilisateur.
-s : Définir le shell par défaut de l’utilisateur.
-m : Créer automatiquement le répertoire personnel de l’utilisateur.
-c : Ajouter un commentaire à l’entrée de l’utilisateur dans le fichier /etc/passwd.

Conseils:

Il est important de choisir un mot de passe fort pour l’utilisateur.
Vous pouvez utiliser la commande passwd pour modifier le mot de passe d’un utilisateur après sa création.
Il est important de définir le groupe principal de l’utilisateur en fonction de ses besoins.
Vous pouvez utiliser la commande groups pour afficher les groupes auxquels appartient un utilisateur.

B

C

cp

La commande cp est un outil essentiel pour copier des fichiers et des répertoires sous Linux. Elle est simple à utiliser et offre plusieurs options pour personnaliser la copie.

La syntaxe de base de la commande cp est la suivante :

cp

: Le fichier ou le répertoire à copier.
: Le chemin d’accès où copier le fichier ou le répertoire.

Exemples :

Copier un fichier vers un autre emplacement :

cp fichier.txt /home/utilisateur/Documents

Copier un fichier et lui donner un nouveau nom :

cp fichier.txt nouveau_fichier.txt

Copier un répertoire et son contenu :

cp -r repertoire /home/utilisateur/Bureau

Options utiles:

-r : Copier un répertoire de manière récursive (y compris tous ses sous-répertoires et fichiers).
-a : Copier tous les attributs du fichier source (date de modification, permissions, etc.).
-v : Afficher des informations détaillées sur la progression de la copie.
-n : Ne pas écraser les fichiers existants.
-f : Forcer l’écrasement des fichiers existants.

Conseils:

Il est important de bien spécifier les chemins d’accès source et destination.
Vous pouvez utiliser la touche Tab pour autocompléter les noms de fichiers et de répertoires.
Vous pouvez utiliser des caractères génériques comme * et ? pour sélectionner plusieurs fichiers.
Il existe des alias pour la commande cp, comme cpc pour copier un fichier et le conserver, et cpd pour copier un répertoire et le supprimer ensuite.

cd

La commande cd est l’une des commandes les plus basiques et les plus utilisées en ligne de commande. Elle permet de changer de répertoire courant, c’est-à-dire le répertoire dans lequel vous vous trouvez actuellement.

La syntaxe de base de la commande cd est la suivante :

cd <nom_du_répertoire>

<nom_du_répertoire> : Le nom du répertoire vers lequel vous souhaitez vous diriger.

Exemples :

Changer de répertoire pour aller dans le dossier « Téléchargements » :

cd Téléchargements

Revenir au répertoire parent :

cd ..

Accéder directement à un répertoire en indiquant son chemin absolu :

cd /home/utilisateur/Documents/Mon_projet

Options utiles:

-L : Suivre les liens symboliques.
-P : Ne pas suivre les liens symboliques.
: Revenir au répertoire précédent.
~ : Accéder au répertoire personnel de l’utilisateur.

Conseils:

Il est important de bien connaître le nom du répertoire vers lequel vous souhaitez vous diriger.
Vous pouvez utiliser la commande pwd pour afficher le chemin du répertoire courant.
Vous pouvez utiliser la touche Tab pour autocompléter le nom d’un répertoire.
Il existe des alias pour la commande cd, comme lcd pour changer de répertoire dans le shell local et rcd pour revenir au répertoire précédent.

cat

La commande cat est l’une des commandes les plus basiques et populaires de Unix. Son nom vient de l’anglais « concatenate » (concaténer) et son utilité principale est d’afficher le contenu d’un ou plusieurs fichiers sur la sortie standard (généralement l’écran).

Exemples :

1. Afficher le contenu d’un fichier :

cat

2. Afficher le contenu de plusieurs fichiers :

cat fichier1 fichier2 fichier3

3. Concaténer plusieurs fichiers :

cat fichier1 fichier2 > fichier_concaténé

4. Afficher le contenu d’un fichier ligne par ligne :

cat -n

5. Numéroter les lignes non vides d’un fichier :

cat -b

6. Rediriger la sortie vers un autre fichier :

cat > nouveau_fichier

7. Afficher uniquement les lignes correspondant à un motif :

cat | grep

8. Combiner la sortie de plusieurs commandes :

cat | sort | uniq

cmp

La commande cmp est un outil essentiel pour comparer deux fichiers octet par octet et déterminer s’ils sont identiques ou non. Elle est particulièrement utile pour vérifier l’intégrité des fichiers après une transmission ou une modification, ou pour comparer des versions différentes d’un même fichier.

Exemples :

1. Comparer deux fichiers :

cmp

2. Afficher les différences entre deux fichiers :

cmp -b

3. Ignorer les premiers octets d’un fichier :

cmp -i

4. Comparer un nombre limité d’octets :

cmp -n

5. Ne rien afficher, retourner uniquement le code de retour :

cmp -s

6. Afficher la version de la commande :

cmp -v

chgrp

La commande chgrp permet de modifier le groupe propriétaire d’un fichier ou d’un dossier. C’est un outil essentiel pour administrer les permissions d’accès aux fichiers et aux dossiers dans un système Unix.

La syntaxe de base de la commande chgrp est la suivante :

chgrp [fichier2 …]

: Le nom du nouveau groupe propriétaire.
: Le nom du fichier ou du dossier dont le groupe propriétaire doit être modifié.
[fichier2 … ] : Les noms des autres fichiers ou dossiers dont le groupe propriétaire doit être modifié (facultatif).
Exemples :

Changer le groupe propriétaire d’un fichier :

chgrp developpeurs mon_fichier.txt

Changer le groupe propriétaire d’un dossier et de ses sous-dossiers :

chgrp -R marketing dossier_partage

Afficher le groupe propriétaire d’un fichier :

ls -l mon_fichier.txt

chmod

La commande chmod est un outil essentiel pour administrer les permissions d’accès aux fichiers et dossiers dans un système Unix. Elle permet de modifier les droits de lecture, d’écriture et d’exécution pour le propriétaire, le groupe et les autres utilisateurs.

La syntaxe de base de la commande chmod est la suivante :

chmod [fichier2 …]

: Les permissions à attribuer, exprimées en octal ou symboliquement.
: Le nom du fichier ou du dossier dont les permissions doivent être modifiées.
[fichier2 … ] : Les noms des autres fichiers ou dossiers dont les permissions doivent être modifiées (facultatif).

Exemples :

Donner le droit d’écriture à tous les utilisateurs sur un fichier :

chmod 664 mon_fichier.txt

Retirer le droit d’exécution au groupe sur un dossier :

chmod g-x mon_dossier

Afficher les permissions d’un fichier :

ls -l mon_fichier.txt

chattr

La commande chattr permet de modifier les attributs étendus des fichiers. Ces attributs ne sont pas directement liés au contenu du fichier, mais ils peuvent en modifier le comportement.

La syntaxe de base de la commande chattr est la suivante :

chattr [fichier2 …]

: Les attributs à modifier.
: Le nom du fichier dont les attributs doivent être modifiés.
[fichier2 … ] : Les noms des autres fichiers dont les attributs doivent être modifiés (facultatif).

Attributs courants:

+i : Rend le fichier immuable (ne peut pas être modifié ou supprimé).
-i : Retire l’attribut immuable du fichier.
+a : Rend le fichier appendable (on ne peut que rajouter du contenu à la fin).
-a : Retire l’attribut appendable du fichier.
+s : Rend le fichier « sûr » (les modifications sont synchronisées immédiatement sur le disque).
-s : Retire l’attribut « sûr » du fichier.

Exemples :

Rendre un fichier immuable :

chattr +i mon_fichier.txt

Rendre un fichier appendable :

chattr +a mon_fichier.log

Afficher les attributs d’un fichier :

lsattr mon_fichier.txt

clear

La commande clear est une commande simple et utile qui permet d’effacer l’écran de votre terminal. C’est pratique pour :

Nettoyer l’affichage et se concentrer sur une nouvelle tâche.
Supprimer les messages et les sorties des commandes précédentes.
Améliorer la lisibilité de l’écran.

La commande clear fonctionne en envoyant un code de contrôle au terminal pour effacer son contenu. Il n’y a pas d’options à configurer, il suffit de l’exécuter pour obtenir l’effet désiré.

Exemples :

Effacer l’écran :

clear

Effacer l’écran et afficher l’invite :

clear && echo « Nouveau prompt »

Utiliser clear dans un script :

#!/bin/bash

clear
echo « Ceci est un script »
echo « L’écran a été effacé avant d’afficher ce message »

chown

La commande chown permet de modifier le propriétaire d’un fichier ou d’un dossier. C’est un outil essentiel pour administrer les permissions d’accès aux fichiers et aux dossiers dans un système Unix.

La syntaxe de base de la commande chown est la suivante :

chown : [fichier2 …]

: Le nom du nouvel utilisateur propriétaire.
: Le nom du nouveau groupe propriétaire.
: Le nom du fichier ou du dossier dont le propriétaire doit être modifié.
[fichier2 … ] : Les noms des autres fichiers ou dossiers dont le propriétaire doit être modifié (facultatif).

Exemples,:

Changer le propriétaire d’un fichier :

chown mon_utilisateur mon_fichier.txt

Changer le propriétaire d’un dossier et de ses sous-dossiers :

chown -R mon_utilisateur:mon_groupe mon_dossier

Afficher le propriétaire d’un fichier :

ls -l mon_fichier.txt

Options utiles:

-R : Applique la modification du propriétaire à tous les fichiers et sous-dossiers du dossier spécifié.
-h : Ne suit pas les liens symboliques.
-v : Affiche un message pour chaque fichier dont le propriétaire a été modifié.

D

dd

La commande dd est un outil puissant et polyvalent pour copier et convertir des données entre différents périphériques et formats de fichiers.

Elle est particulièrement utile pour :

Copier des fichiers ou des partitions de disque :

dd if=/dev/sdX of=/dev/sdY

Créer des images de disque :

dd if=/dev/sdX of=image.iso

Convertir des formats de fichiers :

dd if=fichier_source.txt of=fichier_destination.bin conv=ascii

Effacer des données :

dd if=/dev/zero of=/dev/sdX bs=512 count=1

La syntaxe de base de la commande dd est la suivante :

dd if= of= [options]

: Le fichier ou le périphérique source des données.
: Le fichier ou le périphérique de destination des données.
[options] : Les options pour contrôler la copie ou la conversion des données.

Options utiles:

bs=taille : Définir la taille du bloc de données à copier (en octets).
count=nombre : Définir le nombre de blocs de données à copier.
conv=mode : Définir le mode de conversion des données (par exemple, ascii, ebcdic, block, unblock).
skip=nombre : Ignorer un nombre de blocs de données au début du fichier source.
seek=nombre : Définir la position de départ dans le fichier de destination

Conseils:

Il est important de bien comprendre les options de la commande dd avant de l’utiliser.
La commande dd peut être dangereuse si elle est utilisée de manière incorrecte. Il est important de toujours tester la commande sur un petit fichier avant de l’utiliser sur des données importantes.
Il existe de nombreuses alternatives à la commande dd pour des tâches spécifiques. Par exemple, la commande cp est plus simple pour copier des fichiers normaux.

dig

La commande dig est un outil puissant et flexible pour interroger les serveurs DNS et obtenir des informations sur les noms de domaine et les enregistrements DNS.

Elle est particulièrement utile pour :

Déboguer les problèmes DNS :

dig +trace mon_domaine.com

Rechercher les enregistrements DNS d’un nom de domaine :

dig mx mon_domaine.com

Vérifier la configuration d’un serveur DNS :

dig ns google.com

Obtenir des informations sur un serveur DNS :

dig +short ANY root-servers.net

La syntaxe de base de la commande dig est la suivante :

dig [options] [type]

: Le nom de domaine à interroger.
[type] : Le type d’enregistrement DNS à rechercher (par exemple, A, MX, NS, SOA).
[options] : Les options pour contrôler la requête et l’affichage des résultats.

Options utiles:

+trace : Afficher le chemin de la requête DNS.
+short : Afficher uniquement les informations les plus importantes.
+answer : Afficher uniquement les réponses de la requête DNS.
+authority : Afficher uniquement les informations d’autorité de la requête DNS.
+additional : Afficher les informations supplémentaires de la requête DNS.

Conseils:

Il est important de bien comprendre les options de la commande dig avant de l’utiliser.
La commande dig peut être utilisée avec des scripts pour automatiser des tâches de gestion DNS.
Il existe de nombreuses alternatives à la commande dig pour des tâches spécifiques. Par exemple, la commande nslookup est plus simple pour des recherches DNS simples.

diff

diff est une commande Unix et Linux puissante et largement utilisée pour comparer deux fichiers et afficher leurs différences.

Utilisations principales:

Comparer des fichiers texte:
C’est l’utilisation la plus courante de diff.
Vous pouvez comparer des fichiers uniques ou le contenu des répertoires.
Identifier les modifications apportées à un fichier:
diff peut vous aider à identifier les lignes qui ont été ajoutées, supprimées ou modifiées dans un fichier.
Fusionner des modifications provenant de différentes sources:
diff peut être utilisé pour fusionner les modifications apportées à un fichier par plusieurs personnes.

Syntaxe de base:

diff [options] fichier1 fichier2

Exemples :

Comparer deux fichiers texte:

diff fichier1.txt fichier2.txt

Comparer le contenu de deux répertoires:

diff -r repertoire1 repertoire2

Afficher uniquement les différences de contenu:

diff -b fichier1.txt fichier2.txt

Ignorer les différences de casse:

diff -i fichier1.txt fichier2.txt

Comparer des fichiers binaires:

diff -b fichier1.bin fichier2.bin

Ignorer les espaces blancs:

diff -b fichier1.txt fichier2.txt | grep -v ‘^ ‘

Fusionner les modifications de deux fichiers:

diff -u fichier1.txt fichier2.txt > fichier-fusionne.txt

Conseils:

Utilisez l’option -q pour afficher uniquement un résumé des différences.
Utilisez l’option -w pour afficher les différences côte à côte.
Utilisez l’option -n pour afficher les numéros de ligne des différences.

E

echo

La commande echo est une commande simple et très utile pour afficher du texte sur l’écran de votre terminal.

Elle est utilisée pour :

Afficher des messages d’information ou d’avertissement :

echo « Le système est en cours de maintenance. »

Afficher des variables d’environnement :

echo $USER

Concaténer des chaînes de caractères :

echo « Bonjour » +  »  » + « monde ! »

Afficher des caractères spéciaux :

echo -e « \n\tCeci est un message avec des tabulations. »
La syntaxe de base de la commande echo est la suivante :

echo [options]

: Le texte à afficher sur l’écran.
[options] : Les options pour contrôler l’affichage du texte.

Options utiles:

-n : Ne pas ajouter de saut de ligne à la fin du texte.
-e : Interpréter les caractères spéciaux du texte (par exemple, \n pour un saut de ligne).
-t : Afficher l’heure et la date avant le texte.
-s : Supprimer les espaces blancs avant et après le texte.

Conseils:

La commande echo peut être utilisée avec des scripts pour automatiser l’affichage de messages.
Il existe de nombreuses alternatives à la commande echo pour des tâches spécifiques. Par exemple, la commande printf est plus flexible pour formater le texte.

F

fuser

La commande fuser permet de déterminer quels processus utilisent un fichier, un répertoire, un port réseau ou un périphérique spécial. C’est un outil précieux pour :

Déterminer la cause d’un fichier verrouillé :

fuser /var/log/mon_fichier.log

Tuer un processus qui utilise un port réseau :

fuser -k 8080/tcp

Lister les processus qui utilisent un périphérique spécial :

fuser /dev/ttyS0

La syntaxe de base de la commande fuser est la suivante :

fuser [options] [fichier …]

: Le fichier, le répertoire, le port réseau ou le périphérique spécial à examiner.
[options] : Les options pour contrôler le fonctionnement de la commande.

Options utiles:

-k : Tuer les processus qui utilisent le fichier ou le port.
-i : Demander confirmation avant de tuer les processus.
-v : Afficher l’ID du processus et le nom du programme pour chaque fichier.
-m : Afficher uniquement les processus dont l’utilisateur est le propriétaire.
-n : Afficher uniquement les numéros de port TCP et UDP.

Conseils:

Seul le super-utilisateur ou un utilisateur ayant les droits appropriés peut tuer des processus avec la commande fuser.
Il est important de bien identifier les processus avant de les tuer.
Il existe des alternatives à la commande fuser pour des tâches spécifiques. Par exemple, la commande lsof est plus complète pour lister les fichiers ouverts par les processus.

G

groupadd

La commande groupadd permet de créer un nouveau groupe d’utilisateurs sur un système Unix. C’est un outil essentiel pour administrer les permissions d’accès aux fichiers et aux dossiers.

La syntaxe de base de la commande groupadd est la suivante :

groupadd [options]

: Le nom du nouveau groupe à créer.
[options] : Les options pour contrôler la création du groupe.

Options utiles:

-g : Définir l’identifiant de groupe (GID) du nouveau groupe.
-f : Ne pas afficher d’erreur si le groupe existe déjà.
-r : Créer un groupe système (ne peut être utilisé que par le super-utilisateur).

Exemples :

Créer un nouveau groupe avec l’identifiant de groupe par défaut :

groupadd mon_groupe

Créer un nouveau groupe avec un GID spécifique :

groupadd -g 100 mon_autre_groupe

Créer un groupe système :

groupadd -r mon_groupe_systeme

Conseils:

Il est important de choisir un nom de groupe unique et descriptif.
Le GID par défaut est généralement le premier numéro disponible après 999.
Il est possible de modifier les informations d’un groupe après sa création avec la commande groupmod.
Il est possible de supprimer un groupe avec la commande groupdel.

H

I

IP

La commande ip est un outil puissant et polyvalent pour gérer les interfaces réseau, le routage et les tables ARP sous Linux. Elle remplace les anciennes commandes comme ifconfig, route et arp.

Afficher les informations des interfaces réseau :

ip link

Modifier l’adresse IP d’une interface :

ip address add 192.168.1.10/24 dev eth0

Activer ou désactiver une interface réseau :

ip link set eth0 up
ip link set eth1 down

Ajouter une route statique :

ip route add 10.0.0.0/24 via 192.168.1.1

Afficher la table de routage :

ip route

Afficher la table ARP :

ip neighbor

Gérer les règles de filtrage du trafic :

iptables -A INPUT -p tcp –dport 80 -j ACCEPT
Conseils:

Il est important de bien comprendre les options de la commande ip avant de l’utiliser.
La commande ip peut être dangereuse si elle est utilisée de manière incorrecte. Il est important de toujours tester la commande sur un réseau de test avant de l’utiliser sur un réseau de production.
Il existe de nombreuses alternatives à la commande ip pour des tâches spécifiques. Par exemple, la commande nmcli est plus simple pour gérer les connexions réseau.

ipman

IPMAN n’est pas une commande mais un script destiné aux tutilisateurs Lenovo soucieux de maitriser la charge de la batterie.

Ce script permet d’arrếter la charge a 85 % et de ne pas descendre en dessous de 50 %.

iproute

Iproute n’est pas une seule commande, mais une suite d’outils en ligne de commande puissants et polyvalents pour la gestion avancée des réseaux sous Linux. Elle remplace les anciennes commandes comme ifconfig, route et arp et offre un éventail de fonctionnalités beaucoup plus large.

Configuration des interfaces réseau :

Afficher les informations des interfaces :ip link
Modifier l’adresse IP : ip address add 192.168.1.10/24 dev eth0
Activer/désactiver une interface : ip link set eth0 up/down

Gestion du routage :

Ajouter une route statique : ip route add 10.0.0.0/24 via 192.168.1.1
Afficher la table de routage : ip route

 

Manipulation de la table ARP :

Afficher la table ARP : ip neighbor
Ajouter/supprimer une entrée ARP : ip neigh add/del 192.168.1.10 eth0

Configuration des règles de filtrage :

Gérer les règles iptables : iptables -A INPUT -p tcp –dport 80 -j ACCEPT

Outils avancés :
Traceroute : ip route trace 8.8.8.8
Ping : ip ping 192.168.1.1
Liaison de VLAN : ip link add link eth0 name eth0.10 vlan 10
Conseils:

Il est important de bien comprendre les options de chaque outil avant de l’utiliser.
La commande ip peut être dangereuse si elle est utilisée de manière incorrecte. Il est important de toujours tester les commandes sur un réseau de test avant de les utiliser sur un réseau de production.
Il existe des alternatives à iproute pour des tâches spécifiques. Par exemple, nmcli est plus simple pour gérer les connexions réseau.

iptstate

La commande ipstate permet d’observer en temps réel les connexions réseau établies sur votre système Linux, en affichant des informations détaillées sur chaque état de connexion. C’est un outil précieux pour :

Déboguer les problèmes de connectivité réseau :

ipstate -s

Surveiller l’activité réseau et identifier les connexions suspectes :

ipstate -L -p tcp

Analyser les statistiques de trafic par port ou par adresse IP :

ipstate -t | sort -nk 5

ipstate s’appuie sur la table d’état du noyau Linux pour afficher des informations sur chaque connexion active, y compris :

L’adresse IP source et destination
Le port source et destination
Le protocole utilisé (TCP, UDP, etc.)
L’état de la connexion (NEW, ESTABLISHED, etc.)
Le nombre d’octets envoyés et reçus
Le temps écoulé depuis l’établissement de la connexion

Options utiles:

-s : Afficher un résumé des statistiques de connexion.
-L : Afficher la liste détaillée des connexions.
-p : Filtrer les connexions par protocole (TCP, UDP, etc.).
-t : Afficher les statistiques de trafic par port ou par adresse IP.
-n : Afficher les numéros de port et d’adresse IP au lieu des noms.
-r : Afficher les connexions en ordre inverse.

Conseils:

La commande ipstate nécessite les droits root pour fonctionner.
Il est important de bien comprendre les options de la commande avant de l’utiliser.
ipstate peut être utilisée avec des scripts pour automatiser la surveillance du réseau.
Il existe des alternatives à ipstate pour des tâches spécifiques. Par exemple, netstat offre une vue plus générale des connexions réseau, tandis que ss est plus flexible pour filtrer les connexions.

iptraf-ng

iptraf-ng est un outil puissant et flexible pour analyser et surveiller le trafic réseau en temps réel sous Linux. Il offre une large gamme de fonctionnalités pour :

Observer les connexions réseau en détail :

iptraf-ng -i eth0

Filtrer le trafic par adresse IP, port, protocole et autres critères :

iptraf-ng -f « ip src 192.168.1.0/24 and tcp dst port 80 »

Analyser les statistiques de trafic par IP, port, application et protocole :

iptraf-ng -g -s 10

Exporter les données de trafic vers des formats de fichier pour une analyse ultérieure :

iptraf-ng -l -o /tmp/traffic.log

 

Fonctionnalités principales:

Capture de paquets en temps réel : Interception et analyse du trafic réseau entrant et sortant.
Filtrage avancé : Définition de critères précis pour identifier et afficher uniquement le trafic pertinent.
Statistiques détaillées : Affichage du nombre de paquets, d’octets, de connexions et d’autres statistiques pour chaque flux de trafic.
Graphiques et tableaux interactifs : Visualisation du trafic réseau sous forme de graphiques et de tableaux pour une meilleure compréhension.
Exportation des données : Enregistrement des données de trafic dans divers formats pour une analyse ultérieure avec d’autres outils.

 

Conseils:

iptraf-ng nécessite les droits root pour fonctionner.
Il est important de bien comprendre les options de la commande avant de l’utiliser.
iptraf-ng peut être utilisé avec des scripts pour automatiser la surveillance du réseau.
Il existe des alternatives à iptraf-ng pour des tâches spécifiques. Par exemple, nmon offre une vue générale des performances du système, tandis que ngrep est plus spécialisé dans la recherche de paquets spécifiques.

J

journalctl

journalctl est un outil puissant et polyvalent pour afficher, filtrer et analyser les journaux système de Linux. Il remplace les anciennes commandes comme syslog et dmesg et offre une interface unifiée pour accéder aux journaux de différentes sources, y compris :

Le noyau Linux: Messages d’amorçage, événements du noyau et traces de pile.
Systèmes et services: Journaux d’applications et de services systemd.
Utilisateurs: Journaux d’activité des utilisateurs et des applications.

 

Fonctionnalités principales:

Afficher les journaux en temps réel :

journalctl -f

Filtrer les journaux par date, priorité, unité, service et autres critères :

journalctl -p err -u sshd

Rechercher des messages spécifiques dans les journaux :

journalctl –grep « erreur de connexion »

Afficher les journaux d’une unité systemd spécifique :

journalctl -u sshd.service

Exporter les journaux vers des fichiers pour une analyse ultérieure :

journalctl -o short-precise > journal.txt
Conseils:

journalctl est souvent utilisé avec les options -p (priorité), -u (unité) et –grep (recherche) pour filtrer les journaux.
Il est important de bien comprendre les options de la commande avant de l’utiliser.
journalctl peut être utilisé avec des scripts pour automatiser l’analyse des journaux.
Il existe des alternatives à journalctl pour des tâches spécifiques. Par exemple, logwatch peut envoyer des alertes par email en cas d’erreurs dans les journaux.

K

kill

La commande kill est un outil puissant pour contrôler les processus en cours d’exécution sous Linux. Elle permet d’envoyer des signaux aux processus, ce qui peut les inciter à s’arrêter, à se suspendre ou à effectuer d’autres actions spécifiques.

La syntaxe de base de la commande kill est la suivante :

kill [

: L’identifiant du processus (PID) auquel vous souhaitez envoyer le signal.
: Le numéro du signal à envoyer (par défaut, le signal SIGTERM).

 

Exemples :

Arrêter un processus :

kill 1234

Suspendre un processus :

kill -STOP 1234

Reprendre un processus suspendu :

kill -CONT 1234

Liste des signaux courants:

SIGTERM (15): Demande au processus de se terminer proprement.
SIGKILL (9): Tue le processus immédiatement et de force.
SIGINT (2): Interrompt le processus.
SIGSTOP (17): Suspend le processus.
SIGCONT (18): Reprend un processus suspendu.

 

Conseils:

Il est important de bien connaître les effets des différents signaux avant de les utiliser.
Vous pouvez utiliser la commande ps pour afficher la liste des processus en cours d’exécution et leurs PID.
Il est généralement préférable d’utiliser le signal SIGTERM pour arrêter un processus, car il permet au processus de se terminer proprement.
Le signal SIGKILL doit être utilisé avec prudence, car il peut entraîner la perte de données.

killall

La commande killall est un outil pratique pour envoyer des signaux à plusieurs processus en même temps, en utilisant leur nom de commande comme identifiant.

La syntaxe de base de la commande killall est la suivante :

killall [

: Le nom de la commande des processus à tuer.
: Le numéro du signal à envoyer (par défaut, le signal SIGTERM).

 

Exemples :

Arrêter tous les processus Firefox :

killall firefox

Tuer tous les processus Xorg :

killall -9 Xorg
Conseils:

Il est important de bien connaître les effets des différents signaux avant de les utiliser.
Vous pouvez utiliser la commande ps pour afficher la liste des processus en cours d’exécution et leurs noms de commande.
Il est généralement préférable d’utiliser le signal SIGTERM pour arrêter un processus, car il permet au processus de se terminer proprement.
Le signal SIGKILL doit être utilisé avec prudence, car il peut entraîner la perte de données.

 

Différences entre kill et killall:

kill envoie un signal à un processus spécifique en utilisant son PID.
killall envoie un signal à tous les processus dont le nom correspond à la commande spécifiée.

 

Alternatives à killall:

pkill: Envoie des signaux aux processus en fonction de leur nom, de leur PID ou de leur groupe de processus.
xkill: Permet de tuer des processus graphiquement en cliquant dessus.

L

ls

La commande ls est l’une des commandes les plus basiques et les plus utilisées en ligne de commande. Elle permet de lister le contenu d’un répertoire, c’est-à-dire les fichiers et les autres répertoires imbriqués.

La syntaxe de base de la commande ls est la suivante :

ls [options] [répertoire]

[options] : Options pour personnaliser l’affichage (tri, couleurs, etc.).
[répertoire] : Le répertoire à lister (le répertoire courant par défaut).

Exemples :

Lister le contenu du répertoire courant :

ls

Lister les fichiers d’un autre répertoire :

ls /home/utilisateur/Documents

Afficher les fichiers cachés :

ls -a

Trier les fichiers par taille :

ls -S

Afficher des informations détaillées sur les fichiers :

ls -l

 

Options utiles:

-a : Afficher tous les fichiers, y compris les fichiers cachés dont le nom commence par un point (.).
-A : Afficher tous les fichiers, y compris les fichiers cachés dont le nom commence par un point (.), à l’exception de « . » et « .. »
-l : Afficher des informations détaillées sur les fichiers (taille, date de modification, permissions, etc.).
-S : Trier les fichiers par taille.
-t : Trier les fichiers par date de modification.
-r : Trier les fichiers en ordre inverse.
-h : Afficher la taille des fichiers en format humain (Ko, Mo, Go, etc.).
-c : Afficher les couleurs pour différencier les types de fichiers.

 

Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter le nom d’un fichier ou d’un répertoire.
Vous pouvez combiner plusieurs options pour obtenir l’affichage souhaité.
Il existe des alias pour la commande ls, comme dir et list.

lsattr

La commande lsattr permet d’afficher les attributs étendus associés aux fichiers et aux répertoires. Ces attributs vont au-delà des informations standard comme les permissions, la taille et la date de modification. Ils peuvent être utilisés pour stocker des informations supplémentaires, comme le type de fichier, l’auteur, ou des droits d’accès spécifiques.

La syntaxe de base de la commande lsattr est la suivante :

lsattr [options] [fichiers]

[options] : Options pour personnaliser l’affichage des attributs.
[fichiers] : Les fichiers ou les répertoires dont vous souhaitez afficher les attributs.

 

Exemples :

Afficher les attributs étendus d’un fichier :

lsattr fichier.txt

Afficher les attributs étendus de tous les fichiers d’un répertoire :

lsattr -R repertoire

Afficher uniquement les noms des attributs étendus :

lsattr -n fichier.txt

 

Options utiles:

-a : Afficher tous les attributs étendus, y compris ceux dont le nom commence par un point (.).
-d : Afficher les attributs étendus des répertoires comme s’ils étaient des fichiers.
-l : Afficher les attributs étendus dans un format long avec des informations supplémentaires.
-n : Afficher uniquement les noms des attributs étendus.
-R : Afficher les attributs étendus de manière récursive dans tous les sous-répertoires.

 

Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter le nom d’un fichier ou d’un répertoire.
Vous pouvez combiner plusieurs options pour obtenir l’affichage souhaité.

ln

La commande ln est un outil puissant pour créer des liens entre les fichiers et les répertoires sous Linux. Il existe deux types de liens :

Liens symboliques (liens souples): Ce sont des fichiers qui pointent vers un autre fichier ou un répertoire. Si vous modifiez le fichier original, le lien symbolique sera également mis à jour.
Liens physiques (liens durs): Ce sont des références supplémentaires au même fichier sur le disque. Si vous modifiez le fichier original, les modifications seront également reflétées dans tous les liens physiques.

La syntaxe de base de la commande ln est la suivante :

ln [options]

[options] : Options pour choisir le type de lien à créer.
: Le chemin d’accès au fichier ou au répertoire source.
: Le nom du lien à créer.

Exemples :

Création d’un lien symbolique:

ln -s /home/utilisateur/fichier.txt /home/utilisateur/lien_symbolique.txt

Création d’un lien physique:

ln /home/utilisateur/fichier.txt /home/utilisateur/lien_physique.txt

Différences entre les liens symboliques et les liens physiques:

Liens symboliques:
Pointent vers un fichier ou un répertoire.
Peuvent être utilisés pour créer des raccourcis vers des fichiers ou des répertoires.
Ne prennent pas d’espace supplémentaire sur le disque.
Sont mis à jour si le fichier original est modifié.
Peuvent être brisés si le fichier original est déplacé ou supprimé.

Liens physiques:
Sont des références supplémentaires au même fichier sur le disque.
Ne peuvent être utilisés que pour créer des liens vers des fichiers.
Prennent le même espace disque que le fichier original.
Sont également modifiés si le fichier original est modifié.
Ne peuvent pas être brisés.

Conseils:

Il est important de bien comprendre la différence entre les liens symboliques et les liens physiques avant de les utiliser.
Vous pouvez utiliser la commande file pour déterminer le type d’un lien.
Vous pouvez utiliser la commande unlink pour supprimer un lien.

lshw

lshw est un outil puissant et convivial pour afficher des informations détaillées sur la configuration matérielle de votre système Linux. Il fonctionne en s’appuyant sur divers fichiers du répertoire /proc pour fournir une vue complète des composants matériels présents, tels que la carte mère, le processeur, la mémoire vive, les périphériques de stockage, les cartes réseau, etc.

La syntaxe de base de la commande lshw est la suivante :

lshw [options]

[options] : Options pour personnaliser l’affichage des informations.

 

Exemples :

Afficher des informations générales sur le système :

lshw

Afficher des informations détaillées sur un composant spécifique :

lshw -class

Afficher des informations dans un format HTML :

lshw -html > hardwareinfo.html

 

Options utiles:

-class : Filtrer la sortie par catégorie de composant matériel (par exemple, cpu, memory, disk).
-short : Afficher un résumé des informations.
-html : Générer une page HTML avec les informations.
-xml : Générer une sortie XML avec les informations.
-help : Afficher l’aide de la commande.

Conseils:

Il est souvent nécessaire d’exécuter la commande lshw avec les droits root pour obtenir des informations complètes.
Vous pouvez utiliser la touche Tab pour autocompléter le nom d’un composant.
Vous pouvez combiner plusieurs options pour obtenir l’affichage souhaité.

lscpu

La commande lscpu est un outil précieux pour obtenir des informations détaillées sur le processeur de votre système Linux. Elle exploite les données des fichiers /proc/cpuinfo et sysfs pour afficher des informations précises sur l’architecture du processeur, le nombre de cœurs et de threads, la fréquence d’horloge, le cache, les bogomips et bien plus encore.

La syntaxe de base de la commande lscpu est la suivante :

lscpu [options]

[options] : Options pour personnaliser l’affichage des informations.

 

Exemples :

Afficher des informations générales sur le processeur :

lscpu

Afficher des informations détaillées sur chaque cœur de processeur :

lscpu -p

Afficher les informations dans un format de table :

lscpu -t

Afficher les informations dans un format parsable par un script :

lscpu -o csv

 

Options utiles:

-p : Afficher les informations par cœur de processeur.
-t : Afficher les informations dans un format de table.
-o : Définir le format de sortie (csv, yaml, json, etc.).
-h : Afficher l’aide de la commande.

 

Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter les options.
Vous pouvez combiner plusieurs options pour obtenir l’affichage souhaité.
Il est souvent utile d’exécuter la commande lscpu avec les droits root pour obtenir des informations complètes.

lsof

La commande lsof (abréviation de « list open files ») est un outil puissant pour afficher les fichiers ouverts et les processus qui les utilisent sur un système Linux. Elle est particulièrement utile pour identifier les processus qui bloquent l’accès à un fichier ou pour diagnostiquer des problèmes de performance.

La syntaxe de base de la commande lsof est la suivante :

lsof [options] [fichiers ou processus]

[options] : Options pour personnaliser l’affichage des informations.
[fichiers ou processus] : Fichiers ou processus à examiner (optionnel).

 

Exemples :

Lister tous les fichiers ouverts :

lsof

Lister les processus qui utilisent un fichier particulier :

lsof /home/utilisateur/fichier.txt

Lister les processus qui utilisent un port réseau spécifique :

lsof -i TCP:80

Afficher des informations détaillées sur un processus :

lsof -p

 

Options utiles:

-a : Afficher tous les processus, y compris ceux qui s’exécutent en arrière-plan.
-c : Afficher la commande associée à chaque processus.
-d : Afficher les descripteurs de fichiers ouverts par chaque processus.
-i : Afficher les connexions réseau établies par chaque processus.
-p : Afficher les informations sur un processus spécifique en utilisant son PID.
-h : Afficher l’aide de la commande.
Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter les noms de fichiers et les PID.
Vous pouvez combiner plusieurs options pour obtenir l’affichage souhaité.
Il est souvent utile d’exécuter la commande lsof avec les droits root pour obtenir des informations complètes.

M

man

La commande man est un outil essentiel pour tout utilisateur de Linux. Elle permet d’afficher les pages de manuel, qui sont des documents décrivant les commandes, les fonctions de bibliothèque et les fichiers de configuration disponibles sur le système.

La syntaxe de base de la commande man est la suivante :

man [options]

[options] : Options pour personnaliser l’affichage de la page de manuel.
: Nom de la commande, de la fonction ou du fichier de configuration dont vous souhaitez consulter la page de manuel.

 

Exemples :

Afficher la page de manuel de la commande ls :

man ls

Afficher la page de manuel de la fonction printf :

man 3 printf

Afficher la page de manuel du fichier de configuration /etc/passwd :

man 5 passwd

 

Options utiles:

-k : Rechercher une commande par mot-clé.
-a : Afficher toutes les pages de manuel correspondant à la recherche.
-l : Afficher la page de manuel dans un format long avec plus d’informations.
-t : Afficher la page de manuel dans un format « troff » pour l’impression.
-h : Afficher l’aide de la commande.
Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter les noms de commandes et de fichiers.
Vous pouvez utiliser la touche q pour quitter la page de manuel.
Vous pouvez utiliser la commande apropos pour rechercher une commande par mot-clé.
Vous pouvez utiliser la commande whatis pour obtenir une brève description d’une commande.

N

nice

La commande nice permet de modifier la priorité d’un processus avant son lancement. Cela peut être utile pour:

Favoriser l’exécution de certains processus: Augmenter la priorité d’un processus pour qu’il s’exécute plus rapidement que les autres.
Limiter l’impact de certains processus: Diminuer la priorité d’un processus pour qu’il n’accapare pas trop de ressources système.

La syntaxe de base de la commande nice est la suivante:

nice [options]

[options] : Options pour modifier la priorité du processus.
: La commande à lancer avec la priorité modifiée.

 

Exemples :

Lancer un processus avec une priorité plus élevée:

nice -10 firefox

Lancer un processus avec une priorité plus basse:

nice 10 program_lourd

 

Options utiles:

-n : Définir la valeur de la priorité (entre -20 et 19).
-10 : Augmenter la priorité de 10 points.
10 : Diminuer la priorité de 10 points.
-h : Afficher l’aide de la commande.

Conseils:

La valeur de la priorité par défaut est 0.
Seuls les utilisateurs root peuvent définir une priorité négative.
La modification de la priorité n’affecte pas les processus déjà en cours d’exécution.
Il est important de bien comprendre les implications de la modification de la priorité avant de l’utiliser.

nano

nano est un éditeur de texte en mode console simple et convivial pour les utilisateurs débutants et confirmés sous Linux. Il offre une interface intuitive et des fonctionnalités de base pour modifier des fichiers texte.

La syntaxe de base de la commande nano est la suivante :

nano [options]

[options] : Options pour personnaliser l’environnement de l’éditeur.
: Le nom du fichier à modifier.

 

Exemples :

Ouvrir un fichier texte existant pour l’éditer :

nano fichier.txt

Créer un nouveau fichier texte :

nano nouveau_fichier.txt

Quitter l’éditeur sans enregistrer les modifications :

Ctrl+C

Enregistrer les modifications et quitter l’éditeur :

Ctrl+O
Ctrl+X

 

Fonctionnalités utiles:

Curseur : Utilisez les touches fléchées pour naviguer dans le fichier.
Insertion/Suppression : Tapez pour insérer du texte, utilisez Backspace et Delete pour supprimer.
Recherche/Remplacement : Utilisez Ctrl+W pour rechercher et Ctrl+R pour remplacer.
Couper/Coller/Copier : Utilisez Ctrl+K pour couper, Ctrl+U pour coller et Ctrl+C pour copier.
Aide : Appuyez sur Ctrl+G pour afficher l’aide contextuelle.
Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter les noms de fichiers.
Vous pouvez utiliser le raccourci Ctrl+L pour actualiser l’affichage du fichier.
Vous pouvez personnaliser les couleurs et les options de l’éditeur via le fichier ~/.nanorc.

networkctl

networkctl est un outil puissant et convivial pour gérer les connexions réseau sur les systèmes Linux. Il permet d’effectuer diverses tâches, telles que la configuration d’interfaces réseau, l’activation et la désactivation de connexions, la modification des paramètres réseau et la vérification de l’état des connexions.

La syntaxe de base de la commande networkctl est la suivante :

networkctl [commande] [options] [arguments]

commande : La commande à exécuter (par exemple, status, list, up, down, edit).
options : Options pour personnaliser l’action de la commande.
arguments : Arguments spécifiques à la commande.

 

Exemples :

Afficher l’état des connexions réseau :

networkctl status

Lister les connexions réseau disponibles :

networkctl list

Activer une connexion réseau :

networkctl up

Désactiver une connexion réseau :

networkctl down

Modifier les paramètres d’une connexion réseau :

networkctl edit

 

Conseils:

Vous pouvez utiliser la touche Tab pour autocompléter les noms de commandes et de connexions.
Vous pouvez utiliser l’option -h pour afficher l’aide d’une commande spécifique.
Vous pouvez utiliser la commande man networkctl pour afficher la page de manuel complète.

netstat

Netstat est un outil puissant en ligne de commande qui permet d’afficher des informations détaillées sur les connexions réseau et les statistiques des protocoles actifs sur votre machine.

Utilisations principales:

Afficher les connexions actives:
TCP (Transmission Control Protocol)
UDP (User Datagram Protocol)
SCTP (Stream Control Transmission Protocol)
Analyser les statistiques du réseau:
Nombre de paquets envoyés et reçus
Octets transférés
Erreurs de transmission
Détecter les problèmes de réseau:
Connexions inutilisées
Ports ouverts
Fuites de mémoire

Syntaxe de base:

netstat [options]

Options courantes:

-a: Affiche toutes les connexions, y compris celles en écoute.
-n: Affiche les adresses IP et les numéros de port en format numérique.
-o: Affiche des informations supplémentaires, telles que l’ID du processus et l’état de la connexion.
-p: Affiche les connexions pour un protocole spécifique (TCP, UDP, SCTP).
-r: Affiche la table de routage.
-s: Affiche les statistiques par protocole.

 

Exemples :

Afficher toutes les connexions TCP actives:

netstat -an | findstr /i « tcp »

Afficher les connexions UDP vers le port 80:

netstat -an | findstr /i « udp:80 »

Afficher les statistiques du réseau pour le protocole TCP:

netstat -s -p TCP

 

Conseils :

Netstat est un outil puissant, mais il peut être difficile à utiliser pour les utilisateurs débutants.
Il est important de bien comprendre les options disponibles avant d’utiliser la commande.
De nombreuses ressources en ligne sont disponibles pour vous aider à apprendre à utiliser netstat.

nslookup

Nslookup est un outil en ligne de commande simple mais très pratique qui permet de:

Résoudre un nom de domaine en adresse IP:
C’est l’utilisation la plus courante de nslookup.
Par exemple, pour connaître l’adresse IP de google.com, vous pouvez utiliser la commande suivante:

nslookup google.com

Résoudre une adresse IP en nom de domaine:
Cette utilisation est moins courante, mais peut être utile pour identifier un serveur à partir de son adresse IP.
Par exemple, pour connaître le nom de domaine de l’adresse IP 172.217.14.238, vous pouvez utiliser la commande suivante:

nslookup 172.217.14.238

Obtenir des informations sur les serveurs DNS:
Vous pouvez utiliser nslookup pour connaître le serveur DNS utilisé par votre machine, ou pour interroger un serveur DNS spécifique.
Par exemple, pour connaître le serveur DNS utilisé par votre machine, vous pouvez utiliser la commande suivante:

nslookup

Afficher les enregistrements DNS d’un domaine:
Vous pouvez utiliser nslookup pour afficher les différents types d’enregistrements DNS associés à un domaine, tels que les enregistrements A, MX, CNAME, etc.
Par exemple, pour afficher les enregistrements MX de google.com, vous pouvez utiliser la commande suivante:

nslookup -type=mx google.com

Syntaxe de base:

nslookup [nom_de_domaine | adresse_IP] [options]

 

Options courantes:

-type: Spécifie le type d’enregistrement DNS à rechercher (A, MX, CNAME, etc.).
-server: Spécifie le serveur DNS à interroger.
-all: Affiche tous les enregistrements DNS du domaine.

 

Exemples :

Résoudre le nom de domaine « www.google.com » en adresse IP:

nslookup www.google.com

Résoudre l’adresse IP « 172.217.14.238 » en nom de domaine:

nslookup 172.217.14.238

Afficher les enregistrements MX du domaine « google.com »:

nslookup -type=mx google.com

Interroger le serveur DNS « 8.8.8.8 » pour le nom de domaine « www.yahoo.com »:

nslookup -server 8.8.8.8 www.yahoo.com

nmcli

Nmcli (NetworkManager Command Line Interface) est un outil puissant en ligne de commande qui permet de gérer les connexions réseau et les périphériques réseau sur les systèmes Linux utilisant NetworkManager.

Afficher les informations réseau:
Liste des connexions disponibles
Statut des connexions (activées, désactivées)
Informations sur les périphériques réseau (nom, type, adresse MAC)
Gérer les connexions réseau:
Activer et désactiver les connexions
Créer, modifier et supprimer des connexions
Définir les paramètres de connexion (type de connexion, adresse IP, DNS, etc.)
Gérer les périphériques réseau:
Activer et désactiver les périphériques
Afficher les statistiques des périphériques

 

Syntaxe de base:

nmcli [commande] [options] [arguments]

 

Commandes courantes:

connection: Gérer les connexions réseau
device: Gérer les périphériques réseau
agent: Gérer les agents de connexion (par exemple, pour les connexions Wi-Fi protégées)
networking: Gérer les paramètres réseau globaux
help: Afficher l’aide

 

Exemples :

Afficher la liste des connexions disponibles:

nmcli connection list

Activer la connexion « eth0 »:

nmcli connection up eth0

Modifier le nom de la connexion « Wi-Fi »:

nmcli connection modify Wi-Fi name « Nouveau nom »

Afficher les statistiques du périphérique réseau « enp0s3 »:

nmcli device stats enp0s3

Définir l’adresse IP statique « 192.168.1.10 » pour la connexion « eth0 »:

nmcli connection modify eth0 ipv4.addresses « 192.168.1.10/24 »

O

P

pacman

Pacman est un gestionnaire de paquets puissant et convivial utilisé pour installer, mettre à jour et supprimer des logiciels sur les distributions Linux basées sur Arch Linux, telles que Arch Linux, Manjaro et Artix.

Utilisations principales:

Installer des logiciels:
Vous pouvez installer des logiciels à partir des dépôts officiels d’Arch Linux ou à partir de l’AUR (Arch User Repository), un dépôt communautaire.
Mettre à jour les logiciels:
Pacman peut automatiquement mettre à jour tous les logiciels installés sur votre système.
Supprimer des logiciels:
Vous pouvez supprimer des logiciels que vous n’utilisez plus pour libérer de l’espace sur votre disque dur.
Gérer les dépendances:
Pacman gère automatiquement les dépendances des logiciels, ce qui signifie que vous n’avez pas à vous soucier de l’installation des logiciels dont ils ont besoin pour fonctionner.

 

Syntaxe de base:

pacman [commande] [options] [arguments]

 

Commandes courantes:

-S: Installer un ou plusieurs paquets
-Sy: Mettre à jour la base de données des paquets
-Syu: Mettre à jour tous les paquets installés
-R: Supprimer un ou plusieurs paquets
-Q: Afficher des informations sur les paquets installés
-Ss: Rechercher un paquet dans la base de données
-Su: Mettre à jour un seul paquet

 

Exemples :

Installer le navigateur web Firefox:

sudo pacman -S firefox

Mettre à jour tous les paquets installés:

sudo pacman -Syu

Supprimer le paquet « vim »:

sudo pacman -R vim

Afficher des informations sur le paquet « pamac »:

sudo pacman -Q pamac

Rechercher un paquet dont le nom contient « python »:

sudo pacman -Ss python

ps

ps (abréviation de « process status ») est une commande très utilisée pour afficher des informations sur les processus en cours d’exécution sur un système Unix ou Linux.

Utilisations principales:

Afficher la liste des processus actifs:
Vous pouvez afficher des informations de base sur tous les processus, tels que leur ID, leur nom, leur état et leur utilisation du CPU.
Filtrer les processus par nom, ID ou utilisateur:
Vous pouvez afficher uniquement les processus qui vous intéressent en utilisant des options de filtrage.
Afficher des informations détaillées sur un processus:
Vous pouvez afficher des informations plus détaillées sur un processus spécifique, telles que ses threads, ses descripteurs de fichiers et ses signaux.
Terminer un processus:
Vous pouvez utiliser ps pour tuer un processus qui ne répond plus ou qui utilise trop de ressources.

Syntaxe de base:

ps [options]

Options courantes:

-a: Affiche tous les processus, y compris ceux en état « zombie ».
-e: Affiche tous les processus, y compris ceux des autres utilisateurs.
-f: Affiche des informations détaillées sur les processus.
-p: Affiche les informations sur un processus spécifique en fonction de son ID.
-u: Affiche les processus d’un utilisateur spécifique.
-x: Affiche les processus qui ne sont pas attachés à un terminal.

Exemples :

Afficher la liste de tous les processus:

ps aux

Afficher les processus appartenant à l’utilisateur « root »:

ps -u root

Afficher les informations détaillées sur le processus avec l’ID 1234:

ps -fp 1234

Terminer le processus avec l’ID 1234:

kill 1234

ping

Ping est une commande très utilisée pour tester la connectivité réseau entre deux machines.

Utilisations principales:

Vérifier si une machine est accessible:
Envoyer des requêtes « echo request » et attendre des réponses « echo reply » pour déterminer si une machine est accessible via le réseau.
Mesurer le temps de réponse d’un réseau:
Calculer le temps aller-retour (RTT) des paquets ICMP pour évaluer la latence du réseau.
Détecter les problèmes de connectivité:
Identifier les pertes de paquets et les sauts de route pour diagnostiquer les anomalies du réseau.

Syntaxe de base:

ping [options]

Options courantes:

-c: Définir le nombre de requêtes à envoyer.
-t: Envoyer des requêtes en continu jusqu’à l’interruption.
-i: Définir l’intervalle entre les requêtes en millisecondes.
-s: Définir la taille des paquets à envoyer.
-v: Afficher des informations détaillées sur les requêtes et les réponses.

Exemples :

Tester la connectivité à Google:

ping google.com

Envoyer 10 requêtes à l’adresse IP 192.168.1.100:

ping -c 10 192.168.1.100

Envoyer des requêtes en continu à l’adresse www.yahoo.com:

ping -t www.yahoo.com

pwd

Pwd est une commande simple mais utile en ligne de commande qui permet d’afficher le chemin d’accès du répertoire de travail actuel.

Utilisations principales:

Afficher le chemin d’accès du répertoire actuel:
C’est l’utilisation la plus courante de pwd.
Par exemple, si vous vous trouvez dans le répertoire « /home/utilisateur/Documents », la commande pwd affichera :

/home/utilisateur/Documents

Naviguer dans l’arborescence des répertoires:
Vous pouvez utiliser pwd pour vous repérer dans l’arborescence des répertoires et connaître votre position actuelle.
Par exemple, si vous vous trouvez dans le répertoire « /home/utilisateur/Documents » et que vous souhaitez vous rendre dans le répertoire « Téléchargements », vous pouvez utiliser la commande suivante :

cd Téléchargements

Utiliser le chemin d’accès dans d’autres commandes:
Vous pouvez utiliser le chemin d’accès affiché par pwd dans d’autres commandes, par exemple pour copier des fichiers ou lancer des programmes.
Par exemple, pour copier le fichier « fichier.txt » du répertoire actuel vers le répertoire « /home/utilisateur/Bureau », vous pouvez utiliser la commande suivante :

cp fichier.txt /home/utilisateur/Bureau

Syntaxe de base:

pwd

Options:

-L: Affiche le chemin d’accès absolu du répertoire actuel, en résolvant les liens symboliques.
-P: Affiche le chemin d’accès canonique du répertoire actuel, en suivant les liens symboliques.

Exemples :

Afficher le chemin d’accès absolu du répertoire actuel:

pwd -L

Afficher le chemin d’accès canonique du répertoire actuel:

pwd -P

passwd

Passwd est une commande utilisée pour modifier les mots de passe des utilisateurs sur les systèmes Unix et Linux.

Utilisations principales:

Modifier votre propre mot de passe:
C’est l’utilisation la plus courante de passwd.
La commande vous demandera votre ancien mot de passe, puis vous invitera à entrer deux fois votre nouveau mot de passe.
Modifier le mot de passe d’un autre utilisateur:
Si vous disposez des privilèges nécessaires (administrateur), vous pouvez modifier le mot de passe d’un autre utilisateur.
Vous devrez fournir le nom d’utilisateur et le nouveau mot de passe.
Définir des options de mot de passe:
Vous pouvez utiliser passwd pour définir des options de mot de passe, telles que la date d’expiration du mot de passe ou le nombre minimal de caractères.

Syntaxe de base:

passwd [options] [nom_utilisateur]

Options courantes:

-l: Verrouiller le compte utilisateur après un nombre incorrect de tentatives de connexion.
-u: Déverrouiller un compte utilisateur verrouillé.
-e: Définir la date d’expiration du mot de passe.
-f: Définir le nombre minimal de jours avant que le mot de passe puisse être modifié.
-n: Définir le nombre maximal de jours pendant lesquels le mot de passe est valide.

Exemples :

Modifier votre propre mot de passe:

passwd

Modifier le mot de passe de l’utilisateur « toto »:

passwd toto

Définir la date d’expiration du mot de passe de l’utilisateur « toto » pour le 1er janvier 2024:

passwd -e 2024-01-01 toto

pgrep

pgrep est une commande puissante et conviviale utilisée pour rechercher et identifier les processus en cours d’exécution sur un système Unix ou Linux en fonction de leur nom.

Utilisations principales:

Rechercher des processus par nom:
Vous pouvez rechercher tous les processus dont le nom correspond à une chaîne de caractères spécifiée.
Filtrer les résultats par ID utilisateur, groupe ou autres critères:
Vous pouvez affiner votre recherche en spécifiant des critères supplémentaires, tels que l’ID utilisateur, le groupe ou l’état du processus.
Obtenir l’ID de processus (PID) d’un processus:
Vous pouvez utiliser pgrep pour obtenir le PID d’un processus, qui peut ensuite être utilisé avec d’autres commandes pour manipuler le processus.

Syntaxe de base:

pgrep [options]

Options courantes:

-u: Filtrer par ID utilisateur.
-g: Filtrer par groupe.
-P: Filtrer par parenté de processus.
-f: Afficher l’ID du processus et le nom complet du processus.
-l: Afficher la ligne de commande complète du processus.
-t: Afficher uniquement l’ID du processus.

Exemples :

Rechercher tous les processus dont le nom contient « firefox »:

pgrep firefox

Afficher l’ID du processus et le nom complet du processus pour tous les processus appartenant à l’utilisateur « root »:

pgrep -u root -f

Obtenir le PID du processus « chromium »:

pgrep -t chromium

pidof

Pidof est une commande simple et pratique qui permet de rechercher et d’identifier les processus en cours d’exécution sur un système Unix ou Linux en fonction de leur nom.

Utilisations principales:

Rechercher des processus par nom:
C’est l’utilisation la plus courante de pidof.
Vous pouvez rechercher tous les processus dont le nom correspond à une chaîne de caractères spécifiée.
Obtenir l’ID de processus (PID) d’un processus:
Vous pouvez utiliser pidof pour obtenir le PID d’un processus, qui peut ensuite être utilisé avec d’autres commandes pour manipuler le processus.

Syntaxe de base:

pidof [nom_processus]

Exemple :

Rechercher tous les processus dont le nom contient « firefox »:

pidof firefox

Q

R

rm

rm est une commande très utilisée pour supprimer des fichiers et des répertoires sur les systèmes Unix et Linux.

Utilisations principales:

Supprimer un fichier:
C’est l’utilisation la plus courante de rm.
Par exemple, pour supprimer le fichier fichier.txt, vous pouvez utiliser la commande suivante :

rm fichier.txt

Supprimer plusieurs fichiers:
Vous pouvez utiliser des jokers pour supprimer plusieurs fichiers à la fois.
Par exemple, pour supprimer tous les fichiers dont le nom commence par fichier, vous pouvez utiliser la commande suivante :

rm fichier*

Supprimer un répertoire vide:
Vous pouvez utiliser l’option -d pour supprimer un répertoire vide.
Par exemple, pour supprimer le répertoire dossier, vous pouvez utiliser la commande suivante :

rm -d dossier

Supprimer un répertoire non vide:
Vous devez utiliser l’option -r pour supprimer un répertoire non vide.
Attention : cette commande supprimera tous les fichiers et sous-répertoires du répertoire spécifié.
Par exemple, pour supprimer le répertoire dossier et tout son contenu, vous pouvez utiliser la commande suivante :

rm -r dossier

rrmdir

rmdir est une commande simple mais utile pour supprimer des répertoires vides sur les systèmes Unix et Linux.

Utilisations principales:

Supprimer un répertoire vide:
C’est l’utilisation la plus courante de rmdir.
Par exemple, pour supprimer le répertoire dossier, vous pouvez utiliser la commande suivante :

rmdir dossier

Supprimer plusieurs répertoires vides:
Vous pouvez utiliser des jokers pour supprimer plusieurs répertoires vides à la fois.
Par exemple, pour supprimer tous les répertoires dont le nom commence par dossier, vous pouvez utiliser la commande suivante :

rmdir dossier*

 

La commande rmdir est souvent utilisée en conjonction avec la commande rm pour supprimer des fichiers et des répertoires.
Vous pouvez utiliser l’option -p pour supprimer un répertoire et ses répertoires parents s’ils sont vides après la suppression.
La commande rmdir est un outil essentiel pour la gestion des fichiers sur les systèmes Unix et Linux.

Conseils:

Utilisez l’option -v pour afficher des informations détaillées sur chaque suppression.
Faites attention lorsque vous utilisez l’option -p.

route

route est une commande puissante et flexible utilisée pour afficher et manipuler la table de routage du noyau sur les systèmes Unix et Linux.

Utilisations principales:

Afficher la table de routage:
C’est l’utilisation la plus courante de route.
La commande affichera une liste de toutes les routes connues du noyau, ainsi que des informations telles que la destination, le masque de sous-réseau, la passerelle et l’interface réseau.
Ajouter une route:
Vous pouvez utiliser route pour ajouter une nouvelle route à la table de routage.
Cela peut être utile pour configurer des routes statiques vers des réseaux qui ne sont pas automatiquement détectés par le noyau.
Supprimer une route:
Vous pouvez également utiliser route pour supprimer une route de la table de routage.
Cela peut être utile pour corriger des erreurs de configuration ou pour supprimer des routes qui ne sont plus nécessaires.
Modifier une route:
Vous pouvez modifier les propriétés d’une route existante, comme la passerelle ou l’interface réseau.

Syntaxe de base:

route [options] [commande] [destination] [masque] [passerelle] [interface]

Options courantes:

-n: Afficher la table de routage sous forme numérique.
-v: Afficher des informations détaillées sur chaque route.
-A: Ajouter une route à la table de routage.
-D: Supprimer une route de la table de routage.
-C: Modifier une route existante dans la table de routage.

Exemples :

Afficher la table de routage:

route

Ajouter une route statique vers le réseau 192.168.1.0/24 avec la passerelle 192.168.1.1:

route add 192.168.1.0 mask 255.255.255.0 192.168.1.1

Supprimer la route vers le réseau 192.168.1.0/24:

route del 192.168.1.0 mask 255.255.255.0

reboot

reboot est une commande puissante et simple utilisée pour redémarrer un système Unix ou Linux.

Utilisations principales:

Redémarrer le système immédiatement:
C’est l’utilisation la plus courante de reboot.
La commande enverra un signal au noyau pour qu’il redémarre le système.
Redémarrer le système après un délai:
Vous pouvez utiliser l’option -t pour spécifier un délai en secondes avant le redémarrage du système.
Redémarrer le système en mode de maintenance:
Vous pouvez utiliser l’option -m pour redémarrer le système en mode de maintenance.
Redémarrer le système et afficher un message aux utilisateurs:
Vous pouvez utiliser l’option -f pour afficher un message aux utilisateurs avant le redémarrage du système.

Syntaxe de base:

reboot [options]

Options courantes:

-t: Définir un délai en secondes avant le redémarrage du système.
-m: Redémarrer le système en mode de maintenance.
-f: Afficher un message aux utilisateurs avant le redémarrage du système.

Exemples :

Redémarrer le système immédiatement:

reboot

Redémarrer le système après un délai de 30 secondes:

reboot -t 30

Redémarrer le système en mode de maintenance:

reboot -m

Redémarrer le système et afficher un message aux utilisateurs:

reboot -f « Le système va redémarrer dans 5 minutes. »

resolvectl

resolvectl est une commande puissante et flexible utilisée pour afficher et manipuler le service de résolution de noms système systemd-resolved sur les systèmes Linux.

Utilisations principales:

Afficher l’état du service de résolution de noms:
C’est l’utilisation la plus courante de resolvectl.
La commande affichera des informations telles que le nom du serveur DNS actuel, les recherches DNS en cours et les domaines connus.
Modifier la configuration du service de résolution de noms:
Vous pouvez utiliser resolvectl pour modifier la configuration du service de résolution de noms, comme le nom du serveur DNS ou les options de recherche DNS.
Définir des domaines de recherche DNS:
Vous pouvez utiliser resolvectl pour définir des domaines de recherche DNS spécifiques pour votre système.
Gérer les fichiers de configuration DNS:
Vous pouvez utiliser resolvectl pour afficher, modifier et supprimer les fichiers de configuration DNS.

Syntaxe de base:

resolvectl [commande] [options]

Commandes courantes:

status: Afficher l’état du service de résolution de noms.
set-dns: Définir le nom du serveur DNS.
set-domain: Définir le domaine de recherche DNS.
flush-caches: Vider les caches DNS.
reload-config: Recharger la configuration DNS.

Options courantes:

-h: Afficher l’aide.
-v: Afficher des informations détaillées.
-f: Spécifier un fichier de configuration DNS.

Exemples :

Afficher l’état du service de résolution de noms:

resolvectl status

Définir le serveur DNS sur 8.8.8.8:

resolvectl set-dns 8.8.8.8

Ajouter le domaine « example.com » aux domaines de recherche DNS:

resolvectl set-domain example.com

Vider les caches DNS:

resolvectl flush-caches

S

SFTP

sftp est une commande simple et pratique pour transférer des fichiers vers et depuis un serveur distant via un protocole SSH sécurisé.

Utilisations principales:

Transférer des fichiers vers un serveur distant:
C’est l’utilisation la plus courante de sftp.
Vous pouvez télécharger des fichiers depuis votre ordinateur local vers le serveur distant.
Transférer des fichiers depuis un serveur distant:
Vous pouvez également télécharger des fichiers depuis le serveur distant vers votre ordinateur local.
Synchroniser des répertoires:
Vous pouvez utiliser sftp pour synchroniser des répertoires entre votre ordinateur local et le serveur distant.
Exécuter des commandes sur le serveur distant:
Vous pouvez utiliser sftp pour exécuter des commandes sur le serveur distant.

Syntaxe de base:

sftp [utilisateur@]serveur[:port]

Exemple d’utilisation:

Télécharger le fichier fichier.txt depuis le serveur distant mon-serveur.com vers le répertoire courant:

sftp toto@mon-serveur.com
get fichier.txt

Télécharger le fichier fichier.txt depuis le serveur distant mon-serveur.com vers le répertoire /home/utilisateur/telechargements:

sftp toto@mon-serveur.com
get fichier.txt /home/utilisateur/telechargements

SSH

ssh est une commande puissante et polyvalente pour établir une connexion sécurisée vers un serveur distant via le protocole SSH (Secure Shell).

Utilisations principales:

Se connecter à un serveur distant:
C’est l’utilisation la plus courante de ssh.
Vous pouvez vous connecter à un serveur distant pour exécuter des commandes, gérer des fichiers et administrer le système.
Exécuter des commandes sur un serveur distant:
Vous pouvez utiliser ssh pour exécuter des commandes sur le serveur distant comme si vous étiez connecté directement au serveur.
Transférer des fichiers vers et depuis un serveur distant:
Vous pouvez utiliser ssh pour transférer des fichiers vers et depuis le serveur distant de manière sécurisée.
Créer un tunnel SSH:
Vous pouvez utiliser ssh pour créer un tunnel SSH afin de rediriger le trafic réseau vers un autre serveur.

Syntaxe de base:

ssh [utilisateur@]serveur[:port]

Exemples :

Se connecter à l’utilisateur toto sur le serveur mon-serveur.com:

ssh toto@mon-serveur.com

Exécuter la commande ls sur le serveur mon-serveur.com:

ssh toto@mon-serveur.com ls

Conseils:

Utilisez l’option -v pour afficher des informations détaillées sur la connexion SSH.
Utilisez l’option -P pour spécifier un port SSH non standard.
Faites attention lorsque vous utilisez l’option -i pour spécifier un fichier de clé privée SSH.

sudo

sudo est une commande puissante et flexible qui permet aux utilisateurs d’exécuter des commandes avec les privilèges d’un autre utilisateur, généralement l’administrateur système (« root »).

Utilisations principales:

Exécuter des commandes en tant qu’administrateur:
C’est l’utilisation la plus courante de sudo.
Vous pouvez utiliser sudo pour exécuter des commandes qui nécessitent des privilèges d’administrateur, comme installer des logiciels ou modifier des fichiers système.
Gérer les droits d’accès des utilisateurs:
Vous pouvez utiliser sudo pour configurer les droits d’accès des utilisateurs et des groupes, ce qui permet de définir qui peut exécuter quelles commandes avec sudo.
Exécuter des scripts avec des privilèges élevés:
Vous pouvez utiliser sudo pour exécuter des scripts qui nécessitent des privilèges d’administrateur.

Syntaxe de base:

sudo [options] commande

Exemples :

Mettre à jour le système d’exploitation:

sudo apt update && sudo apt upgrade

Installer un logiciel:

sudo apt install nom_du_logiciel

Modifier un fichier système:

sudo nano /etc/fichier_systeme

shutdown

shutdown est une commande simple et puissante pour arrêter, redémarrer ou mettre en veille un ordinateur.

Utilisations principales:

Arrêter l’ordinateur:
C’est l’utilisation la plus courante de shutdown.
Vous pouvez utiliser shutdown pour éteindre votre ordinateur après un certain délai ou immédiatement.
Redémarrer l’ordinateur:
Vous pouvez également utiliser shutdown pour redémarrer votre ordinateur.
Mettre l’ordinateur en veille:
Vous pouvez utiliser shutdown pour mettre votre ordinateur en veille prolongée.

Syntaxe de base:

shutdown [options] [heure] [message]

Exemples :

Arrêter l’ordinateur après 30 minutes:

shutdown -h +30 « L’ordinateur va s’éteindre dans 30 minutes. »

Redémarrer l’ordinateur immédiatement:

shutdown -r now

Mettre l’ordinateur en veille prolongée:

shutdown -h -P now

Conseils:

Utilisez l’option -h pour afficher un message d’avertissement aux utilisateurs avant d’éteindre l’ordinateur.
Utilisez l’option -f avec prudence, car elle peut entraîner la perte de données non enregistrées.
Faites attention lorsque vous utilisez shutdown sur un serveur distant.

systemctl

systemctl est une commande puissante et flexible pour gérer les services et les unités systemd sur les systèmes Linux.

Utilisations principales:

Démarrer, arrêter et redémarrer des services:
C’est l’utilisation la plus courante de systemctl.
Vous pouvez utiliser systemctl pour contrôler l’état des services, comme les démarrer, les arrêter ou les redémarrer.
Activer et désactiver des services au démarrage:
Vous pouvez utiliser systemctl pour configurer les services qui se lancent automatiquement au démarrage du système.
Vérifier l’état des services:
Vous pouvez utiliser systemctl pour afficher l’état actuel des services, comme s’ils sont en cours d’exécution ou arrêtés.
Gérer les journaux des services:
Vous pouvez utiliser systemctl pour afficher et gérer les journaux des services.

Syntaxe de base:

systemctl [commande] [options] [unité]

Exemples :

Démarrer le service apache2:

systemctl start apache2.service

Arrêter le service ssh:

systemctl stop ssh.service

Redémarrer le service mariadb:

systemctl restart mariadb.service

Activer le service cups au démarrage:

systemctl enable cups.service

Désactiver le service bluetooth au démarrage:

systemctl disable bluetooth.service

Vérifier l’état du service nginx:

systemctl status nginx.service

Afficher les journaux du service syslog:

systemctl journalctl -u syslog.service

Conseils:

Utilisez l’option -l pour afficher la liste de tous les services disponibles.
Utilisez l’option -t pour afficher l’état des services sous forme de tableau.
Utilisez l’option -f pour filtrer les résultats de la commande.

ssh-copy-id

ssh-copy-id est une commande puissante et simple pour copier votre clé publique SSH sur un serveur distant, ce qui vous permet de vous connecter sans mot de passe.

Utilisations principales:

Copier votre clé publique SSH sur un serveur distant:
C’est l’utilisation la plus courante de ssh-copy-id.
Cela permet de simplifier la connexion au serveur en évitant de saisir un mot de passe à chaque fois.
Gérer les clés SSH autorisées sur un serveur distant:
Vous pouvez utiliser ssh-copy-id pour ajouter, supprimer et modifier les clés SSH autorisées sur un serveur distant.
Automatiser la connexion aux serveurs distants:
En utilisant ssh-copy-id, vous pouvez automatiser la connexion aux serveurs distants via des scripts ou des outils d’automatisation.

Syntaxe de base:

ssh-copy-id [options] utilisateur@serveur

Exemple :

Copier votre clé publique SSH sur le serveur mon-serveur.com pour l’utilisateur toto:

ssh-copy-id toto@mon-serveur.com

Conseils:

Utilisez l’option -v pour afficher des informations détaillées sur le processus de copie de la clé.
Faites attention lorsque vous utilisez ssh-copy-id sur un serveur non fiable.
Utilisez des clés SSH différentes pour différents serveurs.

ssh-keygen

ssh-keygen est une commande puissante et simple pour générer des paires de clés SSH (Secure Shell) utilisées pour l’authentification sécurisée sur les serveurs distants.

Utilisations principales:

Générer une paire de clés SSH:
C’est l’utilisation la plus courante de ssh-keygen.
La commande génère une clé publique et une clé privée qui vous permettent de vous connecter aux serveurs distants sans mot de passe.
Gérer les clés SSH:
Vous pouvez utiliser ssh-keygen pour afficher, modifier et supprimer les clés SSH stockées sur votre ordinateur.
Convertir les formats de clés SSH:
Vous pouvez utiliser ssh-keygen pour convertir les clés SSH entre différents formats.

Syntaxe de base:

ssh-keygen [options]

Exemples :

Générer une paire de clés SSH RSA 4096 bits par défaut dans le répertoire ~/.ssh:

ssh-keygen

Générer une clé SSH avec un nom spécifique:

ssh-keygen -f /home/utilisateur/.ssh/ma_cle_rsa

Convertir une clé SSH RSA en format OpenSSH:

ssh-keygen -p -f /home/utilisateur/.ssh/id_rsa

Supprimer une clé SSH:

ssh-keygen -R /home/utilisateur/.ssh/id_rsa

Conseils:

Utilisez l’option -b pour spécifier la longueur de la clé en bits (par exemple, 4096 est une longueur de clé recommandée).
Choisissez une phrase de passe forte pour protéger votre clé privée.
Conservez votre clé privée en lieu sûr.

 

ss

ss (pour « Socket Statistics ») est une commande puissante et flexible pour afficher des informations détaillées sur les sockets réseau et les connexions TCP et UDP établies sur un système Linux.

Utilisations principales:

Afficher les connexions réseau établies:
C’est l’utilisation la plus courante de ss.
Vous pouvez afficher les connexions TCP, UDP, et les sockets en écoute.
Filtrer les connexions par différents critères:
Vous pouvez filtrer les connexions par adresse IP, port, état (établi, en attente, etc.), et protocole.
Obtenir des informations détaillées sur les connexions:
Vous pouvez afficher l’identifiant du processus (PID) associé à la connexion, le nom du programme, et les statistiques de trafic.
Déboguer les problèmes de réseau:
Vous pouvez utiliser ss pour identifier les connexions problématiques et diagnostiquer les causes des pannes de réseau.

Syntaxe de base:

ss [options]

Exemples :

Afficher toutes les connexions TCP établies:

ss -t

Afficher les connexions UDP en écoute sur le port 80:

ss -u -l -p 80

Filtrer les connexions par adresse IP et afficher les statistiques de trafic:

ss -4 -n state established src 192.168.1.0/24 dst 8.8.8.8

Afficher les connexions du processus ssh:

ss -p $(pidof ssh)

Afficher les connexions établies et en écoute sur un port spécifique:

ss -t -l -p 80

Afficher les connexions du processus ss et ses enfants:

ss -p $(pidof ss) -o ppid,pid,command

Filtrer les connexions par état et afficher le nom du programme:

ss -t state established -o program

Conseils:

Utilisez l’option -a pour afficher toutes les connexions, y compris celles en écoute.
Utilisez l’option -n pour afficher les adresses IP et les ports en format numérique.
Utilisez l’option -o pour afficher des informations spécifiques sur les connexions.

T

tar

tar (pour « Tape ARchive ») est une commande puissante et flexible pour archiver et extraire des fichiers et des répertoires sur les systèmes Unix et Linux.

Utilisations principales:

Créer des archives de fichiers:
C’est l’utilisation la plus courante de tar.
Vous pouvez créer des archives compressées ou non compressées pour stocker et transporter des fichiers.
Extraire des fichiers d’une archive:
Vous pouvez extraire tous les fichiers d’une archive ou uniquement certains fichiers spécifiques.
Afficher le contenu d’une archive:
Vous pouvez afficher la liste des fichiers contenus dans une archive sans les extraire.
Modifier le contenu d’une archive:
Vous pouvez ajouter, supprimer et modifier des fichiers dans une archive existante.

Syntaxe de base:

tar [options] [fichier_archive] [fichiers/répertoires]

Exemples :

Créer une archive compressée du répertoire home/utilisateur:

tar -czf home-utilisateur.tar.gz /home/utilisateur

Extraire tous les fichiers de l’archive mon-archive.tar:

tar -xf mon-archive.tar

Afficher le contenu de l’archive fichiers.tar:

tar -tf fichiers.tar

Ajouter un fichier à l’archive mon-archive.tar:

tar -rf mon-archive.tar fichier_a_ajouter

Créer une archive de tous les fichiers sauf les fichiers temporaires:

tar -cf archive.tar –exclude=’*.tmp’ /home/utilisateur

Extraire uniquement les fichiers du répertoire bin de l’archive fichiers.tar:

tar -xf fichiers.tar bin/*

Afficher les fichiers de l’archive mon-archive.tar triés par date de modification:

tar -tf mon-archive.tar | sort -k 5

Conseils:

Utilisez l’option -c pour créer une archive.
Utilisez l’option -x pour extraire des fichiers d’une archive.
Utilisez l’option -f pour spécifier le nom du fichier archive.
Utilisez l’option -z pour compresser l’archive avec gzip.
Utilisez l’option -j pour compresser l’archive avec bzip2.

 

top

top est une commande puissante et simple pour afficher en temps réel les informations sur l’activité du système et les processus en cours d’exécution sur les systèmes Unix et Linux.

Utilisations principales:

Surveiller l’utilisation du processeur et de la mémoire:
C’est l’utilisation la plus courante de top.
Vous pouvez afficher la charge du processeur, la mémoire utilisée et libre, ainsi que l’utilisation de la mémoire par les différents processus.
Identifier les processus gourmands en ressources:
Vous pouvez identifier les processus qui utilisent le plus de CPU, de mémoire, de disque ou d’autres ressources.
Terminer les processus problématiques:
Vous pouvez tuer les processus qui causent des problèmes de performance ou de stabilité.
Surveiller les performances du système:
Vous pouvez suivre l’évolution des performances du système en temps réel.

Syntaxe de base:

top [options]

Exemples :

Afficher les informations sur l’activité du système en temps réel:

top

Trier les processus par utilisation du CPU:

top -o %CPU

Afficher les 10 premiers processus gourmands en mémoire:

top -n 10 -o %MEM

Terminer le processus avec l’ID 1234:

top -p 1234 -k 9

Afficher les informations sur les threads des processus:

top -H

Afficher les processus qui utilisent le plus d’E/S disque:

top -o %DISK

Filtrer les processus par nom:

top -p « nom_du_processus »

Conseils:

Utilisez l’option -u pour afficher les informations sur les processus d’un utilisateur spécifique.
Utilisez l’option -p pour afficher les informations sur un processus spécifique.
Utilisez l’option -o pour afficher des informations spécifiques sur les processus.

 

traceroute

traceroute (ou tracert sous Windows) est une commande puissante et simple pour suivre le chemin emprunté par un paquet IP pour atteindre une destination donnée sur un réseau IP.

Utilisations principales:

Déterminer le chemin emprunté par un paquet IP:
C’est l’utilisation la plus courante de traceroute.
Vous pouvez identifier les routeurs et les liens traversés par le paquet.
Diagnostiquer les problèmes de connectivité réseau:
Vous pouvez utiliser traceroute pour identifier les points de défaillance sur un réseau.
Mesurer la latence entre deux points du réseau:
Vous pouvez afficher le temps que met un paquet pour atteindre sa destination.

Syntaxe de base:

traceroute [options] destination

Exemples :

Suivre le chemin vers le site web Google:

traceroute google.com

Afficher les adresses IP des routeurs intermédiaires:

traceroute -n google.com

Limiter le nombre de sauts à 10:

traceroute -m 10 google.com

Tracer le chemin vers un serveur distant en utilisant un port spécifique:

traceroute -p 80 google.com

Tracer le chemin vers une adresse IPv6:

traceroute -6 google.com

Effectuer un traceroute avec un intervalle de temps plus long:

traceroute -w 5 google.com

Conseils:

Utilisez l’option -i pour spécifier l’interface réseau à utiliser.
Utilisez l’option -p pour spécifier le port de destination.
Utilisez l’option -t pour tracer un chemin vers une adresse IP spécifique.

touch

touch est une commande simple et puissante pour modifier les horodatages (timestamps) des fichiers et créer des fichiers vides sur les systèmes Unix et Linux.

Utilisations principales:

Modifier l’horodatage d’un fichier:
C’est l’utilisation la plus courante de touch.
Vous pouvez modifier l’heure d’accès, l’heure de modification et l’heure de changement d’un fichier.
Créer un fichier vide:
Si le fichier n’existe pas, touch le crée avec une taille de 0 octet.
Mettre à jour l’horodatage d’un fichier sans modifier son contenu:
Cela peut être utile pour forcer la recompilation d’un programme ou le rechargement d’une page web.

Syntaxe de base:

touch [options] fichier1 fichier2 …

Exemples :

Mettre à jour l’horodatage du fichier mon-fichier.txt:

touch mon-fichier.txt

Créer un fichier vide nommé nouveau-fichier.txt:

touch nouveau-fichier.txt

Modifier l’heure de modification du fichier fichier.txt à 10h du matin:

touch -t 10:00 fichier.txt

Modifier l’horodatage de tous les fichiers d’un répertoire:

touch -r 2023-11-14 *

Créer un fichier vide avec des permissions spécifiques:

touch -m 644 nouveau-fichier.txt

Afficher les informations d’horodatage d’un fichier:

stat fichier.txt

Conseils:

Utilisez l’option -m pour modifier l’heure d’accès d’un fichier.
Utilisez l’option -r pour modifier l’heure de changement d’un fichier.
Utilisez l’option -d pour spécifier une date et une heure précises.

U

unzip

unzip est une commande puissante et simple pour décompresser les fichiers compressés au format ZIP sur les systèmes Unix et Linux.

Utilisations principales:

Décompresser un fichier ZIP:
C’est l’utilisation la plus courante de unzip.
Vous pouvez décompresser un fichier ZIP unique ou plusieurs fichiers ZIP en même temps.
Afficher le contenu d’un fichier ZIP sans le décompresser:
Vous pouvez afficher la liste des fichiers contenus dans un fichier ZIP sans les extraire.
Extraire des fichiers spécifiques d’un fichier ZIP:
Vous pouvez choisir d’extraire uniquement certains fichiers d’un fichier ZIP.
Décompresser un fichier ZIP protégé par mot de passe:
Vous pouvez utiliser unzip pour décompresser des fichiers ZIP protégés par un mot de passe.

Syntaxe de base:

unzip [options] fichier_zip.zip

Exemples :

Décompresser le fichier mon-fichier.zip dans le répertoire courant:

unzip mon-fichier.zip

Afficher le contenu du fichier fichiers.zip:

unzip -l fichiers.zip

Extraire uniquement le fichier fichier.txt du fichier archive.zip:

unzip -x fichier.txt archive.zip

Décompresser le fichier fichier-protégé.zip avec le mot de passe « secret »:

unzip -P secret fichier-protégé.zip

Décompresser tous les fichiers ZIP d’un répertoire:

unzip -a *.zip

Extraire uniquement les fichiers dont le nom commence par « fichier »:

unzip -x ‘!fichier*’ fichier.zip

Décompresser un fichier ZIP et afficher les fichiers extraits:

unzip -l | xargs -n 1 unzip

Conseils:

Utilisez l’option -d pour spécifier le répertoire dans lequel les fichiers seront extraits.
Utilisez l’option -o pour écraser les fichiers existants portant le même nom.
Utilisez l’option -q pour supprimer les messages d’information.

useradd

useradd est une commande puissante et simple pour créer des comptes d’utilisateurs sur les systèmes Unix et Linux.

Utilisations principales:

Créer un nouveau compte utilisateur:
C’est l’utilisation la plus courante de useradd.
Vous pouvez spécifier le nom d’utilisateur, l’identifiant utilisateur (UID), le groupe principal, le répertoire personnel et d’autres options.
Ajouter un utilisateur à un groupe existant:
Vous pouvez utiliser useradd pour ajouter un utilisateur à un ou plusieurs groupes.
Définir le mot de passe d’un utilisateur:
Vous pouvez utiliser useradd pour définir le mot de passe initial d’un utilisateur.
Créer un compte utilisateur avec des options avancées:
Vous pouvez utiliser useradd pour spécifier des options avancées telles que la date d’expiration du compte, le shell par défaut et les limites de ressources.

Syntaxe de base:

useradd [options] nom_utilisateur

Exemples :

Créer un nouvel utilisateur nommé « toto »:

useradd toto

Ajouter l’utilisateur « toto » au groupe « sudo »:

useradd -G sudo toto

Définir le mot de passe de l’utilisateur « toto » à « azerty »:

useradd -p azerty toto

Créer un compte utilisateur avec une date d’expiration du 1er janvier 2024:

useradd -e 2024-01-01 toto

Créer un compte utilisateur avec un UID non standard:

useradd -u 1000 toto

Créer un compte utilisateur sans répertoire personnel:

useradd -m 0 toto

Créer un compte utilisateur avec un shell personnalisé:

useradd -s /bin/zsh toto

Conseils:

Utilisez l’option -u pour spécifier l’identifiant utilisateur (UID) de l’utilisateur.
Utilisez l’option -g pour spécifier le groupe principal de l’utilisateur.
Utilisez l’option -s pour spécifier le shell par défaut de l’utilisateur.

V

vi

vi est un éditeur de texte en mode ligne de commande puissant et largement utilisé sur les systèmes Unix et Linux. Il est connu pour sa courbe d’apprentissage abrupte mais sa grande efficacité une fois maîtrisé.

Utilisations principales:

Modifier des fichiers texte:
C’est l’utilisation la plus courante de vi.
Vous pouvez ouvrir, modifier et enregistrer des fichiers texte de n’importe quelle taille.
Effectuer des recherches et des remplacements dans des fichiers texte:
Vous pouvez utiliser vi pour rechercher et remplacer des mots, des phrases ou des expressions régulières dans des fichiers texte.
Naviguer dans les fichiers texte volumineux:
Vous pouvez utiliser les commandes de navigation de vi pour vous déplacer rapidement dans les fichiers texte volumineux.
Exécuter des commandes Unix à partir de l’éditeur:
Vous pouvez utiliser vi pour exécuter des commandes Unix sans quitter l’éditeur.

Modes de fonctionnement:

Mode commande:
C’est le mode par défaut de vi.
Vous pouvez utiliser les touches de direction et les raccourcis clavier pour naviguer dans le fichier et entrer des commandes.
Mode insertion:
Ce mode vous permet d’insérer du texte dans le fichier.
Vous pouvez basculer en mode insertion en appuyant sur la touche i.

Commandes de base:

i: Insérer du texte.
Esc: Quitter le mode insertion et revenir en mode commande.
:wq: Enregistrer et quitter l’éditeur.
:q!: Quitter l’éditeur sans enregistrer les modifications.
dd: Supprimer la ligne courante.
u: Annuler la dernière modification.
./: Rechercher la prochaine occurrence d’un mot ou d’une expression.
n: Passer à l’occurrence suivante de la recherche.

Conseils:

Apprenez les commandes de base de vi avant de l’utiliser pour modifier des fichiers importants.
Utilisez le mode insertion pour insérer du texte et le mode commande pour naviguer dans le fichier et entrer des commandes.
Utilisez les raccourcis clavier pour gagner du temps.

W

wget

wget est un outil puissant et simple pour télécharger des fichiers depuis Internet vers votre ordinateur.

Utilisations principales:

Télécharger des fichiers depuis des serveurs web:
C’est l’utilisation la plus courante de wget.
Vous pouvez télécharger des fichiers de tout type, tels que des pages web, des images, des logiciels et des documents.
Reprendre des téléchargements interrompus:
wget peut reprendre automatiquement les téléchargements interrompus, par exemple en cas de perte de connexion internet.
Téléchargement de fichiers volumineux en arrière-plan:
Vous pouvez lancer wget en arrière-plan et continuer à utiliser votre ordinateur pendant le téléchargement.
Téléchargement de fichiers depuis des sites web protégés par un proxy:
Vous pouvez configurer wget pour utiliser un proxy HTTP pour télécharger des fichiers depuis des sites web qui ne sont pas accessibles directement.

Syntaxe de base:

wget [options] URL

Exemples :

Télécharger le fichier index.html depuis le site web www.google.com:

wget https://www.google.com/index.html

Reprendre le téléchargement du fichier fichier-volumineux.zip:

wget -c https://www.exemple.com/fichier-volumineux.zip

Télécharger le fichier image.jpg et l’enregistrer sous le nom mon-image.jpg:

wget -O mon-image.jpg https://www.exemple.com/image.jpg

Afficher la progression du téléchargement:

wget -v https://www.exemple.com/fichier.zip

Télécharger un fichier avec un nom d’utilisateur et un mot de passe:

wget –user=utilisateur –password=motdepasse https://www.exemple.com/fichier.zip

Définir un délai d’expiration pour le téléchargement:

wget –timeout=10 https://www.exemple.com/fichier.zip

Forcer le téléchargement d’un fichier même s’il existe déjà:

wget -nc https://www.exemple.com/fichier.zip

Conseils:

Utilisez l’option -q pour télécharger un fichier en mode silencieux.
Utilisez l’option -o pour enregistrer la sortie de wget dans un fichier.
Utilisez l’option -a pour ajouter un fichier à la liste des téléchargements à effectuer.

watch

watch est une commande puissante et simple pour exécuter une commande périodiquement et afficher son résultat en temps réel sur la console.

Utilisations principales:

Surveiller l’évolution d’un système:
Vous pouvez utiliser watch pour surveiller l’utilisation du processeur, la mémoire vive, l’espace disque, la charge du système et d’autres statistiques système.
Suivre la progression d’une tâche:
Vous pouvez utiliser watch pour suivre la progression d’une tâche longue, comme une compilation de code ou un téléchargement de fichier.
Détecter les erreurs et les problèmes:
Vous pouvez utiliser watch pour détecter les erreurs et les problèmes qui surviennent sur votre système.

Syntaxe de base:

watch [options] commande

Exemples :

Surveiller l’utilisation du processeur:

watch top -d 1

Suivre la progression d’un téléchargement:

watch wget -q https://www.exemple.com/fichier.zip

Afficher la date et l’heure toutes les 5 secondes:

watch -n 5 date

Exécuter une commande et afficher son résultat dans une fenêtre séparée:

watch -x sh -c « top -d 1 »

Afficher uniquement les lignes qui ont changé depuis la dernière exécution de la commande:

watch -d tail -f /var/log/syslog

Exécuter une commande en boucle jusqu’à ce qu’elle se termine sans erreur:

watch -n 1 until ping -c 1 google.com; do sleep 1; done

Conseils:

Utilisez l’option -c pour limiter le nombre d’exécutions de la commande.
Utilisez l’option -t pour afficher l’heure d’exécution de la commande.
Utilisez l’option -v pour afficher des informations détaillées sur l’exécution de la commande.

 

X

Y

yum

yum est un outil de gestion de paquets puissant et largement utilisé sur les distributions Linux basées sur RPM, telles que Red Hat Enterprise Linux, CentOS et Fedora. Il permet d’installer, de mettre à jour et de supprimer des logiciels de manière simple et efficace.

Utilisations principales:

Installer des logiciels:
C’est l’utilisation la plus courante de yum.
Vous pouvez installer des logiciels à partir de paquets RPM disponibles dans des dépôts en ligne.
Mettre à jour des logiciels:
yum peut automatiquement mettre à jour les logiciels installés sur votre système avec les dernières versions disponibles.
Supprimer des logiciels:
Vous pouvez utiliser yum pour supprimer des logiciels que vous n’utilisez plus.
Gérer les dépendances:
yum s’occupe automatiquement de gérer les dépendances entre les logiciels, ce qui vous simplifie la tâche.

Syntaxe de base:

yum [options] commande paquet(s)

Exemples :

Installer le package httpd (serveur web Apache):

yum install httpd

Mettre à jour tous les logiciels installés:

yum update

Supprimer le package vim (éditeur de texte):

yum remove vim

Rechercher des informations sur le package nmap (scanner de ports):

yum info nmap

Installer un package à partir d’un dépôt non officiel:

yum install –enablerepo=epel http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/n/nmap-7.91-1.el7.x86_64.rpm

Mettre à jour un package à une version spécifique:

yum update –installonly=nmap-7.91

Installer un package avec ses dépendances de développement:

yum install -y httpd-devel

Conseils:

Utilisez l’option -q pour afficher uniquement les informations de résumé.
Utilisez l’option -v pour afficher des informations détaillées sur les opérations effectuées.
Utilisez l’option -e pour exclure certains paquets de la mise à jour.

 

Z

ZIP

zip est un outil puissant et simple pour compresser des fichiers et les archiver dans un format ZIP.

Utilisations principales:

Compresser des fichiers:
C’est l’utilisation la plus courante de zip.
Vous pouvez compresser des fichiers de tout type, tels que des pages web, des images, des logiciels et des documents.
Réduire la taille des fichiers pour les envoyer par email ou les télécharger plus rapidement.
Créer des archives de fichiers pour les sauvegarder ou les partager.

Syntaxe de base:

zip [options] archive.zip fichier(s)

Exemples :

Compresser un fichier:

zip fichier.zip fichier.txt

Compresser un dossier:

zip -r archive.zip dossier

Compresser plusieurs fichiers:

zip fichier1.zip fichier1.txt fichier2.txt fichier3.txt

Ajouter un mot de passe à l’archive:

zip -e archive.zip fichier.txt

Afficher le contenu d’une archive sans la décompresser:

zip -l archive.zip

Exclure certains fichiers d’une archive:

zip -x fichier1.txt fichier2.txt archive.zip *

Compresser des fichiers avec un nom spécifique:

zip -i ‘*.txt’ archive.zip

Créer une archive auto-extractible:

zip -x *.exe archive.zip && sh archive.zip

Conseils:

Utilisez l’option -r pour compresser un dossier complet.
Utilisez l’option -e pour protéger vos archives par un mot de passe.
Utilisez l’option -l pour voir le contenu d’une archive sans la décompresser.