Guide des Commandes Linux
Debian 13.2 – BTS SIO SISR 1ère année
Gestion des fichiers et répertoires
mkdir – Make Directory
Crée un ou plusieurs répertoires.
mkdir documents # Crée un répertoire "documents"
mkdir -p projet/src/config # Crée une arborescence complète
mkdir dossier1 dossier2 dossier3 # Crée plusieurs répertoires
rmdir – Remove Directory
Supprime un répertoire vide.
rmdir documents # Supprime le répertoire s'il est vide
rm – Remove
Supprime des fichiers ou des répertoires.
rm fichier.txt # Supprime un fichier
rm -r documents # Supprime un répertoire et son contenu (récursif)
rm -rf dossier # Force la suppression sans confirmation
rm -i fichier.txt # Demande confirmation avant suppression
rm -rf est irréversible. Soyez prudent !
touch
Crée un fichier vide ou met à jour la date de modification.
touch fichier.txt # Crée un fichier vide
touch file1.txt file2.txt # Crée plusieurs fichiers
Manipulation de fichiers
cp – Copy
Copie des fichiers ou répertoires.
cp source.txt destination.txt # Copie un fichier
cp fichier.txt /home/etudiant/documents/ # Copie vers un répertoire
cp -r dossier1 dossier2 # Copie récursive d'un répertoire
cp -i source.txt dest.txt # Demande confirmation si fichier existe
cp -v source.txt dest.txt # Mode verbeux (affiche les actions)
mv – Move
Déplace ou renomme des fichiers/répertoires.
mv ancien.txt nouveau.txt # Renomme un fichier
mv fichier.txt /tmp/ # Déplace un fichier
mv -i source.txt destination.txt # Demande confirmation si fichier existe
mv dossier1 dossier2 # Renomme ou déplace un répertoire
cat – Concatenate
Affiche le contenu d’un fichier.
cat fichier.txt # Affiche le contenu
cat file1.txt file2.txt # Affiche plusieurs fichiers
cat -n fichier.txt # Affiche avec numéros de lignes
more et less
Affichent le contenu d’un fichier page par page.
more fichier.txt # Navigation basique (barre d'espace pour avancer)
less fichier.txt # Navigation avancée (flèches, recherche avec /)
head et tail
Affichent le début ou la fin d’un fichier.
head fichier.txt # Affiche les 10 premières lignes
head -n 20 fichier.txt # Affiche les 20 premières lignes
tail fichier.txt # Affiche les 10 dernières lignes
tail -n 15 fichier.txt # Affiche les 15 dernières lignes
tail -f /var/log/syslog # Suit les modifications en temps réel (logs)
Permissions et propriétés
Comprendre les permissions
chmod – Change Mode
Modifie les permissions d’un fichier ou répertoire.
chmod 755 script.sh # rwxr-xr-x
chmod 644 document.txt # rw-r--r--
chmod u+x script.sh # Ajoute l'exécution pour le propriétaire
chmod g-w fichier.txt # Retire l'écriture pour le groupe
chmod o+r fichier.txt # Ajoute la lecture pour les autres
chmod -R 755 /var/www/html # Applique récursivement
Notation symbolique :
- u : user (propriétaire)
- g : group (groupe)
- o : others (autres)
- a : all (tous)
chown – Change Owner
Modifie le propriétaire et/ou le groupe d’un fichier.
chown etudiant fichier.txt # Change le propriétaire
chown etudiant:etudiant fichier.txt # Change propriétaire et groupe
chown -R etudiant:www-data /var/www/html # Applique récursivement
chown :groupename fichier.txt # Change uniquement le groupe
chgrp – Change Group
Modifie uniquement le groupe propriétaire.
chgrp www-data fichier.txt # Change le groupe
chgrp -R groupename /repertoire # Applique récursivement
Gestion de l’adressage IP avec NetworkManager
NetworkManager est l’outil de gestion réseau par défaut sur Debian 13.2. Il s’utilise principalement via la commande nmcli.
Vérifier l’état de NetworkManager
systemctl status NetworkManager # Vérifie si le service est actif
sudo systemctl start NetworkManager # Démarre le service
sudo systemctl enable NetworkManager # Active au démarrage
nmcli – NetworkManager Command Line Interface
Afficher les informations réseau
nmcli # Affiche un résumé des connexions
nmcli device status # Liste les interfaces réseau
nmcli connection show # Liste toutes les connexions
nmcli connection show --active # Connexions actives uniquement
nmcli device show eth0 # Détails d'une interface spécifique
Afficher la configuration IP actuelle
ip addr show # Affiche toutes les adresses IP
ip addr show eth0 # Affiche l'IP d'une interface
ip route show # Affiche la table de routage
Configuration IP en DHCP
# Créer une nouvelle connexion DHCP
sudo nmcli connection add type ethernet con-name "MaConnexion-DHCP" ifname eth0
# Activer une connexion existante
sudo nmcli connection up "MaConnexion-DHCP"
# Modifier une connexion pour utiliser DHCP
sudo nmcli connection modify "MaConnexion" ipv4.method auto
sudo nmcli connection up "MaConnexion"
Configuration IP statique
# Créer une connexion avec IP statique
sudo nmcli connection add type ethernet con-name "MaConnexion-Static" ifname eth0 \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8 8.8.4.4" \
ipv4.method manual
# Modifier une connexion existante pour IP statique
sudo nmcli connection modify "MaConnexion" \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8 8.8.4.4" \
ipv4.method manual
# Appliquer les modifications
sudo nmcli connection up "MaConnexion"
Gestion des connexions
# Activer/désactiver une connexion
sudo nmcli connection up "NomConnexion"
sudo nmcli connection down "NomConnexion"
# Recharger toutes les connexions
sudo nmcli connection reload
# Supprimer une connexion
sudo nmcli connection delete "NomConnexion"
# Activer/désactiver une interface
sudo nmcli device disconnect eth0
sudo nmcli device connect eth0
Modifier les serveurs DNS
# Définir les serveurs DNS
sudo nmcli connection modify "MaConnexion" ipv4.dns "8.8.8.8 8.8.4.4"
# Ajouter un serveur DNS supplémentaire
sudo nmcli connection modify "MaConnexion" +ipv4.dns "1.1.1.1"
# Appliquer les modifications
sudo nmcli connection up "MaConnexion"
Exemples pratiques complets
Exemple 1 : Configuration complète d’un serveur
sudo nmcli connection add type ethernet con-name "Serveur-Web" ifname ens33 \
ipv4.addresses 192.168.10.50/24 \
ipv4.gateway 192.168.10.1 \
ipv4.dns "192.168.10.1 8.8.8.8" \
ipv4.method manual \
connection.autoconnect yes
sudo nmcli connection up "Serveur-Web"
Exemple 2 : Passer d’IP statique à DHCP
sudo nmcli connection modify "eth0" ipv4.method auto
sudo nmcli connection modify "eth0" ipv4.addresses ""
sudo nmcli connection modify "eth0" ipv4.gateway ""
sudo nmcli connection modify "eth0" ipv4.dns ""
sudo nmcli connection up "eth0"
Fichiers de configuration (méthode alternative)
Les fichiers de configuration de NetworkManager se trouvent dans /etc/NetworkManager/system-connections/.
Pour éditer manuellement :
sudo nano /etc/NetworkManager/system-connections/NomConnexion.nmconnection
sudo chmod 600 /etc/NetworkManager/system-connections/NomConnexion.nmconnection
sudo nmcli connection reload
Commandes utiles complémentaires
Informations système
hostname # Affiche le nom de la machine
whoami # Affiche l'utilisateur courant
id # Affiche UID, GID et groupes
uname -a # Informations sur le système
df -h # Espace disque disponible
du -sh /var/log # Taille d'un répertoire
free -h # Mémoire disponible
top # Processus en temps réel (q pour quitter)
ps aux # Liste tous les processus
Gestion des paquets (APT)
sudo apt update # Met à jour la liste des paquets
sudo apt upgrade # Met à jour les paquets installés
sudo apt install nom_paquet # Installe un paquet
sudo apt remove nom_paquet # Désinstalle un paquet
sudo apt search mot_clé # Recherche un paquet
apt list --installed # Liste les paquets installés
Recherche de fichiers
find /home -name "*.txt" # Recherche des fichiers .txt
find . -type d -name "config" # Recherche des répertoires nommés "config"
locate fichier.txt # Recherche rapide (nécessite updatedb)
which python3 # Localise un exécutable dans le PATH
Redirection et pipes
ls -l > liste.txt # Redirige la sortie vers un fichier
ls -l >> liste.txt # Ajoute à la fin du fichier
cat fichier.txt | grep "erreur" # Pipe : envoie la sortie à grep
ps aux | grep apache # Filtre les processus
Éditeurs de texte
nano fichier.txt # Éditeur simple (Ctrl+X pour quitter)
vim fichier.txt # Éditeur avancé (:q pour quitter, :wq pour sauver)
Astuces et bonnes pratiques
- Autocomplétion : Utilisez la touche
Tabpour compléter automatiquement les noms de fichiers et commandes. - Historique des commandes : Utilisez les flèches ↑ et ↓ pour naviguer dans l’historique. La commande
historyaffiche toutes les commandes précédentes. - Manuel des commandes : Utilisez
man commandepour afficher le manuel détaillé d’une commande (exemple :man ls). - Aide rapide : La plupart des commandes acceptent l’option
--help(exemple :ls --help). - Utilisez sudo avec précaution : Les commandes précédées de
sudos’exécutent avec les privilèges administrateur. Vérifiez toujours ce que vous faites. - Sauvegardez avant de modifier : Avant de modifier des fichiers de configuration importants, créez une copie de sauvegarde avec
cp fichier.conf fichier.conf.backup. - Testez en environnement contrôlé : Avant d’appliquer des commandes sur un système de production, testez dans une machine virtuelle.
Pour aller plus loin
- Documentation officielle Debian : https://www.debian.org/doc/
- NetworkManager documentation :
man nmcli - Linux Command Line Basics :
man intro
