Linux – Guide pratique
Cette page est destinée à être une référence Linux compacte mais utile.
Tous les exemples sont génériques et applicables à la plupart des distributions Linux
(Debian/Ubuntu, RHEL/Fedora, Arch, Alpine), sauf indication contraire.
1. Structure des fichiers et navigation
Linux fonctionne avec une seule structure d'arborescence centrale (/), pas avec des lettres de lecteur comme sous Windows.
Dossiers importants :
/– racine du système/home– dossiers utilisateurs personnels/etc– fichiers de configuration/var– données variables (logs, mail, cache)/usr– programmes et bibliothèques/tmp– fichiers temporaires/srv– données pour les services (web, applications)
La navigation se fait entièrement via le terminal. Vous travaillez toujours à partir d'un "dossier actuel".
Voir le chemin actuel :
pwd
Afficher les fichiers et dossiers dans le dossier actuel :
ls
ls -lah
Options :
-laffiche une vue en liste-aaffiche également les fichiers cachés-hrend les tailles lisibles
Déplacer dans la structure des dossiers :
cd /path/to/folder
cd ..
cd ~
2. Gérer les fichiers et les dossiers
Les fichiers et dossiers sont entièrement créés, déplacés et supprimés via des commandes.
Créer un dossier :
mkdir folder
mkdir -p a/b/c
-p permet également de créer les sous-dossiers manquants.
Créer un fichier vide ou mettre à jour l'horodatage :
touch file.txt
Copier des fichiers ou des dossiers :
cp source dest
cp -a source dest
-a (archive) conserve les droits, la propriété et les liens symboliques et est presque toujours recommandé.
Déplacer ou renommer des fichiers ou des dossiers :
mv old new
Supprimer des fichiers et des dossiers :
rm file
rm -r folder
rm -rf folder
-r= récursif-f= forcé, sans confirmation
Utilisez rm -rf uniquement si vous êtes sûr de ce que vous faites.
Créer un lien symbolique :
ln -s target link
3. Visualiser et lire des fichiers
Pour visualiser des fichiers, différents outils sont disponibles, en fonction de la taille et de l'utilisation.
Afficher le contenu complet :
cat file
Adapté aux petits fichiers.
Visualisation interactive (défilement et recherche) :
less file
Consulter les premières ou dernières lignes :
head -n 20 file
tail -n 20 file
Suivre un fichier en direct (par exemple des journaux) :
tail -f /var/log/syslog
4. Recherche et filtrage de texte
Linux offre des outils puissants pour rechercher et filtrer du texte, notamment dans les journaux et les fichiers de configuration.
Recherche de texte :
grep "text" file
grep -R "text" folder
grep -Rni "tekst" folder
Options :
-R= récursif-n= numéro de ligne-i= insensible à la casse
Rechercher des fichiers par nom :
find . -name "*.log"
Rechercher des fichiers par date de modification :
find . -type f -mtime -7
Extraire des colonnes ou des champs du texte :
awk '{print $1}' file
cut -d: -f1 file
5. Droits et propriété
Linux fonctionne avec des utilisateurs, des groupes et des permissions par fichier.
Voir les droits :
ls -l
Modifier les droits :
chmod 644 file
chmod 755 script.sh
Signification :
644= lecture/écriture pour le propriétaire, lecture pour les autres755= exécutable par tout le monde
Modifier le propriétaire et le groupe :
chown user:group file
Voir l'utilisateur actuel et les groupes :
id
groups
6. Processus et état du système
Linux fournit des informations détaillées sur les processus actifs et l'utilisation du système.
Tous les processus afficher :
ps aux
Aperçu en direct du CPU et de la mémoire :
top
htop
Voir l'utilisation de la mémoire :
free -h
Espace disque par système de fichiers :
df -h
Taille d'un dossier :
du -sh folder
Mettre fin à un processus :
kill PID
kill -9 PID
-9 force l'arrêt et ne doit être utilisé qu'en dernier recours.
7. Réseau et connectivité
L'état du réseau et la connectivité sont essentiels pour les serveurs et les applications.
Interfaces réseau et routes :
ip a
ip r
Ports et processus à l'écoute :
ss -tulpn
Tester la connexion réseau :
ping domain.tld
Exécuter des requêtes HTTP :
curl https://site.tld
curl -I https://site.tld
Demander des informations DNS :
dig domain.tld
Vérifier si un port est accessible :
nc -vz host 443
8. Services et journaux (systemd)
La plupart des systèmes Linux modernes utilisent systemd pour la gestion des services.
Statut et gestion des services :
systemctl status service
systemctl start service
systemctl stop service
systemctl restart service
systemctl reload service
Services démarrent automatiquement au démarrage :
systemctl enable service
systemctl disable service
Voir les journaux :
journalctl -u service
journalctl -u service -f
journalctl -p err
9. Gestionnaires de paquets
Le logiciel est installé via le gestionnaire de paquets de la distribution.
Debian / Ubuntu (apt)
apt update
apt install package
apt remove package
apt purge package
apt autoremove
RHEL / Fedora (dnf)
dnf install package
dnf remove package
dnf search package
Arc (pacman)
pacman -S package
pacman -Rns package
pacman -Syu
Alpine (apk)
apk add package
apk del package
10. Git – gestion de version
Git est utilisé pour la gestion des versions du code et de la configuration.
Commandos de base :
git init
git clone url
git status
git add .
git commit -m "description"
Synchroniser avec un distant :
git pull --rebase
git push
Compréhension des modifications :
git log --oneline --graph
git diff
11. Docker – conteneurs
Docker permet d'exécuter des applications de manière isolée.
Gérer des images dans des conteneurs :
docker pull image
docker images
docker ps
docker ps -a
Démarrer et gérer un conteneur :
docker run -d -p 8080:80 image
docker logs container
docker exec -it container sh
Docker Compose :
docker compose up -d
docker compose down
12. Sécurité de base
Une base de sécurité minimale est essentielle, surtout sur les serveurs.
Pare-feu (Ubuntu) :
ufw status
ufw allow 22
ufw enable
Nftables (pare-feu de bas niveau) :
nft list ruleset
Protection contre les attaques par force brute :
fail2ban-client status
Mises à jour de sécurité automatiques :
apt install unattended-upgrades
13. Outils couramment utilisés
curl,wget– requêtes HTTPjq– traiter le JSONrsync– synchronisation de fichiers efficacetmux– plusieurs shells dans une sessionncdu– analyser l'espace disquelsof– fichiers et ports ouvertstcpdump– inspecter le trafic réseau
