Chapitre 25. Configuration du système Linux installé sur une instance System z.
Pour plus d'informations sur Linux sur System z, voir les publications énumérées dans Chapitre 27, Références IBM System z. Certaines des tâches les plus courantes y sont décrites :
25.1. Ajouter des DASD
L'exemple suivant illustre comment ajouter paramétrer un DASD en ligne, comment le formater, et comment rendre ces modifications persistantes :
Note
Assurez-vous que le périphérique est connecté ou lié au système Linux si vous exécutez sous z/VM.
CP ATTACH EB1C TO *
Pour lier un minidisque auquel vous avez accès, effectuez par exemple :
CP LINK RHEL6X 4B2E 4B2E MR
DASD 4B2E LINKED R/W
Voir « z/VM: CP Commands » et « Utilities Reference, SC24-6175 » pour plus de détails sur les commandes :
25.1.1. Paramétrer les DASD dynamiquement en ligne
Pour paramétrer un DASD en ligne, suivez ces étapes :
- Utilisez la commande
cio_ignore
afin de supprimer le DASD de la liste des périphériques ignorés et pour le rendre visible à Linux :# cio_ignore -r device_number
Remplacez device_number par le numéro du périphérique du DASD. Par exemple :# cio_ignore -r 4b2e
- Paramétrez le périphérique en ligne. Utilisez une commande sous la forme suivante :
# chccwdev -e device_number
Remplacez device_number par le numéro du périphérique du DASD. Par exemple :# chccwdev -e 4b2e
Alternativement, vous pouvez paramétrer le périphérique en ligne avec des attributs sysfs :- Utilisez la commande
cd
pour vous rendre dans le répertoire /sys/ qui représente ce volume :# cd /sys/bus/ccw/drivers/dasd-eckd/0.0.4b2e/ # ls -l total 0 -r--r--r-- 1 root root 4096 Aug 25 17:04 availability -rw-r--r-- 1 root root 4096 Aug 25 17:04 cmb_enable -r--r--r-- 1 root root 4096 Aug 25 17:04 cutype -rw-r--r-- 1 root root 4096 Aug 25 17:04 detach_state -r--r--r-- 1 root root 4096 Aug 25 17:04 devtype -r--r--r-- 1 root root 4096 Aug 25 17:04 discipline -rw-r--r-- 1 root root 4096 Aug 25 17:04 online -rw-r--r-- 1 root root 4096 Aug 25 17:04 readonly -rw-r--r-- 1 root root 4096 Aug 25 17:04 use_diag
- Vérifiez que le périphérique est déjà en ligne :
# cat online 0
- S'il n'est pas en ligne, exécutez la commande suivante pour qu'il le soit :
# echo 1 > online # cat online 1
- Vérifiez par quel noeud de périphérique bloc il est accédé :
# ls -l total 0 -r--r--r-- 1 root root 4096 Aug 25 17:04 availability lrwxrwxrwx 1 root root 0 Aug 25 17:07 block -> ../../../../block/dasdb -rw-r--r-- 1 root root 4096 Aug 25 17:04 cmb_enable -r--r--r-- 1 root root 4096 Aug 25 17:04 cutype -rw-r--r-- 1 root root 4096 Aug 25 17:04 detach_state -r--r--r-- 1 root root 4096 Aug 25 17:04 devtype -r--r--r-- 1 root root 4096 Aug 25 17:04 discipline -rw-r--r-- 1 root root 0 Aug 25 17:04 online -rw-r--r-- 1 root root 4096 Aug 25 17:04 readonly -rw-r--r-- 1 root root 4096 Aug 25 17:04 use_diag
Comme le montre cet exemple, le périphérique 4B2E est accédé en tant que /dev/dasdb.
Ces instructions paramètrent un DASD en ligne pour la session actuelle, mais celles-ci ne seront pas persistantes après un redémarrage. Pour obtenir des instructions sur la manière de paramétrer un DASD en ligne de manière persistante, reportez-vous à la Section 25.1.3, « Paramétrer les DASD de manière persistante en ligne ». Lorsque vous travaillez avec des DASD, utilisez les liens symboliques de périphériques persistants sous
/dev/disk/by-path/
.
Vous pourrez trouver des informations supplémentaires dans le chapitre sur les DASD dans le document nommé Linux on System z Device Drivers, Features, and Commands on Red Hat Enterprise Linux 6.
25.1.2. Préparer un nouveau DASD avec formatage de bas niveau
Une fois le disque en ligne, revenez sur le répertoire
/root
et formatez le périphérique à bas niveau. Ceci n'est requis qu'une seule fois par cycle de vie entier de DASD :
# cd # dasdfmt -b 4096 -d cdl -p /dev/disk/by-path/ccw-0.0.4b2e Drive Geometry: 10017 Cylinders * 15 Heads = 150255 Tracks I am going to format the device /dev/disk/by-path/ccw-0.0.4b2e in the following way: Device number of device : 0x4b2e Labelling device : yes Disk label : VOL1 Disk identifier : 0X4B2E Extent start (trk no) : 0 Extent end (trk no) : 150254 Compatible Disk Layout : yes Blocksize : 4096 --->> ATTENTION! <<--- All data of that device will be lost. Type "yes" to continue, no will leave the disk untouched: yes cyl 97 of 3338 |#----------------------------------------------| 2%
Lorsque la barre de progression atteint la fin et que le formatage est terminé,
dasdfmt
imprimera la sortie suivante :
Rereading the partition table... Exiting...
Maintenant. utilisez fdasd pour partitionner le DASD. Vous pouvez créer jusqu'à trois partitions sur un DASD. Dans cet exemple, nous avons créé une partition s'étendant sur le disque entier :
# fdasd -a /dev/disk/by-path/ccw-0.0.4b2e auto-creating one partition for the whole disk... writing volume label... writing VTOC... checking ! wrote NATIVE! rereading partition table...
Pour plus d'informations, voir le chapitre sur les DASD dans Linux on System z Device Drivers, Features, and Commands on Red Hat Enterprise Linux 6.
Une fois qu'un DASD (formaté à bas niveau) est en ligne, il peut être utilisé comme n'importe quel autre disque sous Linux. Par exemple, vous pouvez créer des systèmes de fichiers, des volumes physiques LVM, ou de l'espace swap sur ses partitions, par exemple
/dev/disk/by-path/ccw-0.0.4b2e-part1
. Ne jamais utiliser le périphérique DASD complet (dev/dasdb
) pour autre chose que les commandes dasdfmt
et fdasd
. Si vous souhaitez utiliser le DASD entier, créez une partition s'étendant sur la totalité du disque comme dans l'exemple fdasd
ci-dessus.
Pour ajouter des disques supplémentaires plus tatd sans casser les entrées de disque existantes dans, par exemple,
/etc/fstab
, veuillez utiliser les liens symboliques de périphériques persistants sous /dev/disk/by-path/
.
25.1.3. Paramétrer les DASD de manière persistante en ligne
Les instructions ci-dessus décrivent comment activer des DASD dynamiquement sur un système en cours d'exécution. Cependant, de tels changements ne sont pas persistants et ne survivent pas aux redémarrages. Rendre les modifications à la configuration DASD persistantes sur votre système Linux dépend de si le DASD appartient au système de fichiers racine (root). Ces DASD, requis pour le système de fichiers racine, doivent être activés au tout début du processus de démarrage par
initramfs
afin de pouvoir monter le système de fichiers racine.
cio_ignore
est géré de manière transparente pour les configurations persistantes de périphériques et vous n'avez pas besoin de libérer de périphériques de la liste Ignorer manuellement.
25.1.3.1. DASD faisant partie du système de fichiers racine
/etc/zipl.conf
est le seul fichier que vous devrez modifier afin d'ajouter des DASD faisant partie du système de fichiers racine. Exécutez ensuite l'outil de chargeur de démarrage zipl. Il n'est pas nécessaire de recréer initramfs
.
Il existe deux paramètres de démarrage pour activer des DASD au début du processus de démarrage :
rd_DASD=
rd_DASD_MOD=
— uniquement fourni pour offrir une compatibilité avec les configurations de systèmes plus anciens. Pour obtenir plus de détails, reportez-vous à la description du paramètredasd=
dans le chapitre de pilote de périphérique DASD dans Linux on System z Device Drivers, Features, and Commands on Red Hat Enterprise Linux 6.
L'option
rd_DASD
accepte une liste séparée par des virgules pour entrée. La liste contient un ID de bus de périphérique et des paramètres supplémentaires optionnels qui consistent en paires clé-valeur correspondant aux attributs sysfs de DASD.
Ci-dessous figure un exemple de
zipl.conf
pour un système utilisant des volumes physiques sur des partitions de deux DASD pour un groupe de volumes LVM vg_devel1
qui contient un volume logique lv_root
comme système de fichiers racine.
[defaultboot] default=linux target=/boot/ [linux] image=/boot/vmlinuz-2.6.32-19.el6.s390x ramdisk=/boot/initramfs-2.6.32-19.el6.s390x.img parameters="root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0 rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009"
Supposons que vous ne souhaitiez ajouter un autre volume physique sur une partition d'un troisième DASD avec un bus périphérique
ID 0.0.202b
. Pour réaliser ceci, ajoutez rd_DASD=0.0.202b
à la ligne des paramètres de votre noyau de démarrage dans zipl.conf
:
[defaultboot] default=linux target=/boot/ [linux] image=/boot/vmlinuz-2.6.32-19.el6.s390x ramdisk=/boot/initramfs-2.6.32-19.el6.s390x.img parameters="root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.202b rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009"
Exécutez
zipl
pour appliquer les modifications apportées à /etc/zipl.conf
pour le prochain démarrage IPL :
# zipl -V Using config file '/etc/zipl.conf' Target device information Device..........................: 5e:00 Partition.......................: 5e:01 Device name.....................: dasda DASD device number..............: 0201 Type............................: disk partition Disk layout.....................: ECKD/compatible disk layout Geometry - heads................: 15 Geometry - sectors..............: 12 Geometry - cylinders............: 3308 Geometry - start................: 24 File system block size..........: 4096 Physical block size.............: 4096 Device size in physical blocks..: 595416 Building bootmap in '/boot/' Building menu 'rh-automatic-menu' Adding #1: IPL section 'linux' (default) kernel image......: /boot/vmlinuz-2.6.32-19.el6.s390x kernel parmline...: 'root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.202b rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009' initial ramdisk...: /boot/initramfs-2.6.32-19.el6.s390x.img component address: kernel image....: 0x00010000-0x00a70fff parmline........: 0x00001000-0x00001fff initial ramdisk.: 0x02000000-0x022d2fff internal loader.: 0x0000a000-0x0000afff Preparing boot device: dasda (0201). Preparing boot menu Interactive prompt......: enabled Menu timeout............: 15 seconds Default configuration...: 'linux' Syncing disks... Done.
25.1.3.2. DASD ne faisant pas partie du système de fichiers racine
Les DASD ne faisant pas partie du système de fichiers root, c'est-à-dire les data disks (ou disques de données), sont configurés de manière persistante dans le fichier
/etc/dasd.conf
. Celui-ci contient un DASD par ligne. Chaque ligne commence par l'ID de bus périphérique d'un DASD. Optionnellement, chaque ligne peut continuer avec des options séparées par un espace ou par le caractère tab. Les options consistent en paires clé-valeur, où la clé et la valeur sont séparées par le signe égal.
La clé correspond à tout attribut
sysfs
valide qu'un DASD possède. La valeur sera écrite sur l'attribut sysfs
de la clé. Les entrées dans /etc/dasd.conf
sont activées et configurées par udev lorsqu'un DASD est ajouté au système. Lors du démarrage, tous les DASD visibles par le sytème sont ajoutés et déclenchent udev.
Exemple du contenu de
/etc/dasd.conf
:
0.0.0207 0.0.0200 use_diag=1 readonly=1
Les modification apportées à
/etc/dasd.conf
ne prennent effet qu'après le redémarrage du système, ou après l'ajout dynamique d'un nouveau DASD en changeant la configuration d'E/S du système (c'est-à-dire le DASD attaché sous z/VM). Alternativement, vous pouvez déclencher l'activation de votre nouvelle entrée dans /etc/dasd.conf
sur un DASD qui n'était pas actif au préalable en exécutant les commandes suivantes :
- Utilisez la commande
cio_ignore
afin de supprimer le DASD de la liste des périphériques ignorés et pour le rendre visible à Linux :# cio_ignore -r device_number
Par exemple:# cio_ignore -r 021a
- Déclenchez l'activation en écrivant sur l'attribut
uevent
du périphérique :echo add > /sys/bus/ccw/devices/device-bus-ID/uevent
Par exemple:echo add > /sys/bus/ccw/devices/0.0.021a/uevent