Préambule
Article sur le iSCSI.
La plupart des NAS
modernes supportent le iSCSI
, il nâest pas question ici de dĂ©crire la procĂ©dure de configuration sur la cible (ou target
) car cela dĂ©pend du constructeur, mais nous allons voir comment initialiser un disque et comment lâutiliser depuis un client.
Installation
Pour commencer vous devez avoir sur la machine oĂč vous souhaitez montĂ© ce disque le paquet open-iscsi installĂ©.
sudo apt update && sudo apt install -y open-iscsi
Le NAS
(ou tout autre target
iSCSI) se contente de servir de lâespace disque brut. Câest le principe de l'iSCSI contrairement Ă un partage SAMBA, cela signifie que le NAS ne connaĂźt mĂȘme pas le systĂšme de fichier (file system
) qui est utilisĂ© dans le « partage » iSCSI. Cela implique quâavant tout usage de cet espace disque vous deviez partitionner et formater ce disque.
DĂ©couvrir les disques iSCSI disponibles
sudo iscsiadm --mode discovery --type sendtargets --portal _IP_SERVEUR_ISCSI_
On obtient par exemple
192.168.23.21:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.mirrors0.00fce2
192.168.23.22:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.mirrors1.00fce2
192.168.23.23:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.mirrors2.00fce2
192.168.23.24:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.mirrors3.f6d305
192.168.23.21:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.data0.00fce2
192.168.23.22:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.data1.00fce2
192.168.23.23:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.data2.00fce2
192.168.23.24:3260,1 iqn.2004-04.com.yyyy:ts-xxx:iscsi.data3.00fce2
Chaque ligne fait rĂ©fĂ©rence Ă un disque, la partie gauche indiquant lâIP et le PORT dâĂ©coute du serveur iSCSI et la partie droite lâIQN (le nom) du disque.
Se connecter au disque iSCSI
Attention: pour simplifier, nous supposons ici que la sĂ©curitĂ© (identification) nâa pas Ă©tĂ© mise en place sur le serveur.
CONSEIL : Pour les débutants, avant la commande suivante, il est conseillé de faire les commandes suivantes
ls -l /dev >~/dev-avant.txt
et
sudo fdisk -l >~/fdisk-avant.txt.
Ces commandes vous aideront si vous ne connaissez pas bien les périphériques présents sur votre machine.
sudo iscsiadm --mode node --login --targetname _VOTRE_IQN_ --portal _IP_SRV_ISCSI_
Un nouveau pĂ©riphĂ©rique Ă Ă©tĂ© ajoutĂ© (sâil y en Ă plusieurs avec le mĂȘme prĂ©fixe, câest que le disque est probablement dĂ©jĂ partitionnĂ© et peut-ĂȘtre formatĂ©)
Identifier le nouveau périphérique
Plusieurs options sâoffre-t-Ă vous, mais vous pouvez par exemple utiliser sudo fdisk -l
ou un simple ls -l /dev
.
Partitionnement du disque
Imaginons que le nouveau périphérique soit : /dev/sdc
.
Il faut vous assurer que vous nâavez pas de /dev/sdc1
avant de continuer sinon le disque est dĂ©jĂ partitionnĂ© et peut ĂȘtre mĂȘme formatĂ©.
Pour cela utilisez la commande :
ls -la /dev/sdc*
qui doit ne vous retourner quâun seul rĂ©sultat.
Ajouter une partition (add a new partition):
sudo fdisk /dev/sdc
Voici un exemple de réponse :
www Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x4c9a618e.Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-524287999, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-524287999, default 524287999):Created a new partition 1 of type 'Linux' and of size 250 GiB.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Reprenons avec quelques explications :
-
La premiÚre commande est n indique que l'on souhaite créer une nouvelle partition,
-
Ensuite p indique que lâon souhaite crĂ©er une partition primaire (primary),
-
Il faut donner aprÚs le numéro du premier secteur (on utilisera la valeur proposée en laissant vide la réponse),
-
De mĂȘme il faut donner aprĂšs le numĂ©ro du dernier secteur (on utilisera ici aussi, la valeur proposĂ©e),
-
Enfin la commande m pour Ă©crire lâensemble de ces informations sur le disque.
Cette derniĂšre commande vous fera sortir de fdisk
et assurez-vous dâavoir le nouveau disque dans vos pĂ©riphĂ©riques Ă lâaide de :
ls -la /dev/sdc*
Vous devriez maintenant avec 2 résultats, sdc et sdc1.
Formatage de la partition
LâĂ©tape suivant consiste Ă mettre un systĂšme de fichier sur cette partition. Cela se fait Ă lâaide de la commande mkfs
.
Dans ce tutoriel nous utiliseront le format Unix ext4.
sudo mkfs.ext4 /dev/sdc1
La partition est maintenant prĂȘte Ă ĂȘtre montĂ©e.
Montage de la partition
Il faut crĂ©er un point de montage si vous nâen avez pas encore un pour recevoir ce disque. Un point de montage est un simple rĂ©pertoire vide, traditionnellement sous /mnt ou sous /media.
sudo mkdir /mnt/myiscsi
Voici notre point de montage crĂ©Ă©, il ne reste plus quâĂ monter la partition :
sudo mount /dev/sdc1 /mnt/myiscsi
On peut vĂ©rifier, que le rĂ©pertoire nâest plus vide, avec :
ls -l /mnt/myiscsi
VoilĂ le disque est prĂȘt Ă ĂȘtre utilisĂ©. Enfin, jusquâĂ prochain reboot
.
DĂ©montage du disque
Un redĂ©marrage de la machine fait lâaffaire, mais dans le cas oĂč lâon souhaite libĂ©rer les ressources de cette connexion voici la procĂ©dure Ă suivre :
sudo umount /dev/sdc1
Déconnexion du serveur iSCSI (Attention toutes les connexions vers ce serveur sont concernées):
sudo iscsiadm --mode node --logout --portal _IP_SERVEUR_ISCSI_
Remontage manuel aprÚs un redémarrage
Il faut vous connecter au serveur iSCSI, puis monter le disque :
sudo iscsiadm --mode discovery --type sendtargets --portal _IP_SERVEUR_ISCSI_
sudo mount /dev/sdc1 /mnt/myiscsi
Vous nâaurez plus besoin de la commande discovery
(voir en dĂ©but d'article) sur cette machine tant que la configuration du serveur iSCSI nâaura pas changĂ©e. Vous en aurez besoin par exemple si vous ajoutez une autre ressource iSCSI et que vous souhaitez lâutiliser sur cette machine.
኿