Commande Utile
Commandes Système Linux¶
1. Navigation et Gestion de Fichiers¶
cd [DIRECTORY]: Change de répertoire.cd Documents: Ce déplacer dans le repertoire Documents.
ls: Affiche le contenu du répertoire actuel.ls -l: Affichage détaillé (permissions, propriétaire, taille, date).ls -a: Affiche tous les fichiers, y compris cachés.
pwd: Affiche le chemin complet du répertoire actuel.mkdir [DIRECTORY]: Crée un nouveau dossier.rm [FILE]: Supprime un fichier.rmdir [DIRECTORY]: Supprime un dossier.cp [SRC] [DST]: Copie un fichier ou dossier.mv [SRC] [DST]: Déplace ou renomme un fichier/dossier.
2. Gestion des Processus¶
ps aux: Liste tous les processus.top: Affiche les processus en temps réel.htop: Version améliorée detop(à installer).kill [PID]: Termine un processus par son PID.killall [PROC]: Termine tous les processus ayant le même nom.pkill [PROC]: Arrête un processus par nom.
3. RĂ©seau¶
ip a: Affiche la configuration réseau (souvent avecsudo).ping [ADRESS]: Teste la connexion réseau.netstat -tuln: Affiche les connexions réseau actives (obsolète).ss -plunt: Affiche les connexions réseau actives, c'est une alternative plus moderne et plus rapide à netstat . Il offre des fonctionnalités similaires mais offre des informations plus détaillées et plus précises sur les connexions réseau.curl [URL]: Récupère le contenu d'une URL.wget [URL]: Télécharge un fichier depuis une URL.
4. Informations Système¶
uname -a: Informations sur le noyau et le système.df -h: Utilisation de l’espace disque.du -h [DIRECTORY]: Taille des dossiers et fichiers.free -h: Utilisation de la mémoire RAM.uptime: Temps d’exécution du système.dmesg: Messages du noyau pour le débogage.lscpu,lsblk,lsusb,lspci: Infos sur CPU, disques, périphériques USB, et PCI.
Commandes supplĂ©mentaires pour l'Ă©tat du système¶
free -h: Affiche l'état de la mémoire et du swap.sync; echo 3 > /proc/sys/vm/drop_caches: Libère le swap en le mettant en mémoire (si assez de mémoire).swapoff -a && swapon -a: Éteint et rallume le swap.dmidecode -t memory: Informations sur la RAM et les slots disponibles.lscpu: Informations sur le processeur.systemctl list-unit-files: Liste les services avec systemd.service --status-all: Liste les services avecservice.
5. Gestion des Utilisateurs et Permissions¶
whoami: Identifie l’utilisateur actuel.adduser [USER]: Crée un utilisateur.deluser [USER]: Supprime un utilisateur.chmod [mode] [FILE]: Modifie les permissions d'un fichier (ex :chmod 755 fichier.txt).chown [USER]:[GROUP] [FILE]: Change le propriétaire et le groupe d’un fichier.
6. Utilitaires AvancĂ©s¶
grep [WORD] [FILE]: Recherche un motif dans un fichier.find [PATH] -name [FILE]: Recherche d'élément dans une arborescence.find / -type f -name [FILE]: Recherche d'un fichier dans le/.find / -type d -name [DIRECTORY]: Recherche d'un repertoire dans le/.find / -type f -iname [FILE] -mtime -7: Recherche d'un fichier portant approximativement ce nom, dans le/pour les fichiers modifiés dans les 7 derniers jours.find / -type f -name "*.log" -exec grep -H 'erreur' {} \;: Trouver tous les fichiers .log et rechercher le mot “erreur” dedans.
tar -czvf [NAME].tar.gz [DIRECTORY]: Compresse un dossier en.tar.gz.tar -xzvf [NAME].tar.gz: Décompresse une archive.tar.gz.apt update && apt upgrade: Met à jour les paquets (Debian/Ubuntu).man [COMMAND]: Manuel d’une commande.alias [NAME]='[COMMAND]': Crée un alias. Ex :alias ll='ls -la'.watch -n [TIME] '[COMMAND]': Exécute une commande périodiquement et affiche le résultat à l’écran.watch -n 5 'df -h': pour surveiller l’espace disque toutes les 5 secondes.
grep -r '[KEY-WORD]' '/[PATH]/[FILE]': Recherche des motifs dans les fichiers.
Traitement des fichier avec sed¶
sed 's/[OLD]/[NEW]/' [FILE]: Remplace [OLD] par [NEW] dans un fichier (remplacement simple).sed -e '/^#/d' -e '/^$/d' fichier.conf: Nettoyer un fichier (supprime commentaires/lignes vides)sed '/^#/d; /^[[:space:]]*$/d' fichier.txt| head -10 : Extraire les 10 premières lignes utiles
Traitement de colonnes avec awk¶
awk '{print $1, $3}' fichier.csv: Afficher colonnes 1 et 3awk '{sum+=$3} END {print sum}' data.txt: Somme d'une colonneawk -F',' '{printf "%-20s %-10d\n", $2, $4}' input.csv: Formatage CSV
Tri et comptage¶
sort fichier.log | uniq -c | sort -nr: Top des occurrencessort -n -k2 data.txt: Tri numérique par colonne 2
Combinaisons utiles¶
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -10: Top 10 des IPs dans les logsps aux | awk '{print $2, $4, $11}' | sort -k2rn | head -20: Processus triés par utilisation mémoiregrep -r "ERROR" /var/log/ | awk '{print $1}' | sort | uniq -c: Recherche avancée dans les logsfind /var/log -type f -mtime -7 -printf "%TY-%Tm-%Td %TT %p\n" | sort -r: Fichiers récemment modifiés (triés)
Commandes de transfert de fichiers¶
ssh -i ~/.ssh/id_ed -A [USER]@[MACHINE]: Forward de clé SSH.tune2fs -m 1 /dev/sd[a,b,...]: Réduit l'espace réservé à root.scp [MACHINE-A]:/[PATH]/[FILE]/[SRC] [MACHINE-B]:/[PATH]/[FILE]/[DST]: Copie de fichiers entre hôtes.rsync -avz [MACHINE-A]:/[PATH]/[FILE]/[SRC] [MACHINE-B]:/[PATH]/[FILE]/[DST]: Synchronise les fichiers entre hôtes.
Surveillance avancĂ©e¶
Liste les processus utilisant du swap.
(echo "COMM PID SWAP"; for file in /proc/*/status; do awk '/^Pid|VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | grep kB | grep -wv "0 kB" | sort -k 3 -n -r) | column -t`
Processus utilisant le swap
(echo "COMM PID SWAP"; for file in /proc/*/status; do
awk '/^Pid|VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file;
done | grep kB | grep -wv "0 kB" | sort -k 3 -n -r) | column -t
Logs en temps réel
tail -f /var/log/syslog | grep -i error # Filtre erreurs
tail -f access.log | awk '{print $9}' | sort | uniq -c # Stats HTTP
7. Personnalisation de l'Environnement¶
export [VAR]=[valeur]: Définit une variable d’environnement temporaire.export ll="ls -la": Définit la commandels -ladans la variablell$lllancer cette commande tapera indirectementls -lhvia la variable
vim ~/.bashrc: Édite le fichier de configuration Bash.source ~/.bashrc: Recharge les configurations de.bashrc.
8. Journalisation¶
journalctl: Affiche tous les journaux.--since="YYYY-MM-DD"et--until="YYYY-MM-DD": Filtre par date.-u [SERVICE]: Journaux pour une unité/service spécifique.-p [NIVEAU]: Filtre par niveau de priorité (ex :errpour erreurs).-f: Affichage en temps réel.--no-pager: Sans le pager.-o json: Format JSON.
9. Pare-feu¶
Utilisation de firewalld¶
firewall-cmd --add-port=[PORT1-PORT2]/tcp --zone=work --permanent: Ajouter un port à une zone spécifique.firewall-cmd --reload: Recharger les règles defirewalld.firewall-cmd --list-all: Lister toutes les règles actives.firewall-cmd --remove-port=[PORT1-PORT2]/tcp --zone=work --permanent: Supprimer un port d'une zone spécifique.firewall-cmd --add-service=http --zone=public --permanent: Ajouter un service à une zone spécifique.
Utilisation de iptables¶
Iptables est un outil plus bas niveau que firewalld, qui est basé sur des règles plus abstraite.
- iptables -A INPUT -p tcp --dport [PORT] -j ACCEPT : Ajouter une règle pour accepter le trafic sur un port spécifique.
- iptables -L : Lister toutes les règles.
- iptables -D INPUT -p tcp --dport [PORT] -j ACCEPT : Supprimer une règle spécifique.
- iptables-save > /etc/iptables/rules.v4 : Sauvegarder les règles iptables.
- iptables-restore < /etc/iptables/rules.v4 : Restaurer les règles iptables.
- iptables -A INPUT -s [IP] -j DROP : Bloquer une adresse IP spécifique.
10. DNS¶
dig [TYPE] [DOMAIN.TLD] +short: Interroge les DNS.dig [TYPE] [DOMAIN.TLD] @[DNS-SERVER]: Teste un enregistrement selon un serveur DNS spécifique.
11. Permission¶
Manque de privilège c'est un message courant lorsqu'un utilisateur essaie d’accéder à un fichier ou d’exécuter une commande sans avoir les privilèges nécessaires.
[COMMAND]: impossible d'ouvrir '[/PATH/FILE]' en lecture: Permission non accordée
[COMMAND]: unable to open '[/PATH/FILE]' for reading: Permission denied
Dans ce cas, il suffit de les préfixer par un sudo, attention cependant sudo nécessite des privilèges administratifs, et que dans certaines distributions, l'utilisateur doit être membre du groupe sudo ou wheel pour exécuter des commandes avec des privilèges administratifs.