Académique Documents
Professionnel Documents
Culture Documents
LINUXNDG
BIENVENUE !
Bonjour, et bienvenue dans le module NDG Linux Unhatched ! Nous sommes heureux
de vous offrir cette brève introduction au monde de Linux. Avant de commencer, nous
aimerions profiter de l'occasion pour vous expliquer l'intention et les objectifs de ce
module.
Ne vous inquiétez pas si vous avez peu ou pas d'expérience Linux. Ce module est une
introduction s’adressant aux débutants qui n’ont aucune expérience ou formation sur
Linux. Si vous trouvez ce matériel utile, vous pouvez envisager de continuer avec nos
cours NDG Linux Essentials ou NDG Introduction to Linux pour aller plus loin et
développer des connaissances supplémentaires. Des informations sur ces cours sont
disponibles à la fin de ce module.
Comme vous le savez peut-être déjà, Linux est présent dans un grand nombre de
systèmes informatiques. Il est présent dans les automobiles, les satellites, les
montres, les téléviseurs. On le retrouve également dans les superordinateurs.
Quoique linux soit peu utilisé dans les ordinateurs de bureau comme système
d’exploitation principal, il a su faire ses preuves dans les serveurs, les objets
connectés (ou Internet des Objets (IdO)), les équipements de mise en réseau, les
smartphones et de nombreux autres appareils qui nous entourent. Depuis le routeur
domestique fournissant votre connexion Internet au serveur sur lequel ce cours est
hébergé, il est probable que plusieurs autres périphériques Linux vous permettent
actuellement de lire cette page.
Nous espérons que le module NDG Linux Unhatched vous sera utile et félicitations
pour vos premiers pas dans le monde de Linux !
Apprendre Linux est une excellente façon de commencer ! Pourquoi Linux est-il une
compétence importante à acquérir dans le monde technologique d'aujourd'hui ?
La principale raison pour laquelle l'apprentissage de Linux est utile est que Linux est
utilisé presque partout ! Linux est utilisé sur les ordinateurs de bureau et les
ordinateurs portables, les serveurs Web, les appareils mobiles (Android), la
technologie du cloud public (par ex. Google, Amazon, etc.), les Chromebooks et
l’interconnexion en réseau (c.-à-d. les réseaux Cisco). Bien que vous n'ayez jamais
utilisé Linux sur un ordinateur de bureau ou un ordinateur portable, il est probable
que vous utilisiez d'autres technologies fonctionnant sous Linux, comme un téléphone
portable fonctionnant sous Android, une tablette ou des sites Web populaires tels que
Facebook, Twitter et Amazon. D’ailleurs, on estime que les serveurs fonctionnant
sous Linux génèrent plus de la moitié des pages Web sur Internet.
Vous avez peut-être entendu parler de Linux et pensé que seuls des experts en
informatique l'utilisent pour la programmation, le développement, ou peut-être
même le piratage ! Bien qu'il soit vrai que de nombreux techniciens utilisent Linux,
cela ne signifie pas que Linux est difficile à apprendre ou n'est pas utile pour des
débutants.
3
LINUXNDG
Comprendre Linux, et en particulier l'interface de ligne de commande Linux, vous
aidera à mieux comprendre l'informatique tout en vous donnant des compétences
informatiques de base que vous pourrez utiliser dans votre future carrière.
Pour comprendre pourquoi les compétences Linux sont uniques, examinons l'interface
graphique utilisateur (en anglais GUI pour graphical user interface). C'est l'interface
que vous utilisez probablement sur votre smartphone, tablette ou ordinateur
aujourd'hui. Une interface graphique affiche des icônes et des images que vous
pouvez sélectionner pour indiquer à votre appareil quelle application vous désirez
utiliser ou pour accéder aux paramètres de configuration de votre appareil. Derrière
l’interface graphique se cache les programmes développés par les programmeurs.
Lorsque vous cliquez sur une icône ou un dossier dans une interface graphique, cela
envoie une commande au code indiquant au système ce qu'il faut faire.
Bien que Linux soit accessible via une interface graphique, il dispose également d'un
outil plus efficace pour effectuer les mêmes actions qu'une interface graphique,
l'interface de ligne de commande (en anglais CLI pour Command Line Interface).
4
LINUXNDG
La ligne de commande Linux est une interface texte qui accepte les commandes que
vous saisissez. Ces commandes génèrent l'exécution d'une action sur le système
d'exploitation du système informatique. Bien sûr, les fenêtres et les icônes sont
faciles à utiliser, cependant, la ligne de commande est championne en ce qui concerne
l'administration du système et le dépannage, car elle donne une image claire de ce
que fait le système à un moment donné.
Sachant cela, pourquoi apprendre Linux est-il un bon moyen de commencer pour
quelqu'un qui envisage une carrière en l'informatique ? Comme indiqué
précédemment, l'utilisation de Linux est répandue et continue de croître dans tous les
domaines de la technologie. Qu'est-ce que des entreprises et des organisations
comme la NASA, McDonald's, la bourse de New York, DreamWorks Animation et le
département américain de la Défense ont-ils tous en commun ? Oui, vous avez bien
deviné, ils utilisent tous Linux.
Ces entreprises ont autre chose en commun : elles reconnaissent que l'investissement
dans la technologie est important dans un monde soucieux d'adopter de nouvelles
technologies pour innover et résoudre des problèmes. La prolifération de la
technologie dans presque tous les aspects de la vie a résolu de nombreux problèmes,
mais a également créé de nouveaux défis. Par exemple, maintenant que presque tout
peut être fait en ligne, nous créons des données numériques à un rythme rapide, ce
qui crée à son tour une demande pour ces données. Les compétences techniques
nécessaires à l'analyse, au traitement, à la protection et à la transmission des
données sont donc également très demandées. Apprendre Linux peut vous aider à
acquérir ces compétences. Voici des exemples de quelques professions qui nécessitent
des connaissances du système Linux :
Les systèmes d'exploitation Linux existent sous de nombreuses formes. Toute une
variété de distributions disponibles répondent aux besoins et aux exigences de
nombreux secteurs informatiques. Par exemple, les professionnels de la
cybersécurité peuvent utiliser Linux Kali, les développeurs Linux Ubuntu, les
utilisateurs réguliers Linux Mint et les serveurs d'entreprise peuvent fonctionner sur
Red Hat Enterprise Linux.
Réfléchissez à ceci
Voici d’autres bonnes raisons d’apprendre et d’utiliser Linux : il est gratuit, facile à
installer, open source. Il existe une communauté Linux dynamique qui saura vous
apporter aide et support. Elle permet aux débutants qui veulent développer leurs
compétences informatiques de commencer à utiliser Linux facilement.
Comme vous pouvez le voir, les raisons d'apprendre et d'explorer Linux sont
nombreuses !
6
LINUXNDG
AVANT DE COMMENCER
Tour
Si vous n'avez jamais suivi de cours NDG Online auparavant, vous pouvez vous
familiariser avec l'interface du cours en commençant par une visite guidée (Start
Tour). Vous pouvez y accéder à tout moment en utilisant le menu Aide (Help) dans le
coin supérieur droit.
Objectifs
Le contenu de ce cours aligne à divers objectifs de l'examen LPI Linux Essentials 010-
160. Veuillez noter que Linux Unhatched est conçu en tant que un module
exploratoire pour les débutants. Ce premier module aborde les principaux thèmes de
LPI Linux Essentials.Toutefois, il n'est pas complet et ne vous prépare pas pour
l'examen. Pour plus d'informations, cliquez sur l'onglet Objectifs :
Machines virtuelles
À droite du contenu se trouve une machine virtuelle Linux sur laquelle vous pourrez
saisir les lignes de commandes. Tous les exemples de ce cours ont été créés sur nos
machines et nous vous encourageons à les essayer ! Sachez que la sortie que vous
voyez sur l'interface de ligne de commande ne correspondra pas toujours exactement
à l'exemple du contenu.
7
LINUXNDG
Qu'est-ce qu'une commande ? Une commande est un programme logiciel qui, lorsqu'il
est exécuté sur l'interface de ligne de commande (CLI), exécute une action sur
l'ordinateur. Lorsque vous tapez une commande, un processus est exécuté par le
système d'exploitation qui peut lire l'entrée, manipuler les données et produire la
sortie. Une commande exécute un processus sur le système d'exploitation, ce qui
permet à l'ordinateur d'effectuer une tâche spécifique.
Le nom de la commande est souvent basé sur ce qu'elle fait ou ce que le développeur
qui a créé la commande pense décrira le mieux la fonction de la commande. Par
exemple, la commande ls affiche une liste des fichiers présent dans le répertoire
courant. Associer le nom de la commande à quelque chose de mnémonique décrivant
ce qu'elle fait peut vous aider à mémoriser les commandes plus facilement.
Réfléchissez à ceci
sysadmin@localhost:~$ LS
-bash: LS: command not found
En d'autres termes, vous tapez une commande, suivie de toutes les options et/ou
arguments avant d'appuyer sur la touche Entrée. Généralement, les options modifient
le comportement de la commande et les arguments sont des éléments ou des valeurs
sur lesquels la commande doit agir. Bien qu'il existe certaines commandes sous Linux
qui ne sont pas entièrement compatibles avec ce modèle, la plupart des commandes
utilisent cette syntaxe ou quelque chose de similaire.
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
Arguments
Un argument peut être utilisé pour spécifier quelque chose sur lequel la commande
doit agir. La commande ls peut recevoir le nom d'un répertoire en tant qu'argument,
et afficher le contenu de ce répertoire. Dans l'exemple suivant, le répertoire
Documents sera utilisé comme argument :
sysadmin@localhost:~$ ls Documents
School alpha-second.txt food.txt linux.txt os.csv
9
LINUXNDG
Work alpha-third.txt hello.sh longfile.txt people.csv
adjectives.txt alpha.txt hidden.txt newhome.txt profile.txt
alpha-first.txt animals.txt letters.txt numbers.txt red.txt
La sortie qui en résulte est une liste de fichiers contenus dans le répertoire
Documents.
Parce que Linux est open source, quelques secrets intéressants ont été ajoutés par les
développeurs. Par exemple, la commande aptitude est un outil de gestion de paquets
disponible sur certaines distributions Linux. Cette commande acceptera moo comme
argument :
Vous retrouverez plus d'information sur cette astuce dans les modules à venir.
« Linux est développé par une communauté, vous pouvez accéder au code source et y
contribuer ! »
Options
Les options peuvent être utilisées pour modifier le comportement d'une commande.
Sur la page précédente, la commande ls a été utilisée pour lister le contenu d'un
répertoire. Dans l'exemple suivant, l'option -l est ajoutée à la commande ls, ce qui
entraîne une sortie «long display» (affichage long), ce qui signifie que la sortie
donne plus d'informations sur chacun des fichiers répertoriés:
10
LINUXNDG
sysadmin@localhost:~$ ls -l
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos
sysadmin@localhost:~$ ls -r
Videos Templates Public Pictures Music Downloads Documents Desktop
Plusieurs options peuvent être utilisées simultanément, soit des options distinctes
comme -l -r, soit des options combinées comme -lr. La sortie des exemples suivants
sera identique :
ls -l -r
ls -rl
ls -lr
Comme nous l'avons déjà mentionné, -l donne un format de liste long tandis que -r
inverse la liste. Le résultat de l'utilisation des deux options est une longue liste
affichée dans l'ordre inverse :
sysadmin@localhost:~$ ls -l -r
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop
sysadmin@localhost:~$ ls -rl
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
11
LINUXNDG
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop
En combinant plusieurs options -v, nous pouvons obtenir une variété de réponses:
aptitude -v -v moo
aptitude -vv moo
Continuez à ajouter des options -v pour voir combien de réponses uniques vous
pouvez obtenir !
La commande pwd peut être utilisée pour vous situer dans le système de fichiers. La
commande pwd affiche le répertoire de travail, c'est-à-dire votre emplacement actuel
dans le système de fichiers :
pwd [OPTIONS]
Réfléchissez à ceci
Réfléchissez à ceci
Notez que nos machines virtuelles utilisent une invite qui affiche le répertoire de
travail actuel dans la couleur bleue. Dans la première invite ci-dessus, le bleu ~ est
équivalent à /home/sysadmin, représentant le répertoire personnel de l'utilisateur.
sysadmin@localhost:~$
Après s'être déplacé dans les répertoires (nous allons apprendre comment le faire
dans la section suivante), le nouvel emplacement peut également être confirmé dans
la nouvelle invite, encore une fois affichée en bleu.
sysadmin@localhost:/etc/calendar$
Lorsque vous démarrez une nouvelle machine virtuelle, soit en ouvrant le cours, soit
après avoir utilisé le bouton de réinitialisation, vous êtes connecté en tant
qu'utilisateur sysadmin dans votre répertoire personnel, en bleu ci-dessous :
14
LINUXNDG
cd [options] [path]
sysadmin@localhost:~$ cd Documents
sysadmin@localhost:~/Documents$
Les répertoires sont équivalents aux dossiers sous Windows et Mac OS. Comme ces
systèmes d'exploitation populaires, la structure d'annuaire Linux comporte un niveau
supérieur. Celui-ci ne s’appelle pas « Poste de travail », mais « répertoire root » et
est représenté par le caractère /. Pour passer au répertoire root, utilisez le caractère
/ comme argument de la commande cd.
sysadmin@localhost:~$ cd /
15
LINUXNDG
L'argument de la commande cd est plus que le nom d'un répertoire, c'est en fait un
chemin. Un chemin est une liste de répertoires séparés par le caractère /. Par
exemple, /home/sysadmin est le chemin d'accès à votre répertoire personnel :
16
LINUXNDG
Si vous considérez le système de fichiers comme une carte, les chemins sont les
directions étape par étape ; ils peuvent être utilisés pour indiquer l'emplacement de
n'importe quel fichier dans le système de fichiers. Il existe deux types de chemins :
absolus et relatifs. Les chemins absolus commencent à la racine (root) du système de
fichiers, les chemins relatifs commencent à partir de votre emplacement actuel.
Chemins absolus
sysadmin@localhost:/$ cd /home/sysadmin
sysadmin@localhost:~$
sysadmin@localhost:~$ pwd
/home/sysadmin
Chemins relatifs
Un chemin relatif donne des directions à un fichier par rapport à votre emplacement
actuel dans le système de fichiers. Les chemins relatifs ne commencent pas par le
caractère /, ils commencent par le nom d'un répertoire. Regardez le au premier
exemple de commande cd. L'argument est un exemple du chemin relatif le plus
simple : le nom d'un répertoire dans votre emplacement actuel.
sysadmin@localhost:~$ cd Documents
sysadmin@localhost:~/Documents$
L'image ci-dessous montre une carte des fichiers contenus dans le répertoire
sysadmin. Vous êtes actuellement dans le répertoire Documents et souhaitez vous
déplacer vers le répertoire Art :
18
LINUXNDG
Un chemin relatif commence par le répertoire courant, mais vous ne l'incluez pas
dans le chemin. La première étape consisterait à se déplacer dans le répertoire
School, puis à se déplacer dans le répertoire Art. Utilisez le caractère / pour séparer
les noms de répertoire. Le résultat School/Art est un chemin relatif entre le répertoire
Documents et le répertoire Art :
19
LINUXNDG
sysadmin@localhost:~/Documents/$ cd School/Art
sysadmin@localhost:~/Documents/School/Art$
sysadmin@localhost:~/Documents/School/Art$ pwd
/home/sysadmin/Documents/School/Art
Réfléchissez à ceci
Réfléchissez à ceci
cd School/Art
cd School
cd Art
Raccourcis
Le ..
21
LINUXNDG
Quel que soit le répertoire dans lequel vous vous trouvez, le double point ..
représente toujours un répertoire supérieur par rapport au répertoire courant,
parfois appelé répertoire parent. Pour passer du répertoire Art au répertoire School :
sysadmin@localhost:~/Documents/School/Art$ cd ..
sysadmin@localhost:~/Documents/School$
Le .
Quel que soit le répertoire dans lequel vous vous trouvez, le point . représente
toujours votre répertoire actuel. Pour la commande cd ce raccourci n'est pas très
utile, mais il le sera pour les commandes couvertes dans les sections suivantes.
Le caractère ~
sysadmin@localhost:~/Documents/School$ cd ~
La commande ls est utilisée pour lister le contenu d'un répertoire. Vous l'avez déjà vu
utilisée dans des exemples précédents, mais cette page vous aidera à vous assurer
que vous êtes à l'aise avec son utilisation.
ls [OPTIONS] [FICHIER]
Par défaut, lorsque la commande ls est utilisée sans options ni arguments, elle liste
les fichiers dans le répertoire courant :
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
Pour connaître les détails d'un fichier, tels que le type de fichier, les autorisations,
les propriétés ou l'horodatage, affichez une longue liste à l'aide de l'option -l de la
commande ls. Ci-dessous, l’affichage du contenu du répertoire /var/log est utilisée
comme exemple, car il présente toute une variété de sorties :
sysadmin@localhost:~$ ls -l /var/log/
total 832
-rw-r--r-- 1 root root 17869 Mar 14 17:48 alternatives.log
drwxr-x--- 2 root adm 4096 Mar 14 17:48 apache2
drwxr-xr-x 2 root root 4096 Mar 14 17:45 apt
22
LINUXNDG
-rw-r----- 1 syslog adm 380 Jul 28 03:45 auth.log
-rw-r--r-- 5 root root 47816 Mar 2 23:10 bootstrap.log
-rw-rw---- 5 root utmp 0 Mar 2 23:10 btmp
-rw-r----- 1 syslog adm 324 Jul 28 03:45 cron.log
-rw-r----- 1 root adm 85083 Mar 14 17:48 dmesg
-rw-r--r-- 1 root root 315196 Mar 14 17:48 dpkg.log
-rw-r--r-- 1 root root 32064 Mar 14 17:48 faillog
drwxr-xr-x 2 root root 4096 Jun 30 06:53 fsck
-rw-r----- 1 syslog adm 106 Jul 28 03:45 kern.log
-rw-rw-r-- 1 root utmp 292584 Jul 28 03:45 lastlog
-rw-r----- 1 syslog adm 18703 Jul 28 03:46 syslog
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
-rw-rw-r-- 1 root utmp 384 Jul 28 03:45 wtmp
Type de fichier
-rw-r--r-- 1 root root 17869 Mar 14 17:48 alternatives.log
drwxr-x--- 2 root adm 4096 Mar 14 17:48 apache2
fichier de caractères
c Utilisé pour communiquer avec le matériel.
(character file)
23
LINUXNDG
Le premier fichier alternatives.log est un fichier normal -, tandis que le second
fichier apache2 est un répertoire d.
Permissions
Propriétaire du fichier
L'utilisateur syslog possède ce fichier. Chaque fois qu'un fichier est créé, la
propriété est automatiquement attribuée à l'utilisateur qui l'a créé.
Groupe propriétaire
Taille du fichier
Les répertoires et les fichiers plus volumineux peuvent être affichés en kilo-
octets car leur taille en octets nécessiterait d’afficher un nombre trop élevé.
Par conséquent, dans le cas d'un répertoire, il peut s'agir d'un multiple de la
taille de bloc utilisée pour le système de fichiers. La taille du bloc est la taille
d'une série de données stockées dans le système de fichiers.
Horodatage
Réfléchissez à ceci
Dans le cas de liens symboliques (un fichier qui pointe vers un autre fichier) le
nom du lien sera affiché avec une flèche et le chemin du fichier d'origine.
Tri
Par défaut, la sortie de la commande ls est affichée par ordre alphabétique sur le
nom de fichier. Le tri peut aussi être fait selon d'autres méthodes.
Poursuivons
Les options dans les exemples ci-dessous seront combinées avec l'option -l afin que
les détails pertinents des fichiers soient affichés. Notez les champs correspondant à
l'option de recherche.
L'option -t trie les fichiers par horodatage ou plus simplement selon la date de la
dernière modification du fichier :
sysadmin@localhost:~$ ls -l -S /var/log
total 840
-rw-r--r-- 1 root root 315196 Mar 14 17:48 dpkg.log
-rw-rw-r-- 1 root utmp 292584 Jul 27 23:10 lastlog
-rw-r----- 1 root adm 85083 Mar 14 17:48 dmesg
-rw-r--r-- 5 root root 47816 Mar 2 23:10 bootstrap.log
-rw-r--r-- 1 root root 32064 Mar 14 17:48 faillog
-rw-r----- 1 syslog adm 27014 Jul 28 00:10 syslog
-rw-r--r-- 1 root root 17869 Mar 14 17:48 alternatives.log
drwxr-x--- 2 root adm 4096 Mar 14 17:48 apache2
drwxr-xr-x 2 root root 4096 Mar 14 17:45 apt
drwxr-xr-x 2 root root 4096 Jun 30 06:56 fsck
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
-rw-rw-r-- 1 root utmp 384 Jul 27 23:10 wtmp
-rw-r----- 1 syslog adm 380 Jul 27 23:10 auth.log
-rw-r----- 1 syslog adm 324 Jul 27 23:10 cron.log
-rw-r----- 1 syslog adm 106 Jul 27 23:10 kern.log
-rw-rw---- 5 root utmp 0 Mar 2 23:10 btmp
L'option -r inverse l'ordre de tout type de tri. Notez la différence lorsqu'elle est
ajoutée à l'exemple précédent:
Utilisée seule, l'option -r affiche la liste des fichiers dans l'ordre alphabétique
inverse :
sysadmin@localhost:~$ ls -r /var/log
wtmp lastlog faillog cron.log auth.log alternatives.log
upstart kern.log dpkg.log btmp apt
syslog fsck dmesg bootstrap.log apache2
ACCES ADMINISTRATIF
Il existe de nombreuses commandes Linux qui traitent des informations sensibles
comme les mots de passe, les configurations système ou toutes autres commandes
qui s'avèrent utiles dans des cas d'exception. Empêcher les utilisateurs standards
d'exécuter ces commandes aide à protéger le système. Se connecter en tant
qu'utilisateur root fournit un accès administratif privilégié, permettant l'exécution de
certaines des commandes privilégiées.
La commande su
su OPTIONS NOM_D'UTILISATEUR
Poursuivons
su -
su -l
su --login
Après l'exécution de la commande su, un mot de passe est requis. Sur nos machines
virtuelles, le mot de passe pour les comptes root et sysadmin est netlab123. Si
jamais vous l'oubliez, il s'affiche à chaque démarrage d'une nouvelle machine
virtuelle. À titre de mesure de sécurité, le mot de passe ne sera pas visible lors de sa
saisie.
sysadmin@localhost:~$ su -
Password:
root@localhost:~#
Notez que l'invite de commandes a été modifiée pour refléter que vous êtes
maintenant connecté en tant qu'utilisateur root. Pour vous déconnecter et revenir au
compte sysadmin, utilisez la commande exit. Notez que l'invite de commande
retourne à un utilisateur normal :
root@localhost:~# exit
exit
sysadmin@localhost:~$
Pour éviter d'exécuter des commandes sensibles, nous avons configuré la commande
Steam Locomotive (sl), pour exiger un accès administratif. Si la commande est
exécutée en tant que sysadmin, elle échoue :
sysadmin@localhost:~$ sl
sl: Permission denied
sysadmin@localhost:~$ su -
Password:
root@localhost:~# sl
28
LINUXNDG
(@@) ( ) (@) ( ) @@ () @ O @
( )
(@@@@)
( )
(@@@)
==== ________ ___________
_D _| |_______/ \__I_I_____===__|_________|
|(_)--- | H\________/ | | =|___ ___| _________________
/ | | H | | | | ||_| |_|| _|
| | | H |__--------------------| [___] | =|
| ________|___H__/__|_____/[][]~\_______| | -|
|/ | |-----------I_____I [][] [] D
|=======|____|__________________
__/ =| o |=-~~\ /~~\ /~~\ /~~\
____Y___________|__|____________________
|/-=|___|= || || || |_____/~\___/ |_D__D__D_|
|_D__
\_/ \_O=====O=====O=====O/ \_/ \_/ \_/ \_/
root@localhost:~# exit
exit
sysadmin@localhost:~$
La commande sudo
sudo [OPTIONS] COMMANDE
Réfléchissez à ceci
La commande sudo peut également être utilisée pour basculer vers d'autres comptes
utilisateur. Pour spécifier un compte utilisateur différent, utilisez l'option -u.
sysadmin@localhost:~$ sudo sl
Password:
29
LINUXNDG
Veuillez noter:
Rappelez-vous que le mot de passe est netlab123. L'invite pour le mot de passe
n'apparaîtra pas tant que l'utilisateur continue d'exécuter des commandes sudo à
moins de cinq minutes d'intervalle.
Une fois la commande terminée, notez que l'invite n'a pas changé, vous êtes toujours
connecté en tant que sysadmin. La commande sudo fournit uniquement un accès
administratif pour l'exécution de la commande spécifiée. C'est un avantage car il
réduit le risque qu'un utilisateur exécute accidentellement une commande en tant que
root. L'intention d'exécuter une commande est claire ; la commande est exécutée en
tant que root si elle est préfixée par la commande sudo. Sinon, la commande est
exécutée en tant qu'utilisateur normal.
Permissions
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
sysadmin@localhost:~/Documents$ ls -l hello.sh
-rw-rw-r-- 1 sysadmin sysadmin 21 Aug 1 02:35 hello.sh
Le premier caractère de cette sortie indique le type d'un fichier. Rappelons que si le
premier caractère est un -, il s'agit d'un fichier standard. Si le caractère est un d, il
s’agit d’un répertoire.
Champ - Permissions
-rw-rw-r-- 1 sysadmin sysadmin 21 Aug 1 02:35 hello.sh
Propriétaire
30
LINUXNDG
-rw-rw-r-- 1 sysadmin sysadmin 21 Aug 1 02:35 hello.sh
Groupe
Autre
Le dernier ensemble est pour tous les autres, tous ceux auxquels les deux
premiers ensembles de permissions ne s'appliquent pas. Si vous n'êtes pas
l'utilisateur propriétaire du fichier ou un membre du groupe qui le possède, le
troisième ensemble de permissions s'applique à vous.
Types de permissions
détaillée.
Permet de modifier ou de
écrire (w) réécrire le contenu du fichier. La permission ne fonctionne que si le
(write) Permet d’ajouter et de retirer dossier possède le droit d'exécution.
des fichiers d'un répertoire.
Réfléchissez à ceci
Dans ce scénario, l'utilisateur sysadmin a moins d'accès à ce fichier que les membres
du groupe staff (employés) ou tous les autres utilisateurs. L'utilisateur sysadmin n'a
que les permissions r--. Peu importe si sysadmin est membre du groupe staff; une
fois que la propriété utilisateur a été établie, seules les autorisations du propriétaire
de l'utilisateur s'appliquent.
La commande chmod est utilisée pour modifier les autorisations d'un fichier ou d'un
répertoire. Seul l'administrateur du système (root) ou l'utilisateur propriétaire du
fichier peut modifier les autorisations d'un fichier.
Considérez ceci
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
La méthode symbolique
chmod [<SET><ACTION><PERMISSIONS>]... FICHIER
Pour utiliser la méthode symbolique de chmod, indiquez d'abord quel ensemble (set)
de permissions est modifié :
Autre (others) : tout autre utilisateur qui n'appartient pas aux deux
o
premiers groupes.
+ Ajouter le droit
= Affecter le droit
- Supprimer le droit
r lire (read)
w écrire write
x exécuter (execute)
Enfin, ajoutez un espace et les chemins d'accès des fichiers auxquels attribuer ces
autorisations.
Le fichier hello.sh utilisé dans les exemples de la page précédente est un script. Un
script est un fichier qui peut être exécuté, comme une commande :
sysadmin@localhost:~/Documents$ ls -l hello.sh
-rw-rw-r-- 1 sysadmin sysadmin 21 Aug 1 02:35 hello.sh
sysadmin@localhost:~/Documents$ ./hello.sh
-bash: ./hello.sh: Permission denied
Étant donné que le système est actuellement connecté en tant qu'utilisateur sysadmin
et que sysadmin est le propriétaire du fichier, donner au propriétaire de l'utilisateur
l'autorisation d'exécution devrait vous permettre d'exécuter ce script. En utilisant la
commande chmod avec le caractère u pour représenter le jeu d'autorisations de
l’utilisateur propriétaire, le caractère + pour indiquer qu’une autorisation est
ajoutée et le caractère x pour représenter l'autorisation d'exécution, la commande
doit être exécutée comme suit :
sysadmin@localhost:~/Documents$ ls -l hello.sh
-rwxrw-r-- 1 root sysadmin 112 Aug 1 03:48 hello.sh
34
LINUXNDG
L’utilisateur propriétaire dispose désormais de l'autorisation d'exécution :
./hello.sh
sysadmin@localhost:~/Documents$ ./hello.sh
______________
( Hello World! )
--------------
\
\
<(^)
()
Réfléchissez à ceci
Notez que pour exécuter le script dans l'exemple précédent il faut ajouter ./ avant le
nom du script.
./hello.sh
Cela indique que la «commande» doit être exécutée à partir du répertoire courant.
Pour changer le propriétaire d'un fichier, la syntaxe suivante peut être utilisée. Le
premier argument, [PROPRIÉTAIRE], spécifie quel utilisateur doit être le nouveau
propriétaire. Le deuxième argument, FICHIER, spécifie le fichier dont la propriété est
en cours de modification.
Poursuivons
sysadmin@localhost:~/Documents$ ls -l
total 148
drwxrwxr-x 2 sysadmin sysadmin 4096 Aug 1 03:40 School
drwxrwxr-x 2 sysadmin sysadmin 4096 Aug 1 03:40 Work
-rw-r--r-- 1 sysadmin sysadmin 39 Mar 14 17:48 adjectives.txt
-rw-r--r-- 1 sysadmin sysadmin 90 Mar 14 17:48 alpha-first.txt
-rw-r--r-- 1 sysadmin sysadmin 89 Mar 14 17:48 alpha-first.txt.original
-rw-r--r-- 1 sysadmin sysadmin 106 Mar 14 17:48 alpha-second.txt
-rw-r--r-- 1 sysadmin sysadmin 195 Mar 14 17:48 alpha-third.txt
-rw-r--r-- 1 sysadmin sysadmin 390 Mar 14 17:48 alpha.txt
-rw-r--r-- 1 sysadmin sysadmin 42 Mar 14 17:48 animals.txt
-rw-r--r-- 1 sysadmin sysadmin 14 Mar 14 17:48 food.txt
-rwxrw-r-- 1 sysadmin sysadmin 112 Aug 1 03:48 hello.sh
-rw-r--r-- 1 sysadmin sysadmin 67 Mar 14 17:48 hidden.txt
-rw-r--r-- 1 sysadmin sysadmin 10 Mar 14 17:48 letters.txt
-rw-r--r-- 1 sysadmin sysadmin 83 Mar 14 17:48 linux.txt
-rw-r--r-- 1 sysadmin sysadmin 66540 Mar 14 17:48 longfile.txt
-rw-r--r-- 1 sysadmin sysadmin 235 Mar 14 17:48 newhome.txt
-rw-r--r-- 1 sysadmin sysadmin 10 Mar 14 17:48 numbers.txt
-rw-r--r-- 1 sysadmin sysadmin 77 Mar 14 17:48 os.csv
-rw-r--r-- 1 sysadmin sysadmin 59 Mar 14 17:48 people.csv
-rw-r--r-- 1 sysadmin sysadmin 110 Mar 14 17:48 profile.txt
-rw-r--r-- 1 sysadmin sysadmin 51 Mar 14 17:48 red.txt
sysadmin@localhost:~/Documents$ ls -l hello.sh
-rwxrw-r-- 1 root sysadmin 112 Aug 1 03:48 hello.sh
sysadmin@localhost:~/Documents$ ./hello.sh
-bash: ./hello.sh: Permission denied
Déplacement de fichiers
mv SOURCE DESTINATION
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
Pour déplacer le fichier people.csv dans le répertoire Work, utilisez le nom de fichier
comme source et le nom du répertoire comme destination :
sysadmin@localhost:~/Documents$ ls Work
people.csv
mv animals.txt zoo.txt
sysadmin@localhost:~/Documents$ ls
School alpha-second.txt hidden.txt newhome.txt
Work alpha-third.txt letters.txt os.csv
adjectives.txt animals.txt linux.txt profile.txt
alpha-first.txt hello.sh longfile.txt red.txt
sysadmin@localhost:~/Documents$ mv animals.txt zoo.txt
sysadmin@localhost:~/Documents$ ls
School alpha-second.txt letters.txt os.csv
Work alpha-third.txt linux.txt profile.txt
adjectives.txt hello.sh longfile.txt red.txt
alpha-first.txt hidden.txt newhome.txt zoo.txt
Réfléchissez à ceci
Les autorisations peuvent avoir un impact sur les commandes de gestion de fichiers,
telles que la commande mv. Le déplacement d'un fichier nécessite des autorisations
d'écriture et d'exécution sur les répertoires d'origine et de destination.
38
LINUXNDG
COPIE DE FICHIERS
La création de copies de fichiers peut être utile pour de nombreuses raisons:
Si une copie d'un fichier est créée avant que les modifications ne soient
apportées, il est possible de revenir à l'original.
Une copie d'un fichier peut être utilisée pour transférer un fichier sur un
support amovible.
Une copie d'un document existant peut servir de modèle pour un nouveau
document.
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
La commande cp est utilisée pour copier des fichiers. Similaire à la commande mv,
elle nécessite au moins deux arguments : une source et une destination. Par exemple,
pour copier le fichier /etc/passwd dans le répertoire courant, utilisez la commande
suivante :
sysadmin@localhost:~/Documents$ cp /etc/passwd .
Veuillez noter :
39
LINUXNDG
Le deuxième argument est le . (caractère point). Rappel de la section Modification des
répertoires : c’est un raccourci représentant le répertoire courant.
Le résultat de l'exécution de la commande précédente crée une copie du contenu du
fichier /etc/passwd dans le répertoire Documents, puisque c'est notre répertoire
courant. Cela peut être confirmé en utilisant la commande ls :
sysadmin@localhost:~/Documents$ ls
School alpha-second.txt letters.txt os.csv zoo.txt
Work alpha-third.txt linux.txt passwd
adjectives.txt hello.sh longfile.txt profile.txt
alpha-first.txt hidden.txt newhome.txt red.txt
Réfléchissez à ceci
Les autorisations peuvent avoir un impact sur les commandes de gestion de fichiers,
telles que la commande cp. Pour copier un fichier, il est nécessaire d'avoir
l'autorisation d'exécution pour accéder au répertoire où se trouve le fichier et
l'autorisation de lecture pour le fichier en cours de copie.
Copie de fichiers
dd [OPTIONS] OPERAND
Elle peut être utilisée pour cloner ou supprimer (effacer) des disques ou des
partitions entières.
Elle peut être utilisée pour copier des données brutes sur des périphériques
amovibles, tels que des clés USB et des CD-ROMs.
Elle peut sauvegarder et restaurer le MBR (Master Boot Record).
Elle peut être utilisée pour créer un fichier d'une taille spécifique, rempli de
zéros binaires, qui peut ensuite être utilisé comme un fichier swap (mémoire
virtuelle).
Argument Description
Fichier d'entrée : fichier d'entrée à partir duquel lire.
Réfléchissez à ceci
Il n'est pas nécessaire de spécifier la taille ou le nombre de blocs lors de la copie sur
des périphériques entiers. Par exemple, pour cloner un disque dur (/dev/sda) vers un
autre (/dev/sdb), exécutez la commande suivante :
dd if=/dev/sda of=/dev/sdb
Suppression de fichiers
rm [OPTIONS] FICHIER
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
Sans options, la commande rm est généralement utilisée pour supprimer des fichiers
normaux :
sysadmin@localhost:~/Documents$ rm linux.txt
sysadmin@localhost:~/Documents$ ls linux.txt
ls: cannot access linux.txt: No such file or directory
sysadmin@localhost:~/Documents$ rm Work
rm: cannot remove 'Work': Is a directory
sysadmin@localhost:~/Documents$ rm -r Work
Avertissement
Réfléchissez à ceci
Les autorisations peuvent avoir un impact sur les commandes de gestion de fichiers,
telles que la commande rm.
Notre VM a quelques petits fichiers texte que vous pouvez afficher avec la commande
cat. L'un de ces fichiers est le fichier animals.txt :
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
sysadmin@localhost:~/Documents$ cat animals.txt
1 retriever
2 badger
3 bat
4 wolf
5 eagle
La commande cat affiche les cinq lignes du fichier ci-dessus. Lorsque vous affichez des
fichiers plus volumineux, la commande cat peut entraîner une sortie très longue qui
ne peut pas être interrompue pour défiler dedans. Une meilleure méthode pour
afficher les longs fichiers texte est d’utiliser une commande page par page avec une
fonctionnalité permettant de faire une pause et de faire défiler la sortie du fichier.
Veuillez noter :
Les deux commandes more et less permettent de consulter un fichier page par page.
Nous aborderons ces deux commandes, et bien d'autres encore sur l’affichage de
fichiers, dans la formation NDG Linux Essentials.
Une autre façon d'afficher le contenu des fichiers est d'utiliser les commandes head et
tail. Ces commandes permettent d'afficher un certain nombre de lignes en haut ou en
bas d'un fichier. Jeter un oeil à quelques lignes d'un fichier peut parfois être utile
pour vous assurer que le fichier est bien celui que vous voulez utiliser.
Une autre raison pour ne prévisualiser que la première ou la dernière ligne d’un
fichier, est que certains fichiers, tels que les fichiers journaux système, sont
fréquemment mis à jour avec de nouvelles entrées. Tout comme la commande cat, les
commandes head et tail utilisent le nom du fichier que vous souhaitez afficher comme
argument de la commande :
Pour comparer la sortie des commandes head et tail avec celle de la commande cat,
utilisez la commande cat pour afficher l'ensemble du fichier alpha.txt :
Pour filtrer les lignes de sortie et d'affichage à partir du haut du fichier alpha.txt,
utilisez la commande head :
Pour afficher les lignes en bas du fichier alpha.txt, utilisez la commande tail :
En examinant la sortie des commandes head et tail ci-dessus, vous pouvez voir que le
comportement par défaut des commandes head and tail dans ce shell est d'afficher
dix lignes.
L'option -n avec les commandes head et tail peut être utilisée pour spécifier le
nombre de lignes à afficher. Pour utiliser l'option -n, spécifiez le nombre de lignes du
fichier à afficher après l'option et utilisez le nom de fichier comme argument :
Par exemple, pour modifier la sortie de la commande head pour afficher les cinq
premières lignes du fichier alpha.txt :
FILTRAGE D'ENTREE
La commande grep est un filtre de texte qui recherche les entrées et renvoie les lignes
qui contiennent une correspondance avec un motif donné.
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
sysadmin@localhost:~/Documents$ cp /etc/passwd .
Par exemple, le fichier passwd que nous avons copié précédemment dans le
répertoire Documents contient les détails des comptes système spéciaux et des
comptes utilisateur sur le système. Ce fichier peut être très volumineux, mais la
commande grep peut être utilisée pour filtrer les informations sur un utilisateur
spécifique, tel que l'utilisateur sysadmin. Utilisez sysadmin comme argument du
motif et passwd comme argument fichier:
Veuillez noter :
Cette ligne est l'entrée /etc/passwd relative à l'utilisateur sysadmin et fournit des
informations qui dépassent le cadre de ce cours. Pour en savoir plus, consultez NDG
Linux Essentials.
L'exemple ci-dessus utilise un terme de recherche simple comme motif, mais grep est
capable d'interpréter des motifs de recherche beaucoup plus complexes.
Expressions régulières
46
LINUXNDG
Les expressions régulières ont deux formes communes : basique et étendue. La
plupart des commandes qui utilisent des expressions régulières peuvent interpréter
les expressions régulières basiques. Cependant, les expressions régulières étendues
ne sont pas disponibles pour toutes les commandes et une option de commande est
généralement requise pour qu'elles fonctionnent correctement.
. Un seul caractère
Le tableau suivant résume les expressions régulières étendues, qui doivent être
utilisées avec la commande egrep ou l'option -E avec la commande grep :
Seules les expressions régulières basiques ont été couvertes ici. Pour plus
d'informations sur les expressions régulières étendues, consultez les cours NDG Linux
Essentials et NDG Introduction to Linux.
47
LINUXNDG
Motifs basiques
Les expressions régulières sont des motifs que seules certaines commandes sont
capables d'interpréter. Les expressions régulières peuvent être développées pour
correspondre à certaines séquences de caractères dans le texte. Les exemples affichés
sur cette page utilisent des expressions régulières pour démontrer leur puissance
lorsqu'elles sont utilisées avec la commande grep. En outre, ces exemples fournissent
une démonstration très visuelle du fonctionnement des expressions régulières, le
texte qui correspond sera affiché en rouge.
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
Les expressions régulières les plus simples n'utilisent que des caractères littéraux,
comme l'exemple de la page précédente :
Les caractères d'ancrage sont l'une des façons dont les expressions régulières
peuvent être utilisées pour affiner les résultats de recherche. Par exemple, la root du
motif apparaît plusieurs fois dans le fichier /etc/passwd :
Pour éviter que le shell ne les interprète en tant que caractères spéciaux de shell, ces
motifs doivent être protégés par des guillemets simples.
Le premier caractère d'ancrage ^ est utilisé pour s'assurer qu'un motif apparaît au
début de la ligne. Par exemple, pour trouver toutes les lignes dans /etc/passwd qui
commencent par root, utilisez le pattern ^ root. Notez que ^ doit être le premier
caractère du motif pour fonctionner.
Le deuxième caractère d'ancrage $ peut être utilisé pour s'assurer qu'un motif
apparaît à la fin de la ligne, limitant ainsi efficacement les résultats de la recherche.
Pour trouver les lignes qui se terminent par un r dans le fichier alpha-first.txt,
utilisez le motif r$ :
Encore une fois, la position de ce caractère est importante, le $ doit être le dernier
caractère du motif pour être efficace comme ancre.
L'une des expressions les plus utiles est le point ., car iI correspondra à n'importe
quel caractère sauf pour le caractère de nouvelle ligne. Le motif r..f trouvera
n'importe quelle ligne contenant la lettre r suivie de exactement deux caractères (qui
peut être n'importe quel caractère sauf un saut de ligne), puis la lettre f :
Ce caractère peut être utilisé autant de fois que nécessaire. Pour trouver tous les
mots qui ont au moins quatre caractères, le modèle suivant peut être utilisé :
La ligne ne doit pas nécessairement être une correspondance exacte, elle doit
simplement contenir le motif, comme on le voit ici lorsque r..t est recherché dans le
fichier /etc/passwd :
Pour trouver toutes les lignes du profile.txt qui contiennent un nombre, utilisez le
modèle [0123456789] ou [0-9] :
D'un autre côté, pour trouver toutes les lignes qui contiennent des caractères non
numériques, insérez un ^ comme premier caractère à l'intérieur des crochets. Ce
caractère exclut les caractères listés :
Veuillez noter :
Ne pas confondre [^ 0-9] avec des lignes qui ne contiennent pas de chiffres. Il
correspond en fait aux lignes qui contiennent des non-nombres. Regardez le fichier
original pour voir la différence. Les troisième et sixième lignes ne contiennent que
des nombres, elles ne contiennent pas de non-nombres, de sorte que ces lignes ne
correspondent pas.
Lorsque d'autres caractères d'expression régulière sont placés entre crochets, ils sont
traités comme des caractères littéraux. Par exemple, le point . correspond
normalement à n'importe quel caractère, mais placé à l'intérieur des crochets, il
correspondra simplement à lui-même. Dans l'exemple suivant, seules les lignes qui
contiennent le point . sont listées.
Lorsqu'il est utilisé avec un seul autre caractère, * n'est pas très utile. L'un des
modèles suivants correspond à toutes les chaînes ou ligne du fichier: .* e* b* z*.
C'est parce que * peut correspondre à zéro occurrences d'un motif. Pour rendre le *
utile, il est nécessaire de créer un motif qui comprend plus que le seul caractère
précédant *. Par exemple, les résultats ci-dessus peuvent être affinés en ajoutant un
autre e pour que le motif ee * corresponde efficacement à chaque ligne contenant au
moins un e.
Si un nom de fichier n'est pas donné, la commande grep sera lue à partir de l'entrée
standard, qui provient normalement du clavier avec l'entrée fournie par l'utilisateur
qui exécute la commande. Cela fournit une expérience interactive avec grep où
l'utilisateur tape dans les filtres d'entrée et grep au fur et à mesure. N'hésitez pas à
l'essayer, appuyez simplement sur Ctrl-D lorsque vous êtes prêt à revenir à l'invite.
Poursuivons
sysadmin@localhost:~/Documents$ cd ~
53
LINUXNDG
« Linux est Open Source, ce qui le rend extrêmement polyvalent! Internet des objets,
Big Data, cloud computing, DevOps, cybersécurité, mise en réseau, gestion des
données, etc. »
ARRET
La commande shutdown permet d'arrêter le système en toute sécurité. Tous les
utilisateurs connectés sont alors avertis que le système est en cours d’arrêt et au
cours des cinq dernières minutes précédant l'arrêt, les nouvelles connexions sont
empêchées.
Poursuivons
sysadmin@localhost:~$ su -
Password:
root@localhost:~#
Nos machines virtuelles ne s'arrêtent pas vraiment ! N'hésitez pas à utiliser la
commande, mais sachez qu'elle reviendra à l'invite après le compte à rebours au lieu
d'arrêter le système. Il se peut que vous deviez appuyer sur la touche Entrée pour
revenir à l'invite de commande.
root@localhost:~# shutdown now
Réfléchissez à ceci
L'horloge de notre système peut être réglée sur un fuseau horaire différent de celui
dans lequel vous vous trouvez. Pour vérifier l'heure du terminal, utilisez la
commande date. Sur nos machines, le format par défaut de la sortie de la commande
date est le suivant :
Les lettres UTC présentes dans la sortie indiquent que l'heure est affichée en tant que
temps universel coordonné.
root@localhost:~# date
Fri Jan 22 01:50:07 UTC 2016
root@localhost:~# shutdown 01:51
Poursuivons
root@localhost:~# exit
logout
Configuration réseau
ifconfig [OPTIONS]
Veuillez noter :
La commande iwconfig est similaire à la commande ifconfig, mais elle est dédiée aux
interfaces réseau sans fil.
Il n’est pas nécessaire de connaître tous les paramètres réseau pour ce module, mais
il est important de noter dans l'exemple suivant que l'adresse IPv4 du périphérique
réseau principal eth0 est 192.168.1.2 et que le périphérique est actuellement actif
(UP) :
sysadmin@localhost:~$ ifconfig
eth0 Link encap:Ethernet HWaddr b6:84:ab:e9:8f:0a
inet addr:192.168.1.2 Bcast:0.0.0.0 Mask:255.255.255.0
inet6 addr: fe80::b484:abff:fee9:8f0a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:95 errors:0 dropped:4 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:25306 (25.3 KB) TX bytes:690 (690.0 B)
Réfléchissez à ceci
La commande ifconfig peut également être utilisée pour modifier temporairement les
paramètres réseau. Typiquement, ces changements doivent être permanents, donc
utiliser la commande ifconfig pour effectuer de tels changements est assez rare.
Par défaut, la commande ping continuera d'envoyer des paquets jusqu'à ce que la
commande d'interruption (CTL+C ) soit entrée sur la console. Pour limiter le nombre
de pings envoyés, utilisez l'option -c suivie du nombre de pings à envoyer. L'exemple
ci-dessous montre un ping limité à 4 itérations avec -c 4.
root@localhost:~#
La commande ping peut échouer même si la machine distante se connecte. Cela est dû
au fait que certains administrateurs configurent leurs machines, voire des réseaux
entiers, à ne pas répondre aux requêtes ping en tant que mesure de sécurité. La
commande ping fonctionne également avec un nom d'hôte ou un nom de domaine
comme yahoo.com. Si la commande ping réussit, il y a résolution du nom de domaine
ou du nom d'hôte. L'adresse IP fonctionnera également correctement.
ps [OPTIONS]
sysadmin@localhost:~$ ps
PID TTY TIME CMD
80 ? 00:00:00 bash
94 ? 00:00:00 ps
sysadmin@localhost:~$ ps -e
PID TTY TIME CMD
1? 00:00:00 init
33 ? 00:00:00 rsyslogd
37 ? 00:00:00 cron
39 ? 00:00:00 sshd
56 ? 00:00:00 named
69 ? 00:00:00 login
79 ? 00:00:00 bash
94 ? 00:00:00 ps
Généralement, l'option -f est également utilisée car elle fournit plus de détails dans
l'affichage de la commande, y compris les options et les arguments. Recherchez la
commande ps sur la dernière ligne, la colonne CMD inclut désormais les options
utilisées :
sysadmin@localhost:~$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 19:16 ? 00:00:00 /sbin??? /init
syslog 33 1 0 19:16 ? 00:00:00 /usr/sbin/rsyslogd
root 37 1 0 19:16 ? 00:00:00 /usr/sbin/cron
root 39 1 0 19:16 ? 00:00:00 /usr/sbin/sshd
bind 56 1 0 19:16 ? 00:00:00 /usr/sbin/named -u bind
root 69 1 0 19:16 ? 00:00:00 /bin/login -f
sysadmin 79 69 0 19:16 ? 00:00:00 -bash
sysadmin 95 79 0 19:43 ? 00:00:00 ps -ef
59
LINUXNDG
Veuillez noter :
Un programme frontal est un programme que les utilisateurs peuvent voir et avec
lequel ils peuvent interagir.
Poursuivons
Installation de paquets
Pour rechercher des mots-clés dans ces paquets, vous pouvez utiliser la commande
apt-cache search.
Une fois que vous avez trouvé le paquet à installer, vous pouvez l'installer avec la
commande apt-get install :
Réfléchissez à ceci
La commande cowsay est un programme qui crée des dessins ASCII d'une vache avec
un message ! Utilisez un mot ou une phrase comme argument :
La mise à jour de tous les paquets du système doit se faire en deux étapes. Tout
d'abord, mettez à jour le cache avec tous les paquets disponibles avec apt-get
update. Ensuite, exécutez la commande apt-get upgrade et tous les paquets et
dépendances seront mis à jour.
apt-get update
apt-get upgrade
sysadmin@localhost:~$ sudo apt-get update
[sudo] password for sysadmin:
Ign file: amd64/ InRelease
Ign file: amd64/ Release.gpg
Ign file: amd64/ Release
Reading package lists... Done
sysadmin@localhost:~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
62
LINUXNDG
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Suppression de paquets
Par exemple, puisque nous sommes connectés en tant qu'utilisateur sysadmin, nous
pouvons changer le mot de passe de ce compte. Exécutez la commande passwd. Vous
serez invité à entrer le mot de passe existant une fois et le nouveau mot de passe
deux fois. Pour des raisons de sécurité, aucune sortie n'est affichée pendant la saisie
du mot de passe. La sortie est illustrée comme suit :
sysadmin@localhost:~$ passwd
Changing password for sysadmin.
63
LINUXNDG
(current) UNIX password: netlab123
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Si l'utilisateur souhaite afficher les informations d'état de son mot de passe, il peut
utiliser l'option -S :
Poursuivons
sysadmin@localhost:~$ su root
Password:
root@localhost:~#
64
LINUXNDG
Utilisez netlab123 comme mot de passe.
Poursuivons
root@localhost:~# exit
logout
Redirection
L'ajout de contenu aux fichiers sous Linux peut se faire de diverses façons. Linux a
quelques éditeurs de texte qui peuvent être utilisés pour ajouter du contenu à un
fichier. Cependant, cette méthode nécessite une certaine familiarité avec les
commandes de l'éditeur de texte Linux.
Veuillez noter :
Les éditeurs de texte Linux sont abordés dans la section suivante de ce cours.
sysadmin@localhost:~$ ls ~/Documents
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
sysadmin@localhost:~$ ls fakefile
ls: cannot access fakefile: No such file or directory
Cette section couvre l'un des trois descripteurs de fichier, STDOUT, et comment
rediriger STDOUT d'où vous le voyez habituellement, dans le terminal, vers un fichier
du système de fichiers. Pour utiliser la redirection, utilisez simplement le symbole
supérieur à > avec un nom de fichier :
Pour montrer la redirection, nous allons utiliser la sortie de la commande cat. Sans
redirection, la sortie de la commande cat sera affichée dans le terminal :
Poursuivons
sysadmin@localhost:~$ cd ~/Documents
sysadmin@localhost:~/Documents$ cat food.txt
Food is good.
Comme vous pouvez le voir, aucune sortie n'est affichée puisque le STDOUT a été
redirigé vers le fichier newfile1.txt . Vérifiez que le STDOUT de la commande cat
food.txt se trouve dans newfile1.txt :
Ceci est utile si vous avez besoin de copier du contenu d'un fichier important vers un
autre fichier afin de modifier le contenu sans modifier le fichier d'origine. Cependant,
que se passe-t-il si vous souhaitez ajouter un commentaire ou une note à un fichier ?
Pour ce faire, vous pouvez utiliser la commande echo. La commande echo est utilisée
pour imprimer la sortie dans le terminal :
Important
Pour rediriger des informations vers un fichier existant, l'utilisateur doit disposer
d'autorisations d'écriture sur ce fichier.
67
LINUXNDG
ÉDITEUR DE TEXTE
Le principal éditeur de texte pour Linux et UNIX est un programme appelé vi. Bien
qu'il existe de nombreux éditeurs disponibles pour Linux qui vont du minuscule
éditeur nano à l'imposant éditeur emacs, l'éditeur vi présente plusieurs avantages :
L'éditeur vi est disponible sur toutes les distributions Linux dans le monde. Ce
n'est pas le cas des autres éditeurs.
L'éditeur vi peut être exécuté à la fois dans une interface CLI (interface de ligne
de commande) et une interface graphique (interface utilisateur graphique).
Alors que de nouvelles fonctionnalités ont été ajoutées à l'éditeur vi , les
fonctions de base existent depuis des décennies. Cela signifie que si quelqu'un
a appris l'éditeur vi dans les années 1970, il pourrait utiliser une version
moderne sans aucun problème. Bien que cela semble peut paraître trivial
aujourd’hui, cela ne le sera pas dans vingt ans.
Réfléchissez à ceci
En réalité, la plupart des systèmes Linux n'incluent pas le vioriginal, mais une
version améliorée de celui-ci connue sous le nom de vim, pour vi améliorée. L'éditeur
vim est ainsi disponible pour la plupart des distributions Linux. En réalité, vim
fonctionne comme vi, mais comporte des fonctionnalités supplémentaires. Pour les
sujets qui seront abordés dans ce cours, vi ou vim suffit.
sysadmin@localhost:~$ vi newfile.txt
ITrois modes sont utilisés dans vi : le mode commande, le mode insertion et le mode
enregistrement.
Mode commande
Une fois que du texte a été ajouté dans un document, pour effectuer des actions
comme le déplacement du curseur, la touche Echap doit d'abord être pressée pour
68
LINUXNDG
revenir en mode commande. Cela semble être beaucoup de travail, mais rappelez-
vous que vi fonctionne dans un environnement terminal où une souris ne vous sera
d’aucune utilité.
[nombre] motion
Mouvement Résultat
h Un caractère à gauche
l Un caractère à droite
w Un mot en avant
b Un mot en arrière
^ Début de ligne
$ Fin de ligne
Veuillez noter :
Depuis la mise à niveau vers vim , il est également possible d'utiliser les touches
fléchées ←↓↑→ au lieu de hjkl respectivement.
Ces mouvements peuvent être préfixés par un nombre pour indiquer combien de fois
effectuer le mouvement. Par exemple, 5h déplace le curseur cinq caractères vers la
gauche et 3w déplace le curseur trois mots vers la droite.
Pour déplacer le curseur sur un numéro de ligne spécifique, tapez ce numéro de ligne
suivi du caractère G, par exemple, pour accéder à la cinquième ligne du fichier 5G,
1G ou gg peut être utilisé pour aller à la première ligne du fichier, tandis qu'un G
seul vous mènera à la dernière ligne. Pour savoir sur quelle ligne se trouve
actuellement le curseur, utilisez CTRL-G.
69
LINUXNDG
Mode actions
Standard Vi Signification
Les déplacements décrits dans la page précédente sont utilisés pour spécifier où
l'action doit avoir lieu, toujours en commençant par l'emplacement actuel du curseur.
Les des formats généraux suivants pour les commandes d'action sont acceptés :
Action Résultat
Modifier
Modifier est très similaire à supprimer ; le texte est supprimé et enregistré dans le
tampon, cependant, le programme est commuté en mode insertion pour permettre
70
LINUXNDG
des modifications immédiates au texte. Le tableau suivant fournit des exemples
d'utilisation courants :
Action Résultat
Arracher (Yank)
Yank place le contenu dans le tampon sans le supprimer. Le tableau suivant fournit
des exemples d'utilisation courants:
Action Résultat
yy Copier la ligne
Mettre (Put)
Put met le texte enregistré dans le tampon avant ou après la position du curseur.
Notez que ce sont les deux seules options, coller n'utilise pas les mouvements comme
les commandes d'action précédentes.
Action Résultat
Une autre fonction standard offerte par les traitements de texte est la recherche.
Souvent, les gens utilisent CTRL + F ou regardent sous le menu d'édition. Le
programme vi utilise la recherche. La recherche est puissante car elle prend en charge
à la fois les motifs de texte littéral et les expressions régulières.
Mode insertion
Saisie Résultat
Mode ex
72
LINUXNDG
À l'origine, l'éditeur vi s'appelait ex. Le nom vi était l'abréviation de la commande
visuel dans l'éditeur ex qui a basculé l'éditeur en mode « visuel ».
Saisie Résultat
Une analyse rapide du tableau ci-dessus révèle que si un point d'exclamation ! est
ajouté à une commande, elle tente ensuite de forcer l'opération. Par exemple,
imaginez que vous apportez des modifications à un fichier dans l'éditeur vi, puis
essayez de quitter avec :q, seulement pour découvrir que la commande échoue.
L'éditeur vi ne veut pas quitter sans enregistrer les modifications que vous avez
apportées à un fichier, mais vous pouvez le forcer à quitter avec la commande ex :q!.
Réfléchissez à ceci
73
LINUXNDG
Bien que le mode ex offre plusieurs façons d'enregistrer et de quitter, ZZ est aussi
disponible en mode commande; et est équivalent à :wq. Il existe de nombreuses
fonctions qui se chevauchent entre le mode ex et le mode commande. Par exemple, le
mode ex peut être utilisé pour naviguer jusqu'à n'importe quelle ligne du document
en tapant : suivi du numéro de ligne, tandis que le G peut être utilisé en mode
commande comme indiqué précédemment.
Veuillez noter :
Nous espérons que vous avez apprécié cette brève introduction au monde de Linux. Le
contenu abordé ici est aligné sur les connaissances Linux couvertes par les objectifs
de l'examen LPI Linux Essentials, mais il y a tellement plus à découvrir ! Obtenez des
compétences Linux d'un niveau de certification pour faire avancer votre carrière !
Le cours NDG Linux Essentials est conçu pour vous préparer au certificat de
développement professionnel Linux Essentials du Linux Professional Institute, qui
valide une compréhension démontrée de :
Ne vous inquiétez pas si vous avez peu ou pas d'expérience Linux. Ce cours est le
point de départ idéal pour enseigner tous les concepts à partir de la case départ.
Cependant, si vous ne trouvez pas cette formation matériel assez difficile, vous
pouvez commencer par NDG Introduction to Linux I, un cours d'introduction plus
rigoureux.
Pour obtenir la certification LPIC-1, vous devez réussir les examens 101 et 102. NDG
Introduction to Linux I est conçu pour vous préparer à l'examen 101, qui couvre :
Architecture système
L'installation de Linux et la gestion des paquets
Les commandes GNU et Unix
Périphériques, Systèmes de fichiers Linux, Hiérarchie des systèmes de fichiers
Standard
NDG Introduction to Linux II s'aligne sur les objectifs de l'examen 102, qui couvrent :
La certification LPIC-1 est la première des trois certifications professionnelles LPI. Des
informations sur toutes les certifications Linux Professional Institute sont disponibles
à l'adresse suivante : http://www.lpi.org.
IT Essentials
Pour en savoir plus sur les compétences fondamentales en informatique pour les
postes informatiques d'entrée de gamme, consultez le reste de IT Essentials.
76
LINUXNDG
« Les points forts du travail en open source. 31% Des projets intéressants. 18%
Travailler sur les défis technologiques les plus pointus. 17% Collaborer avec une
communauté mondiale. »
77
LINUXNDG
Linux pour Cisco Certified CyberOps Associate
Félicitations pour avoir terminé ce court cours d'introduction à Linux! Vous venez
d'apprendre de nombreux concepts Linux qui peuvent vous aider à aller plus loin
dans votre parcours informatique. Nous avons souligné que Linux est partout. Nous
avons également souligné que l'apprentissage de Linux est bénéfique pour une
grande variété de carrières technologiques. Vous pouvez envisager de poursuivre vos
études informatiques dans divers domaines, y compris le réseautage, l'IoT et l'une
des spécialités informatiques les plus demandées actuellement, la cybersécurité.
L'un des défis les plus importants auxquels nous sommes confrontés aujourd'hui
dans notre univers numérique est la cybersécurité. Il y a une quantité croissante
d'appareils intelligents qui peuvent être connectés aux réseaux, ce qui est pratique
pour les utilisateurs qui veulent rester connectés. Cependant, cela peut également
rendre les réseaux vulnérables aux personnes et aux organisations qui tentent
d'obtenir un accès malveillant aux appareils et aux réseaux. En conséquence, le
domaine de la cybersécurité se développe et, ces dernières années, la formation des
professionnels de la cybersécurité est devenue une priorité pour les institutions de
technologie de l'information.
Éditeurs de texte
Modification et création de fichiers configuration
Permissions de fichier
Permissions utilisateurs et groupes
Permissions
Accès Administratif
Mise à jour des mots de passe
79
LINUXNDG
Linux Unhatched objectifs d'apprentissage Compétences Cisco Certified CyberOps Associate
utilisateur
Configuration réseau
Configuration réseau
Dans ce cours, vous avez appris à effectuer des opérations Linux de base, des tâches
administratives et des tâches liées à la sécurité. Les professionnels de la
cybersécurité doivent savoir comment effectuer ces tâches sur une variété de systèmes
d'exploitation, y compris Windows, macOS et Linux. Les cours NDG Linux sont conçus
pour enseigner une variété de commandes, termes et utilitaires qui vous aideront à
vous préparer à une carrière dans la cybersécurité. Découvrez quelques-unes des
commandes Linux nécessaires pour Cisco Certified CyberOps Associate ci-dessous:
« Commandes Linux pour Cisco Certified CyberOps Associate. Les commandes incluent
apt, cat, cd, ls, sudo, tail, ssh et plus encore ! »
Pour en savoir plus sur Linux, les commandes et les utilitaires afin de créer une base
de connaissances Linux pour vous aider à poursuivre la formation qui est bénéfique
pour une formation Cisco Certified CyberOps Associate, consultez d'autres cours NDG
Linux. Pour en savoir plus sur le cours Cisco Certified CyberOps Associate, cliquez ici.