Vous êtes sur la page 1sur 34

Les commandes UNIX

Pour pouvoir travailler sous Unix il faut ouvrir une session, à l'aide d'un nom d'utilisateur et
d'un mot de passe. On distingue les administrateurs des utilisateurs normaux. L'administrateur
est appelé root ou utilisateur privilégié et dispose de tous les pouvoirs sur la machine et le
système Unix. L'utilisateur normal dispose de droits réduits et définis par l'administrateur. Pour
se connecter :
Login : « nom d’utilisateur »
Password : « son mot de passer »

Le mot de passe n'apparaît pas en clair et doit être tapé en aveugle. En cas d'erreur, un message
indiquera :
Login incorrect

Suivant la version d'Unix et la configuration, plusieurs lignes de message peuvent apparaître,


qu'il est possible d'ignorer. Puis le prompt du shell devrait apparaître, quelque chose du genre
user@machine$
Comment voir la version de sa machine Ubuntu et les informations le concernant

Changer son mot de passe


On utilise la commande passwd pour modifier son mot de passe

La commande logname permet d’afficher le nom de l’admin

Comment afficher les dossiers ou fichiers

# whereis (commande) permet de spécifier tous les chemins d’une commande


#locate (commande) permet de lister les chemins d’un dossier

La commande uname permet de connaître la version courante du noyau, mais aussi le type
d'architecture et le nom de l'ordinateur.

Pour décrire une commande il suffit de faire un man sur lui


Faisons un man sur echo pour voir ses fonctionnalités
Le répertoire contient les différents les noyaux d’une machine sous Linux comme le montre la
figure ci-dessous:

