Ceci est une ancienne révision du document !
Les commandes de base en console linux
Introduction
Cette page vise à présenter une liste non exhaustive de commandes connues et souvent utilisées.
- Il est presque toujours possible de combiner les options (exemple :
ls -l -adeviendrals -la) - Il ne sera pas précisé si les commandes doivent être exécutées avec des droits plus élevés que ceux des simples utilisateurs
- Les mots répertoire et dossier sont équivalents.
man suivi d'un espace et du nom de la commande pour avoir toutes les informations sur le fonctionnement de la commande voulue. Pour plus d'informations à ce sujet, reportez-vous à la page Le manuel.
Notions de relativité des chemins de fichier
Le titre est un peu compliqué, mais le principe est simple : un fichier peut être référencé de manière relative, par rapport au répertoire courant, ou de manière absolue par rapport à la racine. Le premier caractère de la référence permet d'effectuer la distinction : les références absolues commencent toujours par le caractère /, alors que les références relatives commencent par tout autre caractère valide pour un nom de fichier.
Ainsi, les deux commandes ci-dessous sont équivalentes et peuvent être utilisées l'une comme l'autre pour renommer le fichier MonFichier localisé dans le répertoire personnel de l'utilisateur (/home/user) :
user@mulet:~$ mv MonFichier NouveauNomDuFichier
user@mulet:/srv $ mv /home/user/MonFichier /home/user/NouveauNomDuFichier
Dans le premier exemple, l'invite système (user@mulet:~$) montre que le répertoire courant est le répertoire personnel de l'utilisateur ("~", caractère spécial équivalent /home/user) ; la référence au fichier à renommer est exprimée de manière relative par rapport à ce répertoire. Dans le second exemple, l'invite système montre que le répertoire courant est /srv ; pour désigner le même fichier, il faut donc utiliser une référence absolue : /home/user/MonFichier (qui aurait tout aussi bien pu être exprimée par ~/MonFichier).
user@mulet:/srv $ mv /home/user/MonFichier '/home/user/Nouveau NomDuFichier'
Raccourcis pratiques
Les caractères spéciaux ~, . et .. correspondent respectivement au répertoire personnel de l'utilisateur, au répertoire courant et au répertoire parent. Ils permettent tous les trois de simplifier l'expression de références absolues.
Ainsi pour déplacer le fichier /UnRep/MonFichier respectivement dans le répertoire de l'utilisateur (/home/user), le répertoire courant (/rep1/sousrep2) ou le sous-répertoire toto du répertoire parent (/rep1/toto), on pourra utiliser les commandes ci-dessous :
user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier ~
user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier .
user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier ../toto/
Méta-caractères
Pour de nombreuses commandes, il est souvent utile de faire appel à des méta-caractères (ou jokers) :
- le caractère
*remplace zéro, un ou plusieurs caractères quelconques.ls u*affichera les fichiers dont le nom commence par le caractèreu(suivi ou non d'un ou plusieurs caractères)
*rm *oldeffacera les fichiers dont le nom se termine paroldfind -name untcherchera les fichiers dont le nom contient la séquence de lettresunt(commeubuntu.jpgetuntel.txtpar exemple)
- le caractère
?remplace exactement un caractère quelconque.ls ?at.jpgaffichera les fichiers dont le nom commence par un caractère quelconque suivi deat.jpg(commebat.jpg,cat.jpg,fat.jpgetrat.jpgmas nichat.jpgniat.jpg)rm *.od?effacera tous les fichiers dont le nom se termine par les caractères.odsuivis d'un caractère quelconque (par exemple tous les fichiers dont l'extension est.odg,.odp,.odt,.ods… mais pas les fichiers dont l'extension est.ods'il en existe)
- les crochets
[et]permettent de définir un ensemble de caractères remplaçant un caractèrels archives/201[2-6]/[A-Ca-cZz]*affiche les fichiers contenus dans les sous-dossiers2012à2016dearchiveset commençant par une des lettresA,B,CouZ(majuscule ou minuscule) uniquement.
Les commandes Unix de base à connaître par cœur
man
- Équivalent Windows :
help - Signification : manual
- Affiche les pages du manuel système.
Chaque argument donné à man est généralement le nom d'un programme, d'un utilitaire, d'une fonction ou d'un fichier spécial. - Exemples d'utilisation :
man man
affiche les informations pour l'utilisation de manman exports
décrit le contenu et la syntaxe du fichier/etc/exportspour les partages NFS
qpour quitter.- Voir aussi la page man
ls
- Équivalent Windows :
dir - Signification : list
- Permet de lister un répertoire
- Options les plus fréquentes :
-l: Permet un affichage détaillé du répertoire (permissions d'accès, le nombre de liens physiques, le nom du propriétaire et du groupe, la taille en octets, et l'horodatage)-h: Associé avec-laffiche la taille des fichiers avec un suffixe correspondant à l'unité (K, M, G)-a: Permet l'affichage des fichiers et répertoires cachés (ceux qui commencent par un . (point))-lct: Permet de trier les fichiers et répertoires par date de modification décroissante
- Exemples d'utilisation :
ls -a
affiche tous les fichiers et répertoires y compris les cachés du répertoire courantls /etc/
affiche le contenu du répertoire/etc/
- Voir aussi ls en couleur
dir quasi identique à la commande ls. Elle s'utilise de la même façon, avec les mêmes options, et les pages man (manuel) les 2 commandes sont d'ailleurs identiques.
Seul l'affichage par défaut de la sortie est différent avec dir :- par défaut la sortie n'est pas en couleur (il faut utiliser l'option
--colorpour obtenir une sortie en couleur avec dir) ; - les caractères spéciaux tels que les espaces dans les noms des fichiers et dossiers sont précédés d'un caractère \ (backslash).
La commande ls -C -b produira une sortie identique à la commande dir employée sans options.
cd
- Équivalent Windows :
cd - Signification : change directory
- Permet de se promener dans les répertoires
- Exemples d'utilisation :
cd
permet de revenir au répertoire/home/utilisateur(identique àcd ~)cd -
permet de revenir au répertoire précédentcd ..
permet de remonter au répertoire parent (ne pas oublier l'espace contrairement à Windows)cd /
permet de remonter à la racine de l'ensemble du système de fichierscd /usr/bin/ ou usr/bin
se place dans le répertoire/usr/bin/
mv
- Équivalent Windows :
move/ren - Signification : move
- Permet de déplacer ou renommer des fichiers et des répertoires
- Options les plus fréquentes :
-f: Écrase les fichiers de destination sans confirmation-i: Demande confirmation avant d'écraser-u: N'écrase pas le fichier de destination si celui-ci est plus récent
- Exemples d'utilisation :
mv monFichier unRep/
DéplacemonFichierdans le répertoireunRepmv unRep/monFichier .
Déplace le fichiermonFichierdu répertoireunReplà où on se trouvemv unRep monRep
RenommeunRepenmonRep
cp
- Équivalent Windows :
copy/xcopy - Signification : copy
- Permet de copier des fichiers ou des répertoires
- Options les plus fréquentes :
-a: Archive. Copie en gardant les droits, dates, propriétaires, groupes, etc.-i: Demande une confirmation avant d'écraser-f: Si le fichier de destination existe et ne peut être ouvert alors le détruire et essayer à nouveau-Rou-r: Copie un répertoire et tout son contenu, y compris les éventuels sous-répertoires-u: Ne copie que les fichiers plus récents ou qui n'existent pas-v: permet de suivre les copies réalisées en temps réel
- Exemples d'utilisation :
cp monFichier sousrep/
CopiemonFichierdanssousrepcp -r monRep/ ailleurs/
Copie le répertoiremonRep(et ses éventuels sous-répertoires) versailleursen créant le répertoireailleurs/monReps'il n'existe pas.cp monRep/{.cpp,.h,MakeFile,Session.vim} ailleurs/
Copie les fichiers spécifiés dans{}contenus dans le répertoiremonRepversailleurs. Notez bien qu'il n'y a pas d'espace entre ces noms de fichiers.
rm
Exécutez-la uniquement si vous savez ce que vous faites !
- Équivalent Windows :
del/erase - Signification : remove
- Permet d'effacer des fichiers
- Options les plus fréquentes :
-i: Demande confirmation avant d'effacer-f: Ne demande pas de confirmation avant d'effacer-r: Efface récursivement. Ce mot signifie "y compris ses sous-répertoires et leur contenu".
- Exemples d'utilisation :
rm CeFichier
Efface du répertoire courant le fichierCeFichier.rm -rf /tmp/LeRep
Efface le répertoire/tmp/LeRepainsi que tous ses fichiers, liens et sous-répertoires sans demander de confirmation.- ''rm -rf /* ''
…La commande qui "tue"… Disparition immédiate de tous vos fichiers.
mkdir
- Équivalent Windows :
mkdir/md - Signification : make directory
- Crée un répertoire vide
- Options les plus fréquentes :
-p: Crée les répertoires parents s'ils n'existent pas
- Exemples d'utilisation :
mkdir photos
Crée le répertoirephotosmkdir -p photos/2005/noel
Crée le répertoirenoelet s'ils n'existent pas les répertoires2005etphotos.
rmdir
- Équivalent Windows :
rmdir/rd - Signification : remove directory
- Supprime un répertoire (vide)
- Options les plus fréquentes :
-p: Supprime les répertoires parents s'ils deviennent vides.
- Exemples d'utilisation :
rmdir LeRep
Supprime le répertoireLeRep.
top
- Montre la charge CPU
- La combinaison des touches
Maj ⇧+Mpermet de classer en fonction de l'occupation de la mémoire. - La combinaison des touches
Maj ⇧+Pclasse en fonction de l'occupation du CPU. - La combinaison des touches
Maj ⇧+Wpermet de conserver ces préférences - La touche
Kpermet de tuer directement un processus en rentrant son PID - La touche
Qpermet de quitter le programme - Options les plus fréquentes :
-u: affiche les processus pour un utilisateur donné
- Exemples d'utilisation :
toptop -u root
qpour quitter.
pwd
- Équivalent Windows :
chdir - Signification : print working directory
- Affiche le répertoire de travail
ln
- Signification : link
- Crée un lien (physique ou symbolique) vers un fichier (ou un répertoire)
- Options les plus fréquentes :
-s: Crée un lien symbolique (similaire au raccourci du monde Windows)-f: Force l'écrasement du fichier de destination s'il existe-d: Crée un lien sur un répertoire (uniquement en mode sudo ou root)
- Exemples d'utilisation :
ln -s Rep1/Rep2/Monfichier MonLien
Crée un lien symboliqueMonLiendeRep1/Rep2/Monfichierdans le répertoire où on se trouveln Monfichier unRep/AutreNom
Crée un lien physiqueAutreNomdeMonfichierdans le répertoireunRep.
- Note :
- Vérifiez que vous vous trouvez bien dans le répertoire dans lequel vous souhaitez créer le lien avant d'exécuter cette commande.
find
- Équivalent Windows :
find - Signification : find
- Permet de chercher des fichiers et éventuellement d'exécuter des commandes sur ceux-ci ; la recherche est récursive c'est-à-dire qu'elle concerne le répertoire de départ et toute sa descendance (sous-répertoires ainsi que toute leur descendance …)
- Options les plus fréquentes :
-name: Recherche d'un fichier par son nom-iname: Même chose que-namemais insensible à la casse-type: Recherche de fichier d'un certain type-atime: Recherche par temps écoulé depuis le dernier accès-mtime: Recherche par temps écoulé de dernière modification-newermt: Recherche par date de la dernière modification-newerct: Recherche par date limite de la dernière modification-link: Recherche du nombre de liens au fichier-user: Recherche de fichiers appartenant à l'utilisateur donné-group: Recherche de fichiers appartenant au groupe donné
- Actions les plus fréquentes :
-exec: Exécute la commande donnée aux fichiers trouvés-ok: Même chose que-execmais demande une confirmation-ls: exécute la commandelsà chaque fichier trouvé
- Opérateurs les plus fréquents :
-a: Opérateur ET-o: Opérateur OU!ou-not: Opérateur NOT
- Exemples d'utilisation :
simple
Placez-vous dans le répertoire à partir duquel la recherche récursive doit être effectuée et faites :
find -name monfichier* ''
Recherche un fichier commençant par ''monfichierfind -name monfichier.ogg
Recherche un fichier contenantmonfichieret ayant pour extension.ogg
avancé
find /home/ -name monfichier ''dans toute la descendance de
Recherche le fichier ''monfichier/home/find . -name "*.c"
Recherche tous les fichiers ayant une extension.cfind . -mtime -5
Recherche les fichiers du répertoire courant qui ont été modifiés entre maintenant et il y a 5 joursfind /home/ -mtime -1 ! -type d
Recherche uniquement les fichiers (! -type dsignifie n'était pas un répertoire) ayant été modifiés ces dernières 24hfind / -newermt '2019-05-28 23:00' -not -newermt '2019-05-29 23:00'
Recherche des fichiers modifiés entre le 28 mai 2019 à 23 h 00 et le 29 mai 2019 à 23 h 00find . ! -user root ''
Affiche tous les fichiers n'appartenant pas à l'utilisateur root * ''find . ( -name '.wmv' -o -name '.wma' ) -exec rm {} ;
Recherche et supprime tous les fichiers WMA et WMV trouvésfind . ( -name '*.mp?' ) -exec rm {} ;
Recherche et supprime tous les fichiers avec l'extension .wmx x pouvant être pour mp3 ou mp4 ou tout autre élément mpQuelqueChose trouvésfind . -type f ( -regex '.+/.?[^.]+' ) | sort -f
Recherche, trie sans se préoccuper des majuscules minuscules et affiche tous les fichiers, cachés ou non, sans extension (exemple dans /home .bashrc ou les fichiers de configuration ou des fichiers textes sans extension voir exemple juste ci-dessous)find . -type f ( -regex '.+/.?[^.]+' ) | sort -f > /home/mon_home/ma_liste_de_fichiers_sans_extension
Recherche, trie sans se préoccuper des majuscules minuscules et créé le résultat dans mon_home dans un fichier texte (sans extension) nommé
ma_liste_de_fichiers_sans_extensionfind . -type f ( -iname "*.txt" -o -regex '.+/.?[^.]+' ) -print0 | xargs -0 tar -cvf archive_fichiers_txt_ou_sans_extension_pigz.tar.gz -I pigz
Recherche et créé une archive compressée avec pigz (comme gzip mais en multithread) de tous les fichiers sans extension et ceux avec .txt- *
find . ( -type f -exec sudo chmod 664 "{}" ; ) , ( -type d -exec sudo chmod 775 "{}" ; )
Modifie récursivement les droits en 664 sur les fichiers et en 775 sur les répertoires en une seule instruction
grep
- Équivalent Windows :
find - Signification : global regular expression print
- Recherche une chaîne de caractères dans des fichiers (ou depuis la console si aucun fichier n'est indiqué) ; souvent utilisé en filtre avec d'autres commandes.
- Options les plus fréquentes :
-c: Retourne le nombre d’occurrences contenant "chaine" au lieu des lignes elles-mêmes-n: Retourne les lignes préfixées par leur numéro-i: Insensible à la casse-r: Recherche récursivement dans tous les sous-répertoires ; on peut utiliser la commandergrep-G: Recherche en utilisant une expression rationnelle basique (option par défaut)-E: Recherche en utilisant une expression rationnelle étendue ; on peut utiliser la commandeegrep-F: Recherche en utilisant une chaîne fixe ; on peut utiliser la commandefgrep-v toto: Recherche les lignes qui ne contiennent pas le mottoto
- Exemples d'utilisation :
grep -n montexte monfichier
Retourne toutes les lignes ainsi que leur numéro oùmontexteapparaît dansmonfichier
locate
Son utilisation - assez simple - est détaillée ici : recherche_ligne_commande
cat
- Équivalent Windows :
type - Signification : concatenate
- Affiche le contenu d'un fichier
- Options les plus fréquentes :
-n: Affiche les numéros de ligne-v: Affiche les caractères de contrôles
- Exemple d'utilisation :
cat -n monFichier
AffichemonFichieren numérotant les lignes à partir de 1- créer un fichier texte contenant quelques lignes sans avoir recours à un éditeur :
cat > fichier texte à inclure dans le fichier
Ctrl+Dpour terminer.
more
- Équivalent Windows :
more - Signification : more
- Affiche un fichier page par page
- Options les plus fréquentes :
-s: Regroupe les lignes vides consécutives en une seule-f: Ne coupe pas les lignes longues
- Exemple d'utilisation :
more -sf monFichier
AffichemonFichierpage par page en concaténant les lignes vides sans couper les lignes longues.
less
- Équivalent Windows :
less - Signification : less
- Affiche un fichier en permettant la navigation, ainsi que certaines possibilités sans avoir besoin de lire l'intégralité du fichier, particulièrement intéressant sur des fichiers lourds. La première page est affichée, des commandes permettent de naviguer, comme la touche
Espacepour aller à la page suivante. Supporte les raccourcis de vi(m) telle queGpour aller à la fin du fichier,ggpour revenir au début,/suivi du texte à rechercher, puis valider, puisnpour chercher l’occurrence suivante. - Options les plus fréquentes :
-eou-E: Quitte automatiquement la deuxième fois que la fin du fichier est atteinte, ou dès la première fois avec-E.-F: Quitte automatiquement si le fichier tient sur le terminal.-mou-M: Prompt long a lamore.-rou-R: Autorise les caractères spéciaux.-x: Règle la taille des tabulations.-~: ne comble pas les lignes vides par des ~
- Exemple d'utilisation :
less -Emr~ monFichier
AffichemonFichierpage par page avec un prompt long (affichage du pourcentage du fichier parcouru) en affichant les caractères spéciaux sans combler les lignes vides par des ~
id
La commande id affiche les informations utilisateur et de groupe pour un utilisateur spécifié, ou si aucun utilisateur n'est spécifié, elle affiche les informations sur l'utilisateur courant
id ubuntu-user uid=1001(ubuntu-user) gid=1001(ubuntu-user) groupes=1001(ubuntu-user),29(audio)
commandes système
chmod
- Équivalent Windows :
cacls - Signification : change mode
- Modifie les permissions d'accès à un fichier ou à un répertoire.
Type d'autorisations (une autorisation d'exécution sur un répertoire autorise son ouverture) :+: Ajoute une permission-: Enlève une permission=: Autorise uniquement l'autorisation indiquéer: Lecture ; Valeur octale4w: Écriture ; Valeur octale2x: Exécution ; Valeur octale1s: Utilise les droits du propriétaire ou du groupe lors de l'exécutionu: Propriétaire du fichierg: Groupe propriétaire du fichiero: Tous les autres utilisateursa: Tous les utilisateurs
- Options les plus fréquentes :
-R: Récursif, modifie les autorisations d'un répertoire et tout ce qu'il contient-c: Ne montrer que les fichiers ayant été réellement modifiés-f: Ne pas afficher les messages d'erreur
- Exemples d'utilisation :
chmod ugo+x monRep
Ajoute l'exécution (ouverture) du répertoiremonRepà tous (propriétaire, groupe, autres)chmod go-wx monRep
Supprime l'autorisation d'écriture et l'exécution demonRepau groupe et aux autreschmod u=rw,go=r MonFichier
Fixe l'autorisation de lecture et d'écriture au propriétaire deMonFichieret une autorisation de lecture au groupe et aux autres.chmod 644 MonFichier
Exactement la même chose que ci-dessus mais en utilisant les valeurs octales (6 = 4+2 = lecture + écriture)chmod u=rw,g=r MonFichier
Fixe l'autorisation d'ouverture et de lecture deMonFichierau propriétaire, uniquement la lecture au groupe et interdit tout accès aux autres.chmod 640 MonFichier
Exactement la même chose que ci-dessus mais en utilisant les valeurs octales
chown
- Équivalent Windows :
cacls - Signification : change owner
- Change le propriétaire et le groupe propriétaire d'un fichier
- Options les plus fréquentes :
-R: Modifie récursivement un répertoire et tout ce qu'il contient
- Exemples d'utilisation :
chown autreUtilisateur MonFichier
Change le propriétaire deMonFichierenautreUtilisateurchown -R lui:nous monRep''et le groupe propriétaire en
Change le propriétaire en ''luinousdu répertoiremonRepainsi que tout ce qu'il contient
chgrp
- Signification : change groupe
- Change le groupe propriétaire d'un fichier
- Options les plus fréquentes :
-R: Change récursivement un répertoire et tout ce qu'il contient-h: Change le groupe propriétaire d'un lien symbolique et seulement lui (ne touche pas à la destination du lien)-L: Si fournie avecR, change le groupe propriétaire d'un répertoire et des fichiers qu'il contient s'il est pointé par un lien symbolique rencontré lors de l'exécution
- Exemples d'utilisation :
chgrp unGroupe MonFichier
Change le groupe propriétaire du fichierMonFichierenunGroupe.chgrp -R unGroupe monRep
Change le groupe propriétaire du répertoiremonRepainsi que tout ce qu'il contient enunGroupe.
free
- Signification : free
- Affiche la mémoire disponible / utilisée du système
- Options les plus fréquentes :
-b: Affiche la mémoire en octets (bytes)-k: Affiche la mémoire enkilooctets-m: Affiche la mémoire enmégaoctets-g: Affiche la mémoire engigaoctets-h: Affiche la mémoire en unités pertinentes pour l'humain-s: Spécifie le délai de réaffichage de la mémoire-t: Affiche en plus la ligne des totaux (RAM + swap)
- Exemples d'utilisation :
free -th
Affiche la mémoire du système en unités pertinentes pour l'humain ainsi que la ligne des totaux (RAM + swap)free -m -s 5
Affiche la mémoire du système en mégaoctets toutes les 5 secondes
mount
- Signification : mount
- Monter un système de fichiers
- Options les plus fréquentes :
-a: Monter tous les systèmes de fichiers déclarés dans le fichier/etc/fstab-t: Précise le type de fichier à monter-o: Ajouter une option. Options adjointes à-oles plus fréquentes :auto: Permet d'être monté par-aasync: Les entrées/sorties sur le système de fichiers seront asynchronesdefaults: Utilise les optionsrw,suid,dev,exec,auto,nouser, etasync.dev: Interprète les fichiers spéciaux de périphériques du système présent dans/dev/exec: Permet l'exécution de fichiers binaires du système monténoauto: Empêche d'être monté avec-anodev: Ne pas interpréter les fichiers spéciaux de périphériques du systèmenoexec: Empêche l'exécution de fichiers binaires du système monténouser: Ne pas autoriser d'autres utilisateurs que root (ou sudo) à monter le système de fichiers (comportement par défaut)ro: Monte le système en lecture seulerw: Monte le système en lecture et écrituresuid: Prend en compte les bits SetUID ou SetGID du système montéuser: Permet aux utilisateurs ordinaires de monter et démonter le système de fichiers (impliquenoexec,nosuid, etnodevsauf si surchargées)
- Exemples d'utilisation :
mount
Liste tous les systèmes de fichiers actuellement montésmount -t iso9660 monFichier.iso /mnt/monIso -o loop
Monte dans un périphérique boucle (loop) le fichier isomonFichier.isodans le répertoire/mnt/monIso.mount -t vfat -o defaults,rw,user,umask=022,uid=1000 /dev/sda1 /mnt/Mondisk/
Monte un disque dur USB (/dev/sda1) formaté en FAT32 (-t vfat) en lecture écriture (rw) dans le répertoire/mnt/Mondisk/ ; tous les utilisateurs peuvent le démonter (user), les droits d'exécution (uid=1000) sont fixés à l'utilisateur ayant l'UID 1000 (sous Ubuntu, l'uid 1000 correspond au premier utilisateur créé) et la création d'un fichier s'effectuera avec les permissions 644 (rw-r---r--) et pour un répertoire 644 (rwxr-xr-x) (umask 022) 666-022
- Ressource :
- À lire aussi mount_fstab
umount
- Signification : unmout
- Démonte un système de fichiers
- Options les plus fréquentes :
-a: Démonte tous les systèmes de fichiers présents dans/etc/mtab-d: Si le système monté est un périphérique loop, libérer le périphérique.-f: Forcer le démontage-r: Si impossible de démonter, monter en lecture seule
- Exemples d'utilisation :
umount /mnt/Mondisk
Démonte le système de fichiers monté dans/mnt/Mondiskumount -f /dev/cdrom
Force le démontage du périphérique CDROMumount -d /mnt/monIso
Démonte et libère le périphérique loopumount -a
Démonte tous les systèmes de fichiers montés (à l'exception de/proc) ; ne sert que lorsque l'on veut redémarrer ou éteindre sa machine manuellement et proprement.commande non valide
sudo
- Équivalent Windows :
runas - Signification : substitute user do
- Permet d'exécuter des commandes en tant qu'un autre utilisateur, donc avec d'autres privilèges que les siens.
- Options les plus fréquentes :
-s: Importe les variables d'environnement du shell-k: Lorsque l'on utilisesudo, il garde en mémoire le mot de passe ; cette option déconnecte l'utilisateur et forcera à redemander un mot de passe sisudoest exécuté avant le timeout défini.
- Exemples d'utilisation :
- '' sudo reboot
avec les droits de l'utilisateur root
Lance la commande ''reboot
- Ressources :
- Site officiel de
sudo: Sudo Main Page - Voir aussi la commande
visudo
ps
- Équivalent Windows :
tasklist - Signification : processes snapshot
- Affiche les processus en cours
- Options les plus fréquentes :
-u: Affiche les processus de l'utilisateur qui exécute la commande-au: Affiche les processus de tous les utilisateurs-aux: Affiche l'intégralité des processus du système. Équivalent àps -A-faux: Affiche tous les processus du système en les regroupant par enchaînement d'exécution.
- Exemples d'utilisation :
ps -u
Tous les processus de l'utilisateur courantps -aux
Tous les processus en cours
ps -aux | grep tuxpaint
ne vous retournera que les processus contenant tuxpaint
Avec l'utilisation de grep une ligne supplémentaire apparaît contenant: grep -E –color=auto tuxpaint correspondant à l'action de la recherche avec grep, à ignorer. Si vous ne voulez pas que ça apparaisse:
ps aux | egrep '[t]uxpaint'
kill / killall
- Équivalent Windows :
taskkill - Signification : kill / kill all
- Permet d'envoyer un signal à un processus ;
killne comprend que les PID (Process Identifier, numéro d'ordre du processus),killallquant à lui comprend le nom du processus. - Options les plus fréquentes :
-s: Indique quel signal envoyer au processus ; Le signal peut être identifié soit par son nom (exemple : SIGTERM) soit par son numéro (exemple : 9) ; Cette option peut être remplacée par le numéro du signal :-s 9est équivalent à-9.-l: Affiche la liste des signaux connus.
- Les signaux les plus courants sont :
HUPsignal1: signal de fin d'exécution où le processus doit relire son fichier de configuration.
TERMsignal15: Le signal Terminate indique à un processus qu'il doit s'arrêter.
KILLsignal9: Le signal Kill indique au système qu'il doit arrêter un processus qui ne répond plus. - Exemples d'utilisation :
kill -15 14774: Envoie le signal 15, ou TERM, au processus ayant le numéro 14774 ce qui a pour effet determinerproprement le processus.kill -9 7804: Envoie le signal 9, ou KILL, au processus ayant le numéro 7804 ce qui a pour effet detuerle processus.killall -TERM firefox-bin: Envoie le signal TERM, ou 15, au processus firefox-bin ce qui a pour effet de le fermer.
- Il est généralement conseillé de lancer des signaux de faible importance avant de lancer la grosse artillerie. En pratique, tester dans l'ordre et deux fois chacune de ces commandes :
kill pid (envoie le signal 15, TERM) kill -INT pid (envoie le signal 2, INT) kill -KILL pid (envoie le signal 9, KILL)
kill et kill -TERM sont donc équivalents.
- Ça ne marche pas ? Deux possibilités, diagnosticable à l'aide de la commande
ps aux|grep nom_du_process:- Le processus est devenu « zombie ». Dans ce cas, la commande précédente affiche un 'Z'. Pour le tuer, il faut tuer ou redémarrer son processus parent, que l'on peut déterminer avec la commande
ps -efoups afx. - Le processus est ininterruptible (il apparaît comme 'D' avec la commande précédente), bloqué sur une opération d'entrée/sortie (I/O), vraisemblablement suite à un bug dans un pilote matériel. Dans ce cas, aucune issue : la politique des développeurs du noyau linux est de considérer qu'avoir la main sur ce type de processus compromettrait trop profondément la stabilité du système. C'est l'un des rares cas où l'on n'a pas d'autre choix que de redémarrer l'ordinateur.
shutdown
- Équivalent Windows :
shutdown - Signification : shutdown
- Permet d'éteindre ou relancer la machine au bout d'un temps déterminé (requis : on peut mettre now pour éteindre immédiatement). Les nouvelles connexions seront bloquées quelques minutes avant l'extinction et les utilisateurs connectés sont prévenus à l'avance.
- Options les plus fréquentes :
-r: pour relancer (reboot).-P: pour éteindre.-t: pour programmer le temps (en secondes)-c: pour annuler-i: pour programmer l’arrêt de l'ordinateur
* Exemples d'utilisation :shutdown -r now: reboot immédiatshutdown -P now: extinction immédiateshutdown -r -t 600: reboot dans 600 secondes (10 minutes)shutdown -c: annule toutes programmation d'extinctionshutdown - i: c'est une minuterie qui permet d'éteindre complètement l'ordinateur après une durée spécifiée par l'utilisateur.
shutdown -P now fonctionne.
passwd
- Signification : password
- Permet de modifier le mot de passe d'un utilisateur.
- Options les plus fréquentes :
-S: Affiche l'état d'un compte (nom du compte, bloqué (L), si l'utilisateur n'a pas de mot de passe (NP) ou a un mot de passe utilisable (P), date de dernière modification du mot de passe, durée minimum avant modification, durée maximum de validité, durée d'avertissement, durée d'inactivité autorisée)
À moins d'être administrateur système ou réseau (auquel cas pourquoi lisez-vous ces lignes?) cette commande s'utilise généralement sans option.
- Exemple d'utilisation :
passwd <nom_compte_a_modifier>
Demande à changer le mot de passe
groups
- Signification : groups
- Affiche les groupes auxquels appartient un utilisateur
- Exemples d'utilisation :
groups
Affiche la liste des groupes auxquels appartient l'utilisateur ayant tapé la commande.groups MonUtilisateur
Affiche tous les groupes auxquels appartient l'utilisateurMonUtilisateur.
adduser
- Signification : add user
- Ajoute un utilisateur, ou un groupe, au système.
- Options les plus fréquentes :
--disabled-login: Crée un nouvel utilisateur qui ne pourra se connecter jusqu'à ce qu'un mot de passe lui soit attribué.--disabled-password: Comme--disabled-loginsauf que le nouvel utilisateur pourra se connecter en SSH avec des clefs RSA : pratique pour créer un utilisateur qui ne se connectera que via SSH.--system: Crée un utilisateur système.--group --system: Un groupe ayant le même nom et le même identifiant numérique que l'utilisateur système est créé.--home tel-répertoire: Utilise "tel-répertoire" comme répertoire personnel de l'utilisateur, plutôt que la valeur par défaut. Si le répertoire n'existe pas, il est créé, et les fichiers du squelette y sont copiés.--no-create-home: Ne crée pas de répertoire HOME.
- Exemples d'utilisation :
adduser MonUtilisateur
Crée l'utilisateurMonUtilisateur.adduser --disabled-password --no-create-home UtilisateurSSH
Crée un utilisateurUtilisateurSSHsans mot de passe ni répertoire personnel dans /home, qui ne pourra pas se connecter à la machine directement, mais en SSH, oui.adduser --disabled-password --home /home/UtilisateurSSH UtilisateurSSH
Même chose que ci-dessus sauf qu'on lui donne le même répertoire HOME qu'à l'utilisateurUtilisateurSSH créé en premier.adduser UtilisateurSSH fuse
Ajoute l'utilisateurUtilisateurSSH (créé préalablement) dans le groupefuse. On peut faire aussi un:gpasswd -a $USER fuseadduser NouvelUtilisateur --ingroup users
Crée l'utilisateurNouvelUtilisateur et l'ajoute au groupeusers.adduser NouvelUtilisateur --ingroup users --uid 1000
Crée l'utilisateurNouvelUtilisateuravec l'uid 1000 et l'ajoute au groupeusers(utile pour écrire sur une partition ext4 externe au système ou un dossier appartenant au uid 1000).
deluser
- Signification : delete user
- Supprime un utilisateur du système.
- Option la plus fréquente :
--system: Ne supprime l'utilisateur que si c'est un utilisateur système.--remove-home: Supprime l'utilisateur ainsi que son répertoire dans le home.
- Exemple d'utilisation :
deluser UtilisateurSSH
Supprime l'utilisateurUtilisateurSSHdeluser –remove-home NouvelUtilisateur
Supprime l'utilisateurNouvelUtilisateurainsi que le répertoire/home/NouvelUtilisateurdeluser NouvelUtilisateur users
Supprime l'utilisateurNouvelUtilisateurdu groupeusers
usermod
- Signification : user modification
- Modifie les paramètres d'un compte utilisateur.
- Options les plus fréquentes :
-G, –groupsGROUPE1[,GROUPE2,…[,GROUPEN]]] : Ajouter l'utilisateur aux groupes précédents. ATTENTION : si l'utilisateur fait partie d'un groupe qui n'est pas listé dans votre ligne de commande ("admin" par exemple), l'utilisateur sera supprimé de ce groupe avec des conséquences pouvant être désastreuses. Ce comportement peut être changé avec l'option-a, qui permet d'ajouter l'utilisateur à une liste de groupes supplémentaires sans prendre le risque de le supprimer d'autres groupes importants.
- Exemples d'utilisation :
usermod -aG toto machin
Ajoute l'utilisateur machin au groupe toto sans supprimer machin de ses groupes d'origine.usermod -g group1 user1
Défini pour l'utilisateur user1 le groupe group1 comme groupe primairesudo usermod -d /home/nouveau_login -m -l nouveau_login ancien_login
Permet de renommer le répertoire (dossier) utilisateur et de changer son nom. Pratique lorsque le pc change de mains.
df
- Signification : disk free
- Affiche la quantité d'espace disque utilisée par les systèmes de fichiers.
- Options les plus fréquentes :
-a: Affiche tous les systèmes de fichiers, y compris ceux de 0 blocs (par exemple : proc, sysfs, usbfs et tmpfs)-h: Ajoute aux valeur unMpour mébioctet (2^20 octets) pour que ce soit plus lisible.-H: Pareil que-hmais en mégaoctets (10^6 octets).-T: Affiche le type du système de fichiers.
- Exemples d'utilisation :
df -h
Affiche la quantité d'espace disque utilisé en mébioctets par les systèmes de fichiers.df /home
Affiche la quantité d'espace disque utilisé par la partition /home (si elle existe)df -T -h
Affiche le nom des partitions et leur point de montage.
- Voir aussi dfc, avec affichage en couleur de l'occupation des systèmes de fichiers.
fdisk
- Équivalent Windows :
fdisk - Signification : format disk
- Formater un disque dur et modifier une table de partition
- Options les plus fréquentes :
-lInformations détaillées des disques
- Exemples d'utilisation
sudo fdisk /dev/sdasudo fdisk -l
du
- Équivalent Windows :
dir - Signification : disk usage
- Affiche l'espace disque utilisé par les fichiers et/ou les répertoires
- Options les plus fréquentes :
-a: Afficher pour tous les fichiers et pas uniquement les répertoires.-s: Afficher le total sans lister les différents fichiers-c: Faire un total après avoir tout affiché.-h: Ajoute un suffixe correspondant à l'unité (K, M, G)-H: Idem que-hmais en puissance de 10
- Exemple d'utilisation :
du -hs dir
Affiche la taille du répertoire dir ou du répertoire courant si dir est omis.du -ch /home/MonUtilisateur
Affiche la taille des répertoires contenus dans/home/MonUtilisateuren utilisant un suffixe puis le total.du -sm ~/Images/*.jpg
Affiche la taille totale des fichiers JPEG contenus dans le répertoire~/Images
uptime
- Signification : uptime
- Indique depuis quand le système fonctionne.
- Exemples d'utilisations :
uptime
Affiche l'heure actuelle, la durée depuis laquelle le système fonctionne, le nombre d'utilisateurs actuellement connectés, et la charge système moyenne ; Commande de geek par excellencequi ne sert pas à grand chose pour un utilisateur lambda, mais utile pour un administrateur.
lspci
- Signification : list peripheral component interconnect
- Liste tous les périphériques PCI
- Option la plus fréquente :
-v: Affiche des informations plus détaillées
- Exemples d'utilisation :
lspci
lsusb
- Signification : list universal serial bus
- Liste tous les périphériques USB
- Option la plus fréquente :
-v: Affiche des informations plus détaillées
- Exemples d'utilisation :
lsusb
uname
- Signification : unix name
- Affiche des informations sur le système.
- Options les plus fréquentes :
-s: Affiche le nom du noyau.-n: Affiche le nom de la machine (hostname).-r: Affiche la révision du noyau-v: Affiche la version du noyau-m: Affiche le type de processeur de la machine (i386, i686, etc.)-o: Affiche le nom du système d'exploitation-a: Afficher les informations en utilisant les options-snrvmo
- Exemple d'utilisation :
uname -a
Affiche tout.
apt-get
apt !
- Signification : avanced package tool - get
- Permet l'installation et la désinstallation de paquets en tenant compte des dépendances ainsi que le téléchargement des paquets s'ils sont sur une source réseau.
- Commandes les plus fréquentes :
update: Met à jour la liste des paquets disponibles en fonction des sources fournies.upgrade: Met à jour tous les paquets déjà installés.dist-upgrade: Pareil à upgrade mais permet en plus de passer à une version supérieure du noyau et de certains paquets,sans changer de version d'ubuntu.install: Installe un ou plusieurs paquets.remove: Supprime un ou plusieurs paquets.clean: Efface du système les installateurs, sans désinstaller de paquets.
- Options les plus fréquentes :
-f: Utilisée avecinstallouremovecette option permet de réparer un système dont les dépendances sont défectueuses.-m: Ignore les paquets manquants (à éviter si on ne sait pas exactement ce que l'on fait).-s: Fait une simulation des actions à mener sans rien toucher au système.-y: Répond automatiquement oui à toutes les questions.-u: Affiche les paquets mis à jour.--purge: À utiliser conjointement avecremovepour supprimer tout ce qui peut l'être (fichiers de configuration par exemple, sauf ceux éventuellement présents dans /home).--reinstall: Réinstaller les paquets avec leur version plus récente.
- Exemples d'utilisation :
sudo apt-get update
Met à jour la liste des paquetsdisponibles.sudo apt-get upgrade
Met à jour tous les paquets installés.sudo apt-get install paquet1 paquet2
Installe paquet1 paquet2.sudo apt-get --purge remove paquet3
Supprime paquet3 ainsi que tous ses fichiers de configuration sauf ceux éventuellement présents dans /home.
- Ressources :
man apt-get- Chez Debian le APT HOWTO
apt.
apt-cache
- Signification : avanced package tool - cache
- Gestion des paquets et manipulation du cache par APT
- Commandes les plus fréquentes :
show: Affiche les informations associées au paquet.search: Recherche l'expression régulière donnée sur tous les paquets disponibles.depends: Affiche les paquets dépendants du paquet donné.rdepends: Affiche les paquets qui ont en dépendance le paquet donné.madison: Affiche le dépôt dans lequel se trouve le paquet donné.
- Options les plus fréquentes :
-f: Affiche tous les champs d'information.-n: Ne recherche que dans les noms des paquets.
- Exemples d'utilisation :
apt-cache search -n irc
Recherche et affiche tous les paquets ayant dans leur nom irc.
file
- Signification : file
- Permet d'identifier le type de fichier grâce à son MIME en utilisant les tests magic sur le contenu des fichiers (en général les premiers bits). Les tests sont fournis par le paquet libmagic1.
- Exemples d'utilisation :
file dossier/*
Affiche une ligne de description pour chaque fichier contenu dans le dossier.
- Voir aussi mediainfo-gui qui affiche les métadonnées et autres diverses informations pour les fichiers de type image, audio et vidéo.
systemctl
- Signification : system control
- Équivalent Windows :
net/sc - Contrôler le lancement d'un service et afficher son état.
- Commandes les plus fréquentes:
start: Lancer le service.stop: Arrêter le service.status: Afficher l'état du service.enable: Le service se lancera au démarrage.disable: Le service ne se lancera plus au démarrage.
- Exemple d'utilisation :
systemctl start mysql.service
Lancer le service "MySQL".systemctl stop bluetooth.service
Arrêter le service "Bluetooth".
Voir aussi
Liens internes
Tutoriels vidéos
Une série de tutoriels vidéos concernant les commandes Unix est en cours de réalisation, voici les 3 vidéos disponibles qui donnent de bonnes bases.
- Quelques commandes indispensables Partie 2 (suite)
- Des commandes Unix avancées Partie 3 (suite)
À noter que 2 autres vidéos vont venir sur le thème des chaînages de commandes et les scripts bash !
Liens externes
- Le site de Nadir Soualem très pédagogique dédié à Linux http://www.math-linux.com, on y trouve des tutos très clairs, notammentune introduction à la console
- Le guide de référence Debian (Ubuntu est dérivée de Debian)
- Les commandes GNU/Linux sur le Wiki de Debian-Facile
- Une plaquette à imprimer et à garder dans sa poche avec les commandes importantes téléchargeable librement ici
- Une seconde plaquette, sur les commandes, en couleur celle-ci, est disponible ici
- docopt (EN) règles de passages des arguments et options (–help ou -h, -c ou –color=auto… pas forcément respectées par les commandes)
Contributeurs : CyberSDF, Navista, …
