Dans ce cours, vous trouverez le résumé de toutes les commandes Linux de base pour entamer votre carrière d’administrateur système Linux. Pour maitriser ces commandes de base, utiliser les régulièrement sur votre machine virtuelle.
Pour les débutants, voici une guide pour vous aider à installer une machine virtuelle Ubuntu sur VirtualBox.
Voici donc par catégorie les commandes Linux de base pour les débutants :
Commandes système
Affiche les informations du système Linux :
$ uname
Afficher les informations de version du noyau :
$ uname -r
Affiche depuis combien de temps le système fonctionne, y compris
charge moyenne :
$ uptime
Voir le nom d’hôte du système :
$ hostname
Affiche l’adresse IP du système :
$ hostname -i
Voir l’historique de redémarrage du système :
$ last reboot
Affiche la date et l’heure actuelles du système :
$ date
Interroger et modifier l’horloge système :
$ timedatectl
Affiche le mois et le jour du calendrier en cours :
$ cal
Afficher les utilisateurs actuellement connectés au système :
$ who
Affiche sous quel nom vous êtes connecté :
$ whoami
Voir les informations sur l’utilisateur :
$ finger username
Commandes pour voir l’utilisation du disque
Affiche l’espace libre sur les systèmes montés :
$ df -h
Afficher les inodes libres sur les systèmes de fichiers :
$ df -i
Voir les partitions de disque, les tailles et les types
$ fdisk -l
Affiche l’utilisation du disque dans le répertoire en cours
$ du -sh
Afficher le point de montage cible pour tous les systèmes de fichiers
$ findmnt
Commandes de gestion des fichiers
Crée un nouveau répertoire
$ mkdir nomdurepertoire
Lister les fichiers – les fichiers normaux et cachés ainsi que leurs autorisations.
$ ls -al
Affiche le chemin du fichier du répertoire actuel
$ pwd
Supprime un fichier
$ rm nomdufichier
Supprimer de force un fichier
$ rm -f nomdufichier
Supprime un répertoire de manière récursive
$ rm -r nomdurepertoire
Supprimer un répertoire avec force et récursivement
$ rm -rf nomdurepertoire
Copie le contenu du fichier1 vers le fichier2
$ cp fichier1 fichier2
Copie récursivement repertoire1 vers repertoire2. repertoire2 est créé si ce n’est pas le cas
exister
$ cp -r repertoire1 repertoire2
Renomme fichier1 en fichier2
$ mv fichier1 fichier2
Crée un nouveau fichier
$ touch nomdufichier
Place l’entrée standard dans un fichier
$ cat > nomdufichier
Affiche le contenu d’un fichier
$ more nomdufichier
Afficher les 10 premières lignes d’un fichier
$ head nomdufichier
Affiche les 10 dernières lignes d’un fichier
$ tail nomdufichier
Crypter un fichier
$ gpg -c nomdufichier
Déchiffrer un fichier
$ gpg nomdufichier.gpg
Transfert de fichier
Copiez en toute sécurité fichier1.txt sur serveur2 dans le répertoire /tmp
$ scp fichier.txt serveur2/tmp
Synchroniser le contenu du répertoire /home/apps avec le répertoire /backup
$ rsync -a /home/apps / backup/
Passer d’un répertoire à un autre
Remonter d’un niveau dans l’arborescence des répertoires
$ cd ..
Changer de répertoire pour le répertoire $HOME
$ cd
Passer d’un répertoire à un répertoire /test
$ cd /test
Autorisation de fichier
Modifier les autorisations de fichier du fichier en octal
$ chmod octal nomdufichier
Des exemples :
Définissez les autorisations rwx sur le propriétaire, le groupe et tout le monde (tous les quelqu’un d’autre qui a accès au serveur)
$ sudo chmod 777 /data/test.txt
Définissez rwx sur le propriétaire et r_x sur le groupe et tout le monde
$ sudo chmod 755 /data/test.txt
Définir rwx pour le propriétaire, rw pour le groupe et tout le monde
$ sudo chmod 766 /data/test.txt
Changer le propriétaire du fichier
$ sudo chown proprietaire sonfichier
Compression ou Archives
Crée un fichier d’archive appelé « text.tar » à partir du fichier « text«
$ tar -cf text.tar text
Extraire le fichier d’archive ‘fichier.tar’
$ tar -xf fichier.tar
Compresser un fichier avec l’extension .gz
$ gzip fichier
Commandes de Connexion au système
Connectez-vous en toute sécurité à l’hôte en tant qu’utilisateur en utilisant ssh
$ ssh utilisateur@hote
Se connecter en toute sécurité à l’hôte à l’aide d’un port spécifié
$ ssh -p numeroduport utilisateur@hote
Connectez-vous en toute sécurité au système via le port SSH par défaut 22
$ ssh hote
Se connecter à l’hôte via le port telnet par défaut 23
$ telnet hote
Commandes de configuration Réseau
Affiche les adresses IP et toutes les interfaces réseau
$ ip addr show
Attribue l’adresse IP 192.168.10.1 à l’interface eth0
$ ip address add 192.168.10.1/24 dev eth0
Afficher les adresses IP de toutes les interfaces réseau
$ ifconfig
La commande ping envoie une requête d’écho ICMP pour établir ou tester une
connexion entre les équipements
$ ping hote
Récupère plus d’informations sur un nom de domaine
$ whois domain
Récupère les informations DNS sur le domaine
$ dig domain
Effectue une recherche inversée sur un domaine
$ dig -x hote
Effectuer une recherche IP pour le nom de domaine
$ host dir-tech.com
Affiche l’adresse IP locale
$ hostname -i
Télécharge un fichier à partir d’une source en ligne
$ wget lien_vers_le_fichier
Affiche tous les ports d’écoute actifs
$ netstat -pnltu
Commandes de gestion des utilisateurs
Affiche les détails de l’utilisateur actif, par exemple : uid, gid et groupes
$ id
Afficher les dernières connexions dans le système
$ last
Indique qui est connecté au système
$ who
Ajoute le groupe admin
$ groupadd admin
Ajoute l’utilisateur Sam
$ adduser Sam
Supprime l’utilisateur Sam
$ userdel Sam
Pour changer / modifier les informations de l’utilisateur
$ usermod
Commandes pour Rechercher
Rechercher un motif donné dans les fichiers
$ grep ‘pattern’ fichier
Rechercher récursivement un motif dans un répertoire donné
$ grep -r pattern repertoire
Trouver toutes les instances du fichier
$ locate fichier
Trouve les noms de fichiers qui commencent par « index » dans le dossier /home
$ find /home/ -name “index”
Trouver des fichiers supérieurs à 80000k dans le dossier de départ
$ find /home -size +80000k
Installer des pacqués
Installer un package rpm
$ rpm -i fichier.rpm
Supprime un package rpm
$ rpm -e fichier
Installer le package à l’aide de l’utilitaire dnf
$ dnf install fichier
Installer un fichier source (compilation)
$ ./configure make make install
Commandes Liées au processus
Afficher les processus actuellement actifs
$ ps
Recherche l’identifiant du processus ‘telnet‘
$ ps aux | grep ‘telnet’
Affiche la carte mémoire des processus
$ pmap
Afficher tous les processus en cours d’exécution
$ top
Termine le processus avec un pid donné
$ kill pid
Tuer ou Terminer tous les processus nommés proc
$ killall proc
Envoie un signal à un processus avec son nom
$ pkill nomduprocessus
Reprend les travaux suspendus en arrière-plan
$ bg
Met les processus suspendus au premier plan
$ fg
Mettre le processus n au premier plan
$ fg n
Répertorie les fichiers ouverts par les processus
$ lsof
Exécute un processus avec une priorité très faible
$ renice 19 PID
Trouver l’ID de processus Firefox
$ pgrep firefox
Visualisation des processus dans un modèle arborescent
$ pstree
Commandes pour les informations Matériel
Affiche les messages de démarrage
$ dmesg
Afficher plus d’informations sur le processeur, par exemple le modèle, le modèle, nom, cœurs, identifiant du fournisseur
$ cat /proc/cpuinfo
Affiche plus d’informations sur la mémoire matérielle, par ex. Mémoire totale et libre
$ cat /proc/meminfo
Affiche des informations sur la configuration matérielle du système
$ lshw
Voir les informations relatives aux périphériques de bloc
$ lsblk
Affiche la mémoire libre et utilisée dans le système (indicateur -m indique la mémoire en Mo)
$ free -m
Afficher les périphériques PCI dans un diagramme en forme d’arborescence
$ lspci -tv
Voir les périphériques USB dans un diagramme en forme d’arborescence
$ lsusb -tv
Affiche les informations matérielles du BIOS
$ dmidecode
Afficher des informations sur les données du disque
$ hdparm -i /dev/xda
Effectue un test de vitesse de lecture sur l’appareil xda
$ hdparm -tT /dev/xda
Tester les blocs illisibles sur le disque
$ badblocks -s /dev/xda
Recherche de domaine — Outils Domaine