CheatSheet unix
En tant que développeurs, nous sommes souvent amenés à intervenir directement sur les serveurs. Et soyons honnêtes, nous n’utilisons pas toutes ces commandes tous les jours, et certaines peuvent parfois sembler un peu floues.
Cette cheatsheet rassemble les commandes essentielles pour gérer des fichiers, modifier des permissions, manipuler des archives, utiliser SSH, et bien plus encore. Que vous soyez débutant ou utilisateur expérimenté, ce guide vous aidera à travailler efficacement avec Unix.
Navigation et gestion des fichiers
Navigation dans le système de fichiers
Afficher le répertoire courant
pwd
Lister les fichiers et dossiers
ls -la
Changer de répertoire
cd /chemin/vers/dossier
Créer un répertoire
mkdir nom_dossier
Supprimer un répertoire vide :
rmdir nom_dossier
Gestion des fichiers
Copier des fichiers ou dossiers
cp fichier1 dossier/
Déplacer ou renommer un fichier
mv fichier.txt dossier/
mv ancien_nom.txt nouveau_nom.txt
Supprimer un fichier
rm fichier.txt
Supprimer un dossier et son contenu
rm -r dossier/
Gestion des droits des fichiers
Afficher les permissions
Utilisez ls -l pour afficher les droits des fichiers
ls -l fichier.txt
Exemple de résultat
-rw-r--r-- 1 utilisateur groupe 1234 nov 30 10:00 fichier.txt
Structure des permissions
- Premier caractère : Type de fichier
- - : Fichier classique.
- d : Dossier.
- l : Lien symbolique.
- Groupes de 3 caractères suivants : Les permissions pour trois catégories d’utilisateurs
- Propriétaire : Lecture (r), écriture (w), exécution (x).
- Groupe : Lecture (r), écriture (w), exécution (x).
- Autres : Lecture (r), écriture (w), exécution (x).
Résumé des permissions
- r : Autorise la lecture.
- w : Autorise la modification.
- x : Autorise l’exécution (pour un fichier) ou l’accès (pour un dossier).
- - : Absence de permission.
Modifier les permissions
Ajouter des droits
chmod u+x fichier.txt
Ajouter des droits (Mode numérique)
chmod 755 fichier.txt
Modifier le propriétaire ou le groupe
Changer le propriétaire
chown utilisateur fichier.txt
Changer le groupe
chgrp groupe fichier.txt
Gestion des archives
Créer une archive
Sans compression
tar -cvf archive.tar fichier1 dossier/
Avec compression Gzip
tar -czvf archive.tar.gz fichier1 dossier/
Avec compression Bzip2
tar -cjvf archive.tar.bz2 fichier1 dossier/
Créer une archive zip
zip archive.zip fichier1 dossier/
Les outils zip et unzip ne sont pas installés par défaut. Voici comment les ajouter
sudo apt install zip unzip
Créer une archive rar
rar a archive.rar fichier1 dossier/
Les outils rar et unrar ne sont pas installés par défaut. Voici comment les ajouter
sudo apt install rar unrar
Extraire une archive
Extraire une archive .tar
tar -xvf archive.tar
Extraire une archive compressée Gzip
tar -xzvf archive.tar.gz
Extraire une archive compressée Bzip2
tar -xjvf archive.tar.bz2
Extraire dans un répertoire spécifique
tar -xvf archive.tar -C /chemin/vers/dossier
Extraire une archive zip
unzip archive.zip
Extraire une archive rar
unrar x archive.rar
Visualiser le contenu d'une archive
Afficher la liste des fichiers dans une archive sans l’extraire
tar -tvf archive.tar
Gestion des clés SSH
Les clés SSH permettent d’établir une connexion sécurisée entre votre machine et un serveur sans entrer de mot de passe à chaque fois. Elles se composent de deux parties :
- Clé publique : À partager avec le serveur.
- Clé privée : À garder secrète et sécurisée sur votre machine.
Générer une clé SSH
Créez une paire de clés avec
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Options importantes :
- -t rsa : Spécifie le type de clé (RSA dans cet exemple).
- -b 4096 : Définit la taille de la clé (4096 bits pour plus de sécurité).
- -C : Ajoute un commentaire (souvent votre e-mail).
Après l’exécution :
- Un fichier est créé (par défaut : ~/.ssh/id_rsa pour la clé privée et ~/.ssh/id_rsa.pub pour la clé publique).
- Vous pouvez définir une phrase de passe (optionnelle mais recommandée pour plus de sécurité).
Ajouter une clé publique sur un serveur
Pour configurer l’authentification via SSH avec votre clé publique, suivez ces étapes :
- Afficher votre clé publique sur votre machine locale
cat ~/.ssh/id_rsa.pub
(Remplacez id_rsa.pub par le nom de votre clé si elle diffère). - Copier la clé publique sur le serveur distant
- Connectez-vous au serveur
ssh user@serveur
- Ajoutez votre clé publique au fichier ~/.ssh/authorized_keys
echo "votre_clé_publique" >> ~/.ssh/authorized_keys
- Assurez-vous des permissions correctes
chmod 600 ~/.ssh/authorized_keys chmod 700 ~/.ssh
- Connectez-vous au serveur
Ajouter une clé SSH à l’agent SSH
Pour ne pas entrer la phrase de passe à chaque connexion, ajoutez votre clé privée à l’agent SSH :
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
Gestion des processus
Lister les processus actifs
Afficher les processus en cours
ps aux
Vue interactive des processus
top
Arrêter un processus
Terminer un processus via son PID
kill PID
Terminer un processus par son nom
killall nom_processus
Vérification de l’espace disque
Afficher l’espace disque disponible
df -h
Afficher la taille d’un dossier spécifique
du -sh /chemin/vers/dossier
Gestion des utilisateurs et des groupes
Gestion des utilisateurs
Créer un utilisateur
sudo adduser nom_utilisateur
Ajouter un utilisateur à un groupe
sudo usermod -aG nom_groupe nom_utilisateur
Changer le mot de passe d’un utilisateur
sudo passwd nom_utilisateur
Gestion des groupes
Créer un groupe
sudo groupadd nom_groupe
Supprimer un groupe
sudo groupdel nom_groupe
Gestion des paquets logiciels (Debian/Ubuntu)
Mettre à jour la liste des paquets
sudo apt update
Installer un paquet
sudo apt install nom_paquet
Supprimer un paquet
sudo apt remove nom_paquet
Mettre à jour tous les paquets installés
sudo apt upgrade
Téléchargement de fichiers avec wget et curl
Télécharger un fichier avec wget
wget http://example.com/fichier.zip
Télécharger un fichier avec curl et conserver le nom
curl -O http://example.com/fichier.zip
Édition de fichiers avec vim et nano
Avec vim
Ouvrir un fichier
vim fichier.txt
Mode insertion
Appuyez sur i
Sauvegarder et quitter :
:wq
Quitter sans sauvegarder :
:q!
Avec nano
Ouvrir un fichier
nano fichier.txt
Sauvegarder les modifications :
Appuyez sur Ctrl + O, puis Entrée.
Quitter
Appuyez sur Ctrl + X