Commandes Utiles
Quelques commandes utiles sous Linux
Voici une liste de commandes courantes utilisées dans l'administration Linux. Chaque commande est accompagnée de ses options les plus fréquemment utilisées et d'explications détaillées.
1. Commandes de base pour la navigation dans le système de fichiers
pwd : Affiche le chemin complet du répertoire courant (Print Working Directory).
ls : Liste les fichiers et dossiers dans le répertoire courant.
ls -t : Trie les fichiers par date de modification, du plus récent au plus ancien.
ls -S : Trie les fichiers par taille, du plus grand au plus petit.
ls -l : Affiche les détails de chaque fichier (permissions, propriétaire, taille, date).
ls -R : Affiche les fichiers dans les sous-répertoires de manière récursive.
Récursif : C'est à dire non seulement les fichiers et répertoires dans le répertoire courant, mais aussi tout le contenu des sous-répertoires, et ainsi de suite.
ls -a : Montre également les fichiers cachés (les fichiers dont le nom commence par un point).
ls -h : Affiche les tailles des fichiers de manière lisible (Ko, Mo, Go).
Les différentes options peuvent êtres associées. Par exemple ls -alh
Exemple de sortie :
Détails de la sortie :
drwxr-xr-x
: Représente les permissions. Le premier caractèred
indique qu'il s'agit d'un répertoire. Les autres caractères montrent les permissions pour le propriétaire, le groupe et les autres utilisateurs.d
: Répertoirerwx
: Permissions du propriétaire (lecture, écriture, exécution)r-x
: Permissions du groupe (lecture, pas d'écriture, exécution)r-x
: Permissions des autres utilisateurs (lecture, pas d'écriture, exécution)
3
: Nombre de liens (ou sous-répertoires) dans le répertoire.user
: Nom de l'utilisateur propriétaire du fichier.group
: Nom du groupe associé au fichier.4.0K
,1.5M
,200K
,512
: Tailles des fichiers en format lisible.Oct 24 10:30
: Date et heure de la dernière modification..
et..
:.
représente le répertoire courant, tandis que..
représente le répertoire parent.file1.txt
,file2.log
,.hidden_file
: Noms des fichiers et répertoires listés. Notez que.hidden_file
est un fichier caché en raison du point (.
) au début de son nom.
Cette commande est très utile pour avoir un aperçu détaillé des fichiers dans un répertoire, y compris les fichiers cachés et les tailles facilement compréhensibles.
cd [chemin] : Change le répertoire courant vers celui spécifié.
Exemple : Change de répertoire vers /home/utilisateur.
Astuce : cd .. te fait remonter d’un répertoire.
cp [source] [destination] : Copie des fichiers ou des dossiers.
Exemple : Copie fichier1.txt vers fichier2.txt.
cp -r : Copie un dossier récursivement (avec son contenu).
mv [source] [destination] : Déplace ou renomme des fichiers ou des dossiers.
Exemple : Déplace un fichier.
Pour renommer un fichier : mv ancien_nom.txt nouveau_nom.txt.
rm [fichier] : Supprime des fichiers.
Exemple : Supprime le fichier spécifié.
rm -r : Supprime un dossier et son contenu récursivement.
Attention : Cette action est irréversible.
2. Commandes pour la gestion des fichiers
cat [fichier] : Affiche le contenu d'un fichier dans le terminal.
touch [fichier] : Crée un fichier vide ou modifie la date de dernier accès du fichier.
mkdir [nom_dossier] : Crée un nouveau répertoire.
mkdir -p [chemin] : Crée un répertoire ainsi que tous les sous-répertoires nécessaires dans le chemin spécifié.
Exemple : Crée un répertoire et tous les sous-répertoires nécessaires.
Option -p
: Si un ou plusieurs des répertoires du chemin n'existent pas, cette option les crée également.
rmdir [nom_dossier] : Supprime un répertoire vide.
3. Commandes pour la gestion des droits
3.1 chmod
chmod
chmod [permissions] [fichier] : Change les permissions d’un fichier ou dossier.
Chmod ( change mode ) peut être utilisé de deux manières : symbolique ou numérique.
Mode numérique
Il Utilise des chiffres pour représenter les permissions.
4
: lecture (r
)2
: écriture (w
)1
: exécution (x
)
Les permissions sont additionnées pour chaque type d'utilisateur :
Propriétaire : premier chiffre
Groupe : deuxième chiffre
Autres : troisième chiffre
Exemple : Change les permissions d'un fichier.
Explication :
= lecture (4) + écriture (2) + exécution (1),
= lecture (4) + exécution (1).
Mode symbolique
Utilise des lettres pour représenter les utilisateurs et les permissions.
u
: utilisateur (propriétaire)g
: groupeo
: autresa
: tous (utilisateur, groupe et autres)r
: lecturew
: écriturex
: exécution
Exemple
3.2 chown
chown
chown [utilisateur]:[groupe] [fichier] : Change le propriétaire d’un fichier ou dossier.
Exemple : Change le propriétaire d'un fichier.
Exemple : Change le propriétaire et le groupe d'un fichier.
L'option -R
avec la commande chown
signifie "récursif". Elle permet de changer le propriétaire et/ou le groupe d'un fichier ou d'un répertoire ainsi que de tous les fichiers et sous-répertoires qu'il contient.
Syntaxe
Exemple d'utilisation
Changer le propriétaire récursivement : Supposons que vous ayez un répertoire appelé mon_dossier
qui contient plusieurs fichiers et sous-répertoires. Pour changer le propriétaire de mon_dossier
et de tout son contenu à imad
, vous pouvez utiliser la commande suivante :
Changer le propriétaire et le groupe récursivement : Si vous souhaitez également changer le groupe en même temps, par exemple, à developpeurs
,vous pouvez exécuter :
4. Commandes de gestion des processus
ps : Affiche les processus en cours.
top : Affiche en temps réel les processus actifs, ainsi que leur utilisation des ressources.
kill [PID] : Termine un processus spécifié par son PID (Process ID).
Exemple :
pour terminer le processus ayant le PID 1234.
Pour forcer l'arrêt :
5. Commandes réseau
nc [adresse] [port] : nc ou Netcat ouvre une connexion vers un hôte à une adresse IP ou un nom de domaine et un port spécifiés.
Cette commande peut également être utilisée pour écouter un port sur votre machine :
ip route show : Affiche la table de routage actuelle du système.
ip route add default via [adresse_gw] : Définit une passerelle par défaut pour le routage du trafic sortant.
Pour supprimer une passerelle par défaut existante, utilisez :
ping [adresse] : Vérifie la connectivité réseau vers un hôte en envoyant des paquets ICMP.
ip a : Affiche les interfaces réseau et leurs configurations ( adresse IP, masque, etc,)
ss : ss est le nouveau netstat qui est dépriécié sur certaines distribs linux. Il Affiche des informations sur les sockets et les connexions réseau.
Cette commande liste toutes les connexions TCP et UDP en cours, ainsi que les ports d'écoute.
traceroute [domaine] : Affiche le chemin que prennent les paquets pour atteindre une destination.
nslookup [domaine] : Interroge un serveur DNS pour obtenir l’adresse IP d’un domaine.
6. Manipulation des fichiers compressés
tar -czvf archive.tar.gz /chemin/dossier : Compresse un dossier en une archive .tar.gz.
-c : Créer une archive.
-z : Compresser avec gzip.
-v : Mode verbeux (affiche les fichiers traités).
-f : Nom du fichier archive.
tar -xzvf archive.tar.gz : Décompresse une archive .tar.gz.
Décompression avec
unzip
:unzip [archive.zip] : Permet d'extraire le contenu d'un fichier ZIP.
Cette commande va décompresser le fichier
archive.zip
dans le répertoire courant.Pour extraire vers un répertoire spécifique, on peut utiliser l'option -d :
Compression avec
zip
:zip [archive.zip] [fichiers] : Crée un fichier ZIP à partir de fichiers ou de répertoires spécifiés.
Cette commande va créer un fichier ZIP nommé
archive.zip
contenantfichier1.txt
etfichier2.txt
.Pour zipper un dossier entier, on utilise l'option -r :
7. Utilisation de su
et sudo
su
et sudo
su [utilisateur] : Permet de se connecter en tant qu’autre utilisateur (par défaut root). Il demande le mot de passe de l'utilisateur cible.
Exemple :
pour passer à l'utilisateur spécifié avec son environnement.
sudo [commande] : Exécute une commande avec les privilèges d’un autre utilisateur, généralement root, sans changer de session. Il demande le mot de passe de l'utilisateur qui exécute la commande.
Exemple :
pour mettre à jour la liste des paquets en tant que super utilisateur.
8. Commande pour gestion des disques
La gestion des disques permet de surveiller l'espace disque, visualiser les partitions, et diagnostiquer les problèmes de stockage. Ci-dessous, des commandes utiles avec des exemples pratiques pour mieux comprendre leur utilité.
1. Utilisation de du
du
du -h
But : Afficher la taille de tous les dossiers et sous-dossiers dans le répertoire courant.
Par exemple, dans un dossier contenant des dossiers imbriqués :
En utilisant du -h
dans ce dossier, vous verrez la taille de chaque sous-dossier, y compris ceux imbriqués :
Résumé : du -h
montre la taille de chaque dossier, sous-dossier, et fichier jusqu'à la fin de l’arborescence.
du -h --max-depth=1
But : Afficher la taille de chaque dossier de premier niveau uniquement dans le répertoire courant, sans aller plus profondément.
Avec la même structure de dossier, si vous utilisez du -h --max-depth=1
, vous verrez uniquement la taille des dossiers de premier niveau :
Résumé : du -h --max-depth=1
affiche la taille des dossiers de premier niveau uniquement, sans parcourir les sous-dossiers. Idéal pour un aperçu rapide des dossiers principaux.
du -sh :
But : Afficher la taille totale d’un répertoire, sans détails sur les sous-dossiers ou fichiers individuels. L’option -s
(summary) résume la taille totale, et -h
rend l'affichage lisible avec des unités (Ko, Mo, Go).
Exemple : Si vous êtes dans le dossier /home/user/Downloads
et exécutez du -sh
, vous obtiendrez la taille totale utilisée par le contenu de Downloads
sans détails sur chaque sous-dossier :
Résumé : du -sh
est utile pour une vérification rapide de la taille globale d’un dossier sans entrer dans les détails. Cela permet de visualiser la place occupée par le dossier en entier.
2. Utilisation de df
df
df -h
But : Afficher l'espace disque utilisé et disponible pour chaque système de fichiers, avec des unités lisibles (Go, Mo).
3. Utilisation de lsblk
lsblk
lsblk
But : Afficher une arborescence des périphériques de stockage, leurs partitions, et points de montage.
4. Utilisation de mount
et umount
mount
et umount
mount
But : Afficher les systèmes de fichiers actuellement montés ou monter un périphérique sur un répertoire spécifique. Utilisez mount
suivi du périphérique et du point de montage pour monter un disque.
umount
But : Démonter un périphérique, le rendant inaccessible depuis le système.
5. Utilisation de blkid
blkid
But : La commande blkid
permet d'identifier les périphériques de stockage en affichant leurs informations, comme le type de système de fichiers et l'UUID (Universally Unique Identifier). L’UUID est un identifiant unique assigné à chaque partition de disque, permettant de référencer un périphérique indépendamment de son nom de fichier (par exemple, /dev/sda1
).
Explication : Chaque périphérique listé montre plusieurs attributs :
UUID : Un identifiant unique pour chaque partition. Par exemple,
e6b05e9c-55a4-4a78-8b4c-1e25a8a3f9c4
. Utiliser l’UUID au lieu de noms de périphériques (comme/dev/sda1
) est particulièrement utile dans les fichiers de configuration (comme/etc/fstab
), car cet identifiant reste constant même si le nom du périphérique change.TYPE : Type de système de fichiers de la partition, ici
ext4
.PARTUUID : Un autre identifiant unique, généralement utilisé pour les partitions sur des tables de partition GPT.
Résumé : blkid
est essentiel pour identifier les périphériques de stockage et leurs systèmes de fichiers, surtout lors de la configuration de montages permanents avec des UUID pour garantir une compatibilité entre redémarrages.
Fichier /etc/fstab
But : Le fichier /etc/fstab
est utilisé pour définir les systèmes de fichiers à monter automatiquement au démarrage, avec leurs options de montage. Chaque ligne dans fstab
correspond à un périphérique ou une partition à monter.
Un exemple d’entrée dans /etc/fstab
:
Explication des colonnes :
Périphérique : Généralement spécifié avec l’UUID du périphérique, pour garantir un montage stable même si le nom du périphérique (comme
/dev/sda1
) change. Ici,UUID=e6b05e9c-55a4-4a78-8b4c-1e25a8a3f9c4
.Point de montage : Le répertoire où le système de fichiers sera monté. Dans cet exemple,
/mnt/data
.Type : Le type de système de fichiers. Par exemple,
ext4
pour Linux.Options de montage : Ici
defaults
(lecture/écriture, auto, etc.), mais plusieurs options sont possibles, commero
pour lecture seule.Dump : Habituellement 0, il indique si le système de fichiers doit être sauvegardé par la commande
dump
.Pass : Contrôle l’ordre de vérification des disques au démarrage.
0
signifie sans vérification,1
pour la racine, et2
pour les autres disques.
Résumé : /etc/fstab
est un fichier clé pour la gestion automatique des montages des systèmes de fichiers. En spécifiant les UUID et les options adaptées, il garantit que les partitions sont toujours montées correctement au démarrage, simplifiant la gestion des disques.
9. Téléchargement et Interaction Web avec curl
et wget
curl
et wget
Les commandes curl
et wget
permettent de télécharger des fichiers, d’interagir avec des serveurs web et d’effectuer des requêtes HTTP, mais elles sont adaptées à des usages différents. curl
est particulièrement polyvalent, prenant en charge de nombreuses méthodes HTTP (GET, POST, PUT, DELETE, etc.) pour interagir de façon dynamique avec des API ou des services web. En revanche, wget
est optimisé pour le téléchargement fiable de fichiers, y compris la récupération de sites entiers.
1. curl
curl
curl
est un outil polyvalent pour transférer des données via de nombreux protocoles (HTTP, FTP, etc.), souvent utilisé pour télécharger des fichiers ou interagir avec des APIs.
Options principales de curl
:
-O
: Télécharge un fichier et le sauvegarde avec son nom d'origine (sans modification).-o [nom]
: Télécharge un fichier et le renomme selon le nom spécifié.-s
: "Silent mode" - Ne montre pas la barre de progression ni les messages de téléchargement. Idéal dans des scripts où l’on souhaite éviter les sorties visibles.-S
: Affiche les messages d'erreur même en mode silencieux (utilisé avec-s
).-L
: Suit les redirections HTTP. Souvent nécessaire lorsque l'URL redirige vers un lien final (utile pour les sites avec des redirections intermédiaires).-I
: Effectue une requête HTTP HEAD pour afficher uniquement les en-têtes HTTP, sans télécharger le contenu. Pratique pour vérifier la disponibilité d’un lien.-sSL
: Combine plusieurs options : mode silencieux, suivi des redirections et affichage des erreurs en cas de problème. Très utilisé dans les scripts pour éviter les interruptions inattendues.
Exemples de commandes curl
:
Explication : Télécharge fichier.txt
dans le répertoire courant en conservant son nom d'origine.
Explication : Télécharge fichier.txt
et le renomme en monfichier.txt
.
Explication : Affiche les en-têtes HTTP du site pour vérifier sa disponibilité ou d'autres informations comme la type de serveur web ( apche, nginx ou autres ).
Exemple de sortie de curl -I
2. wget
wget
wget
est conçu pour des téléchargements robustes, avec la possibilité de reprendre un téléchargement interrompu. Il est idéal pour des téléchargements en masse et récursifs.
Options principales de wget
:
-O [nom]
: Télécharge un fichier et le renomme selon le nom spécifié, remplaçant l'option par défaut qui utilise le nom original.-O [nom]
: Télécharge un fichier et le renomme selon le nom spécifié, remplaçant l'option par défaut qui utilise le nom original.-c
: Reprend le téléchargement d'un fichier si l’opération précédente a été interrompue, utile pour des fichiers volumineux.-r
: Téléchargement récursif de plusieurs fichiers ou d’un site complet, pratique pour copier des sites ou des dossiers entiers en ligne.-l [profondeur]
: Limite la profondeur du téléchargement récursif (par défaut, wget suit les liens vers d'autres fichiers indéfiniment sans cette option).
Exemples de commandes wget
:
Explication : Télécharge fichier.txt
dans le répertoire courant avec son nom original.
Explication : Télécharge fichier.txt
et le renomme en monfichier.txt
.
Explication : Reprend le téléchargement de fichier.txt
s’il a été interrompu.
Explication : Télécharge le site exemple.com
de manière récursive avec une profondeur d'un seul niveau, utile pour copier des pages liées en un clic.
Résumé :
curl
est plus adapté pour les requêtes API et les téléchargements simples, tandis que wget
excelle dans les téléchargements en masse et avec reprise automatique. Ensemble, ces commandes fournissent des options puissantes pour interagir avec les serveurs web et gérer les transferts de données de manière flexible.
Last updated