La commande dmesg (pour l'anglais "display message", "afficher message" en français) est une
commande sur les systèmes d'exploitation de type Unix qui affiche la mémoire tampon de
message du noyau.
On peut utiliser la commande dmesg pour afficher une information precise

On peut changer les paramètres du noyau à chaud en écrivant directement les valeurs dans les
fichiers adéquats (/proc/sys/) ou en utilisant le binaire sysctl.
Vérifions si le routage IPv4 est activé avec la commande suivante :

On fait

Et on vérifier à nouveau

Pour le remettre à 0
Pour l’activer on édite le fichier /etc/sysctl.conf et on décommette la ligne
net.ipv4.ip_forward=1

Le contenu du système de fichiers /proc ou /sys n’est stocké nulle part mais chaque fichier est
engendré par une requête utilisateur. En outre pour accéder à certains renseignements il sera
nécessaire de monter obligatoirement /proc :

Liste des fichiers contenus dans le répertoire /proc

On peut lire les fichiers du répertoire proc sur lesquels nous avons des droits par exemple :
Linux accède aux périphériques à partir de fichiers situés dans /dev.

La commande blkid permet d’identifier les périphériques block par leur UUDI

Les commandes lspci et lsusb permettent respectivement de lister les périphériques pci et usb.
La commande lsmod permet de voir les modules chargés dans le noyau :

On peut par exemple tenter de charger le pilote d'une carte vmxnet3 par la commande lsmod
Emplacement des modules des noyaux sont dans le répertoire /lib/modules/. Pour les modules
du noyau qui est utilisé sur le système on tape la deuxième commande comme le montre la
figure ci-dessous

La commande modinfo permet d’obtenir les informations relatives à un module

La ligne commençant par depends du résultat de la commande modinfo nom_module donne la


liste des modules que dépende le module.

Le fichier /lib/modules/$(uname –r)/modules.dep contient l’ensemble des modules et leur


dépendances
Les séries des pilotes périphériques disponibles pour les cartes réseaux dans le répertoire
/lib/modules/$(uname -r)/kernel/drivers/net :

Le contenu du fichier /etc/default/grub avec les principales variables d'environnement

#nano examples.desktop
Ou en voit ou on peut créer l’environnement de l’utilisateur
#lsscsi
Permet d’énumérer les périphériques

 Une métadonnée : Les métadonnées, Ce sont des informations utilisées pour décrire
les données contenues dans une ressource comme une page Web, un document ou
un fichier. Les métadonnées d’un fichier numérique fournissent des informations
supplémentaires pour en donner une description.

PARTITIONNEMENT DE DISQUE en ligne de commande sous LINUX


Voir le nom de son disque avec
#lsblk
La commande lsblk fait la même chose mais lui est plus précise
#lsblk

Commencer le partitionnement
Nous allons partitionner notre disque sdb
On tape la commande fdisk /dev/nom_disk et après on tape m pour avoir de l’aide ou guide de
l’installation
# fdisk /dev/nom_disk

On tape m pour avoir des informations du partitionnement


Pour créer il suffit de taper n (nouvelle partition)

Choisir P la partition primaire

Indiquer le numéro de partition ou le laisser par défaut, dans notre cas on prend 1

 Laisser la valeur par défaut du premier secteur car c’est là ou doit commencer la partition
sur le disque
 Indiquer la taille que vous voulez donner à votre disque, elle peut être en Ko, en Mo ou
en Go mais doit être forcément précéder du caractère +

Après on devrait avoir la ligne de confirmation du nouveau partitionnement comme le montre


l’image précédente

On tape w pour enregistrer la partition et quitter


On vérifie si la partition est prise en compte

Afficher avec lsblk –fe7 pour confirmer


Image avant partition

Image après partition

Après de quitter il faut d’abord formater la nouvelle partition


Affichage du partitionnement

Avant d’utiliser la nouvelle partition il faut d’abord la formater

En mode graphique
Afficher l’ensemble de sa partition

Afficher et changer le label du système de fichiers en tapant la commande e2label.

Créations d’une partition swap


Création

On rend l'espace inaccessible

On formate le fichier en tant qu’espace swap :

Linux permet d’activer et de désactiver le swap, ou des morceaux de swap, directement sans
avoir à redémarrer le système.
La commande swapon permet d’activer une partition de swap :
La commande swapoff désactive une zone de swap.

Afficher le contenu du swap

On peut également par la commande free –h

Montage au démarrage du système: /etc/fstab


Périphérique point_de_montage typefs options dump fsck

Système de fichiers
Objectif :
Possibilité de partages des ressources en réseau
 NFS (peut être aussi utiliser sous Windows et linux). NFS initialement ne gérait pas les
utilisateurs mais affectait des ressources a des UidNumber. La solution est de faire en
sorte que dans le réseau un UidNumber soit unique dans votre réseau en faisant appel à
un serveur NIS (contrôleur yellow page). Aujourd’hui nous sommes à la version 4 de
NFS. L’idée
 Une machine partage (exporte) des dossiers vers d’autres machines
 Les machines clientes montent ces dossiers sur des points de montage qui sont des
répertoires en local (commande mount). Dès que la machine cliente redémarre, il
faut remonter les ressources.
Pour régler cette question de montage automatique du démarrage, on fait appel au
fichier de gestion de table de système de fichiers qui est /etc/fstab

 Dump : Est une option qui permet une sauvegarde automatique


L’inconvénient du montage automatique dans /etc/fstab des grands parents :
immobilisation de ressources réseau alors que personne n’utilise la nouvelle
ressource montée
Pour régler cette question de gaspillage unitil de ressources réseau on a mis en place
le système autofs aui fait un montage à la demande
Principe
 On définit un point de montage global, et le fichier devant contenir comment accéder à
la ressource : cf fichier auto.master
 /dossierparentpartage /ect/auto.nomchoisi –ghost
 On crée le fichier /etc/auto.nomchoisi
o /nommontage –fstype=cifs,user=login,pass=passwrd://IPserveur/nompartage
 On redemarre le service autofs : systemctl restart autofs.service
 Pour acceder à la ressource on va dans : /dossierparentpartager/nommontage
Avantages autofs :
La ressource est montée que si on manipule le point de montage

PARTAGE DES FICHIERS NFS SOUS LINUX


On commence par la configuration coté serveur
Il nous faut installer le paquet nfs-kernel-serveur
#apt install nfs-kernel-serveur

Faire pwd pour connaitre son positionnement

#chown –R nobody:nogroup /home/messi/partage

On donne le droit au fichier


Editez le fichier /etc/exports et rajoutez la ligne suivante pour partager le répertoire /partage/ à
la machine

#exportfs -a

On redémarre nfs-kernel-server

On donne le droit à tous les ports sur le serveur

#ufw enable

#ufw status

Coté client
Il faut installer nfs-common
On crée le dossier du point de montage

On fait le montage

Nous allons accéder à notre dossier de montage

On crée un fichier tp1 dans notre dossier

On affiche le contenu du dossier

Essayons d’afficher le même contenu du dossier coté serveur

Nous allons créer un dossier tp1 coté serveur et y accéder sur notre client

On fait ls pour vérifier le dossier crée

Repartons côté client et essayons d’accéder au dossier sur notre machine cliente
On voit que les deux machines arrivent bien à se partager les fichiers.

Lunix Volume Manager LVM


Le système de LVM insère des sous-couches entre la partition de disque et le système de fichier
(là où sont les données). Ces sous-couches vont permettre de modifier dynamiquement la taille
des systèmes de fichier.
Ainsi, on pourra ajouter, enlever de l’espace disque d’un filesystem à la volée, rajouter un
système de fichier sans modification de la table des partitions.
On a alors trois couches: le Physical Volume (PV), le Volume Group (VG) et le Logical Volume
(LV).
On prendra une machine virtuelle sous virtuel box et on ajoute des disques

Avoir installer le paquet lvm2


#apt install lvm2

Nous allons préparer nos nouvelles partitions pour LVM. Il faut déclarer les partitions en tant
que Volumes Physiques avec la commande pvcreate comme le montre la figure ci-dessous
Avec la commande pvdisplay, vérifiez ce que vous avez fait

Création de groupe de volume : Volume Group VG


Nous allons regrouper tous les Volumes Physiques en un groupe de volume appelé «
syriackvolume »
#vgcreate nom_groupe liste_des_partitions

La commande vgdisplay donne des informations du groupe de volume

pvscan affiche aussi le nom de volume


Créons les volumes vol1 (M), dans le VG syriackvolume :
La syntaxe de la commande : lvcreate -n nom_volume_logique –L taille (M, G)
mon_groupe_volume

Affichons le Logical Volume nouvellement créée

Renommé le nom de volume

Affichage du nouveau nom de volume

Changez la taille d'un LV


Augmentons la taille de vol1 de 1Go :

Vérification

Réduisons une taille de 500M mais en donnant une valeur absolue


On constate que le LV sise qui était à 1G est réduit à 528M

On fait Lsblk

RAID est l'acronyme de Redundant Array of Independent Disks


L'activation du RAID sur un système de stockage permet de connecter deux ou plusieurs
disques au système sous forme d'un grand volume rapide ou comme lecteur système avec
duplication (ou miroir) automatique et instantanée de vos données pour une sauvegarde en
temps réel.

Création de RAID0
Pour commencer, recherchez les identifiants des disques bruts que vous utiliserez:

Pour créer une matrice RAID 0 avec ces composants, on utilise la commande mdadm --create

Vérifions par /proc/mdstat

Ensuite, créez un système de fichiers sur le RAID 0 :

Créez un point de montage pour attacher le nouveau système de fichiers:


Vous pouvez monter le système de fichiers en tapant la commande suivante :

Vérifiez si le nouvel espace est disponible en tapant

Voire que le RAID est réassemblé automatiquement au démarrage, nous devrons le mettre
dans le fichier /etc/mdadm/mdadm.conf.

Ensuite, vous pouvez mettre à jour initramfs, ou le système de fichiers RAM initial, afin que le
tableau soit disponible au cours du processus de démarrage précédent

Ajoutez les nouvelles options de montage du système de fichiers au fichier /etc/fstab pour un
montage automatique au démarrage

Notre matrice RAID 0 devrait maintenant être automatiquement assemblée et montée à chaque
démarrage
Création de la matrice RAID1
Les disques d'une matrice RAID 1 reçoit une copie complète des données, ce qui permet une
redondance en cas de perte d'un périphérique. Pour la mise en place de RAID1 il faut minimum
de 2 périphériques de stockage.
On vérifie d’abord les disques disponibles pour la création de notre matrice raid1.

Création de la matrice RAID1

On crée ensuite, un système de fichiers sur le tableau


Créons un point de montage et attachons le nouveau système de fichiers :

On vérifie si le nouvel espace est disponible en tapant : df –h

Nous allons réassembler le tableau au démarrage automatique en l’ajustons dans le fichier


/etc/mdadm/mdadm.conf.

Ensuite, on fait la mise à jour initramfs, ou le système de fichiers RAM initial, afin que le
tableau soit disponible au cours du processus de démarrage précédent:
#update-initramfs –u

On va ajouter les nouvelles options de montage du système de fichiers au fichier /etc/fstab pour
un montage automatique au démarrage de notre machine:

Notre matrice RAID 1 devrait maintenant être automatiquement assemblée et montée à chaque
démarrage.
On peut également les voir sur l’interface physique comme suit :
ISSCI (Internet Small Computer System Interface)
ISCSI est une abréviation de Internet Small Computer System Interface. C'est
un protocole de stockage en réseau basé sur le protocole IP destiné à relier les installations de
stockage de données.
Pour une mise en place du serveur ISCSI on procède comme suit :
 On installe le paquet
 cd /etc/tgt/conf.d pour créer un fichier de publication de ressource se terminant par
.conf nom_ressource iqn.année-date.nomdomaine:dlp

Installation du paquet tgt

#apt –y install tgt


On redémarre le serveur et on vérifie si le port est ouvert
#netstat –anp | grep tgt

On crée le disque qu’on veut publier


#dd if=/dev/zero/ of=/dev/disk.img count=0 bs=1 seek=1G

On crée un fichier de configuration se terminant par .conf dans le dossier /etc/tgt/conf.d/ sur le
serveur.

Après on redémarre le serveur tgt

On vérifie de voir si notre configuration a bien marché


#tgt-admin -s

Du coté client on installe le paquet open-iscsi


#apt install open-iscsi
On va éditer le fichier /etc/iscsi/initiatorname.iscsi
#nano /etc/iscsi/initiatorname.iscsi
On modifie la dernière ligne en ajoutant : année-date-domaine:nom_ajouté

Nous allons donner ensuite les paramètres de connexion au serveur dans le fichier suivant :
# /etc/iscsi/iscsid.conf.
On de commente la partie CHAP
On redémarre open-iscsi
Nous allons exécuter la commande suivante pour découvrir les ressources partagées par le
serveur sur la machine cliente
#iscsiadm –m discovery –t st –p (IP serveur)

Nous constatons que les ressources sont visibles. On peut passer alors de client en mode
administrateur par la commande suivante :
#iscsiadm –m node --login

Vérifions si le client arrive à voir le disque partagé


#fdisk –l

Vous aimerez peut-être aussi