Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
Guide d'administration du stockage
Déployer et configurer un stockage à nœud unique dans Red Hat Enterprise Linux 7
Jacquelynn East
Don Domingo
Red Hat Subject Matter Experts
Kamil Dudka
Listes de contrôle d'accèskdudka@redhat.com
Daniel Novotny
Le système de fichiers /procdnovotny@redhat.com
Contributors
David Lehman
Configuration du stockage pendant l'installationdlehman@redhat.com
Eric Sandeen
Systèmes de fichiers ext3, ext4 et XFS chiffrésesandeen@redhat.com
Résumé
Chapitre 1. Aperçu
1.1. Les nouveautés de Red Hat Enterprise Linux 7
eCryptfs non inclus
System Storage Manager
XFS est le Système de fichiers par défaut
Restructuration du système de fichiers
/bin
, /sbin
, /lib
, et /lib64
se trouvent maintenant sous /usr
.
Snapper
BTRFS (Aperçu technologique)
NFSv2 n'est plus prise en charge
Partie I. Systèmes de fichiers
Chapitre 2. Structure et maintenance des systèmes de fichiers
- Fichiers partageables vs fichiers non-partageables
- Fichiers variables vs fichiers statiques
2.1. Vue d'ensemble du standard de hiérarchie des systèmes de fichiers (FHS, ou « Filesystem Hierarchy Standard »)
- La compatibilité avec d'autres systèmes conformes à FHS
- La possibilité de monter une partition
/usr/
en lecture seule. Ceci est particulièrement important car/usr/
contient des fichiers exécutables communs et ne devrait pas être modifié par les utilisateurs. En outre, comme la partition/usr/
est montée en lecture seule, elle devrait pouvoir être montée à partir du lecteur CD-ROM ou depuis une autre machine via un montage NFS en lecture seule.
2.1.1. Organisation FHS
Note
2.1.1.1. Collecte des informations sur les systèmes de fichiers
df
rapporte l'utilisation de l'espace disque du système. Sa sortie est similaire à la suivante :
Exemple 2.1. Sortie de la commande df
Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup00-LogVol00 11675568 6272120 4810348 57% / /dev/sda1 100691 9281 86211 10% /boot none 322856 0 322856 0% /dev/shm
df
affiche la taille de la partition en blocs de 1 kilo-octets, ainsi que la quantité d'espace disque utilisée et disponible en kilo-octets. Pour afficher ces informations en méga-octets et giga-octets, veuillez exécuter la commande df -h
. L'argument -h
se traduit par l'utilisation d'un format lisible (« human-readable »). La sortie de df -h
est similaire à la suivante :
Exemple 2.2. Sortie de la commande df -h
Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 12G 6.0G 4.6G 57% / /dev/sda1 99M 9.1M 85M 10% /boot none 316M 0 316M 0% /dev/shm
Note
/dev/shm
représente le système de fichiers de la mémoire virtuelle du système.
du
affiche la quantité estimée d'espace utilisé par des fichiers dans un répertoire, et l'utilisation d'espace disque de chaque sous-répertoire. La dernière ligne dans la sortie de du
affiche la totalité de l'utilisation d'espace disque du répertoire. Pour afficher la totalité de l'utilisation d'espace disque sous un format lisible, veuillez utiliser du -hs
. Pour plus d'options, veuillez consulter man du
.
gnome-system-monitor
. Sélectionnez l'onglet Systèmes de fichiers pour afficher les partitions du système. La figure ci-dessous illustre l'onglet Systèmes de fichiers.
Figure 2.1. Onglet Surveillance système GNOME des systèmes de fichiers
2.1.1.2. Répertoire /boot/
/boot/
contient des fichiers statiques requis pour démarrer le système, par exemple le noyau Linux. Ces fichiers sont essentiels pour que le système puisse démarrer correctement.
Avertissement
/boot/
. Le système ne pourra plus être démarré si ce répertoire est supprimé.
2.1.1.3. Répertoire /dev/
/dev/
contient des nœuds de périphériques qui représente les types de périphériques suivants :
- les périphériques attachés au système ;
- les périphériques fournis par le noyau.
udevd
crée et supprime les nœuds de périphérique dans /dev/
selon les besoins.
/dev/
et ses sous-répertoires sont définis en tant que caractère (fournissant uniquement un flux en série d'entrées et sortie, par exemple une souris ou un clavier) ou bloc (accessible de manière aléatoire, par exemple un disque dur ou un lecteur de disquettes). Si GNOME ou KDE est installé, certains périphériques de stockage seront automatiquement détectés lorsqu'ils sont connectés (comme les lecteurs USB), ou insérés (comme avec un lecteur CD ou DVD), puis une fenêtre contextuelle affichant le contenu apparaîtra.
Tableau 2.1. Exemples de fichiers communs dans le répertoire /dev
Fichier | Description |
---|---|
/dev/hda | Périphérique maître sur le canal IDE principal. |
/dev/hdb | Périphérique esclave sur le canal IDE principal. |
/dev/tty0 | Première console virtuelle. |
/dev/tty1 | Seconde console virtuelle. |
/dev/sda | Premier périphérique sur le canal principal SCSI ou SATA. |
/dev/lp0 | Premier port parallèle. |
- Un périphérique mappé
- Un volume logique dans un groupe de volumes. Par exemple,
/dev/mapper/VolGroup00-LogVol02
. - Un périphérique statique
- Un volume de stockage traditionnel. Par exemple,
/dev/sdbX
, où sdb est un nom de périphérique de stockage et où X est le numéro de la partition./dev/sdbX
peut également être/dev/disk/by-id/WWID
, ou/dev/disk/by-uuid/UUID
, (voir Section 24.7, « Dénomination persistante » pour obtenir plus d'informations sur ces options).
2.1.1.4. Répertoire /etc/
/etc/
est réservé aux fichiers de configuration qui sont locaux à l'ordinateur. Il ne doit contenir aucun fichier binaire ; tout fichier binaire devrait être déplacé dans /usr/bin/
ou /usr/sbin/
.
/etc/skel/
stocke les fichiers utilisateur « squelette », qui sont utilisés pour remplir un répertoire de base lorsqu'un utilisateur est créé pour la première fois. Les applications stockent aussi leurs fichiers de configuration dans ce répertoire et peuvent les référencer lors de leur exécution. Le fichier /etc/exports
contrôle quels systèmes de fichiers sont exportés vers des hôtes distants.
2.1.1.5. Répertoire /mnt/
/mnt/
est réservé aux systèmes de fichiers montés de manière temporaire, comme les montages de systèmes de fichiers NFS. Pour tous les supports de stockage amovibles, veuillez utiliser le répertoire /media/
. Les supports de stockage amovibles détectés automatiquement seront montés dans le répertoire /media
.
Important
/mnt
ne doit pas être utilisé par des programmes d'installation.
2.1.1.6. Répertoire /opt/
/opt/
est habituellement réservé aux paquets logiciels et aux paquets de modules complémentaires ne faisant pas partie de l'installation par défaut. Un paquet effectuant une installation sur /opt/
crée un répertoire portant son nom, par exemple, /opt/packagename/
. Dans la plupart des cas, ce genre de paquets observe une structure prédictible de sous-répertoires. La plupart stockent leurs binaires dans /opt/packagename/bin/
et leurs pages man
dans /opt/packagename/man/
.
2.1.1.7. Répertoire /proc/
/proc/
contient des fichiers spéciaux qui extraient des informations du noyau ou y envoient des informations. Des exemples de ce genre d'informations incluent la mémoire système, des informations sur le CPU et la configuration du matériel. Pour obtenir des informations supplémentaires sur /proc/
, veuillez consulter le Section 2.3, « Système de fichiers virtuel /proc ».
2.1.1.8. Répertoire /srv/
/srv/
contient des données spécifiques au site servies par un système Red Hat Enterprise Linux. Ce répertoire donne aux utilisateurs l'emplacement des fichiers de données pour un service particulier, tel que FTP, WWW, ou CVS. Les données pertinentes à un utilisateur en particulier doivent être placées dans le répertoire /home/
.
2.1.1.9. Répertoire /sys/
/sys/
utilise le nouveau système de fichiers virtuel spécifique au noyau, sysfs
. Grâce à la meilleure prise en charge de l'enfichage à chaud de périphériques matériels dans le noyau, le répertoire /sys/
contient des informations similaires à celles qui sont offertes par /proc/
, mais affiche une vue hiérarchique des informations des périphériques qui est spécifique aux périphériques enfichables à chaud.
2.1.1.10. Répertoire /usr/
/usr/
est utilisé pour les fichiers pouvant être partagés à travers de multiples machines. Le répertoire /usr/
se trouve souvent sur sa propre partition et est monté en lecture seule. Au minimum, le répertoire /usr/
doit contenir les sous-répertoires suivants :
/usr/bin
- Ce répertoire est utilisé pour les binaires.
/usr/etc
- Ce répertoire est utilisé pour les fichiers de configuration globaux.
/usr/games
- Ce répertoire est utilisé pour stocker les jeux.
/usr/include
- Ce répertoire est utilisé pour les fichiers en-têtes C.
/usr/kerberos
- Ce répertoire est utilisé pour les fichiers et binaires liés à Kerberos.
/usr/lib
- Ce répertoire est utilisé pour les fichiers objets et les bibliothèques qui ne sont pas conçus pour être directement utilisés par des scripts shell ou des utilisateurs.À partir de Red Hat Enterprise Linux 7.0, le répertoire
/lib/
a été mergé avec/usr/lib
. Il doit également contenir les bibliothèques nécessaires à l'exécution des binaires dans/usr/bin/
et/usr/sbin/
. Ces images de bibliothèques partagées sont utilisées pour démarrer le système ou exécuter des commandes à l'intérieur du système de fichiers. /usr/libexec
- Ce répertoire contient les programmes d'assistance de petite taille appelés par d'autres programmes.
/usr/sbin
- À partir de Red Hat Enterprise Linux 7.0,
/sbin
a été déplacé dans/usr/sbin
. Cela signifie qu'il contient tous les binaires d'administration système, y compris ceux qui sont essentiels pour démarrer, restaurer, recouvrer ou réparer le système. Les binaires de/usr/sbin/
ont besoin de privilèges root pour être utilisés. /usr/share
- Ce répertoire stocke les fichiers qui ne sont pas particuliers à l'architecture.
/usr/src
- Ce répertoire stocke le code source.
/usr/tmp
lié à/var/tmp
- Ce répertoire stocke les fichiers temporaires.
/usr/
devrait aussi contenir un sous-répertoire /local/
. Comme recommandé par la norme FHS, ce sous-répertoire est utilisé par l'administrateur système lors de l'installation locale de logiciels et ne doit pas être écrasé pendant les mises à jour du système. Le répertoire /usr/local
possède une structure similaire à /usr/
et contient les sous-répertoires suivants :
/usr/local/bin
/usr/local/etc
/usr/local/games
/usr/local/include
/usr/local/lib
/usr/local/libexec
/usr/local/sbin
/usr/local/share
/usr/local/src
/usr/local/
diffère légèrement de la norme FHS. La norme FHS déclare que /usr/local/
doit être utilisé pour stocker des logiciels qui ne doivent pas être affectés par les mises à niveau de logiciels système. Comme le gestionnaire de paquet RPM, « RPM Package Manager », peut effectuer des mises à niveau de logiciels en toute sécurité, il n'est pas nécessaire de protéger les fichiers en les stockant dans /usr/local/
.
/usr/local/
pour les logiciels locaux. Par exemple, si le répertoire /usr/
est monté en tant que partage NFS, en lecture seule, à partir d'un hôte distant, il est toujours possible d'installer un paquet ou programme sous le répertoire /usr/local/
.
2.1.1.11. Répertoire /var/
/usr/
en lecture seule, tout programme qui écrit des fichiers journaux ou nécessite les répertoires spool/
ou lock/
doit les écrire sur le répertoire /var/
. La norme FHS déclare que /var/
est utilisé pour les données variables, ce qui inclut les répertoires et fichier spool, les données de journalisation, et les fichiers transitoires et temporaires.
/var/
:
/var/account/
/var/arpwatch/
/var/cache/
/var/crash/
/var/db/
/var/empty/
/var/ftp/
/var/gdm/
/var/kerberos/
/var/lib/
/var/local/
/var/lock/
/var/log/
/var/mail
lié à/var/spool/mail/
/var/mailman/
/var/named/
/var/nis/
/var/opt/
/var/preserve/
/var/run/
/var/spool/
/var/tmp/
/var/tux/
/var/www/
/var/yp/
Important
/var/run/media/user
contient des sous-répertoires utilisés comme points de montage pour des supports amovibles, tels que les supports de stockage USB, les DVD, les CD-ROM, et les disques Zip. Notez qu'auparavant, le répertoire /media/
était utilisé pour cela.
messages
et lastlog
, sont placés dans le répertoire /var/log/
. Le répertoire /var/lib/rpm/
contient des bases de données RPM du système. Les fichiers de verrouillage sont placés dans le répertoire /var/lock/
, habituellement dans les répertoires du programme utilisant le fichier. Le répertoire /var/spool/
contient des sous-répertoires qui stockent les fichiers de données de certains programmes. Ces sous-répertoires incluent :
/var/spool/at/
/var/spool/clientmqueue/
/var/spool/cron/
/var/spool/cups/
/var/spool/exim/
/var/spool/lpd/
/var/spool/mail/
/var/spool/mailman/
/var/spool/mqueue/
/var/spool/news/
/var/spool/postfix/
/var/spool/repackage/
/var/spool/rwho/
/var/spool/samba/
/var/spool/squid/
/var/spool/squirrelmail/
/var/spool/up2date/
/var/spool/uucp/
/var/spool/uucppublic/
/var/spool/vbox/
2.2. Emplacement des fichiers Red Hat Enterprise Linux spéciaux
/var/lib/rpm/
. Pour obtenir des informations supplémentaires sur les RPM, veuillez consulter man rpm
.
/var/cache/yum/
contient des fichiers utilisés par Package Updater, y compris les informations d'en-tête RPM de ce système. L'emplacement peut aussi être utilisé pour stocker temporairement les RPM téléchargés pendant la mise à jour du système. Pour obtenir davantage d'informations sur Red Hat Network, veuillez consulter la documentation en ligne sur https://rhn.redhat.com/.
/etc/sysconfig/
est un autre emplacement spécifique à Red Hat Enterprise Linux. Ce répertoire stocke toute un ensemble d'informations de configuration. De nombreux scripts exécutés lors du démarrage utilisent des fichiers situés dans ce répertoire.
2.3. Système de fichiers virtuel /proc
/proc
ne contient ni texte, ni fichiers binaires. Au lieu de cela, il héberge des fichiers virtuels ; ainsi, /proc
fait habituellement référence à un système de fichiers virtuel. La taille typique de ces fichiers virtuels est de zéro octets, même s'ils contiennent de grandes quantités d'informations.
/proc
n'est pas utilisé pour le stockage. Son but principal est de fournir une interface basée sur fichiers pour le matériel, la mémoire, les processus en cours d'exécution, ainsi que pour les autres composants du système. Des informations en temps réel peuvent être récupérées sur de nombreux composants de système en affichant son fichier /proc
correspondant. Certains des fichiers dans /proc
peuvent également être manipulés (par les utilisateurs et les applications) pour configurer le noyau.
/proc
suivants sont utiles pour le contrôle et la gestion du stockage du système :
- /proc/devices
- Affiche divers périphériques bloc et caractères actuellement configurés.
- /proc/filesystems
- Répertorie les types de systèmes de fichiers actuellement pris en charge par le noyau.
- /proc/mdstat
- Contient des informations sur les configurations à disques multiples ou les configurations RAID sur le système, s'il y en a.
- /proc/mounts
- Répertorie tous les montages en cours d'utilisation par le système.
- /proc/partitions
- Contient les informations sur l'allocation de blocs de partitions.
/proc
, veuillez consulter le Guide de déploiement Red Hat Enterprise Linux 7.
2.4. Abandonner les blocs inutilisés
fstrim
. Cette commande abandonne tous les blocs inutilisés dans un système de fichiers correspondant aux critères de l'utilisateur. Ces deux types d'opération sont pris en charge pour une utilisation avec les systèmes de fichier ext4 dans Red Hat Enterprise Linux 6.2 et ses versions supérieures, tant que le périphérique bloc sous-jacent au système de fichiers prend en charge les opérations d'abandon physique. Ceci est aussi le cas avec les systèmes de fichiers XFS dans Red Hat Enterprise Linux 6.4 et ses versions supérieures. Les opérations d'abandon physique sont prises en charge si la valeur de /sys/block/device/queue/discard_max_bytes
n'est pas zéro.
-o discard
(soit dans /etc/fstab
ou en faisant partie de la commande mount
) et elles sont exécutées en temps réel sans intervention de la part de l'utilisateur. Les opérations d'abandon en ligne abandonnent uniquement les blocs passant de « Utilisé » à « Libre ». Les opérations d'abandon en ligne sont prises en charge sur les systèmes de fichiers ext4 dans Red Hat Enterprise Linux 6.2 et ses versions supérieures, ainsi que sur les systèmes de fichiers XFS dans Red Hat Enterprise Linux 6.4 et ses versions supérieures.
Chapitre 3. Btrfs (Aperçu technologique)
Important
3.1. Création d'un système de fichiers btrfs
# mkfs.btrfs /dev/device
3.2. Monter un système de fichiers btrfs
# mount /dev/device /mount-point
- device=/dev/name
- En ajoutant cette option à la commande de montage ordonne btrfs à scanner un volume btfs dans le périphérique nommé. C'est utilisé pour veiller à ce que le montage réussisse car tenter de monter les périphériques qui ne sont pas btrfs peuvent entraîner l'échec du montage.
Note
Cela ne signifie pas que tous les périphériques seront ajoutés au système de fichiers, cela ne fait que de les scanner. - max_inline=number
- Utiliser cette option pour définir le montant d'espace maximum (en octets) pouvant être utilisé pour aligner les données dans un B-tree Leaf de métadonnées. La valeur par défaut est de 8192 octets.
- alloc_start=number
- Utiliser cette option pour définir où les allocations débutent dans le disque.
- thread_pool=number
- Utiliser cette option pour assigner le nombre de threads de workers alloués.
- discard
- Utiliser cette option pour activer discard/TRIM sur les blocs libérés.
- noacl
- Utiliser cette option pour désactiver l'utilisation des ACL.
- space_cache
- Utiliser cette option pour libérer les données d'espace libre du disque pour mettre en cache un groupe de blocs plus rapidement. Il s'agit d'un changement persistant et on peut amorcer d'anciens noyaus en toute sécurité.
- nospace_cache
- Utiliser cette option pour désactiver le
space_cache
ci-dessus. - clear_cache
- Utiliser cette option pour libérer les caches d'espace-libre pendant le montage. Il s'agit d'une option sûre mais qui entraînera sa reconstruction. Par conséquence, laissez le système de fichiers monté pour que le processus de reconstruction puisse s'achever. Cette option de montage à pour but d'être utilisée une fois et uniquement après que les problèmes d'espace libre soient apparents.
- enospc_debug
- Cette option est utilisée pour déboguer les problèmes "no space left"
- recovery
- Utiliser cette option pour permettre le recouvrement automatique lors du montage.
3.3. Redimensionner un système de fichiers btrfs
Note
G
ou g
sont acceptés pour GiB.
t
pour terabytes ou p
pour petabytes. Elle accepte uniquement k
, m
, et g
.
Comment élargir un système de fichiers btrfs
# btrfs filesystem resize amount /mount-point
# btrfs filesystem resize +200M /btrfssingle Resize '/btrfssingle' of '+200M'
# btrfs filesystem show /mount-point
# btrfs filesystem show /btrfstest Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 Total devices 4 FS bytes used 192.00KiB devid 1 size 1.00GiB used 224.75MiB path /dev/vdc devid 2 size 524.00MiB used 204.75MiB path /dev/vdd devid 3 size 1.00GiB used 8.00MiB path /dev/vde devid 4 size 1.00GiB used 8.00MiB path /dev/vdf Btrfs v3.16.2
devid
du périphérique à élargir, utiliser la commande suivante :
# btrfs filesystem resize devid:amount /mount-point
# btrfs filesystem resize 2:+200M /btrfstest Resize '/btrfstest/' of '2:+200M'
Note
max
au lieu d'un montant spécifique. Cela utilisera tout l'espace libre restant qui se trouve sur le périphérique.
Réduire un système de fichiers btrfs
# btrfs filesystem resize amount /mount-point
# btrfs filesystem resize -200M /btrfssingle Resize '/btrfssingle' of '-200M'
# btrfs filesystem show /mount-point
# btrfs filesystem show /btrfstest Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 Total devices 4 FS bytes used 192.00KiB devid 1 size 1.00GiB used 224.75MiB path /dev/vdc devid 2 size 524.00MiB used 204.75MiB path /dev/vdd devid 3 size 1.00GiB used 8.00MiB path /dev/vde devid 4 size 1.00GiB used 8.00MiB path /dev/vdf Btrfs v3.16.2
devid
du périphérique à réduire, utiliser la commande suivante :
# btrfs filesystem resize devid:amount /mount-point
# btrfs filesystem resize 2:-200M /btrfstest Resize '/btrfstest' of '2:-200M'
Définir la taille du système de fichiers
# btrfs filesystem resize amount /mount-point
# btrfs filesystem resize 700M /btrfssingle Resize '/btrfssingle' of '700M'
# btrfs filesystem show /mount-point
# btrfs filesystem show /btrfstest Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 Total devices 4 FS bytes used 192.00KiB devid 1 size 1.00GiB used 224.75MiB path /dev/vdc devid 2 size 724.00MiB used 204.75MiB path /dev/vdd devid 3 size 1.00GiB used 8.00MiB path /dev/vde devid 4 size 1.00GiB used 8.00MiB path /dev/vdf Btrfs v3.16.2
devid
du périphérique à modifier, utiliser la commande suivante :
# btrfs filesystem resize devid:amount /mount-point
# btrfs filesystem resize 2:300M /btrfstest Resize '/btrfstest' of '2:300M'
3.4. Gestion des volumes intégrés de plusieurs périphériques
3.4.1. Création de système de fichiers avec plusieurs périphériques
mkfs.btrfs
détaillée dans Section 3.1, « Création d'un système de fichiers btrfs » accepte les options -d
pour les données, et -m
pour les métadonnées. Les spéfifications acceptées sont :
raid0
raid1
raid10
dup
single
-m single
indique qu'aucun duplicata de métadonnées n'a lieu. C'est souhaitable quand on utilise un raid de matériel.
Note
Exemple 3.1. Créer un système de fichiers btrfs Raid 10
# mkfs.btrfs /dev/device1 /dev/device2 /dev/device3 /dev/device4
# mkfs.btrfs -m raid0 /dev/device1 /dev/device2
# mkfs.btrfs -m raid10 -d raid10 /dev/device1 /dev/device2 /dev/device3 /dev/device4
# mkfs.btrfs -m single /dev/device
single
pour utiliser toute la capacité de chaque disque quand les disques sont de tailles différentes.
# mkfs.btrfs -d single /dev/device1 /dev/device2 /dev/device3
# btrfs device add /dev/device1 /mount-point
btrfs device scan
pour découvrir tous les systèmes de fichiers multi-périphériques. Voir Section 3.4.2, « btrfs device scan pour périphériques multiples » pour obtenir plus d'informations.
3.4.2. btrfs device scan pour périphériques multiples
btrfs device scan
pour scanner tous les périphériques blocs sous /dev
et cherchez les volumes btrfs. Cela doit être effectué après le chargement du module btfrs si vous exécutez plus d'un périphérique dans un système de fichiers.
# btrfs device scan
# btrfs device scan /dev/device
3.4.3. Ajouter des nouveaux périphériques à un système de fichiers btrfs
btrfs filesystem show
pour faire la liste de tous les systèmes de fichiers btrfs et des périphériques qu'ils incluent.
btrfs device add
est utilisée pour ajouter des nouveaux périphériques à un système de fichiers monté.
btrfs filesystem balance
équilibre (redistribue) les extensions allouées à tous les périphériques existants.
Exemple 3.2. Ajouter un nouveau périphérique à un système de fichiers btrfs
# mkfs.btrfs /dev/device1 # mount /dev/device1
# btrfs device add /dev/device2 /mount-point
/dev/device1
. Elles doivent maintenant être réparties équitablement entre les périphériques.
# btrfs filesystem balance /mount-point
3.4.4. Convertir un système de fichiers btrfs
Exemple 3.3. Convertir un système de fichiers btrfs
/dev/sdb1
dans un tel cas, et en deux périphériques, un système raid 1 pour se protéger des défaillances du disque, utiliser la commande suivante :
# mount /dev/sdb1 /mnt # btrfs device add /dev/sdc1 /mnt # btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt
Important
3.4.5. Suppression des périphériques btrfs
btrfs device delete
pour supprimer un périphérique en ligne. Redistribue toute extension utilisée par d'autres périphériques du système de fichiers pour une suppression en toute sécurité.
Exemple 3.4. Supprimer un périphérique sur un système de fichiers btrfs
# mkfs.btrfs /dev/sdb /dev/sdc /dev/sdd /dev/sde # mount /dev/sdb /mnt
# btrfs device delete /dev/sdc /mnt
3.4.6. Remplacer les périphériques qui ont échoué sur le système de fichiers btrfs
# mkfs.btrfs -m raid1 /dev/sdb /dev/sdc /dev/sdd /dev/sde ssd is destroyed or removed, use -o degraded to force the mount to ignore missing devices # mount -o degraded /dev/sdb /mnt 'missing' is a special device name # btrfs device delete missing /mnt
btrfs device delete missing
supprime le premier périphérique qui est décrit dans les métadonnées du système de fichiers, mais qui n'était pas présent quand le système de fichiers a été monté.
Important
- monter en mode dégradé,
- ajouter un nouveau périphérique,
- et, supprimer le périphérique manquant.
3.4.7. Enregistrer un système de fichiers btrfs dans /etc/fstab
initrd
ou si le périphérique btrfs ne peut avoir lieu, il est possible de monter un système de fichiers btrfs
multi volumes en passant tous les périphériques du système de fichiers explicitement à la commande mount
.
Exemple 3.5. Exemple de saisie /etc/fstab
/etc/fstab
qui conviendrait :
/dev/sdb /mnt btrfs device=/dev/sdb,device=/dev/sdc,device=/dev/sdd,device=/dev/sde 0
3.5. Optimisation SSD
mkfs.btrfs
qui ferme la duplication des métadonnées sur un seul périphérique quand/sys/block/device/queue/rotational
est sur zéro pour le périphérique indiqué. Cela revient à spécifier -m single
sur la ligne de comande. Cela peut être remplacé et la duplication des métadonnées peut être forcée grâce à l'option -m dup
. La duplication n'est pas requise car SSD firmware peut perdre les deux copies. C'est une perte d'espace et un cout rajouté à la performance.
ssd
, nossd
, et ssd_spread
.
ssd
fait plusieurs choses :
- Cela permet une allocation de cluster de métadonnées plus importante.
- Cela permet de distribuer des données de manière plus séquentielle lorsque cela est possible.
- Désactive la ré-écriture de feuille btree pour établir une correspondance avec la clé et l'ordre des blocs.
- Valide les fragments de journaux sans regrouper plusieurs processus.
Note
ssd
n'active que l'option ssd. Utiliser l'option nossd
pour la désactiver.
mount -o ssd
cherchera des groupements de blocs quand il y a plusieurs blocs de libre qui auraient pu avoir des blocs distribués mélangés. La commande mount -o ssd_spread
veille à ce qu'il n'y ait aucuns blocs distribués de mélangés. Cela améliore la performance à la base des SSD.
Note
ssd_spread
active les options ssd
et ssd_spread
à la fois. Utiliser nossd
pour désactiver ces options.
ssd_spread
n'est jamais définie automatiquement si aucune de ces options SSD ne sont fournies et qu'aucun des périphériques est non-rotationnel.
3.6. Références btrfs
btrfs(8)
couvre toutes les commandes de gestion importantes. Inclut tout particulièrement :
- Toutes les commandes de sous-volumes pour gérer les clichés.
- Les commandes de
device
pour gérer les périphériques. - Les commandes
scrub
,balance
, etdefragment
.
mkfs.btrfs(8)
contient des informations sur la façon de créer un système de fichiers btrfs qui inclut toutes les options à son sujet.
btrfsck(8)
est pour les informations fsck
à propos des systèmes btrfs.
Chapitre 4. Système de fichiers Ext3
- Disponibilité
- Après une panne d'alimentation ou une panne du système inattendue (aussi appelé un arrêt du système incorrect), la cohérence de chaque système de fichiers ext2 monté sur la machine doit être vérifiée par le programme
e2fsck
. Ce long processus peut retarder le démarrage du système de manière importante, particulièrement pour les volumes de grande taille contenant de nombreux fichiers. Pendant ce délai, on ne peut pas accéder aux données sur les volumes.Il est possible d'exécuterfsck -n
sur un système de fichiers en direct. Cependant, aucun changement ne sera effectué et des résultats trompeurs pourraient être retournés s'il y a des métadonnées partiellement écrites.Si LVM est utilisé dans la pile, une autre option consiste à prendre un cliché LVM du système de fichiers et d'exécuterfsck
dessus à la place.Finalement, il existe une option pour remonter le système de fichiers en lecture seule. Toutes les mises à jour (et écritures) de métadonnées en attente sont ensuite forcées sur le disque avant qu'il soit remonté. Ceci permet d'assurer que le système de fichiers se trouve dans un état cohérent, à condition qu'il n'y ait pas de corruption précédente. Il est désormais possible d'exécuterfsck -n
.La journalisation offerte par le système de fichiers ext3 signifie que ce type de vérification de système de fichiers n'est plus nécessaire après un arrêt du système incorrect. La seule fois qu'une vérification de cohérence se produit en utilisant ext3 est dans certains rares cas de panne de matériel, comme lors de pannes de disque dur. Le temps pris pour récupérer un système de fichiers ext3 après un arrêt de système incorrect ne dépend pas de la taille du système de fichiers ou du nombre de fichiers, il dépend de la taille du journal utilisé pour maintenir une certaine cohérence. La taille de journal par défaut prend environ une seconde pour reprendre, en fonction de la vitesse du matériel.Note
Le seul mode de journalisation d'ext3 pris en charge par Red Hat estdata=ordered
(par défaut). - Intégrité des données
- Le système de fichiers ext3 empêche la perte d'intégrité des données dans le cas où un arrêt du système incorrect se produirait. Le système de fichiers ext3 vous permet de choisir le type et le niveau de protection pour vos données. Quant à l'état du système de fichiers, les volumes ext3 sont configurés de manière à fournir un haut niveau de cohérence des données par défaut.
- Vitesse
- Malgré l'écriture de certaines données plus d'une fois, ext3 possède un plus haut débit que ext2 dans la plupart des cas car la journalisation d'ext3 optimise les mouvements de disque dur. Vous pouvez choisir parmi trois modes de journalisation pour optimiser la vitesse, mais ce faire entrainera des compromis au niveau de l'intégrité des données si jamais le système devait tomber en panne.
Note
Le seul mode de journalisation d'ext3 pris en charge par Red Hat estdata=ordered
(par défaut). - Transition facile
- Il est facile de migrer d'ext2 à ext3 et de tirer profit des bénéfices d'un système de fichiers offrant une journalisation robuste sans reformatage. Veuillez consulter la Section 4.2, « Conversion vers un système de fichiers ext3 » pour obtenir des informations supplémentaire sur la manière d'accomplir cette tâche.
Note
ext4.ko
pour ces formats sur disque. Cela signifie que les messages de noyau se référeront toujours à ext4 quel que soit le système de fichiers utilisé.
4.1. Créer un système de fichiers ext3
Procédure 4.1. Créer un système de fichiers ext3
- Formater la partition ou le volume LVM avec le système de fichiers ext3 en utilisant
mkfs
. - Étiqueter le système de fichiers en utilisant
e2label
.
/dev/sda8
, exécuter les commandes suivantes :
# mkfs -t ext3 -U 7cd65de3-e0be-41d9-b66d-96d749c02da7 /dev/sda8 # tune2fs -U 7cd65de3-e0be-41d9-b66d-96d749c02da7 /dev/sda8
4.2. Conversion vers un système de fichiers ext3
tune2fs
convertit un système de fichiers ext2
en ext3
.
Note
e2fsck
afin de vérifier votre système de fichiers avant et après avoir utilisé tune2fs
. Avant d'essayer de convertir ext2 en ext3, veuillez effectuer des copies de sauvegarde de tous les systèmes de fichiers au cas ou une erreur se produirait.
ext2
en système de fichiers ext3
, connectez-vous en tant que root et saisissez la commande suivante dans une fenêtre de terminal :
# tune2fs -j block_device
df
pour afficher les systèmes de fichiers montés.
4.3. Rétablir un système de fichiers Ext2
/dev/mapper/VolGroup00-LogVol02
Procédure 4.2. Rétablir depuis ext3 vers ext2
- Démonter la partition en vous connectant en tant que root et en saisissant :
# umount /dev/mapper/VolGroup00-LogVol02
- Modifier le type du système de fichiers en ext2 en saisissant la commande suivante :
# tune2fs -O ^has_journal /dev/mapper/VolGroup00-LogVol02
- Vérifier si la partition contient des erreurs en saisissant la commande suivante :
# e2fsck -y /dev/mapper/VolGroup00-LogVol02
- Puis monter la partition à nouveau en tant que système de fichiers ext2 en saisissant :
# mount -t ext2 /dev/mapper/VolGroup00-LogVol02 /mount/point
Dans la commande ci-dessus, remplacer /mount/point par le point de montage de la partition.Note
Si un fichier.journal
existe au niveau root de la partition, supprimez-le.
/etc/fstab
, sinon l'autre type de système de fichiers sera rétabli après un démarrage.
Chapitre 5. Le système de fichiers Ext4
Note
fsck
. Pour obtenir des informations supplémentaires, veuillez consulter le Chapitre 4, Système de fichiers Ext3.
- Fonctionnalités principales
- Ext4 utilise des extensions (contrairement au schéma de mappage de blocs traditionnellement utilisé par ext2 et ext3), ce qui améliore les performances lors de l'utilisation de fichiers de grande taille, et réduit les en-têtes des métadonnées des fichiers de grande taille. En outre, ext4 étiquette également les groupes de blocs et les sections de tables d'inodes en conséquence, ce qui leur permet d'être ignorés pendant les vérifications de systèmes de fichiers. Ceci permet d'effectuer des vérifications de systèmes de fichiers plus rapides, qui deviendront de plus en plus avantageuses au fur et à mesure que la taille du système de fichiers augmente.
- Fonctionnalités d'allocation
- Le système de fichiers ext4 offre les schémas d'allocation suivants :
- La pré-allocation persistante
- L'allocation différée
- L'allocation multi-blocs
- L'allocation par entrelacement
À cause de l'allocation différée, et dû à d'autres optimisations des performances, le comportement d'ext4 lors de l'écriture sur disque est différent d'ext3. Avec ext4, lorsqu'un programme est écrit sur le système de fichiers, il n'est pas garanti que ce soit effectivement sur disque à moins que le programme n'exécute un appelfsync()
après.Par défaut, ext3 force automatiquement les fichiers récemment créés sur le disque de manière quasi immédiate, même sansfsync()
. Ce comportement cache les bogues des programmes qui n'ont pas utiliséfsync()
afin de s'assurer que les données écrites l'étaient sur disque. Contrairement à cela, le système de fichiers ext4 attend souvent plusieurs secondes pour écrire les changements sur le disque, lui permettant de combiner et de réarranger les écritures pour offrir de meilleures performances qu'ext3.Avertissement
Contrairement à ext3, le système de fichiers ext4 ne force pas les données sur disque lors des enregistrements de transactions. Ainsi, des écritures mises en mémoire tampon mettent plus longtemps pour être vidées sur le disque. Quant aux systèmes de fichiers, veuillez utiliser des appels d'intégrité de données, tels quefsync()
, afin de vous assurer que les données soient effectivement écrites sur un stockage permanent. - Autres fonctionnalités Ext4
- Le système de fichiers ext4 prend également en charge :
- Les attributs étendus (
xattr
) — Ceux-ci permettent au système d'associer plusieurs noms et paires de valeurs supplémentaires par fichier. - Journalisation de quotas — Ceci permet d'éviter le besoin de longues vérifications de la cohérence des quotas après une panne.
Note
Le seul mode de journalisation pris en charge sur ext4 estdata=ordered
(par défaut). - Horodatage subsecond — Ceci donne la deuxième décimale des secondes à l'horodatage.
5.1. Créer un système de fichiers Ext4
mkfs.ext4
. En général, les options par défaut sont optimales pour la plupart des scénarios d’utilisation :
# mkfs.ext4 /dev/device
Exemple 5.1. Sortie de la commande mkfs.ext4
~]# mkfs.ext4 /dev/sdb1 mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 245280 inodes, 979456 blocks 48972 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=1006632960 30 block groups 32768 blocks per group, 32768 fragments per group 8176 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736 Writing inode tables: done Creating journal (16384 blocks): done Writing superblocks and filesystem accounting information: done
mkfs.ext4
choisit une géométrie optimale. Ceci peut également s'appliquer à certains types de matériel RAID qui exportent des informations sur la géométrie au système d'exploitation.
-E
de mkfs.ext4
(c'est-à-dire les options de système de fichiers étendues) avec les sous-options suivantes :
- stride=value
- Spécifie la taille du bloc RAID.
- stripe-width=value
- Spécifie le nombre de disques de données dans un périphérique RAID, ou le nombre d'unités d'entrelacement dans l'entrelacement.
value
» doit être spécifiée en unités de bloc de système de fichiers. Par exemple, pour créer un système de fichiers avec un stride de 64k (c'est-à-dire 16 x 4096) sur un système de fichiers de blocs de 4k, veuillez utiliser la commande suivante :
# mkfs.ext4 -E stride=16,stripe-width=64 /dev/device
man mkfs.ext4
.
Important
tune2fs
pour activer certaines fonctionnalités ext4 sur des systèmes de fichiers ext3, et d'utiliser le pilote ext4 pour monter un système de fichiers ext3. Cependant, ces actions ne sont pas prises en charge sur Red Hat Enterprise Linux 7 car elles n'ont pas été totalement testées. À cause de cela, Red Hat ne peut pas garantir de performance cohérente ou de comportement prévisible pour les systèmes de fichiers ext3 convertis ou montés de cette manière.
5.2. Monter un système de fichiers Ext4
# mount /dev/device /mount/point
acl
active les listes de contrôle d'accès (« ACL »), tandis que le paramètre user_xattr
active les attributs étendus d'utilisateur. Pour activer les deux options, veuillez utiliser leurs paramètres respectifs avec -o
, comme suit :
# mount -o acl,user_xattr /dev/device /mount/point
data_err=abort
peut être utilisée pour abandonner le journal si une erreur a lieu dans les données d'un fichier.
# mount -o data_err=abort /dev/device /mount/point
tune2fs
permet également aux administrateurs de définir les options de montage par défaut dans le superbloc du système de fichiers. Pour obtenir des informations supplémentaires, veuillez consulter man tune2fs
.
Barrières d'écriture
nobarrier
, comme suit :
# mount -o nobarrier /dev/device /mount/point
Aperçu technologique de Direct Access (DAX)
Direct Access
(DAX) fournit, en tant qu'aperçu technologique sur les systèmes de fichiers ext4 et XFS, un moyen pour une application de mapper directement la mémoire persistante dans son espace d'adresse. Pour utiliser DAX, un système doit posséder une certaine forme de mémoire persistante disponible, sous forme d'un ou de plusieurs modules Non-Volatile Dual In-line Memory Modules (NVDIMMs), et un système de fichiers supportant DAX doit être créé sur les NVDIMM(s). De plus, le système de fichiers doit être monté avec l'option de montage dax
. Ensuite, un mmap
de fichier de système de fichier monté-dax résulte en mappage direct de stockage dans l'espace d'adresse de l'application.
5.3. Redimensionner un système de fichiers Ext4
resize2fs
:
# resize2fs /mount/device size
resize2fs
peut également réduire la taille d'un système de fichiers ext4 non monté :
# resize2fs /dev/device size
resize2fs
lit la taille de bloc du système de fichiers en unités, à moins qu'un suffixe indiquant une unité particulière ne soit utilisé. Les suffixes suivants indiquent des unités particulières :
s
— secteurs de 512 octets sectorsK
— kilooctetsM
— mégaoctetsG
— gigaoctets
Note
resize2fs
s'étend automatiquement pour remplir tout l'espace disponible du conteneur, habituellement un volume ou une partition logique.
man resize2fs
.
5.4. Sauvegarde des systèmes de fichiers ext2/3/4
Procédure 5.1. Exemple de sauvegarde des systèmes de fichiers ext2/3/4
- Toutes les données doivent être sauvegardées avant de tenter les opérations de restauration. Les sauvegardes de données doivent être effectuées régulièrement. En plus des données, il y a des informations de configuration qui doivent être sauvegardées, y compris
/etc/fstab
et la sortie defdisk -l
. Exécuter un sosreport/sysreport capturera cette information et est fortement conseillé.# cat /etc/fstab LABEL=/ / ext3 defaults 1 1 LABEL=/boot1 /boot ext3 defaults 1 2 LABEL=/data /data ext3 defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 LABEL=SWAP-sda5 swap swap defaults 0 0 /dev/sda6 /backup-files ext3 defaults 0 0 # fdisk -l Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 1925 15358140 83 Linux /dev/sda3 1926 3200 10241437+ 83 Linux /dev/sda4 3201 4864 13366080 5 Extended /dev/sda5 3201 3391 1534176 82 Linux swap / Solaris /dev/sda6 3392 4864 11831841 83 Linux
Dans cet exemple, nous allons utiliser la partition/dev/sda6
pour sauvegarder des fichiers de sauvegarde, et nous assumons que/dev/sda6
est monté sur le fichier/backup-files
. - Si la partition sauvegardée est dans une partition de système d'exploitation, démarrez votre système en mode Single User. Cette étape n'est pas utile dans les cas de partitions de données normales.
- Utiliser la commande
dump
pour sauvegarder le contenu des partitions :Note
- Si le système est en cours d'exécution depuis un bon moment, il est conseillé d'exécuter
e2fsck
sur les partitions avant la sauvegarde. dump
ne doit pas être utilisé sur un système de fichiers monté et à forte charge car des versions corrompues de fichiers pourraient être sauvegardées. Ce problème a été soulevé dans dump.sourceforge.net.Important
Quand on sauvegarde des partitions de système d'exploitation, la partition doit être dé-montée.Bien qu'il soit possible de sauvegarder une partition de données ordinaire montée, il vaut mieux la dé-monter si possible. Si la partition de données est montée, les résultats de la sauvegarde sont imprévisibles.
# dump -0uf /backup-files/sda1.dump /dev/sda1 # dump -0uf /backup-files/sda2.dump /dev/sda2 # dump -0uf /backup-files/sda3.dump /dev/sda3
Si vous souhaitez effectuer une sauvegarde à distance, vous pourrez utiliser ssh ou bien vous pourrez configurer une connexion sans mot de passe.Note
Si vous utilisez une redirection standard, l'option « -f » devra être passée séparément.# dump -0u -f - /dev/sda1 | ssh root@remoteserver.example.com dd of=/tmp/sda1.dump
5.5. Restaurer un système de fichiers ext2/3/4
Procédure 5.2. Exemple de restauration d'un système de fichiers ext2/3/4
- Si vous restaurez une partition de système d'exploitation, démarrez votre système en mode Rescue. Cette étape n'est pas requise pour les partitions de données ordinaires.
- Reconstruire sda1/sda2/sda3/sda4/sda5 à l'aise de la commande
fdisk
.Note
Si nécessaire, créer des partitions qui puissent contenir les systèmes de fichiers restaurés. Les nouvelles partitions doivent être suffisamment grandes pour pouvoir contenir les données restaurées. Il est important d'avoir les bons numéros de début et de fin ; ce sont les numéros de secteurs de début et de fin des partitions. - Formater les partitions de destination en utilisant la commande
mkfs
, comme montré ci-dessous.Important
NE PAS formater/dev/sda6
dans l'exemple ci-dessus car il sauvegarde les fichiers de sauvegarde.# mkfs.ext3 /dev/sda1 # mkfs.ext3 /dev/sda2 # mkfs.ext3 /dev/sda3
- Si vous créez des nouvelles partitions, rénommez toutes les partitions pour qu'elles puissent correspondre au fichier
fstab
. Cette étape n'est pas utile si les partitions ne sont pas créées à nouveau.# e2label /dev/sda1 /boot1 # e2label /dev/sda2 / # e2label /dev/sda3 /data # mkswap -L SWAP-sda5 /dev/sda5
- Préparer les répertoires de travail.
# mkdir /mnt/sda1 # mount -t ext3 /dev/sda1 /mnt/sda1 # mkdir /mnt/sda2 # mount -t ext3 /dev/sda2 /mnt/sda2 # mkdir /mnt/sda3 # mount -t ext3 /dev/sda3 /mnt/sda3 # mkdir /backup-files # mount -t ext3 /dev/sda6 /backup-files
- Restaurer les données.
# cd /mnt/sda1 # restore -rf /backup-files/sda1.dump # cd /mnt/sda2 # restore -rf /backup-files/sda2.dump # cd /mnt/sda3 # restore -rf /backup-files/sda3.dump
Si vous souhaitez restaurer à partir d'un hôte éloigné ou d'un fichier de sauvegarde d'un hôte éloigné, utiliser ssh ou rsh. Vous devrez configurer une connexion sans mot de passe pour les exemples suivants :Connectez-vous à 10.0.0.87, et restaurez sda1 à partir du fichier local sda1.dump :# ssh 10.0.0.87 "cd /mnt/sda1 && cat /backup-files/sda1.dump | restore -rf -"
Connectez-vous à 10.0.0.87, et restaurez sda1 à partir du fichier distant 10.66.0.124 sda1.dump :# ssh 10.0.0.87 "cd /mnt/sda1 && RSH=/usr/bin/ssh restore -r -f 10.66.0.124:/tmp/sda1.dump"
- Démarrez à nouveau.
5.6. Autres utilitaires du système de fichiers Ext4
- e2fsck
- Utilisé pour réparer un système de fichiers ext4. Cet outil vérifie et répare un système de fichiers ext4 plus efficacement qu'ext3, grâce aux mises à jour apportées à la structure de disque ext4.
- e2label
- Change l'étiquette sur un système de fichiers ext4. Cet outil fonctionne également sur les systèmes de fichiers ext2 et ext3.
- quota
- Contrôle et effectue des rapports sur l'utilisation de l'espace disque (les blocs) et des fichiers (inodes) par les utilisateurs et les groupes sur un système de fichiers ext4. Pour obtenir des informations sur l'utilisation de
quota
, veuillez consulterman quota
et la Section 16.1, « Configurer les quotas de disques ». - fsfreeze
- Pour suspendre l'accès à un système de fichiers, utiliser la commande
# fsfreeze -f mount-point
pour le geler, et# fsfreeze -u mount-point
pour le dégeler. Cela stoppe l'accès au système de fichiers et crée une image stable sur disque.Note
Il faut utiliserfsfreeze
pour les pilotes de mappage de périphériques.Pour plus d'informations, voir la page manfsfreeze(8)
.
tune2fs
peut également ajuster des paramètres de systèmes de fichiers configurables pour les systèmes de fichiers ext2, ext3, et ext4. En outre, les outils suivants sont aussi utiles pour le débogage et l'analyse des système de fichiers ext4 :
- debugfs
- Débogue les systèmes de fichiers ext2, ext3, ou ext4.
- e2image
- Enregistre les métadonnées critiques des systèmes de fichiers ext2, ext3, ou ext4 sur un fichier.
man
respectives.
Chapitre 6. Le système de fichiers XFS
- Fonctionnalités principales
- XFS prend en charge la journalisation de métadonnées, ce qui facilite une récupération après incident plus rapide. Le système de fichiers XFS peut aussi être défragmenté et élargi alors qu'il est monté et actif. En outre, Red Hat Enterprise Linux 7 prend en charge les utilitaires de sauvegarde et de restauration spécifiques à XFS.
- Fonctionnalités d'allocation
- XFS offre les schémas d'allocation suivants :
- Allocation basée sur extensions
- Politiques d'allocation par entrelacement
- L'allocation différée
- Pré-allocation de l'espace
L'allocation différée et les autres optimisations des performances affectent XFS de la même manière qu'ext4. Autrement dit, les écritures d'un programme sur un système de fichiers XFS ne garantissent pas d'être sur disque à moins que le programme n'effectue un appelfsync()
par la suite.Pour obtenir des informations supplémentaires sur les implications de l'allocation différée sur un système de fichiers (ext4 et XFS), veuillez consulter les Fonctionnalités de l'allocation dans le Chapitre 5, Le système de fichiers Ext4.Note
Créer ou étendre des fichiers échoue occasionnellement avec un échec d'écriture ENOSPC inattendu même si le disque semble insuffisant. Cela s'explique par le design de XFS qui est basé sur la performance. Dans la pratique, ce n'est pas un problème car cela ne survient que si l'espace restant n'est que dans quelques blocs. - Autres fonctionnalités XFS
- Le système de fichiers XFS prend également en charge ce qui suit :
- Attributs étendus (
xattr
) - Ceci permet au système d'associer plusieurs paires nom/valeur supplémentaires par fichiers. Activé par défaut.
- Journalisation de quotas
- Ceci permet d'éviter le besoin de longues vérifications de cohérence des quotas après une panne.
- Quotas de projets/répertoires
- Ceci permet les restrictions de quotas sur une arborescence de répertoires.
- Horodatage subsecond
- Ceci permet à l'horodatage de donner la deuxième décimale des secondes.
- Attributs étendus (
- Le comportement par défaut
atime
estrelatime
Relatime
est pour XFS par défaut. N'a presque pas de temps de latence par rapport ànoatime
tout en conservant des valeursatime
saines.
6.1. Créer un système de fichiers XFS
mkfs.xfs /dev/device
. En général, les options par défaut sont optimales pour un usage commun.
mkfs.xfs
sur un périphérique bloc contenant un système de fichiers, veuillez utiliser l'option -f
pour forcer le remplacement de ce système de fichiers.
Exemple 6.1. Sortie de la commande mkfs.xfs
mkfs.xfs
:
meta-data=/dev/device isize=256 agcount=4, agsize=3277258 blks = sectsz=512 attr=2 data = bsize=4096 blocks=13109032, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 log =internal log bsize=4096 blocks=6400, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
Note
xfs_growfs
(veuillez consulter Section 6.4, « Augmenter la taille d'un système de fichiers XFS »).
mkfs.xfs
choisit une géométrie optimale. Ceci peut également s'appliquer à certains types de matériel RAID qui exportent des informations sur la géométrie au système d'exploitation.
mkfs
(pour ext3, ext4, et xfs) utilisera cette géométrie automatiquement. Si la géométrie de tranches n'est pas détectée, il sera possible de la spécifier automatiquement à un moment mkfs par les options suivantes :
- su=value
- Spécifie une unité d'entrelacement ou une taille de morceau RAID. La valeur
value
doit être indiquée en octets, avec un suffixe optionnelk
,m
, oug
. - sw=value
- Spécifie le nombre de disques de données dans un périphérique RAID, ou le nombre d'unités d'entrelacement dans l'entrelacement.
# mkfs.xfs -d su=64k,sw=4 /dev/device
man mkfs.xfs
et Red Hat Enterprise Linux Performance Tuning Guide, chapitre Basic Tuning for XFS.
6.2. Monter un système de fichiers XFS
# mount /dev/device /mount/point
Note
Barrières d'écriture
nobarrier
:
# mount -o nobarrier /dev/device /mount/point
Aperçu technologique de Direct Access (DAX)
Direct Access
(DAX) fournit, en tant qu'aperçu technologique sur les systèmes de fichiers ext4 et XFS, un moyen pour une application de mapper directement la mémoire persistante dans son espace d'adresse. Pour utiliser DAX, un système doit posséder une certaine forme de mémoire persistante disponible, sous forme d'un ou de plusieurs modules Non-Volatile Dual In-line Memory Modules (NVDIMMs), et un système de fichiers supportant DAX doit être créé sur les NVDIMM(s). De plus, le système de fichiers doit être monté avec l'option de montage dax
. Ensuite, un mmap
de fichier de système de fichier monté-dax résulte en mappage direct de stockage dans l'espace d'adresse de l'application.
6.3. Gestion des quotas XFS
noenforce
; ceci permettra d'effectuer des rapport d'utilisation sans appliquer de limite. Les options de montage de quotas valides incluent :
uquota
/uqnoenforce
- Quotas d'utilisateursgquota
/gqnoenforce
- Quotas de groupespquota
/pqnoenforce
- Quotas de projets
xfs_quota
peut être utilisé pour définir les limites et effectuer un rapport sur l'utilisation du disque. Par défaut, xfs_quota
est exécuté de manière interactive et dans le mode de base. Les sous-commandes du mode de base rapportent simplement l'usage et sont disponibles à tous les utilisateurs. Les sous-commandes xfs_quota
de base incluent :
- quota username/userID
- Afficher l'utilisation et les limites pour le nom d'utilisateur
username
donné ou l'ID numériqueuserID
donné - df
- Afficher le compte des blocs et inodes disponibles et utilisés
xfs_quota
possède également un mode expert. Les sous-commandes de ce mode permettent la configuration des limites, et sont uniquement disponibles aux utilisateurs possédant des privilièges élevés. Pour utiliser les sous-commandes du mode expert de manière interactive, veuillez exécuter xfs_quota -x
. Les sous-commandes du mode expert incluent :
- report /path
- Rapport des informations sur les quotas d'un système de fichiers particulier
- limit
- Modifier les limites de quota.
help
.
-c
, avec -x
pour les sous-commandes du mode expert.
Exemple 6.2. Afficher un exemple de rapport de quotas
/home
(sur /dev/blockdevice
), veuillez utiliser la commande xfs_quota -x -c 'report -h' /home
. Ceci affichera une sortie similaire à la suivante :
User quota on /home (/dev/blockdevice) Blocks User ID Used Soft Hard Warn/Grace ---------- --------------------------------- root 0 0 0 00 [------] testuser 103.4G 0 0 00 [------] ...
john
(dont le répertoire d'acceuil est /home/john
), veuillez utiliser la commande suivante :
# xfs_quota -x -c 'limit isoft=500 ihard=700 john' /home/
limit
reconnaît les cibles en tant qu'utilisateurs. Lors de la configuration des limites d'un groupe, veuillez utiliser l'option -g
(comme dans l'exemple précédent). De la même manière, veuillez utiliser -p
pour les projets.
bsoft
ou bhard
au lieu de isoft
ou ihard
.
Exemple 6.3. Définir une limite douce (« soft ») et une limite dure (« hard »)
accounting
sur le système de fichiers /target/path
, veuillez utiliser la commande suivante :
# xfs_quota -x -c 'limit -g bsoft=1000m bhard=1200m accounting' /target/path
Note
bsoft
et bhard
comptent par octets.
Important
rtbhard
/rtbsoft
) sont décrits dans man xfs_quota
comme étant des unités valides lors du paramétrage de quotas, le sous-volume en temps réel n'est pas activé dans cette version. Ainsi, les options rtbhard
et rtbsoft
ne sont pas applicables.
Paramétrer des limites de projets
/etc/projects
. Les noms de projets peuvent être ajoutés à /etc/projectid
pour lier les ID de projets aux noms de projets. Une fois qu'un projet est ajouté à /etc/projects
, veuillez initialiser son répertoire de projet en utilisant la commande suivante :
# xfs_quota -x -c 'project -s projectname' project_path
# xfs_quota -x -c 'limit -p bsoft=1000m bhard=1200m projectname'
quota
, repquota
, et edquota
) peuvent également être utilisés pour manipuler les quotas XF. Cependant, ces outils ne peuvent pas être utilisés avec les quotas des projets XFS.
Important
xfs_quota
sur tous les autres outils disponibles.
man xfs_quota
, man projid(5)
, et man projects(5)
.
6.4. Augmenter la taille d'un système de fichiers XFS
xfs_growfs
:
# xfs_growfs /mount/point -D size
-D size
permet d'augmenter la taille du système de fichiers à la taille size
spécifiée (exprimée en nombre de blocs de système de fichier). Sans l'option -D size
, xfs_growfs
augmentera la taille du système de fichiers à la taille maximum prise en charge par le périphérique.
-D size
, assurez-vous que la taille du périphérique bloc sous-jacent sera appropriée pour contenir le système de fichiers. Veuillez utiliser les méthodes correctes de redimensionnement pour les périphériques bloc affectés.
Note
man xfs_growfs
.
6.5. Réparer un système de fichiers XFS
xfs_repair
:
# xfs_repair /dev/device
xfs_repair
est hautement évolutif et a également été conçu pour réparer des systèmes de fichiers de très grande taille avec de nombreux inodes de manière efficace. Contrairement aux autres systèmes de fichiers Linux, xfs_repair
n'est pas exécuté lors du démarrage, même lorsqu'un système de fichiers XFS n'a pas été monté correctement. En cas de démontage incorrect, xfs_repair
rediffuse simplement le journal pendant le montage, s'assurant ainsi d'un système de fichiers cohérent.
Avertissement
xfs_repair
ne peut pas réparer un système de fichiers XFS avec un journal endommagé. Pour supprimer le journal, montez et démontez le système de fichiers. Si le journal est corrompu et qu'il ne peut pas être réutilisé, veuillez utiliser l'option -L
(« forcer la mise à zéro du journal ») pour supprimer le journal, c'est-à-dire xfs_repair -L /dev/device
. Prenez note que cette opération peut provoquer une corruption ou des pertes de données supplémentaires.
man xfs_repair
.
6.6. Suspendre un système de fichier XFS
xfs_freeze
. La suspension d'activités d'écriture permet l'utilisation des clichés de périphériques basés matériel pour capturer le système de fichiers dans un état cohérent.
Note
xfs_freeze
est fourni par le paquet xfsprogs
uniquement disponbible sur x86_64.
# xfs_freeze -f /mount/point
# xfs_freeze -u /mount/point
xfs_freeze
pour suspendre le système de fichiers avant tout. Au contraire, les outils de gestion LVM suspendront automatiquement le système de fichiers XFS avant de prendre le cliché.
man xfs_freeze
.
6.7. Sauvegarde et restauration des systèmes de fichiers XFS
xfsdump
et xfsrestore
.
xfsdump
. Red Hat Enterprise Linux 7 prend en charge les sauvegardes sur lecteurs de bande ou images fichiers normales, et permet également d'écrire plusieurs vidages sur le même lecteur. L'utilitaire xfsdump
permet aussi à un vidage de s'étendre sur plusieurs lecteurs, même si un vidage peut être écrit sur un fichier normal. En outre, xfsdump
prend en charge les sauvegardes incrémentales, et peut exclure des fichiers d'une sauvegarde en utilisant la taille, une sous-arborescence, ou des indicateurs d'inodes pour les filtrer.
xfsdump
utilise des niveaux de vidage pour déterminer un vidage de base auquel un vidage particulier est relatif. L'option -l
spécifie un niveau de vidage (0-9). Pour effectuer une copie de sauvegarde complète, veuillez effectuer un vidage de niveau 0 sur le système de fichiers (c'est-à-dire /path/to/filesystem
), comme suit :
# xfsdump -l 0 -f /dev/device /path/to/filesystem
Note
-f
spécifie une destination pour la sauvegarde. Par exemple, la destination /dev/st0
est normalement utilisée pour les lecteurs de bande. Une destination xfsdump
peut être un lecteur de bande, un fichier normal, ou un périphérique de bande distant.
# xfsdump -l 1 -f /dev/st0 /path/to/filesystem
xfsrestore
restaure les systèmes de fichiers depuis les vidages produits par xfsdump
. L'utilitaire xfsrestore
possède deux modes : un mode par défaut simple, et un mode cumulatif. Les vidages spécifiques sont identifiés par ID de session ou par étiquette de session. Ainsi, restaurer un vidage requiert son ID ou étiquette de session correspondant. Pour afficher les ID et étiquettes de session de tous les vidages (complets et incrémentaux), veuillez utiliser l'option -I
:
# xfsrestore -I
Exemple 6.4. ID et étiquettes de session de tous les vidages
file system 0: fs id: 45e9af35-efd2-4244-87bc-4762e476cbab session 0: mount point: bear-05:/mnt/test device: bear-05:/dev/sdb2 time: Fri Feb 26 16:55:21 2010 session label: "my_dump_session_label" session id: b74a3586-e52e-4a4a-8775-c3334fa8ea2c level: 0 resumed: NO subtree: NO streams: 1 stream 0: pathname: /mnt/test2/backup start: ino 0 offset 0 end: ino 1 offset 0 interrupted: NO media files: 1 media file 0: mfile index: 0 mfile type: data mfile size: 21016 mfile start: ino 0 offset 0 mfile end: ino 1 offset 0 media label: "my_dump_media_label" media id: 4a518062-2a8f-4f17-81fd-bb1eb2e3cb4f xfsrestore: Restore Status: SUCCESS
Mode simple de xfsrestore
session-ID
), veuillez le restaurer complètement sur /path/to/destination
en utilisant :
# xfsrestore -f /dev/st0 -S session-ID /path/to/destination
Note
-f
spécifie l'emplacement du vidage, tandis que l'option -S
ou -L
indique le vidage particulier à restaurer. L'option -S
est utilisée pour spécifier un ID de session, tandis que l'option -L
est utilisée pour les étiquettes de session. L'option -I
affiche les étiquettes et ID de session de chaque vidage.
Mode cumulatif de xfsrestore
xfsrestore
permet la restauration de systèmes de fichier à partir d'une sauvegarde incrémentale particulière, par exemple, du niveau 1 au niveau 9. Pour restaurer un système de fichiers à partir d'une sauvegarde incrémentale, veuillez simplement ajouter l'option -r
:
# xfsrestore -f /dev/st0 -S session-ID -r /path/to/destination
Opération interactive
xfsrestore
permet également à des fichiers particuliers d'un vidage d'être extraits, ajoutés ou supprimés. Pour utiliser xfsrestore
de manière interactive, veuillez utiliser l'option -i
, comme suit :
xfsrestore -f /dev/st0 -i /destination/directory
xfsrestore
termine de lire le périphérique spécifié. Les commandes de cette boîte de dialogue incluent cd
, ls
, add
, delete
, et extract
; pour obtenir une liste complète des commandes, veuillez utiliser help
.
man xfsdump
et man xfsrestore
.
6.8. Autres utilitaires des systèmes de fichiers XFS
- xfs_fsr
- Utilisé pour défragmenter les systèmes de fichiers XFS montés. Lorsqu'invoqué sans arguments,
xfs_fsr
défragmente tous les fichiers normaux dans tous les systèmes de fichiers XFS montés. Cet utilitaire permet également aux utilisateurs de suspendre une défragmentation à une heure spécifiée et de la reprendre au même endroit ultérieurement.En outre,xfs_fsr
permet également la défragmentation d'un seul fichier, comme dansxfs_fsr /path/to/file
. Red Hat recommande d'éviter de défragmenter un système de fichiers entier par défaut. La défragmentation du système dans son entier pourrait entraîner un effet secondaire de fragmentation d'espace libre. - xfs_bmap
- Imprime la carte des blocs de disque utilisés par les fichiers dans un système de fichiers XFS. Cette carte répertorie chaque extension utilisés par un fichier spécifié, ainsi que les régions du fichiers n'offrant pas de bloc correspondant (c'est-à-dire, des trous).
- xfs_info
- Imprime les informations du système de fichiers XFS.
- xfs_admin
- Modifie les paramètres d'un système de fichiers XFS. L'utilitaire
xfs_admin
peut uniquement modifier les paramètres de périphériques ou systèmes de fichiers non montés. - xfs_copy
- Copie la totalité du contenu d'un système de fichiers XFS entier sur une ou plusieurs cibles en parallèle.
- xfs_metadump
- Copie les métadonnées du système de fichiers XFS sur un fichier. Red Hat permet d'utiliser
xfs_metadump
pour copier les systèmes de fichiers non montés, en lecture seule, ou gelés ou suspendus ; sinon les vidages générés pourraient être corrompus ou incohérents. - xfs_mdrestore
- Restaure une image metadump XFS (générée avec
xfs_metadump
) sur une image de système de fichiers. - xfs_db
- Débogue un système de fichiers XFS.
man
respectives.
6.9. Migration de ext4 à XFS
6.9.1. Commandes utilisées avec ext3 et ext4 comparé à XFS
Tableau 6.1. Commandes communes utilisées pour ext3 et ext4 comparé à XFS
Tâche | ext3/4 | XFS |
---|---|---|
Créez un système de fichiers | mkfs.ext4 or mkfs.ext3 | mkfs.xfs |
Vérification du système de fichiers (fsck) | e2fsck | xfs_repair |
Redimensionner un système de fichiers | resize2fs | xfs_growfs |
Enregistre une image de système de fichiers | e2image | xfs_metadump et xfs_mdrestore |
Libeller ou ajuster un système de fichiers | tune2fs | xfs_admin |
Sauvegarder un système de fichiers | dump et restore | xfsdump et xfsrestore |
Tableau 6.2. Outils standards pour ext4 et XFS
Tâche | ext4 | XFS |
---|---|---|
Quota | quota | xfs_quota |
Mappage de fichiers | filefrag | xfs_bmap |
6.9.2. Différences comportementales et administratives entre Ext3/4 et XFS
- Réparation du système de fichiers
- Ext3/4 exécute
e2fsck
dans l'espace utilisateur au démarrage pour récupérer le journal si besoin. XFS, en revanche, procède à la récupération du journal de l'espace noyau au montage. Un script shellfsck.xfs
est fourni, mais il ne sert pas à grand chose sauf en tant que prérequis d'initscript.Quand une réparation de système de fichier XFS ou qu'une vérification est requise, utiliser la commandexfs_repair
. Utiliser l'option-n
pour une vérification en lecture-seule.La commandexfs_repair
ne fonctionnera pas sur un système de fichiers qui a un journal endommagé. Pour réparer un tel fichier, les commandesmount
etunmount
doivent être exécutées pour commencer afin d'exécuter le journal à nouveau. Si le journal est corrompu ou ne peut pas être exécuté à nouveau, l'option-L
pourra être utilisée pour neutraliser le journal.Pour plus d'informations sur la réparation du système de fichiers des systèmes de fichiers XFS, consulter Section 11.2.2, « XFS » - Comportement des erreurs de métadonnées
- Le système de fichiers ext2/3 a un comportement configurable quand des erreurs de métadonnées surviennent, et que le comportement par défaut est tout simplement de continuer. Quand XFS rencontre une erreur de métadonnnées non récupérable, il ferme le système de fichiers et renvoie comme message d'erreur
EFSCORRUPTED
. Les journaux système contiendront des détails sur les erreurs rencontrées et vous conseilleront d'exécuterxfs_repair
si besoin est. - Quotas
- Les quotas XFS n'ont pas d'option pour remonter. L'option
-o quota
doit être spécifiée sur le point de montage de départ pour que les quotas puissent prendre effet.Bien que les outils standards du package des quotas puisse effectuer des tâches administratives de base (comme setquota et repquota), l'outil xfs_quota peut être utilisé pour des fonctions spécifiques XFS, comme l'administration des quotas d'un projet.La commandequotacheck
n'a aucun effet sur un système de fichiers XFS. La première fois que le compteur de quotas est activé, XFS procède à unquotacheck
interne automatiquement. Comme les métadonnées de quota XFS représentent un objet de métadonnées journalisées de première classe, le système de fichiers sera toujours consistent jusqu'à ce que les quotas soient désactivés manuellement. - Redimensionnement du système de fichiers
- Le système de fichiers XFS n'a pas de fonctionnalité qui puisse permettre de réduire un système de fichiers. Les systèmes de fichiers XFS peuvent être agrandis en ligne à l'aide de la commande
xfs_growfs
. - Les numéros d'inodes
- Pour les systèmes de fichiers supérieurs à 1T avec des inodes de 256 octets, ou de plus de 2T avec des inodes de 512 octets, les numéros d'inode XFS pourraient dépasser 2^32. Ces numéros d'inode élevés peuvent amener les appels de 32-bit à échouer avec le message
EOVERFLOW
. En général, les applications doivent gérer des numéros d'inodes élevés, mais, si nécessaire, XFS devra être monté avec-o inode32
pour appliquer les numéros d'inode inférieurs à 2^32.Note
Cela n'affectera pas les inodes déjà alloués avec des numéros de 64-bit.L'option change le comportement d'allocation et mène rapidement à un ENOSPC si aucun espace n'est disponible pour allouer des inodes dans les blocs de disques inférieurs. L'option inode32 ne devra pas être utilisée à moins qu'elle ne soit requise pour un environnement particulier. - Pré-allocation spéculative
- XFS utilise speculative preallocation pour allouer des blocs après EOF au fur et à mesure que les fichiers sont écrits. Cela permet d'éviter la fragmentation des fichiers liée aux charges de travail de flux d'écriture parallèles sur les serveurs NFS. Par défaut, cette pré-allocation augmente en fonction de la taille du fichier, et sera apparente dans la sorie "du". Si un fichier ayant une pré-allocation spéculative n'est pas modifié sous les 5 minutes, la pré-allocation sera abondonnée. Si l'inode est sortie du cache avant ce moment-là, la pré-allocation sera abandonnée quand l'inode sera récupérée.Si des problèmes ENOSPC apparaissent suite à une pré-allocation spéculative, un montant de pré-allocation prédéterminé pourra être spécifié par l'option de montage
-o allocsize=amount
. - Outils de fragmentation
- La fragmentation est rarement un problème pour les systèmes de fichiers XFS pour des raison heuristiques et de comportement, comme les retardements d'allocation ou les préallocations spéculatives. Cependant, il existe des outils pour mesurer la fragmentation des systèmes de fichiers, ainsi que pour défragmenter les systèmes de fichiers. Leur utilisation n'est pas conseillée.Les tentatives de commande
xfs_db frag
servent à distiller toutes les allocations de système de fichier en un nombre unique de fragmentations, exprimée en pourcentage. La sortie de la comand requiert une grande compétence pour en comprendre la signification. Par exemple, un facteur de fragmentation de 75 % indique uniquement une moyenne de 4 degrés par fichier. Pour cette raison, la sortie de frag de xfs_db n’est pas jugée utile, et une analyse plus attentive de tout problème de fragmentation est recommandée.Avertissement
La commandexfs_fsr
peut être utilisée pour défragmenter des fichiers individuels, ou tous les fichiers d'un système de fichiers. Cette dernière est particulièrement déconseillée car elle peut détruire l'emplacement des fichiers et risque de fragmenter l'espace libre.
Chapitre 7. Global File System 2
fsck
sur un système de fichiers de très grande taille peut prendre longtemps et consommer beaucoup de mémoire. De plus, en cas de défaillance d'un disque ou d'un sous-système de disque, le temps de récupération sera limité par la vitesse de votre support de sauvegarde.
clvmd
, qui est exécuté dans un cluster de Red Hat Cluster Suite. Le démon facilite l'utilisation de LVM2 pour gérer les volumes logiques à travers un cluster, permettant ainsi à tous les nœuds du cluster de partager les volumes logiques. Pour obtenir des informations sur le gestionnaire de volumes logiques LVM, veuillez consulter le guide de Red Hat Administration du gestionnaire de volumes logiques.
gfs2.ko
implémente le système de fichiers GFS2 et est chargé dans les nœuds de cluster GFS2.
Chapitre 8. Network File System (NFS)
8.1. Fonctionnement NFS
rpcbind
, prend en charge les ACL, et utilise les opérations stateful.
Note
rpcbind
[1], lockd
, and rpc.statd
daemons. The rpc.mountd
daemon is still required on the NFS server to set up the exports, but is not involved in any over-the-wire operations.
Note
'-p'
pouvant définir le port, ce qui rend la configuration du pare-feu plus facile.
/etc/exports
pour déterminer si le client a le droit d'accéder à un système de fichiers exporté. Une fois cette vérification effectuée, toutes les opérations des fichiers et répertoires seront disponibles pour l'utilisateur.
Important
rpc.nfsd
permettent désormais la liaison vers tout port spécifié pendant le démarrage système. Cependant, ceci est prône aux erreurs si le port est indisponible, ou s'il est en conflit avec un autre démon.
8.1.1. Services requis
rpcbind
. Pour partager ou monter les systèmes de fichiers NFS, les services suivants travaillent ensemble selon la version NFS implémentée :
Note
portmap
a été utilisé pour mapper les numéros de programmes RPC à des combinaisons de numéros de port d'adresses IP dans des versions plus récentes de Red Hat Enterprise Linux. Ce service est désormais remplacé par rpcbind
dans Red Hat Enterprise Linux 7 afin de permettre la prise en charge d'IPv6. Pour obtenir des informations supplémentaires sur ce changement, veuillez consulter les liens suivants :
- TI-RPC / prise en charge rpcbind : http://nfsv4.bullopensource.org/doc/tirpc_rpcbind.php
- Prise en charge IPv6 sur NFS : http://nfsv4.bullopensource.org/doc/nfs_ipv6.php
- nfs
servicectl start nfs
lance le serveur NFS et les processus RPC appropriés pour servir les requêtes des systèmes de fichiers NFS partagés.- nfslock
servicectl start nfs-lock
active un service obligatoire qui lance les processus RPC appropriés, ce qui permet aux clients NFS de verrouiller des fichiers sur le serveur.- rpcbind
rpcbind
accepte les réservations de ports des services RPC locaux. Ces ports sont ensuite mis à disponibilité (ou publicisés) afin que les services RPC à distance correspondants puissent y accéder.rpcbind
répond à des requêtes de service RPC et paramètre des connexions vers le service RPC requis. Ceci n'est pas utilisé avec NFSv4.
- rpc.mountd
- Ce processus est utilisé par un serveur NFS pour traiter les requêtes
MOUNT
des clients NFSv3. Il vérifie que le partage NFS requis est actuellement exporté par le serveur NFS, et que le client est autorisé à y accéder. Si la requête de montage est autorisée, le serveur rpc.mountd répond avec le statutSuccess
(« Opération réussie ») et retourne l'identificateur de fichier «File-Handle
» de ce partage NFS au client NFS. - rpc.nfsd
rpc.nfsd
permet de définir les versions et protocoles NFS explicites publicisés par le serveur. Celui-ci fonctionne avec le noyau Linux afin de répondre aux demandes des clients NFS, comme pour fournir des threads chaque fois qu'un client NFS se connecte. Ce processus correspond au servicenfs
.- lockd
lockd
est un thread du noyau qui peut être exécuté sur les clients et les serveurs. Il implémente le protocole NLM (« Network Lock Manager »), qui permet aux clients NFSv3 de verrouiller des fichiers sur le serveur. Il est lancé automatiquement à chaque fois que le serveur NFS est exécuté et à chaque fois qu'un système de fichiers NFS est monté.- rpc.statd
- Ce processus implémente le protocole RPC NSM (« Network Status Monitor »), qui notifie les clients NFS lorsqu'un serveur NFS est redémarré sans avoir tout d'abord été éteint correctement.
rpc.statd
est automatiquement démarré par le servicenfslock
, et ne requiert pas de configuration utilisateur. Ce protocole n'est pas utilisé avec NFSv4. - rpc.rquotad
- Ce processus fournit des informations sur le quota d'utilisateur des utilisateurs distants.
rpc.rquotad
est automatiquement démarré par le servicenfs
et ne requiert pas de configuration utilisateur. - rpc.idmapd
rpc.idmapd
fournit des appels ascendants client et serveur NFSv4, qui mappent simultanément les noms NFSv4 (chaînes sous le formatutilisateur@domaine
) et les UID et GID locaux. Pour queidmapd
puisse fonctionner avec NFSv4, le fichier/etc/idmapd.conf
doit être configuré. Au minimum, le paramètre « Domaine », qui définit le domaine de mappage NFSv4, doit être spécifié. Si le domaine de mappage NFSv4 est le même que le nom de domaine DNS, oubliez ce paramètre. Le client et le serveur doivent se mettre d'accord sur le domaine de mappage NFSv4 pour que le mappage d'ID fonctionne correctement.Note
Dans Red Hat Enterprise Linux 7, seul le serveur NFSv4 utiliserpc.idmapd
. Le client NFSv4 utilisenfsidmap
de l'imapper basé-keyring .nfsidmap
est un programme autonome appelé par le noyau à la demande pour effectuer les mappages d'ID ; ce n'est pas un démon. S'il y a un problème avecnfsidmap
, le client utilise alorsrpc.idmapd
. Vous trouverez plus d'informations surnfsidmap
dans la page man de nfsidmap.
8.2. pNFS
Note
-o v4.1
nfs_layout_nfsv41_files
est automatiquement chargé sur le premier montage. L'entrée de montage de la sortie doit contenir minorversion=1
. Veuillez utiliser la commande suivante pour vérifier que le module a bien été chargé :
$ lsmod | grep nfs_layout_nfsv41_files
8.3. Configuration du client NFS
mount
monte les partages NFS côté client. Son format est comme suit :
# mount -t nfs -o options server:/remote/export /local/directory
- options
- Liste d'options de montage séparées par des virgules. Veuillez consulter la Section 8.5, « Options de montage NFS courantes » pour obtenir des détails sur les options de montage NFS valides.
- server
- Nom d'hôte, adresse IP, ou nom de domaine complet du serveur exportant le système de fichiers que vous souhaitez monter
- /remote/export
- Système de fichiers ou répertoire en cours d'exportation du serveur, c'est-à-dire le répertoire que vous souhaitez monter
- /local/directory
- Emplacement du client où /remote/export est monté
mount
nfsvers
ou vers
. Par défaut, mount
utilisera NFSv4 avec mount -t nfs
. Si le serveur ne prend pas en charge NFSv4, le client passera automatiquement à une version prise en charge par le serveur. Si l'option nfsvers
/vers
est utilisée pour passer une version particulière qui n'est pas prise en charge par le serveur, le montage échouera. Le type de système de fichiers nfs4 est également disponible pour des raisons d'héritage ; ceci est équivalent à exécuter mount -t nfs -o nfsvers=4 host:/remote/export /local/directory
.
man mount
pour davantage de détails.
/etc/fstab
et le service autofs
. Veuillez consulter la Section 8.3.1, « Monter des systèmes de fichiers NFS à l'aide de /etc/fstab
» et Section 8.4, « autofs
» pour obtenir davantage d'informations.
8.3.1. Monter des systèmes de fichiers NFS à l'aide de /etc/fstab
/etc/fstab
file. The line must state the hostname of the NFS server, the directory on the server being exported, and the directory on the local machine where the NFS share is to be mounted. You must be root to modify the /etc/fstab
file.
Exemple 8.1. Exemple de syntaxe
/etc/fstab
est comme suit :
server:/usr/local/pub /pub nfs defaults 0 0
/pub
doit exister sur l'ordinateur client avant que cette commande puisse être exécutée. Après avoir ajouté cette ligne à /etc/fstab
sur le système client, veuillez utiliser la commande mount /pub
, et le point de montage /pub
est monté à partir du serveur.
/etc/fstab
valide pour monter un export NFS doit contenir les informations suivantes :
server:/remote/export /local/directory nfs options 0 0
Note
/etc/fstab
. Sinon le montage échouera.
/etc/fstab
, veuillez consulter man fstab
.
8.4. autofs
/etc/fstab
fait que peu importe la fréquence à laquelle un utilisateur accède au système de fichiers NFS monté, le système doit dédier des ressources afin de garder le système de fichiers en place. Il ne s'agit pas d'un problème avec un ou deux montages, mais lorsque le système maintient les montages de nombreux systèmes à la fois, les performances générales du système peuvent être affectées. Une alternative à /etc/fstab
consiste à utiliser l'utilitaire basé noyau automount
. Automounter consiste en deux composants :
- Un module de noyau qui implémente un système de fichiers, et
- un démon de l'espace utilisateur qui effectue toutes les autres fonctions.
automount
peut monter et démonter des systèmes de fichiers NFS automatiquement (montage à la demande), et permet donc d'économiser des ressources système. Il peut être utilisé pour monter d'autres systèmes de fichiers, y compris AFS, SMBFS, CIFS, et des systèmes de fichiers locaux.
Important
autofs
utilise /etc/auto.master
(mappage principal) comme fichier de configuration principal. Ceci peut être changé afin d'utiliser une autre source réseau et un autre nom pris en charge en utilisant la configuration autofs
(dans /etc/sysconfig/autofs
) en conjonction avec le mécanisme NSS (« Name Service Switch »). Une instance du démon autofs
version 4 était exécutée pour chaque point de montage configuré dans le mappage principal, lui permettant d'être exécutée manuellement à partir de la ligne de commande pour tout point de montage donné. Ceci n'est pas possible avec autofs
version 5, car un seul démon est utilisé pour gérer tous les points de montage configurés dans le mappage principal. Ceci est effectué conformément aux conditions préalables des autres automounters (monteurs automatiques) standards du secteur. Les points de montage, noms d'hôte, répertoires exportés, et les options peuvent tous être spécifiés dans un ensemble de fichiers (ou autres sources réseau prises en charge) plutôt que de devoir les configurer manuellement pour chaque hôte.
8.4.1. Améliorations de autofs Version 5 par rapport à la Version 4
autofs
version 5 offre les améliorations suivantes par rapport à la version 4 :
- Prise en charge du mappage direct
- Les mappages directs dans
autofs
offrent un mécanisme pour monter les systèmes de fichiers automatiquement sur des points arbitraires dans la hiérarchie du système de fichiers. Un mappage direct est indiqué par un point de montage/-
dans le mappage principal. Les entrées dans un mappage direct contiennent un nom de chemin absolu comme clé (au lieu des noms de chemin relatifs utilisés pour les mappages indirects). - Prise en charge des montages et démontages « lazy »
- Les entrées de mappage à multiples montages décrivent une hiérarchie de points de montage sous une clé unique. Un bon exemple de ceci est le mappage
-hosts
, couramment utilisé pour effectuer le montage automatique de tous les exports à partir d'un hôte sous/net/host
en tant qu'entrée de mappage à multiples montages. Lors de l'utilisation du mappage-hosts
, la commandels
de/net/host
montera les montages de déclencheurs autofs de chaque export de l'hôte. Ceux-ci seront ensuite montés et expireront au fur et à mesure que l'on y accédera. Ceci peut grandement réduire le nombre de montages actifs nécessaires lors de l'accession à un serveur avec un grand nombre d'exports. - Prise en charge LDAP améliorée
- Le fichier de configuration
autofs
(/etc/sysconfig/autofs
) offre un mécanisme pour spécifier le schémaautofs
implémenté par un site, éliminant ainsi le besoin de déterminer ceci intuitivement dans l'application. En outre, les liaisons authentifiées sur le serveur LDAP sont désormais prises en charge, en utilisant la plupart des mécanismes pris en charge par les implémentations de serveurs LDAP courantes. Un nouveau fichier de configuration a été ajouté pour cette prise en charge :/etc/autofs_ldap_auth.conf
. La configuration par défaut explique bien les choses et utilise un format XML. - Utilisation correcte de la configuration « Name Service Switch » (
nsswitch
). - Le fichier de configuration du « Name Service Switch » existe pour fournir un moyen de déterminer d'où proviennent des données de configuration spécifiques. Le but de cette configuration est d'offrir aux administrateurs la flexibilité d'utiliser la base de données d'arrière-plan de leur choix, tout en conservant une interface logiciel uniforme pour accéder aux données. Malgré le fait qu'automounter version 4 gère de mieux en mieux la configuration NSS, celui-ci ne la gère pas totalement. En revanche, Autofs version 5 offre une implémentation totale.Veuillez consulter
man nsswitch.conf
pour obtenir des informations supplémentaires sur la syntaxe prise en charge de ce fichier. Toutes les bases de données NSS ne sont pas des sources de mappage valides et l'analyseur rejettera celles qui ne sont pas valides. Les sources valides incluent les fichiers,yp
,nis
,nisplus
,ldap
, ethesiod
. - Entrées multiples de mappage principal par point de montage autofs
- Une chose fréquemment utilisée mais qui n'a pas encore été mentionnée est la gestion de multiples entrées de mappage principal pour le point de montage direct
/-
. Les clés de mappage de chaque entrée sont fusionnées et se comportent comme une seule carte.Exemple 8.2. Entrées multiples de mappage principal par point de montage autofs
Ci-dessous figure un exemple des mappages de test connectathon pour les montages directs :/- /tmp/auto_dcthon /- /tmp/auto_test3_direct /- /tmp/auto_test4_direct
8.4.2. Configuration autofs
/etc/auto.master
est le fichier de configuration principal pour automounter, également appelé mappage principal, ce qui peut être modifié comme décrit dans la Section 8.4.1, « Améliorations de autofs Version 5 par rapport à la Version 4 ». Le mappage principal répertorie les points de montage du système contrôlé par autofs
, ainsi que leurs fichiers de configuration ou sources réseau correspondants, également appelés cartes automount. Le format du mappage principal est comme suit :
mount-point map-name options
- mount-point
- Point de montage
autofs
, par exemple/home
. - map-name
- Nom d'une source de mappage qui contient une liste de points de montage, et l'emplacement du système de fichiers à partir duquel ces points de montage doivent être montés. La syntaxe d'une entrée de mappage est décrite ci-dessous.
- options
- Si fournies, celles-ci seront applicables à toutes les entrées du mappage donné, à condition qu'elles ne possèdent pas elles-même d'options spécifiées. Ce comportement est différent de celui d'
autofs
version 4, où les options étaient cumulatives. Cela a été modifié afin d'implémenter une compatibilité d'environnements mélangés.
Exemple 8.3. Fichier /etc/auto.master
/etc/auto.master
(affiché en saisissant cat /etc/auto.master
) :
/home /etc/auto.misc
mount-point [options] emplacement
- mount-point
- Référence au point de montage
autofs
. Il peut s'agir d'un nom de répertoire unique pour un montage indirect ou du chemin complet du point de montage pour les montages directs. Chaque clé d'entrée de mappage direct et indirect (mount-point
above) peut être suivie d'une liste de répertoires décalés (les noms de sous-répertoires commencent tous par le caractère « / ») séparés par des virgules, en faisant ainsi une entrée à montages multiples. - options
- Lorsqu'elles sont fournies, celles-ci servent d'options de montage pour les entrées de mappage ne spécifiant pas leurs propres options.
- emplacement
- Ceci fait référence à un emplacement de système de fichiers, tel qu'un chemin de système de fichiers local (précédé par le caractère d'échappement du format de mappage Sun « : » pour les noms de mappage commençant par une barre oblique « / »), un système de fichiers NFS, ou tout autre emplacement de système de fichiers valide.
/etc/auto.misc
) :
payroll -fstype=nfs personnel:/dev/hda3 sales -fstype=ext3 :/dev/hda4
autofs
(sales
et payroll
provenant du serveur nommé personnel
). La seconde colonne indique les options du montage autofs
tandis que la troisième colonne indique la source du montage. Selon la configuration ci-dessus, les points de montage autofs seront nommés /home/payroll
et /home/sales
. L'option -fstype=
est souvent omise et n'est généralement pas utile au bon fonctionnement de ce fichier.
service autofs start
(si le démon automount est à l'arrêt)service autofs restart
autofs
non monté, tel que /home/payroll/2006/July.sxc
, le démon automount monte automatiquement le répertoire. Si un délai d'expiration a été spécifié et qu'aucun accès au répertoire n'est effectué pendant cette période, alors le répertoire sera automatiquement démonté.
# service autofs status
8.4.3. Remplacer ou augmenter les fichiers de configuration du site
- Les mappages Automounter sont stockés dans le système d'informations réseau (ou NIS) et le fichier
/etc/nsswitch.conf
contient la directive suivante :automount: files nis
- Ci-dessous figure le contenu du fichier
auto.master
:+auto.master
- Ci-dessous figure le contenu du fichier de mappage
auto.master
du NIS :/home auto.home
- Ci-dessous figure le contenu du mappage
auto.home
du NIS :beth fileserver.example.com:/export/home/beth joe fileserver.example.com:/export/home/joe * fileserver.example.com:/export/home/&
- Le fichier de mappage
/etc/auto.home
n'existe pas.
auto.home
et monter les répertoires d'accueil du montage à partir d'un serveur différent. Dans ce cas, le client devra utiliser le mappage /etc/auto.master
suivant :
/home /etc/auto.home +auto.master
/etc/auto.home
contient l'entrée :
* labserver.example.com:/export/home/&
/home
contiendra le contenu de /etc/auto.home
au lieu de celui du mappage NIS auto.home
.
auto.home
du site avec quelques entrées uniquement, veuillez créer un mappage du fichier /etc/auto.home
et y inclure les nouvelles entrées. À la fin, veuillez inclure le mappage NIS auto.home
. Ainsi, le mappage du fichier /etc/auto.home
sera similaire à :
mydir someserver:/export/mydir +auto.home
auto.home
répertorié ci-dessus, ls /home
retournera :
beth joe mydir
autofs
n'inclut pas le contenu d'un mappage de fichier du même nom que celui qu'il lit. Ainsi, autofs
se déplace vers la prochaine source de mappage de la configuration nsswitch
.
8.4.4. Utiliser LDAP pour stocker des mappages Automounter
openldap
devrait être installé automatiquement en tant que dépendance d'automounter
. Pour configurer l'accès LDAP, veuillez modifier /etc/openldap/ldap.conf
. Assurez-vous que les valeurs BASE, URI, et schémas soient définies correctement pour votre site.
rfc2307bis
. Pour utiliser ce schéma, il est nécessaire de le définir dans la configuration autofs
(/etc/sysconfig/autofs
) en supprimant les caractères de commentaires de la définition du schéma. Par exemple :
Exemple 8.4. Paramétrer la configuration autofs
DEFAULT_MAP_OBJECT_CLASS="automountMap" DEFAULT_ENTRY_OBJECT_CLASS="automount" DEFAULT_MAP_ATTRIBUTE="automountMapName" DEFAULT_ENTRY_ATTRIBUTE="automountKey" DEFAULT_VALUE_ATTRIBUTE="automountInformation"
automountKey
remplace l'attribut cn
dans le schéma rfc2307bis
. Un LDIF
d'un exemple de configuration est décrit ci-dessous :
Exemple 8.5. Configuration LDF
# extended LDIF # # LDAPv3 # base <> with scope subtree # filter: (&(objectclass=automountMap)(automountMapName=auto.master)) # requesting: ALL # # auto.master, example.com dn: automountMapName=auto.master,dc=example,dc=com objectClass: top objectClass: automountMap automountMapName: auto.master # extended LDIF # # LDAPv3 # base <automountMapName=auto.master,dc=example,dc=com> with scope subtree # filter: (objectclass=automount) # requesting: ALL # # /home, auto.master, example.com dn: automountMapName=auto.master,dc=example,dc=com objectClass: automount cn: /home automountKey: /home automountInformation: auto.home # extended LDIF # # LDAPv3 # base <> with scope subtree # filter: (&(objectclass=automountMap)(automountMapName=auto.home)) # requesting: ALL # # auto.home, example.com dn: automountMapName=auto.home,dc=example,dc=com objectClass: automountMap automountMapName: auto.home # extended LDIF # # LDAPv3 # base <automountMapName=auto.home,dc=example,dc=com> with scope subtree # filter: (objectclass=automount) # requesting: ALL # # foo, auto.home, example.com dn: automountKey=foo,automountMapName=auto.home,dc=example,dc=com objectClass: automount automountKey: foo automountInformation: filer.example.com:/export/foo # /, auto.home, example.com dn: automountKey=/,automountMapName=auto.home,dc=example,dc=com objectClass: automount automountKey: / automountInformation: filer.example.com:/export/&
8.5. Options de montage NFS courantes
mount
, des paramètres /etc/fstab
, et avec autofs
.
- intr
- Permet aux requêtes NFS d'être interrompues si le serveur tombe en panne ou ne peut pas être contacté.
- lookupcache=mode
- Spécifie la manière par laquelle le noyau va gérer le cache de ses entrées de répertoire pour un point de montage donné. Les arguments valides de mode sont
all
(« tout »),none
(« rien »), oupos
/positive
. - nfsvers=version
- Spécifie la version du protocole NFS à utiliser, où version est égal à 2, 3, ou 4. Ceci est utile pour les hôtes qui exécutent de multiples serveurs NFS. Si aucune version n'est spécifiée, NFS utilise le numéro de version le plus haut pris en charge par le noyau et la commande
mount
.L'optionvers
est identique ànfsvers
et est incluse dans cette version pour des raisons de compatibilité. - noacl
- Annule tout traitement d'ACL. Ce paramètre peut être nécessaire lors d'interactions avec des versions plus anciennes de Red Hat Enterprise Linux, Red Hat Linux, ou Solaris, car les technologies ACL les plus récentes ne sont pas compatibles avec des systèmes plus anciens.
- nolock
- Désactive le verrouillage de fichiers. Ce paramètre est occasionnellement requis lors des connexions aux serveurs NFS plus anciens.
- noexec
- Empêche l'exécution de binaires sur des systèmes de fichiers montés. Ceci est utile si le système monte un système de fichiers Linux contenant des binaires incompatibles.
- nosuid
- Désactive les bits
set-user-identifier
ouset-group-identifier
. Ceci empêche les utilisateurs distants de gagner des privilèges plus élevés en exécutant un programmesetuid
. - port=num
port=num
— Spécifie la valeur numérique du port du serveur NFS. Sinum
est égal à0
(valeur par défaut), alorsmount
interrogera le servicerpcbind
de l'hôte distant sur le numéro de port à utiliser. Si le démon NFS de l'hôte distant n'est pas enregistré avec son servicerpcbind
, le numéro de port NFS standard TCP 2049 sera alors utilisé.- rsize=num et wsize=num
- Ces paramètres accélèrent les communications NFS pour les lectures (
rsize
) et les écritures (wsize
) en définissant une taille de bloc de données plus importante (num, en octets) à transférer. Soyez prudent lorsque vous modifiez ces valeurs car certains noyaux Linux et cartes réseau ne fonctionnent pas bien avec des tailles de bloc plus importantes. Dans NFSv3, les valeurs par défaut des deux paramètres est définie à 8192. Dans NFSv4, les valeurs par défaut des deux paramètres est définie à 32768. - sec=mode
- Sa valeur par défaut est
sec=sys
, qui utilise les UID et GID UNIX. Ils utilisentAUTH_SYS
to authentifier les opérations NFS.sec=krb5
utilise Kerberos V5 à la place d'UID et GID UNIX locaux pour authentifier les utilisateurs.sec=krb5i
utilise Kerberos V5 pour authentifier les utilisateurs et vérifie l'intégrité des opérations NFS en utilisant des checksums sécurisés pour empêcher toute altération de données.sec=krb5p
utilise Kerberos V5 pour l'authentification d'utilisateurs, les vérifications d'integrité, et chiffre le trafic NFS pour empêcher le reniflage du trafic. Ce paramètre est le plus sécurisé, mais il implique également une surcharge des performances plus importante. - tcp
- Ordonne au montage NFS d'utiliser le protocole TCP.
- udp
- Ordonne au montage NFS d'utiliser le protocole UDP.
man mount
et man nfs
.
8.6. Démarrage et arrêt NFS
rpcbind
[1] doit être en cours d'exécution. Pour vérifier que rpcbind
soit effectivement actif, veuillez utiliser la commande suivante :
# systemctl status rpcbind
rpcbind
est en cours d'exécution, alors le service nfs
peut être lancé. Pour démarrer un serveur NFS, veuillez utiliser la commande suivante :
# systemctl start nfs
# systemctl enable nfs-server
Note
nfs-lock
doit être activé. Dans Red Hat Enterprise Linux 7.1 et versions supérieures, nfs-lock
démarre automatiquement si nécessaire, et si une tentative de le démarrer manuellement a échoue. Dans Red Hat Enterprise Linux 7.0, vérifier le statut en exécutant systemctl status nfs-lock
. Si le service nfs-lock
n'est pas activé, exécutez systemctl start nfs-lock
. Pour configurer nfs-lock
à démarrer automatiquement à l'amorçage dans Red Hat Enterprise Linux 7.0, exécutez systemctl enable nfs-lock
.
# systemctl stop nfs
restart
est une façon rapide d'arrêter, puis de redémarrer NFS. Cette manière est la plus efficace pour que les changements de configuration puissent prendre effet après avoir modifié le fichier de configuration pour NFS. Pour redémarrer le serveur, veuillez saisir :
# systemctl restart nfs
/etc/sysconfig/nfs
, redémarrez le service nfs-config en exécutant la commande suivante pour que les nouvelles valeurs puissent prendre effet :
# systemctl restart nfs-config
try-restart
ne démarre nfs
que s'il est en cours d'exécution. Cette commande équivaut à condrestart
(conditional restart) dans les scripts init de Red Hat et est utilisée car elle ne démarre pas le démon si NFS n'est pas en cours d'exécution.
# systemctl try-restart nfs
# systemctl reload nfs
8.7. Configuration du serveur NFS
- La configuration manuelle du fichier de configuration NFS
/etc/exports
, et - à l'aide de la ligne de commande, en utilisant la commande
exportfs
8.7.1. Fichier de configuration /etc/exports
/etc/exports
contrôle quels systèmes de fichiers sont exportés vers des hôtes distants et spécifie les options. Les règles de syntaxes suivantes sont observées :
- Les lignes vides sont ignorées.
- Pour ajouter un commentaire, commencez la ligne par le caractère dièse (
#
). - Pour les longues lignes, il est possible d'effectuer des retours à la ligne avec une barre oblique inversée (
\
). - Chaque système de fichiers exporté devrait se trouver sur une ligne individuelle.
- Toute liste d'hôtes non autorisés placée après un système de fichiers exporté doit être séparée par des caractères d'espace.
- Les options de chaque hôte doivent être placées directement après l'identifiant de l'hôte, sans espace séparant l'hôte et la première parenthèse.
export host(options)
- export
- Répertoire en cours d'exportation
- host
- Hôte ou réseau sur lequel l'exportation est partagée
- options
- Options à utiliser pour l'hôte
export host1(options1) host2(options2) host3(options3)
/etc/exports
spécifie uniquement le répertoire exporté et les hôtes autorisés à y accéder, comme dans l'exemple suivant :
Exemple 8.6. Fichier /etc/exports
/exported/directory bob.example.com
bob.example.com
peut monter /exported/directory/
à partir du serveur NFS. Comme aucune autre fonction n'est spécifiée dans cet exemple, NFS utilisera les paramètres par défaut.
- ro
- Le système de fichiers exporté est accessible en lecture seule. Les hôtes distants ne peuvent pas modifier les données partagées sur le système de fichiers. Pour autoriser des hôtes à effectuer des modifications sur le système de fichiers (par exemple, lecture/écriture), veuillez spécifier l'option
rw
. - sync
- Le serveur NFS ne répondra pas aux requêtes effectuées avant que les changements demandés par les requêtes précédentes soient écrits sur disque. Sinon, pour activer les écritures asynchrones, veuillez spécifier l'option
async
. - wdelay
- Le serveur NFS retardera l'écriture sur disque s'il suspecte qu'une autre requête d'écriture est imminente. Ceci peut améliorer les performances car il y a une réduction du nombre d'accès au disque par le biais de commandes d'écriture séparées, réduisant ainsi également l'alourdissement des écritures. Pour désactiver ce comportement, veuillez spécifier
no_wdelay
.no_wdelay
est uniquement disponible si l'option par défautsync
est également spécifiée. - root_squash
- Ceci empêche les utilisateurs root connectés à distance (et non locaux) d'avoir des privilèges root. Au lieu de cela, le serveur NFS leurs assignera l'ID d'utilisateur
nfsnobody
. Ceci « écrasera » (ou réduira) les capacités de l'utilisateur root à celles d'un utilisateur local du plus bas niveau possible, empêchant ainsi toute écriture non autorisée sur le serveur distant. Pour désactiver l'écrasement root, veuillez spécifierno_root_squash
.
all_squash
. Pour spécifier les ID des groupes et des utilisateurs que le serveur NFS devrait assigner à des utilisateurs distants à partir d'un hôte en particulier, veuillez utiliser les options anonuid
et anongid
respectives, comme suit :
export host(anonuid=uid,anongid=gid)
anonuid
et anongid
vous permettent de créer un compte utilisateur et groupe spécifique que les utilisateurs NFS distants peuvent partager.
no_acl
lorsque vous exportez le système de fichiers.
rw
n'est pas spécifiée, alors le système de fichiers exporté est partagé en lecture seule. Ci-dessous figure un exemple de ligne de /etc/exports
qui remplace deux options par défaut :
/another/exported/directory 192.168.0.3(rw,async)
192.168.0.3
peut monter /another/exported/directory/
en lecture/écriture et toutes les écritures sur disque seront asynchrones. Pour obtenir davantage d'informations sur les options d'export, veuillez consulter man exportfs
.
man exports
pour obtenir davantage de détails sur ces options moins souvent utilisées.
Important
/etc/exports
est très précis, particulièrement au regard de l'utilisation du caractère espace. Rappelez-vous de toujours séparer les systèmes de fichiers exportés des hôtes et les hôtes les uns des autres avec un caractère espace. Toutefois, il ne devrait pas y avoir d'autres caractères espace dans le fichier, sauf sur les lignes de commentaire.
/home bob.example.com(rw) /home bob.example.com (rw)
bob.example.com
d'accéder en lecture/écriture au répertoire /home
. La seconde ligne autorise les utilisateurs de bob.example.com
de monter le répertoire en tant que lecture seule (par défaut), tandis que tout monde peut le monter en lecture/écriture.
8.7.2. Commande exportfs
/etc/exports
. Lorsque le service nfs
démarre, la commande /usr/sbin/exportfs
lance et lit ce fichier, passe le contrôle à rpc.mountd
(si NFSv2 ou NFSv3 est utilisé) pour le processus de montage, puis à rpc.nfsd
où les systèmes de fichiers seront ensuite disponibles aux utilisateurs distants.
/usr/sbin/exportfs
permet à l'utilisateur root d'exporter ou d'annuler l'exportation des répertoires de manière sélective, sans redémarrer le service NFS. Lorsque les bonnes options sont passées, la commande /usr/sbin/exportfs
écrit les systèmes de fichiers exportés sur /var/lib/nfs/xtab
. Comme rpc.mountd
fait référence au fichier xtab
lors de la décision d'octroi des privilèges d'accès à un système de fichiers, tout changement apporté à la liste des systèmes de fichiers exportés prendra effet immédiatement.
/usr/sbin/exportfs
:
- -r
- Cause à tous les répertoires répertoriés dans
/etc/exports
d'être exportés en construisant une nouvelle liste d'exports dans/etc/lib/nfs/xtab
. Cette option réactualise la liste des exports avec les changements apportés à/etc/exports
. - -a
- Cause à tous les répertoires d'être exportés ou annule leur export, en fonction des autres options passées à
/usr/sbin/exportfs
. Si aucune autre option n'est spécifée,/usr/sbin/exportfs
exportera tous les systèmes de fichiers spécifiés dans/etc/exports
. - -o file-systems
- Spécifie les répertoires à exporter qui ne sont pas répertoriés dans
/etc/exports
. Remplacez file-systems par les systèmes de fichiers supplémentaires à exporter. Ces systèmes de fichiers doivent être formatés de la même manière qu'ils sont spécifiés dans/etc/exports
. Cette option est souvent utilisée pour tester un système de fichiers exporté avant de l'ajouter de manière permanente à la liste des systèmes de fichiers devant être exportés. Veuillez consulter Section 8.7.1, « Fichier de configuration/etc/exports
» pour obtenir des informations supplémentaires sur la syntaxe/etc/exports
. - -i
- Ignore
/etc/exports
; seules les options passées avec la ligne de commande sont utilisées pour définir les systèmes de fichiers exportés. - -u
- Annule l'export de tous les répertoires partagés. La commande
/usr/sbin/exportfs -ua
suspend le partage NFS tout en laissant les démons NFS fonctionner. Pour réactiver le partage NFS, veuillez utiliserexportfs -r
. - -v
- Opération détaillée, les systèmes de fichiers dont l'export ou l'annulation de l'export est en cours sont affichés avec plus de détails lorsque la commande
exportfs
est exécutée.
exportfs
, celle-ci affichera une liste des systèmes de fichiers actuellement exportés. Pour obtenir des informations supplémentaires sur la commande exportfs
, veuillez consulter man exportfs
.
8.7.2.1. Utiliser exportfs
avec NFSv4
RPCNFSDARGS= -N 4
à /etc/sysconfig/nfs
.
8.7.3. Exécuter NFS derrière un pare-feu
rpcbind
, qui assigne dynamiquement des ports pour les services RPC et peut provoquer des problèmes avec la configuration des règles de pare-feu. Pour autoriser les clients à accéder aux partages NFS derrière un pare-feu, veuillez modifier le fichier /etc/sysconfig/nfs
pour contrôler les ports sur lesquels les services RPC seront exécutés.
/etc/sysconfig/nfs
n'existe pas par défaut sur tous les systèmes. Si /etc/sysconfig/nfs
n'existe pas, créez le et ajoutez les variables suivantes. Remplacez port par un numéro de port non utilisé. Si /etc/sysconfig/nfs
existe déjà, modifiez les entrées selon les besoins :
- RPCMOUNTDOPTS="-p port"
- Cela ajoute "-p port" à la ligne de commande rpc.mount :
rpc.mount -p port
. - LOCKD_TCPPORT=port
- Cela définit le port TCP pour nlockmgr.
- LOCKD_UDPPORT=port
- Cela définit le port UDP pour nlockmgr.
/var/log/messages
. Normalement, NFS échoue au démarrage si vous indiquez un numéro de port déjà utilisé. Une fois que vous aurez édité /etc/sysconfig/nfs
, il vous faudra redémarrer le service nfs-config
pour que les nouvelles valeurs puissent prendre effet dans Red Hat Enterprise Linux 7.2 et version antérieures, en exécutant :
# systemctl restart nfs-configPuis, redémarrez le serveur NFS.
# systemctl restart nfs-serverExécutez
rpcinfo -p
pour confirmer que les changements ont pris place.
Note
/proc/sys/fs/nfs/nfs_callback_tcpport
et autorisez le serveur à se connecter à ce port sur le client.
mountd
, statd
, et lockd
ne sont pas requis dans un environnement NFSv4 pure.
8.7.3.1. Découverte des exports NFS
showmount
:
$ showmount -e myserver Export list for mysever /exports/foo /exports/bar
/
et observez son contenu.
# mount myserver
:/ /mnt/
#cd /mnt/
exports
# ls exports
foo
bar
Note
8.7.4. Formats des noms d'hôtes
- Machine unique
- Un nom de domaine complet (pouvant être résolu par le serveur), un nom d'hôte (pouvant être résolu par le serveur), ou une adresse IP.
- Série d'ordinateurs spécifiés avec des caractères génériques
- Utilisez le caractère
*
ou?
pour spécifier une chaîne correspondante. Les caractères génériques ne doivent pas être utilisés avec les adresses IP. Cependant, cela peut fonctionner accidentellement si des recherches DNS inversées échouent. Lors de la spécification de caractères génériques dans des noms de domaine complets, les points (.
) ne sont pas inclus dans la recherche. Par exemple,*.example.com
inclutone.example.com
mais n'inclut pasone.two.example.com
. - Réseaux IP
- Utilisez a.b.c.d/z, où a.b.c.d est le réseau et z est le nombre d'octets dans le masque réseau (par exemple, 192.168.0.0/24). Un autre format acceptable est a.b.c.d/netmask, où a.b.c.d est le réseau et netmask est le masque réseau (par exemple, 192.168.100.8/255.255.255.0).
- Netgroups
- Veuillez utiliser le format @group-name, où group-name est le nom du netgroup NIS.
8.7.5. NFS sur RDMA
Procédure 8.1. Activez RDMA à partir du client
- Installez le package RDMA :
# yum install rdma
- Recréer
initramfs
:# dracut -f
- Démarrez à nouveau.
8.8. Sécurisation de NFS
8.8.1. Sécurité NFS avec AUTH_SYS et les contrôles d'export
AUTH_SYS
(aussi appelé AUTH_UNIX
), qui se fie au client pour indiquer l'UID et le GID de l'utilisateur. Soyez conscient que cela signifie qu'un client mal configuré ou malicieux pourrait facilement mal comprendre ceci et autoriser un utilisateur à accéder à des fichiers auxquels il ne devrait pas avoir accès.
rpcbind
[1] avec des enveloppes TCP. La création de règles avec iptables
peut également limiter l'accès aux ports utilisés par rpcbind
, rpc.mountd
, et rpc.nfsd
.
rpcbind
, veuillez consulter man iptables
.
8.8.2. Sécurité NFS avec AUTH_GSS
Note
Procédure 8.2. Paramétrer RPCSEC_GSS
- Créez les principaux
nfs/client.mydomain@MYREALM
etnfs/server.mydomain@MYREALM
. - Ajoutez les clés correspondant aux onglets principaux pour le client et le serveur.
- Du côté serveur, veuillez ajouter
sec=krb5:krb5i:krb5p
à l'export. Pour continuer à autoriser AUTH_SYS, veuillez ajoutersec=krb5:krb5i:krb5p
à la place. - Du côté client, veuillez ajouter
sec=krb5
(ousec=krb5i
, ousec=krb5p
, en fonction de l'installation) aux options de montage.
krb5
, krb5i
, et krb5p
, veuillez consulter les pages man exports
et nfs
ou la Section 8.5, « Options de montage NFS courantes ».
RPCSEC_GSS
, y compris sur la manière par laquelle rpc.svcgssd
et rpc.gssd
interagissent, veuillez consulter http://www.citi.umich.edu/projects/nfsv4/gssd/.
8.8.2.1. Sécurité NFS avec NFSv4
MOUNT
pour monter les systèmes de fichiers. Ce protocole présentait des failles de sécurité possibles à cause de la manière par laquelle il traitait les identificateurs de fichiers.
8.8.3. Permissions de fichier
su -
pour accéder à tous les fichiers du partage NFS.
nobody
(personne). Le root squashing est contrôlé par l'option par défaut root_squash
. Pour obtenir des informations supplémentaires sur cette option, veuillez consulter Section 8.7.1, « Fichier de configuration /etc/exports
». Dans la mesure du possible, ne désactivez jamais le root squashing.
all_squash
. Cette option fait que tout utilisateur accédant au système de fichiers exporté prendra l'ID utilisateur de l'utilisateur nfsnobody
.
8.9. NFS et rpcbind
Note
rpcbind
pour une compatibilité ascendante.
rpcbind
[1] mappe les services RPC aux ports qu'ils écoutent. Les processus RPC notifient rpcbind
lorsqu'ils démarrent, en enregistrant les ports qu'ils écoutent et les numéros de programme RPC qu'ils prévoient de servir. Le système client contacte ensuite rpcbind
sur le serveur avec un numéro de programme RPC particulier. Le service rpcbind
redirige le client vers le numéro de port correct afin de pouvoir communiquer avec le service requis.
rpcbind
pour effectuer toutes les connexions avec les requêtes client entrantes, rpcbind
doit être disponible avant que ces services ne démarrent.
rpcbind
utilise des enveloppes TCP pour le contrôle d'accès, les règles de contrôle d'accès de rpcbind
affectent tous les services basés RPC. De manière alternative, il est possible de spécifier les règles de contrôle d'accès de chacun des démons RPC NFS. Les pages man
de rpc.mountd
et rpc.statd
contiennent des informations concernant la syntaxe précise de ces règles.
8.9.1. Résolution des problèmes NFS et rpcbind
rpcbind
[1] fournit la coordination entre les services RPC et les numéros de port utilisés pour communiquer avec ceux-ci, il est utile d'afficher le statut des services RPC en cours à l'aide de rpcbind
lors des résolutions de problèmes. La commande rpcinfo
affiche chaque service basé RPC avec les numéros de port, un numéro de programme RPC, un numéro de version, et un type de protocole IP (TCP ou UDP).
rpcbind
, veuillez saisir la commande suivante :
# rpcinfo -p
Exemple 8.7. Sortie de la comande rpcinfo -p
program vers proto port service 100021 1 udp 32774 nlockmgr 100021 3 udp 32774 nlockmgr 100021 4 udp 32774 nlockmgr 100021 1 tcp 34437 nlockmgr 100021 3 tcp 34437 nlockmgr 100021 4 tcp 34437 nlockmgr 100011 1 udp 819 rquotad 100011 2 udp 819 rquotad 100011 1 tcp 822 rquotad 100011 2 tcp 822 rquotad 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100005 1 udp 836 mountd 100005 1 tcp 839 mountd 100005 2 udp 836 mountd 100005 2 tcp 839 mountd 100005 3 udp 836 mountd 100005 3 tcp 839 mountd
rpcbind
sera incapable de mapper les requêtes RPC des clients de ce service sur le bon port. Dans de nombreux cas, si NFS n'est pas présent dans la sortie rpcinfo
, redémarrer NFS entraînera le bon enregistrement du service avec rpcbind
et le début de son fonctionnement.
man
rpcinfo
pour obtenir des informations supplémentaires ainsi qu'une liste de ses options.
8.10. Références
Documentation installée
man mount
— offre une vue d'ensemble complète sur les options de montage pour les configurations du serveur NFS et du client NFS.man fstab
— fournit des détails sur le format du fichier/etc/fstab
utilisé pour monter les systèmes de fichiers lors du démarrage.man nfs
— fournit des détails sur les options de montage et d'exportation des systèmes de fichiers spécifiques à NFS.man exports
— affiche les options courantes utilisées dans le fichier/etc/exports
lors de l'exportation de systèmes de fichiers NFS.
Sites Web utiles
- http://linux-nfs.org — Site pour développeurs sur lequel les mises à jour du statut des projets peuvent être observées.
- http://nfs.sourceforge.net/ — Ancien site pour développeurs, celui-ci contient toujours de nombreuses informations utiles.
- http://www.citi.umich.edu/projects/nfsv4/linux/ — Ressource NFSv4 pour noyau Linux 2.6.
- http://www.vanemery.com/Linux/NFSv4/NFSv4-no-rpcsec.html — Décrit les détails de NFSv4 avec Fedora Core 2, qui inclut le noyau 2.6.
- http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.111.4086 — Excellent livre blanc sur les fonctionnalités et améliorations du protocole NFS Version 4.
Livres sur le sujet
- Managing NFS and NIS (« Gérer NFS et NIS ») de Hal Stern, Mike Eisler, et Ricardo Labiaga; O'Reilly & Associés — Excellent guide de référence pour les nombreuses options de montage et d'exportation de NFS disponible.
- NFS Illustrated (« NFS illustré ») de Brent Callaghan; Addison-Wesley Publishing Company — Fournit des comparaisons de NFS avec d'autres systèmes de fichiers réseau et affiche, de manière détaillée, comment les communications NFS se produisent.
rpcbind
service replaces portmap
, which was used in previous versions of Red Hat Enterprise Linux to map RPC program numbers to IP address port number combinations. For more information, refer to Section 8.1.1, « Services requis ».
Chapitre 9. FS-Cache
Figure 9.1. Aperçu de FS-Cache
cachefs
sur Solaris, FS-Cache permet à un système de fichiers d'interagir directement avec le cache local d'un client sans créer de système de fichiers surmonté. Avec NFS, une option de montage ordonne au client de monter le partage NFS avec FS-cache activé.
cachefiles
). Dans ce cas, FS-Cache requiert un système de fichiers monté basé sur blocs, qui prendrait en charge bmap
et des attributs étendus (par exemple ext3) en tant que backend de cache.
Note
cachefilesd
n'est pas installé par défaut et doit donc être installé manuellement.
9.1. Garantie des performances
9.2. Paramétrer un cache
cachefiles
. Le démon cachefilesd
initialise et gère cachefiles
. Le fichier /etc/cachefilesd.conf
contrôle la manière par laquelle cachefiles
fournit ses services de mise en cache. Pour configurer un backend de cache de ce type, le paquet cachefilesd
doit être installé.
$ dir /path/to/cache
/etc/cachefilesd.conf
en tant que /var/cache/fscache
, comme suit :
$ dir /var/cache/fscache
/path/to/cache
. Sur un ordinateur portable, il est conseillé d'utiliser le système de fichiers root (/
) en tant que système de fichier hôte, mais pour un ordinateur de bureau, il serait plus prudent de monter une partition de disque spécifiquement pour le cache.
- ext3 (avec des attributs étendus activés)
- ext4
- BTRFS
- XFS
device
), veuillez utiliser :
# tune2fs -o user_xattr /dev/device
# mount /dev/device /path/to/cache -o user_xattr
cachefilesd
:
# service cachefilesd start
cachefilesd
pour être lancé lors du démarrage, veuillez exécuter la commande suivante en tant que root :
# chkconfig cachefilesd on
9.3. Utiliser le cache avec NFS
-o fsc
à la commande mount
:
# mount nfs-share:/ /mount/point -o fsc
/mount/point
passeront par le cache, sauf si le fichier est ouvert pour des E/S ou écritures directes (veuillez consulter Section 9.3.2, « Limitations des caches avec NFS » pour obtenir des informations supplémentaires). NFS indexe le contenu du cache à l'aide d'un gestionnaire de fichiers NFS, et non avec le nom du fichier ; cela signifie que les fichiers avec des liens physiques partagent le cache correctement.
9.3.1. Partage de cache
- Niveau 1 : Détails du serveur
- Niveau 2 : Certaines options de montage, type de sécurité, FSID, uniquifier
- Niveau 3 : Identificateur de fichier
- Niveau 4 : Numéro de la page dans le fichier
Exemple 9.1. Partager un cache
mount
suivantes :
mount home0:/disk0/fred /home/fred -o fsc
mount home0:/disk0/jim /home/jim -o fsc
/home/fred
et /home/jim
partageront probablement le superrbloc car ils possèdent les mêmes options, particulièrement s'ils proviennent du même volume ou de la même partition sur le serveur NFS (home0
). Prenez en considération les deux commandes de montage suivantes :
mount home0:/disk0/fred /home/fred -o fsc,rsize=230
mount home0:/disk0/jim /home/jim -o fsc,rsize=231
/home/fred
et /home/jim
ne partageront pas le super bloc car leurs paramètres d'accès réseau sont différents, et ceux-ci font partie de la clé du Niveau 2. La même chose est valable pour la séquence de montage suivante :
mount home0:/disk0/fred /home/fred1 -o fsc,rsize=230
mount home0:/disk0/fred /home/fred2 -o fsc,rsize=231
/home/fred1
et /home/fred2
) seront mis en cache deux fois.
nosharecache
. Voici un exemple :
mount home0:/disk0/fred /home/fred -o nosharecache,fsc
mount home0:/disk0/jim /home/jim -o nosharecache,fsc
home0:/disk0/fred
et home0:/disk0/jim
. Pour répondre à ce problème, veuillez ajouter un identifiant unique sur un des montages au moins, c-a-d fsc=unique-identifier
. Par exemple :
mount home0:/disk0/fred /home/fred -o nosharecache,fsc
mount home0:/disk0/jim /home/jim -o nosharecache,fsc=jim
jim
sera ajouté à la clé de Niveau 2 utilisée dans le cache pour /home/jim
.
9.3.2. Limitations des caches avec NFS
9.4. Définir les limites d'élimination du cache
cachefilesd
fonctionne en mettant en cache des données à distance provenant des systèmes de fichiers pour libérer de l'espace sur le disque. Cela pourrait potentiellement consommer tout l'espace libre, ce qui serait problématique si le disque héberge aussi la partition root. Pour contrôler ceci, cachefilesd
tente de maintenir une certaine quantité d'espace libre en abandonnant certains anciens objets (c'est-à-dire qui n'ont pas été accédés depuis un certain temps) du cache. Ce comportement est aussi connu sous le nom de cache culling (élimination du cache).
/etc/cachefilesd.conf
:
- brun N% (pourcentage de blocs), frun N% (pourcentage de fichiers)
- Si la quantité d'espace libre et le nombre de fichiers disponibles dans le cache dépassent ces deux limites, alors l'élimination est désactivée.
- bcull N% (pourcentage de blocs), fcull N% (pourcentage de fichiers)
- Si la quantité d'espace disponible ou le nombre de fichiers dans le cache se trouve sous l'une de ces limites, alors l'élimination est lancée.
- bstop N% (pourcentage de blocs), fstop N% (pourcentage de fichiers)
- Si la quantité d'espace disponible ou le nombre de fichiers disponibles dans le cache se trouve sous l'une de ces limites, alors l'allocation d'espace disque ou de fichiers ne sera plus permise tant que l'élimination du cache n'aura pas fait que ces limites soient à nouveau dépassées.
N
pour chaque paramètre est comme suit :
brun
/frun
- 10%bcull
/fcull
- 7%bstop
/fstop
- 3%
bstop
< bcull
< brun
< 100
fstop
< fcull
< frun
< 100
df
.
Important
9.5. Informations statistiques
cat /proc/fs/fscache/stats
/usr/share/doc/kernel-doc-version/Documentation/filesystems/caching/fscache.txt
9.6. Références
cachefilesd
et sur la manière de le configurer, veuillez consulter man cachefilesd
et man cachefilesd.conf
. Les documents sur le noyau suivants offrent également des informations supplémentaires :
/usr/share/doc/cachefilesd-version-number/README
/usr/share/man/man5/cachefilesd.conf.5.gz
/usr/share/man/man8/cachefilesd.8.gz
/usr/share/doc/kernel-doc-version/Documentation/filesystems/caching/fscache.txt
Partie II. Administration du stockage
Chapitre 10. Besoins de stockage à prendre en compte pendant l'installation
10.1. Considérations particulières
Partitions séparées pour /home, /opt, /usr/local
/home
, /opt
, et /usr/local
sur un périphérique séparé. Ceci vous permettra de reformater les périphériques ou systèmes de fichiers contenant le système d'exploitation tout en préservant vos données utilisateur et applications.
Périphériques DASD et zFCP sur IBM System Z
DASD=
dans la ligne de commande de démarrage ou dans un fichier de configuration CMS.
FCP_x=
dans la ligne de commande de démarrage (ou dans un fichier de configuration CMS) vous permettent de spécifier ces informations pour l'installateur.
Chiffrer des périphériques blocs avec LUKS
dm-crypt
détruira tout formatage existant sur ce périphérique. Ainsi, vous devriez décider quels périphériques chiffrer avant que la configuration du stockage du nouveau système ne soit activée dans le cadre du processus d'installation.
Métadonnées RAID BIOS périmées
Avertissement
dmraid -r -E /device/
man dmraid
et le Chapitre 17, Réseau redondant de disques indépendants (RAID, de l'anglais « Redundant Array of Independent Disks »).
Détection et configuration iSCSI
Détection et configuration FCoE
DASD
Périphériques bloc avec DIF/DIX activé
mmap(2)
ne fonctionneront pas de manière stable, car il n'y a pas de verrouillage dans le chemin d'écriture en mémoire tampon pour empêcher les données en tampon d'être remplacées une fois que le checksum DIF/DIX est calculé.
mmap(2)
. Ainsi, il n'est pas possible de contourner les erreurs causées par ces remplacements.
O_DIRECT
. De telles applications doivent utiliser le périphérique bloc brut. De manière alternative, il est également sûr d'utiliser le système de fichiers XFS sur un périphérique bloc activé DIF/DIX, tant que seules les E/S O_DIRECT
soient passées à travers le système de fichiers. XFS est le seul système de fichiers qui ne se replie pas sur les E/S mises en mémoire tampon lorsqu'il effectue certaines opérations d'allocation.
O_DIRECT
et le matériel DIF/DIX doivent utiliser DIF/DIX.
Chapitre 11. Vérification du système de fichiers (fsck)
fsck
, fsck
est une version raccourcie de file system check (vérification du système de fichiers).
Note
/etc/fstab
au moment du démarrage. Pour les systèmes de fichiers journalisant, ceci consiste souvent en une très courte opération, car la journalisation des métadonnées du système de fichiers assure la cohérence des données même après une panne.
Important
11.1. Meilleures pratiques avec fsck
- Test à vide
- La plupart des vérificateurs de systèmes de fichiers possèdent un mode opératoire qui vérifie mais ne répare pas le système de fichiers. Dans ce mode, le vérificateur imprimera toutes les erreurs qu'il trouvera et toutes les actions qu'il aurait effectuées sans pour autant modifier le système de fichiers.
Note
Les phase ultérieures de la vérification de cohérence peuvent imprimer des erreurs supplémentaires en découvrant les incohérences qui auraient pu être corrigées dans des phases antérieures si celles-ci avaient fonctionné en mode de réparation. - Opérer avant tout sur une image de système de fichiers
- La plupart des systèmes de fichiers prennent en charge la création d'une image des métadonnées, une copie fragmentée du système de fichiers qui ne contient que les métadonnées. Comme les vérificateurs de système de fichiers opèrent uniquement sur les métadonnées, de telles images peuvent être utilisées pour effectuer le test à vide d'une réparation de système de fichiers, et pour évaluer les modifications qui seront ainsi effectuées. Si les modifications sont acceptables, alors la réparation pourra être effectuée sur le système de fichiers.
Note
Des systèmes de fichiers sévèrement endommagés peuvent causer des problèmes avec la création d'images de métadonnées. - Enregistrer une image de système de fichiers pour les vérifications du support technique
- Une image des métadonnées du système de fichiers avant les réparations peut souvent se révéler utile pour les vérifications du support technique si cette corruption résulte d'un bogue de logiciel. Des schémas de corruption présents dans l'image pré-réparation peut aider lors de l'analyse de la cause principale.
- Opérer sur les systèmes de fichiers non-montés uniquement
- Une réparation de système de fichiers doit uniquement être exécutée sur un système de fichiers qui n'est pas monté. L'outil doit être le seul à avoir accès au système de fichiers ou des dommages supplémentaires pourraient être provoqués. La plupart des outils de systèmes de fichiers appliquent cette condition en mode de réparation, même si certains prennent uniquement en charge le mode de vérification seule sur un système de fichiers monté. Si le mode vérification-seule est exécuté sur un système de fichiers monté, il pourrait trouver de fausses erreurs qui n'auraient pas été trouvées avec une exécution sur un système de fichiers non-monté.
- Erreurs de disque
- Les outils de vérification de système de fichiers ne peuvent pas réparer les problèmes de matériel. Un système de fichiers doit être totalement lisible et inscriptible pour que la réparation puisse s'effectuer correctement. Si un système de fichiers est corrompu à cause d'un problème matériel, le système de fichiers doit d'abord être déplacé sur un disque en bon état, par exemple à l'aide de l'utilitaire
dd(8)
.
11.2. Informations spécifiques aux systèmes de fichiers pour fsck
11.2.1. ext2, ext3, et ext4
e2fsck
pour effectuer leurs vérifications et réparations de système de fichiers. Les noms de fichiers fsck.ext2
, fsck.ext3
, et fsck.ext4
sont des liens vers ce même binaire. Ces binaires sont exécutés automatiquement lors du démarrage et leur comportement diffère basé sur le fait que le système de fichiers est en cours de vérification, et selon l'état du système de fichiers.
e2fsck
découvre qu'un système de fichiers est marqué d'une telle erreur, e2fsck
effectuera une vérification complète après avoir répété le journal (s'il est présent).
e2fsck
peut demander une entrée à l'utilisateur pendant l'exécution si l'option -p
n'est pas spécifiée. L'option -p
indique à e2fsck
d'effectuer automatiquement toutes les réparations pouvant être faites sans risque. Si une intervention de l'utilisateur est requise, e2fsck
indiquera le problème non corrigé dans sa sortie et reflétera ce statut dans le code de sortie.
e2fsck
habituellement utilisées incluent :
-n
- Mode sans modifications. Opération de vérification seule.
- superbloc
-b
- Spécifie le numéro de bloc d'un super bloc alternatif si le bloc principal est endommagé.
-f
- Force une vérification complète même si le superbloc n'a aucune erreur enregistrée.
-j
journal-dev- Spécifie le périphérique journal externe, s'il y en a un.
-p
- Répare automatiquement ou « nettoie » le système de fichiers sans saisie de la part de l'utilisateur.
-y
- Répondre « oui » à toutes les questions.
e2fsck
sont spécifiées dans la page man de e2fsck(8)
.
e2fsck
pendant l'exécution des :
- vérifications des inodes, des blocs et des tailles.
- vérifications des structures des répertoires.
- vérifications de la connectivité des répertoires.
- vérifications des comptes des références.
- vérifications des informations des résumés de groupes.
e2image(8)
peut être utilisé pour créer une image de métadonnées avant d'effectuer les réparations dans le but de fournir un diagnostique ou pour faire des tests. L'option -r
doit être utilisée pour effectuer des tests afin de créer une fichier partiellement alloué de la même taille que le système de fichiers. e2fsck
peut ensuite opérer directement sur le fichier résultant. L'option -Q
doit être spécifiée si l'image va ensuite être archivée ou utilisée pour fournir un diagnostique. Ceci crée un format de fichier plus compact, qui convient mieux aux transferts.
11.2.2. XFS
xfs_repair
est utilisé.
Note
fsck.xfs
se trouve dans le paquet xfsprogs, il n'est présent que pour satisfaire les initscripts qui recherchent un binaire fsck.filesystem
au moment du démarrage. fsck.xfs
se ferme immédiatement avec un code de sortie 0.
xfs_check
. Cet outil est très lent et s'adapte mal aux systèmes de fichiers de grande taille. Ainsi, il a été déconseillé en faveur de xfs_repair -n
.
xfs_repair
d'opérer. Si le système de fichiers n'a pas été démonté correctement, il doit être monté, puis démonté avant d'utiliser xfs_repair
. Si le journal est corrompu et ne peut être relu, l'option -L
peut être utilisée pour remettre le journal à zéro.
Important
-L
doit uniquement être utilisée si le journal ne peut pas être relu. L'option ignore toutes les mises à jour de métadonnées dans le journal et provoquera des incohérences supplémentaires.
xfs_repair
lors de tests à vide, en mode de vérification seule, en utilisant l'option -n
. Aucune modification ne se produira sur le système de fichiers lorsque cette option est indiquée.
xfs_repair
ne peut prendre qu'un petit nombre d'options. Les options communément utilisées incluent :
-n
- Mode sans modifications. Opération de vérification seule.
-L
- Journal sans métadonnées. Utiliser uniquement si le journal ne peut pas être relu en étant monté.
-m
maxmem- Limite la mémoire utilisée pendant l'exécution à un maxmem de MB. 0 peut être spécifié pour obtenir une estimation approximative de la quantité minimum de mémoire requise.
-l
logdev- Spécifie le périphérique de journalisation externe, si présent.
xfs_repair
sont indiquées dans la page man xfs_repair(8)
.
xfs_repair
pendant l'exécution des :
- vérifications des inodes et des mappages (addressage) de blocs d'inodes.
- vérifications des cartes d'allocation d'inodes.
- vérifications de la taille des inodes.
- vérifications des répertoires.
- vérifications des noms de chemins d'accès.
- vérification du nombre de liens.
- Vérifications Freemap.
- Vérifications de super blocs.
xfs_repair(8)
.
xfs_repair
n'est pas interactif. Toutes les opérations sont effectuées automatiquement sans saisie de la part de l'utilisateur.
xfs_metadump(8)
et xfs_mdrestore(8)
peuvent être utilisés.
11.2.3. Btrfs
btrfsck
est utilisé pour vérifier et réparer les systèmes de fichiers btrfs. Cet outil est toujours en cours de développement et pourrait ne pas détecter ou réparer tous les types de corruption de système de fichiers.
btrfsck
n'effectue pas de modification sur le système de fichiers ; autrement dit, il exécute le mode vérification-seule par défaut. Si des réparations sont souhaitées, l'option --repair
doit être spécifiée.
btrfsck
pendant l'exécution des :
- vérifications des extensions.
- vérifications de la racine du système de fichiers.
- vérifications des comptes des références root.
btrfs-image(8)
peut être utilisé pour créer une image des métadonnées avant les réparations afin d'effectuer des diagnostiques ou de faire des tests.
Chapitre 12. Partitions
parted
permet aux utilisateurs de :
- Afficher la table de partitions existante
- Modifier la taille des partitions existantes
- Ajouter des partitions à partir d'espace libre ou de disques durs supplémentaires
parted
est inclus dans l'installation de Red Hat Enterprise Linux. Pour lancer parted
, connectez-vous en tant que root et saisissez la commande parted /dev/sda
à l'invite shell (où /dev/sda
est le nom de périphérique du lecteur que vous souhaitez configurer).
umount
et désactiver tout l'espace swap sur le disque dur avec la commande swapoff
.
parted
» contient une liste de commandes parted
couramment utilisées. Les sections suivantes expliquent certains de ces arguments et commandes de manière plus détaillée.
Tableau 12.1. Commandes parted
Commande | Description |
---|---|
check minor-num | Effectuer une simple vérification du système de fichiers |
cp depuis vers | Copier le système de fichiers d'une partition à une autre ; depuis et vers sont les numéros mineurs des partitions |
help | Afficher la liste des commandes disponibles |
mklabel étiquette | Créer une étiquette de disque pour la table de partitions |
mkfs minor-num file-system-type | Créer un système de fichiers de type file-system-type |
mkpart part-type fs-type start-mb end-mb | Créer une partition sans créer de nouveau système de fichiers |
mkpartfs part-type fs-type start-mb end-mb | Créer une partition et créer le système de fichiers spécifié |
move minor-num start-mb end-mb | Déplacer la partition |
name minor-num nom | Nommer la partition uniquement pour disklabels Mac et PC98 |
print | Afficher la table de partitions |
quit | Quitter parted |
rescue start-mb end-mb | Secourir une partition perdue de start-mb à end-mb |
resize minor-num start-mb end-mb | Redimensionner la partition de start-mb à end-mb |
rm minor-num | Supprimer la partition |
select périphérique | Sélectionner un autre périphérique à configurer |
set minor-num flag state | Paramétrer l'indicateur sur une partition ; l'état est soit « on », soit « off » |
toggle [NUMBER [FLAG] | Basculer l'état de l'indicateur FLAG sur le numéro de partition NUMBER |
unit UNIT | Paramétrer l'unité par défaut sur UNIT |
12.1. Afficher la table de partitions
parted
, veuillez utiliser la commande print
pour afficher la table de partitions. Une table similaire à la suivante s'affiche :
Exemple 12.1. Table de partitions
Model: ATA ST3160812AS (scsi) Disk /dev/sda: 160GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system Flags 1 32.3kB 107MB 107MB primary ext3 boot 2 107MB 105GB 105GB primary ext3 3 105GB 107GB 2147MB primary linux-swap 4 107GB 160GB 52.9GB extended root 5 107GB 133GB 26.2GB logical ext3 6 133GB 133GB 107MB logical ext3 7 133GB 160GB 26.6GB logical lvm
numéro
de la partition. Par exemple, la partition avec le numéro mineur 1 correspond à /dev/sda1
. Les valeurs Start
et End
sont en méga-octets. Les types Type
valides sont les métadonnées (« metadata ») « free », « primary », « extended », ou « logical ». Filesystem
est le type de système de fichiers, qui peut correspondre à l'un des types suivants :
- ext2
- ext3
- fat16
- fat32
- hfs
- jfs
- linux-swap
- ntfs
- reiserfs
- hp-ufs
- sun-ufs
- xfs
Filesystem
d'un périphérique n'affiche aucune valeur, cela signifie que son type de système de fichiers est inconnu.
12.2. Création d'une partition
Avertissement
Procédure 12.1. Création d'une partition
- Avant de créer une partition, veuillez démarrer en mode de secours (ou démontez toute partition sur le périphérique et éteignez tout espace swap sur le périphérique).
- Démarrez
parted
, où/dev/sda
est le périphérique sur lequel créer la partition :# parted /dev/sda
- Afficher la table de partitions pour déterminer s'il y a suffisament d'espace libre :
# print
12.2.1. Créer la partition
# mkpart primary ext3 1024 2048
Note
mkpartfs
, le système de fichiers sera créé après la création de la partition. Cependant, parted
ne prend pas en charge la création d'un système de fichiers ext3. Ainsi, si vous souhaitez créer un système de fichiers ext3, veuillez utiliser mkpart
et créer le système de fichiers avec la commande mkfs
comme décrit ultérieurement.
print
pour confirmer que celle-ci se trouve effectivement dans la table de partitions avec le bon type de partition, le bon type de système de fichiers, et la bonne taille. Veuillez également vous rappeler du numéro mineur de la nouvelle partition afin d'être en mesure d'étiqueter un système de fichiers dessus. Vous devriez aussi afficher la sortie de cat /proc/partitions
une fois que « parted » est fermé afin de vous assurer que le noyau reconnaisse la nouvelle partition.
12.2.2. Formatage et étiquetage de la partition
Procédure 12.2. Formater et étiqueter la partition
- La partition ne possède toujours pas de système de fichiers. Pour en créer un, veuillez utiliser la commande suivante :
# /usr/sbin/mkfs -t ext3 /dev/sda6
Avertissement
Formater la partition détruira de manière permanente toutes les données s'y trouvant. - Ensuite, veuillez donner une étiquette au système de fichiers sur la partition. Par exemple, si le système de fichiers sur la nouvelle partition est nommé
/dev/sda6
et que vous souhaitez l'étiqueter/work
, veuillez utiliser :# e2label /dev/sda6 /work
/work
) en tant que root.
12.2.3. Ajoutez-le à /etc/fstab
/etc/fstab
afin d'inclure la nouvelle partition à l'aide de son UUID. Veuillez utiliser la commande blkid -o list
pour obtenir une liste complète de l'UUID de la partition, ou blkid device
pour obtenir les détails individuels du périphérique.
UUID=
suivi de l'UUID du système de fichiers. La seconde colonne doit contenir le point de montage de la nouvelle partition, et la colonne suivante doit être le type de système de fichiers (par exemple, ext3 ou swap). Si vous souhaitez obtenir des informations supplémentaires sur le format, veuillez lire la page man avec la commande man fstab
.
defaults
, alors la partition sera montée au moment du démarrage. Pour monter la partition sans effectuer de redémarrage, veuillez saisir la commande suivante en tant que root :
mount /work
12.3. Suppression de partition
Avertissement
Procédure 12.3. Supprimer une partition
- Avant de supprimer une partition, veuillez démarrer en mode de secours (ou démontez toute partition sur le périphérique, puis éteignez tout espace swap présent sur le périphérique).
- Lancez
parted
, où/dev/sda
est le périphérique sur lequel supprimer la partition :# parted /dev/sda
- Affichez la table de la partition actuelle pour déterminer le numéro mineur de la partition à supprimer :
# print
- Supprimez la partition à l'aide de la commande
rm
. Par exemple, pour supprimer la partition portant le numéro mineur 3, saisissez la commande suivante :# rm 3
Les modifications prendront effet dès que vous appuierez sur Entrée. Ainsi, veuillez vérifier la commande avant de l'exécuter. - Après avoir supprimé la partition, utilisez la commande
print
pour confirmer sa suppression de la table de partitions. Vous devriez également afficher la sortie de/proc/partitions
afin de vous assurer que le noyau sache effectivement que la partition a été supprimée.# cat /proc/partitions
- La dernière étape consiste à la supprimer du fichier
/etc/fstab
. Trouvez la ligne qui déclare la partition supprimée, puis supprimez-la du fichier.
12.4. Redimensionnement d'une partition
Procédure 12.4. Redimensionner une partition
- Démonter le périphérique.
~]# umount /dev/vda
- Exécuter
fdisk device_name
.~]# fdisk /dev/vda Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help):
- Vérifier le nombre de partitions à supprimer par l'option
p
. Les partitions sont listées sous l'en-tête 'Device'.Command (m for help): p Disk /dev/vda: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x0006d09a Device Boot Start End Blocks Id System /dev/vda1 * 2048 1026047 512000 83 Linux /dev/vda2 1026048 31457279 15215616 8e Linux LVM
Important
Red Hat ne prend en charge que l'extension ou le redimensionnement des partitions LVM. - Utilisez l'option
d
pour supprimer une partition. S'il y a plus d'une partition disponible,fdisk
vous invitera à les supprimer une par une.Command (m for help): d Partition number (1,2, default 2): 2 Partition 2 is deleted
- Utiliser l'option
n
pour créer une nouvelles partition. Suivre les invites et veillez à ce qu'il y ait suffisamment de place pour tout redimensionnement à venir. Il est possible d'indiquer une taille lisible de visu à la place des secteurs, si vous préférez.Note
Il est conseillé de suivre les options par défaut defdisk
pour les valeurs par défaut et les tailles de partition (par exemple, les premiers secteurs de partitions).Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): *Enter* Using default response p Partition number (2-4, default 2): *Enter* First sector (1026048-31457279, default 1026048): *Enter* Using default value 1026048 Last sector, +sectors or +size{K,M,G} (1026048-31457279, default 31457279): +500M Partition 2 of type Linux and of size 500 MiB is set
- Définir le type de partition à LVM
Command (m for help): t Partition number (1,2, default 2): *Enter* Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM'
- Inscrire les changements à l'aide de l'option
w
une fois que vous êtes certain qu'ils sont corrects.Important
Les erreurs dans ce processus qui sont inscrites peuvent causer l'instabilité de la partition sélectionnée. - Exécuter
e2fsck
sur le périphérique pour vérifier l'homogénéité.~]# e2fsck /dev/vda e2fsck 1.41.12 (17-May-2010) Pass 1:Checking inodes, blocks, and sizes Pass 2:Checking directory structure Pass 3:Checking directory connectivity Pass 4:Checking reference counts Pass 5:Checking group summary information ext4-1:11/131072 files (0.0% non-contiguous),27050/524128 blocks
- Monter le périphérique.
~]# mount /dev/vda
man fdisk
- La page man de
fdisk
. Contient des informations de base sur la commandefdisk
et ce qu'elle prend en charge. - L'option
m
defdisk
- Cette option répertorie toutes les commandes possibles de
fdisk
.
Chapitre 13. Créer et maintenir des clichés avec Snapper
13.1. Configuration initiale de Snapper
sudo
.
Procédure 13.1. Créer un fichier de configuration Snapper
- Créer ou choisir soit :
- Un volume logique alloué dynamiquement avec un système de fichiers Red Hat ajouté, ou
- Un sous-volume Btfs.
- Montez le système de fichiers.
- Créer un fichier de configuration qui définisse ce volume.Pour LVM2 :
# snapper -c config_name create-config -f "lvm(fs_type)" /mount-point
Pour Btrfs :~]# snapper -c config_name create-config -f btrfs /mount-point
- L'option
-c config_name
spécifie le nom du fichier de configuration. - La commande
create-config
demande à Snapper de créer un fichier de configuration. -f file_system
demande à Snapper quel système de fichier utiliser ; sinon, Snapper tentera de détecter le système de fichiers./mount-point
est l'endroit où le sous-volume ou système de fichiers LVM2 alloué dynamiquement est monté.
Ainsi, pour créer un fichier de configuration intitulélvm_config
sur un sous-volume LVM2 avec un système de fichiers ext4, monté sur/lvm_mount
, utiliser :# snapper -c lvm_config create-config -f "lvm(ext4)" /lvm_mount
Ainsi, pour créer un fichier de configuration intitulébtrfs_config
sur un sous-volume Btrfs monté sur/lvm_mount
, utiliser :# snapper -c btrfs_config create-config -f btrfs /btrfs_mount
/etc/snapper/configs/
.
13.2. Créer un cliché Snapper
- Pré Cliché
- Un pré cliché sert de point d'origine à un post cliché. Les deux sont liés étroitement et conçus pour garder la trace de modifications de système de fichiers entre les deux points. Le pré cliché doit être créé avant le post cliché.
- Post cliché
- Un post cliché sert de point de terminaison d'un pré cliché. Les pre et post clichés ensemble définissent une portée de comparaison. Par défaut, chaque nouveau volume de Snapper est configuré pour créer un comparaison en arrière plan une fois qu'un cliché aura été créé.
- Simple cliché
- Un simple cliché est un cliché autonome créé à un moment précis. Ils peuvent être utilisés pour garder la trace des modifications et ont un point général dans le temps où retourner plus tard.
13.2.1. Créer un paire de Pré et Post clichés
13.2.1.1. Créer un Pré cliché
# snapper -c config_name create -t pre
-c config_name
crée un cliché en fonction des spécifications qui se trouvent dans le fichier de configuration indiqué. Si le fichier de configuration n'existe pas encore, voir Section 13.1, « Configuration initiale de Snapper ».
create -t
indique quel type de cliché créer. Les entrées acceptées sont pre
, post
, ou single
.
lvm_config
, créée dans Section 13.1, « Configuration initiale de Snapper », exécuter :
# snapper -c SnapperExample create -t pre -p 1
-p
affiche le nombre de clichés créés et est optionelle.
13.2.1.2. Créer un Post Cliché avec Snapper
Procédure 13.2. Créer un Post cliché
- Déterminer le nombre de Pré instantanés
# snapper -c config_name list
Ainsi, pour afficher la liste des clichés créés par le fichier de configurationlvm_config
, exécutez ce qui suit :# snapper -c lvm_config list Type | # | Pre # | Date | User | Cleanup | Description | Userdata -------+---+-------+-------------------+------+----------+-------------+--------- single | 0 | | | root | | current | pre | 1 | | Mon 06<...> | root | | |
La sortie ci-dessus afficher que l'instantané est le numéro 1 - Créer un post instantané lié au Pré instantané créé auparavant :
# snapper -c config_file create -t post --pre-num pre_snapshot_number
- L'option
-t post
indique la création d'un type de Post instantané. - L'option
--pre-num
indique le Pré instantané correspondant.
Ainsi, pour créer un post instantané par le fichier de configurationlvm_config
lié au pré instantané numéro 1, exécuter :# snapper -c lvm_config create -t post --pre-num 1 -p 2
L'option-p
affiche le nombre de clichés créés et est optionelle. - Les Pre et Post instantanés 1 et 2 sont maintenant créés et mis en paires. Vérifier ceci par la commande
list
:# snapper -c lvm_config list Type | # | Pre # | Date | User | Cleanup | Description | Userdata -------+---+-------+-------------------+------+----------+-------------+--------- single | 0 | | | root | | current | pre | 1 | | Mon 06<...> | root | | | post | 2 | 1 | Mon 06<...> | root | | |
- Exécuter la commande
# snapper create pre snapshot
. - Exécuter un commande ou une liste de commandes pour effectuer des actions ayant un impact possible sur le contenu du système de fichiers.
- Exécuter la commande
# snaper create post snapshot
.
Procédure 13.3. Créer une commande Pré ou Post Cliché
- Pour créer une commande en Pré ou Post Cliché, exécuter :
# snapper -c lvm_config create --command "command_to_be_tracked"
Par exemple, pour suivre la création du fichier/lvm_mount/hello_file
, utiliser :# snapper -c lvm_config create --command "echo Hello > /lvm_mount/hello_file"
- Pour vérifier cela, utiliser la commande
status
.# snapper -c config_file status first_snapshot_number..second_snapshot_number
Par exemple, pour suivre les changements effectués à la première étape, utiliser :# snapper -c lvm_config status 3..4 +..... /lvm_mount/hello_file
Utiliser la commandelist
pour vérifier le nombre de clichés si besoin est.Pour plus d'informations sur la commandestatus
, voir Section 13.3, « Assurer le suivi des changements parmi les clichés Sanpper ».
13.2.2. Créer un cliché Snapper unique
-t
spécifie unique. Le cliché unique est utilisé pour créer un cliché unique au bon moment sans qu'il soit lié à d'autres. Toutefois, si vous êtes intéressé par un moyen simple de créer des instantanés de volumes LVM2 d'allocation dynamique sans devoir automatiquement générer des comparaisons ou des informations supplémentaires, Red Hat recommande d’utiliser le gestionnaire de stockage système à la place de Snapper à cet effet, tel que décrit dans Section 15.2.6, « Cliché ».
# snapper -c config_name create -t single
lvm_config
.
# snapper -c lvm_config create -t single
snapper diff
, xadiff
, et status
pour comparer deux clichés. Pour plus d'informations sur ces commandes, consulter Section 13.3, « Assurer le suivi des changements parmi les clichés Sanpper ».
13.2.3. Configurer Snapper pour qu'il prenne des clichés automatiquement
- 10 clichés par heure, et le dernier cliché sauvegardé sous « daily ».
- 10 clichés par heure, et le dernier cliché du mois sauvegardé sous « monthly ».
- 10 clichés par heure, et le dernier cliché sauvegardé sous « yearly ».
- 10 clichés par an.
/etc/snapper/config-templates/default
. Quand vous exécutez la commande # snapper create-config
pour créer une configuration, toutes les valeurs définies sont basées sur la configuration par défaut. Vous pouvez modifier la configuration de n'importe quel volume défini dans le fichier /etc/snapper/configs/config_name
.
13.3. Assurer le suivi des changements parmi les clichés Sanpper
status
, diff
, et xadiff
pour assurer le suivi des changements apportés à un sous-volume entre les clichés :
- status
- La commande
status
affiche une liste de fichiers et de répertoires qui ont été créés, modifiés ou supprimés entre deux clichés, et qui consistitue une liste de modifications entre deux clichés. Un administrateur de systèmes peut utiliser cette commande pour obtenir un aperçu de ces changements sans détails excessifs.Pour plus d'informations, voir Section 13.3.1, « Comparez les changements avec la commandestatus
». - diff
- La commande
diff
affiche un diff, pour les fichiers et les répertoires modifiés entre deux clichés, tel indiqué par la commandestatus
si une modification au moins a été détectée.Pour plus d'informations, voir Section 13.3.2, « Comparez les changements avec la commandediff
». - xadiff
- La commande
xadiff
compare les changements d'attributs étendus d'un fichier ou d'un répertoire entre deux clichés.Pour plus d'informations, voir Section 13.3.3, « Comparez les changements avec la commandexadiff
».
13.3.1. Comparez les changements avec la commande status
status
affiche une liste de tous les fichiers et répertoires qui ont été créés, modifiés ou supprimés entre deux clichés.
# snapper -c config_file status first_snapshot_number..second_snapshot_number
list
pour déterminer le nombre de clichés, si nécessaire.
lvm_config
.
snapper -c lvm_config status 1..2 tp.... /lvm_mount/dir1 -..... /lvm_mount/dir1/file_a c.ug.. /lvm_mount/file2 +..... /lvm_mount/file3 ....x. /lvm_mount/file4 cp..xa /lvm_mount/file5
+..... /lvm_mount/file3 |||||| 123456
Sortie | Signification |
---|---|
. | Rien n'a changé. |
+ | Fichier créé. |
- | Fichier supprimé. |
c | Contenu modifié. |
t | Le type d'entrée de répertoire a été modifié. Ainsi, un ancien lien symbolique a été changé en fichier standard en conservant le même nom de fichier. |
Sortie | Signification |
---|---|
. | Aucune permission n'a été changée. |
p | Permissions modifiées. |
Sortie | Signification |
---|---|
. | Aucune appartenance utilisateur n'a été changée. |
u | L'appartenance utilisateur a été modifiée. |
Sortie | Signification |
---|---|
. | Aucune appartenance de groupe n'a été modifiée. |
g | L'appartenance de groupe a été modifiée. |
Sortie | Signification |
---|---|
. | Aucun attribut étendu n'a été modifié. |
x | Attributs étendus modifiés. |
Sortie | Signification |
---|---|
. | Aucun ACL n'a été modifié |
a | Les ACL modifiés |
13.3.2. Comparez les changements avec la commande diff
diff
affiche les modifications de tous les fichiers et répertoires entre deux clichés.
# snapper -c config_name diff first_snapshot_number..second_snapshot_number
list
pour déterminer le nombre de clichés, si nécessaire.
lvm_config
, exécutez :
# snapper -c lvm_config diff 1..2 --- /lvm_mount/.snapshots/13/snapshot/file4 19<...> +++ /lvm_mount/.snapshots/14/snapshot/file4 20<...> @@ -0,0 +1 @@ +words
file4
a été modifié par l'ajout de « words » dans le fichier.
13.3.3. Comparez les changements avec la commande xadiff
xadiff
compare les changements d'attributs étendus d'un fichier ou d'un répertoire entre deux clichés :
# snapper -c config_name xadiff first_snapshot_number..second_snapshot_number
list
pour déterminer le nombre de clichés, si nécessaire.
lvm_config
, exécutez :
# snapper -c lvm_config xadiff 1..2
13.4. Annuler les changements entre les clichés
undochange
sera utilisée sous le format suivant : snapper -c config_name undochange 1..2
avec 1 pour le premier cliché et 2 pour le second.
Important
undochange
ne renvoie pas un volume Snapper dans son état d'origine et ne produit aucune homogénéité parmi les données. Toute modification de fichier ayant lieu en dehors de la portée indiquée, par exemple après Cliché 2, demeurera inchangée après un retour en arrière, par exemple, vers l'état du Cliché 1. Ainsi, si undochange
est exécuté pour annuler la création d'un utilisateur, tous les fichiers appartenant à cet utilisateur demeureront inchangés.
undochange
.
undochange
dans un système de fichiers root, car vous risquez de ne pas aboutir à vos fins.
undochange
fonctionne :
Figure 13.1. Statut Snapper sur la durée
snapshot_1
a été créé, file_a
est créé, puis file_b
supprimé. Snapshot_2
est alors créé. après quoi file_a
est modifié et file_c
est créé. C'est actuellement l'état du système. Le système actuel possède une version modifiée de file_a
, aucun file_b
, et un nouveau fichier file_c
.
undochange
, Snapper crée une liste de fichiers modifiés entre le premier cliché listé et le second. Dans le diagramme, si la commande est snapper -c SnapperExample undochange 1..2
, Snapper crée une liste de fichiers modifiés (c'est à dire que, file_a
est créé ; file_b
est supprimé) et les applique au système actuel. Ainsi, le système actuel n'aura pas de fichier file_a
(qui reste à créer une fois que snapshot_1
a été créé), file_b
existera (copié à partir de snapshot_1
dans le système actuel), et file_c
existera, car sa création était en dehors de la durée spécifiée. Sachez que, si file_b
et file_c
entrent en conflit, cela indique que le système pourrait devenir corrompu.
snapper -c SnapperExample undochange 2..1
. Dans ce cas, le système de fichiers actuel remplacera la version modifiée du fichier file_a
par une copie de snapshot_1
, annulant ainsi les modifications qui ont eu lieu sur ce fichier une fois que snapshot_2
a été créé.
Utiliser les commandes mount et unmount pour annuler les changements
undochange
n'est pas toujours la meilleure façon d'annuler des modifications. Avec les commandes status
et diff
, vous pouvez prendre des décisions informées.
mount
active le cliché LVM Snapper respectif avant le montage. Les commandes mount
et unmount
peuvent être utiles si vous êtes, par exemple, interessé à monter des clichés et à en extraire une ancienne version manuellement. Les fichiers devront être annulés manuellement afin de pouvoir être copiés d'un cliché monté au système de fichiers actuel. Le système de fichiers actuel, cliché 0, est le système de fichiers live créé dans Procédure 13.1, « Créer un fichier de configuration Snapper ». Copier les fichiers dans la sous-arborescence du point de montage d'origine.
mount
et unmount
peuvent être utilisées pour les requêtes explicites côté client. Le fichier /etc/snapper/configs/config_name
contient les variables ALLOW_USERS= and ALLOW_GROUPS= qui permettent d'ajouter des utilisateurs et des groupes. Puis, snapperd
vous permet d'effectuer les opérations de montage pour les utilisateurs et les groupes ajoutés. Les commandes mount
et unmount
ne sont utiles que si vous souhaitez monter des clichés et naviguer leur contenu indépendemment du flux de travail de Snapper.
13.5. Suppression d’un instantané
~]# snapper -c config_name delete snapshot_number
list
.
Chapitre 14. Espace swap
Tableau 14.1. Espace swap recommandé
Quantité de RAM du système | Espace swap recommandé | Espace swap recommandé si l'hibernation est autorisée |
---|---|---|
⩽ 2 Go | 2 fois la quantité de RAM | 3 fois la quantité de RAM |
> 2 Go – 8 Go | Égal à la quantité de RAM | 2 fois la quantité de RAM |
> 8 Go – 64 Go | Au moins 4 Go | 1,5 fois la quantité de RAM |
> 64 Go | Au moins 4 Go | L'hibernation n'est pas recommandée |
Important
free
et cat /proc/swaps
pour vérifier combien d'espace swap est en cours d'utilisation et où il se trouve.
rescue
; voir Booting Your Computer in the Rescue Mode du Red Hat Enterprise Linux 7 Installation Guide. Lorsqu'il vous sera demandé de monter le système de fichiers, sélectionnez Ignorer.
14.1. Ajouter de l'espace swap
14.1.1. Étendre Swap dans un Volume logique LVM2
/dev/VolGroup00/LogVol01
est le volume que vous souhaitez augmenter de 2 Go) :
Procédure 14.1. Étendre Swap dans un Volume logique LVM2
- Désactiver le swapping pour le volume logique associé :
# swapoff -v /dev/VolGroup00/LogVol01
- Modifiez la taille du volume logique LVM2 de 2 Go supplémentaires :
# lvresize /dev/VolGroup00/LogVol01 -L +2G
- Formater le nouvel espace swap :
# mkswap /dev/VolGroup00/LogVol01
- Activer le volume logique étendu :
# swapon -v /dev/VolGroup00/LogVol01
cat /proc/swaps
ou free
pour inspecter l'espace swap.
14.1.2. Création d'un volume logique LVM2 avec Swap
/dev/VolGroup00/LogVol02
est le volume swap que vous souhaitez ajouter) :
- Créer le volume logique LVM2 avec une taille de 2 Go :
#
lvcreate VolGroup00 -n LogVol02 -L 2G
- Formater le nouvel espace swap :
#
mkswap /dev/VolGroup00/LogVol02
- Ajouter l'entrée suivante au fichier
/etc/fstab
:#
/dev/VolGroup00/LogVol02 swap swap defaults 0 0
- Activer le volume logique étendu :
#
swapon -v /dev/VolGroup00/LogVol02
cat /proc/swaps
ou free
pour inspecter l'espace swap.
14.1.3. Création d'un fichier Swap
Procédure 14.2. Ajouter un fichier swap
- Déterminer la taille du nouveau fichier swap en mégaoctets et multipliez-la par 1024 pour déterminer le nombre de blocs. Ainsi, la taille de bloc d'un fichier swap de 64 Mo est 65536.
- Dans un terminal, saisir la commande suivante avec
count
correspondant à la taille de bloc souhaitée :#
dd if=/dev/zero of=/swapfile bs=1024 count=65536
- Définir le fichier swap par la commande :
#
mkswap /swapfile
- Modifier la sécurité du swapfile de façon à ce qu'il soit accessible à la lecture par tout le monde.
#
chmod 0600 /swapfile
- Pour activer le fichier swap immédiatement, mais pas automatiquement au démarrage :
#
swapon /swapfile
- Pour l'activer au démarrage, modifier le fichier
/etc/fstab
pour y inclure l'entrée suivante :/swapfile swap swap defaults 0 0
Le nouveau fichier swap sera activé lors du prochain démarrage du système.
cat /proc/swaps
ou free
pour inspecter l'espace swap.
14.2. Supprimer de l'espace swap
14.2.1. Réduire un Swap dans un Volume logique LVM2
/dev/VolGroup00/LogVol01
soit le volume swap que vous souhaitez réduire) :
Procédure 14.3. Réduire un volume logique LVM2 swap
- Désactiver le swapping pour le volume logique associé :
#
swapoff -v /dev/VolGroup00/LogVol01
- Réduire la taille du volume logique LVM2 de 512 Mo :
#
lvreduce /dev/VolGroup00/LogVol01 -L -512M
- Formater le nouvel espace swap :
#
mkswap /dev/VolGroup00/LogVol01
- Activer le volume logique étendu :
#
swapon -v /dev/VolGroup00/LogVol01
cat /proc/swaps
ou free
pour inspecter l'espace swap.
14.2.2. Supprimer un volume logique LVM2 avec Swap
/dev/VolGroup00/LogVol02
soit le volume swap que vous souhaitez supprimer) :
Procédure 14.4. Comment supprimer un volume swap :
- Désactiver le swapping pour le volume logique associé :
#
swapoff -v /dev/VolGroup00/LogVol02
- Supprimer le volume logique LVM2 d'une taille de 512 Mo :
#
lvremove /dev/VolGroup00/LogVol02
- Supprimer l'entrée suivante du fichier
/etc/fstab
:/dev/VolGroup00/LogVol02 swap swap defaults 0 0
cat /proc/swaps
ou free
pour inspecter l'espace swap.
14.2.3. Supprimer un fichier swap
Procédure 14.5. Supprimer un fichier swap
- À l'invite de commande, exécutez la commande suivante pour désactiver le fichier suivant (si
/swapfile
est le fichier swap) :#
swapoff -v /swapfile
- Supprimer son entrée du fichier
/etc/fstab
: - Supprimer le fichier :
#
rm /swapfile
Chapitre 15. System Storage Managerm(SSM)
15.1. SSM Backends
ssmlib/main.py
compatible avec les abstractions de volume, périphérique, et pool, tout en ignorant les spécificités de la technologie sous-jacente. Les backends peuvent être enregistrées dans ssmlib/main.py
pour gérer des méthodes de technologie de stockage spécifiques comme create
, snapshot
, ou bien, pour supprimer remove
les volumes et les pools.
15.1.1. BTRFS Backend
15.1.1.1. BTRFS Pool
btrfs_pool
.
btrfs_device_base_name
.
15.1.1.2. BTRFS Volume
/dev/lvm_pool/lvol001
. Chaque objet de ce chemin doit sortir pour que le volume soit créé. Les volumes peuvent également être référéncés par leur point de montage.
15.1.1.3. BTRFS Snapshot
15.1.1.4. Périphérique BTRFS
15.1.2. LVM Backend
15.1.2.1. LVM Pool
lvm_pool
.
15.1.2.2. LVM Volume
15.1.2.3. LVM Snapshot
cliché
est créé, qui pourra être manipulé comme tout autre volume LVM. À la différence de BTRFS, LVM est capable de distinguer les clichés des autres volumes habituels, donc vous n'avez pas besoin d'un nom de cliché qui cooresponde à un modèle particulier.
15.1.2.4. Périphérique LVM
15.1.3. Crypt
cryptsetup
et dm-crypt target
pour gérer les volumes encodés. Les backends de cryptage peuvent être utilisés comme backend standards pour créer des volumes encodés sur les périphériques encodés (ou sur d'autres volumes comme les volumes LVM ou MD), ou pour créer des volumes LVM encodés en une seule étape.
15.1.3.1. Crypt Volume
dm-crypt
et représentent les données qui se trouvent dans le périphérique encodé d'origine sous une forme non encodée. Ne supporte aucune concatenation de périphérique ou RAID.
man cryptsetup
.
15.1.3.2. Cliché Crypt
cryptsetup
.
15.1.4. Multiple Devices (MD)
15.2. Tâches SSM courantes
15.2.1. Installation du Gestionnaire de stockage de système (SSM)
# yum install system-storage-manager
- Le backend LVM requiert le package
lvm2
. - Le BTRFS requiert le package
btrfs-progs
. - Le backend de cryptage requiert les packages
device-mapper
etcryptsetup
.
15.2.2. Afficher les informations sur tous les périphériques détectés
list
. Exécuter la commande ssm list
sans options affichera ce qui suit :
~]# ssm list ---------------------------------------------------------- Device Free Used Total Pool Mount point ---------------------------------------------------------- /dev/sda 2.00 GB PARTITIONED /dev/sda1 47.83 MB /test /dev/vda 15.00 GB PARTITIONED /dev/vda1 500.00 MB /boot /dev/vda2 0.00 KB 14.51 GB 14.51 GB rhel ---------------------------------------------------------- ------------------------------------------------ Pool Type Devices Free Used Total ------------------------------------------------ rhel lvm 1 0.00 KB 14.51 GB 14.51 GB ------------------------------------------------ --------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point --------------------------------------------------------------------------------- /dev/rhel/root rhel 13.53 GB xfs 13.52 GB 9.64 GB linear / /dev/rhel/swap rhel 1000.00 MB linear /dev/sda1 47.83 MB xfs 44.50 MB 44.41 MB part /test /dev/vda1 500.00 MB xfs 496.67 MB 403.56 MB part /boot ------------------------------------------------------------------------t ---------
ssm list --help
.
Note
- Exécuter l'argument
devices
oudev
va ommettre certains périphériques. Les CDRom et DM/MD, par exemple, sont cachés intentionnellement car ils sont listés en tant que volumes. - Certains backends ne supportent pas les clichés et ne peut pas faire la distinction entre un cliché et un volume standard. Exécuter l'argument
snapshot
sur un de ces backends aménera SSM à tenter de reconnaître le nom de volume afin d’identifier un cliché. Si l’expression régulière de la SSM ne correspond pas au modèle du cliché, la capture du cliché ne sera pas reconnue. - À l'exception du volume BTRFS principal (le système de fichiers lui-même), les volumes BTRFS non montés n'apparaîtront pas.
15.2.3. Créer un nouveau pool, volume logique ou système de fichiers
/dev/vdb
et /dev/vdc
, un volume logique de 1G, et un système de fichiers XFS.
ssm create --fs xfs -s 1G /dev/vdb /dev/vdc
. Les options suivantes sont utilisées :
- L'option
--fs
indique le type de système de fichiers requis. Les types de systèmes de fichiers actuellement pris en charge sont les suivants :- ext3
- ext4
- xfs
- btrfs
- L'argument
-s
indique la taille du volume logique. Les suffixes suivants sont pris en charge pour définir les unités suivantes :K
ork
pour kilooctetsM
oum
pour megaoctetsG
oug
pour gigaoctetsT
out
pour teraoctetsP
oup
pour petaoctetsE
oue
pour exaoctets
- Les deux périphériques listés,
/dev/vdb
et/dev/vdc
, sont les deux périphériques que je souhaite créer.
~]# ssm create --fs xfs -s 1G /dev/vdb /dev/vdc Physical volume "/dev/vdb" successfully created Physical volume "/dev/vdc" successfully created Volume group "lvm_pool" successfully created Logical volume "lvol001" created
ssm command
pouvant s’avérer utiles. La première est la -p pool
. Cela spécifie le pool, sur lequel le volume doit être créé. Si elle n’existe pas encore, SSM le créera. Cela a été omis dans l’exemple ci-dessus, ce qui a causé SSM à utiliser le nom par défaut lvm_pool
. Toutefois, pour utiliser un nom spécifique qui puisse s’adapter à toute les conventions de nommage, l'option -p
doit être utilisée.
-n name
. Elle permet de nommer le volume logique nouvellement créé. Tout comme avec -p
, elle est utile pour utiliser un nom spécifique qui devra convenir pour toutes les conventions de nommage existantes.
~]# ssm create --fs xfs -p new_pool -n XFS_Volume /dev/vdd Volume group "new_pool" successfully created Logical volume "XFS_Volume" created
15.2.4. Vérifier l'homogénéité du système de fichiers
ssm check
vérifie la consistence du système de fichiers sur le volume. Il est possible de spécifier plusieurs volumes à vérifier. S'il n'y a aucun système de fichiers sur le volume, alors on pourra éviter ce volume.
lvol001
, exécuter la commande ssm check /dev/lvm_pool/lvol001
.
~]# ssm check /dev/lvm_pool/lvol001 Checking xfs file system on '/dev/mapper/lvm_pool-lvol001'. Phase 1 - find and verify superblock... Phase 2 - using internal log - scan filesystem freespace and inode maps... - found root inode chunk Phase 3 - for each AG... - scan (but don't clear) agi unlinked lists... - process known inodes and perform inode discovery... - agno = 0 - agno = 1 - agno = 2 - agno = 3 - agno = 4 - agno = 5 - agno = 6 - process newly discovered inodes... Phase 4 - check for duplicate blocks... - setting up duplicate extent list... - check for inodes claiming duplicate blocks... - agno = 0 - agno = 1 - agno = 2 - agno = 3 - agno = 4 - agno = 5 - agno = 6 No modify flag set, skipping phase 5 Phase 6 - check inode connectivity... - traversing filesystem ... - traversal finished ... - moving disconnected inodes to lost+found ... Phase 7 - verify link counts... No modify flag set, skipping filesystem flush and exiting.
15.2.5. Augmenter une taille de volume
ssm resize
change la taille du volume et du système de fichiers spécifiés. S'il n'y a pas de système de fichiers, alors seule la taille du volume sera ajustée.
/dev/vdb
de 900Mo nommé lvol001
.
~]# ssm list ----------------------------------------------------------------- Device Free Used Total Pool Mount point ----------------------------------------------------------------- /dev/vda 15.00 GB PARTITIONED /dev/vda1 500.00 MB /boot /dev/vda2 0.00 KB 14.51 GB 14.51 GB rhel /dev/vdb 120.00 MB 900.00 MB 1.00 GB lvm_pool /dev/vdc 1.00 GB ----------------------------------------------------------------- --------------------------------------------------------- Pool Type Devices Free Used Total --------------------------------------------------------- lvm_pool lvm 1 120.00 MB 900.00 MB 1020.00 MB rhel lvm 1 0.00 KB 14.51 GB 14.51 GB --------------------------------------------------------- -------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point -------------------------------------------------------------------------------------------- /dev/rhel/root rhel 13.53 GB xfs 13.52 GB 9.64 GB linear / /dev/rhel/swap rhel 1000.00 MB linear /dev/lvm_pool/lvol001 lvm_pool 900.00 MB xfs 896.67 MB 896.54 MB linear /dev/vda1 500.00 MB xfs 496.67 MB 403.56 MB part /boot --------------------------------------------------------------------------------------------
~]# ssm resize -s +500M /dev/lvm_pool/lvol001 /dev/vdc Physical volume "/dev/vdc" successfully created Volume group "lvm_pool" successfully extended Phase 1 - find and verify superblock... Phase 2 - using internal log - scan filesystem freespace and inode maps... - found root inode chunk Phase 3 - for each AG... - scan (but don't clear) agi unlinked lists... - process known inodes and perform inode discovery... - agno = 0 - agno = 1 - agno = 2 - agno = 3 - process newly discovered inodes... Phase 4 - check for duplicate blocks... - setting up duplicate extent list... - check for inodes claiming duplicate blocks... - agno = 0 - agno = 1 - agno = 2 - agno = 3 No modify flag set, skipping phase 5 Phase 6 - check inode connectivity... - traversing filesystem ... - traversal finished ... - moving disconnected inodes to lost+found ... Phase 7 - verify link counts... No modify flag set, skipping filesystem flush and exiting. Extending logical volume lvol001 to 1.37 GiB Logical volume lvol001 successfully resized meta-data=/dev/mapper/lvm_pool-lvol001 isize=256 agcount=4, agsize=57600 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 data = bsize=4096 blocks=230400, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal bsize=4096 blocks=853, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 230400 to 358400
ssm list
.
~]# ssm list ------------------------------------------------------------------ Device Free Used Total Pool Mount point ------------------------------------------------------------------ /dev/vda 15.00 GB PARTITIONED /dev/vda1 500.00 MB /boot /dev/vda2 0.00 KB 14.51 GB 14.51 GB rhel /dev/vdb 0.00 KB 1020.00 MB 1.00 GB lvm_pool /dev/vdc 640.00 MB 380.00 MB 1.00 GB lvm_pool ------------------------------------------------------------------ ------------------------------------------------------ Pool Type Devices Free Used Total ------------------------------------------------------ lvm_pool lvm 2 640.00 MB 1.37 GB 1.99 GB rhel lvm 1 0.00 KB 14.51 GB 14.51 GB ------------------------------------------------------ ---------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point ---------------------------------------------------------------------------------------------- /dev/rhel/root rhel 13.53 GB xfs 13.52 GB 9.64 GB linear / /dev/rhel/swap rhel 1000.00 MB linear /dev/lvm_pool/lvol001 lvm_pool 1.37 GB xfs 1.36 GB 1.36 GB linear /dev/vda1 500.00 MB xfs 496.67 MB 403.56 MB part /boot ----------------------------------------------------------------------------------------------
Note
-
au lieu de +
. Ainsi, pour augmenter la taille d'un volume LVM de 50M, la commande sera :
~]# ssm resize -s-50M /dev/lvm_pool/lvol002 Rounding size to boundary between physical extents: 972.00 MiB WARNING: Reducing active logical volume to 972.00 MiB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce lvol002? [y/n]: y Reducing logical volume lvol002 to 972.00 MiB Logical volume lvol002 successfully resized
+
ou -
, la valeur sera considérée comme une valeur absolue.
15.2.6. Cliché
ssm snapshot
.
Note
lvol001
, exécuter la commande suivante :
~]# ssm snapshot /dev/lvm_pool/lvol001 Logical volume "snap20150519T130900" created
ssm list
, et noter la section de cliché supplémentaire.
~]# ssm list ---------------------------------------------------------------- Device Free Used Total Pool Mount point ---------------------------------------------------------------- /dev/vda 15.00 GB PARTITIONED /dev/vda1 500.00 MB /boot /dev/vda2 0.00 KB 14.51 GB 14.51 GB rhel /dev/vdb 0.00 KB 1020.00 MB 1.00 GB lvm_pool /dev/vdc 1.00 GB ---------------------------------------------------------------- -------------------------------------------------------- Pool Type Devices Free Used Total -------------------------------------------------------- lvm_pool lvm 1 0.00 KB 1020.00 MB 1020.00 MB rhel lvm 1 0.00 KB 14.51 GB 14.51 GB -------------------------------------------------------- ---------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point ---------------------------------------------------------------------------------------------- /dev/rhel/root rhel 13.53 GB xfs 13.52 GB 9.64 GB linear / /dev/rhel/swap rhel 1000.00 MB linear /dev/lvm_pool/lvol001 lvm_pool 900.00 MB xfs 896.67 MB 896.54 MB linear /dev/vda1 500.00 MB xfs 496.67 MB 403.56 MB part /boot ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- Snapshot Origin Pool Volume size Size Type ---------------------------------------------------------------------------------- /dev/lvm_pool/snap20150519T130900 lvol001 lvm_pool 120.00 MB 0.00 KB linear ----------------------------------------------------------------------------------
15.2.7. Enlever un élément
ssm remove
est utilisée pour supprimer un élément, comme un périphérique, un pool ou un volume.
Note
-f
.
-f
.
lvm_pool
et tout ce qui se trouve à l'intérieur, exécuter la commande suivante :
~]# ssm remove lvm_pool Do you really want to remove volume group "lvm_pool" containing 2 logical volumes? [y/n]: y Do you really want to remove active logical volume snap20150519T130900? [y/n]: y Logical volume "snap20150519T130900" successfully removed Do you really want to remove active logical volume lvol001? [y/n]: y Logical volume "lvol001" successfully removed Volume group "lvm_pool" successfully removed
15.3. Ressources SSM
- La page
man ssm
fournit de bonnes descriptions et de bons exemples, ainsi que de nombreux détails sur toutes les commandes et options qui sont trop spécifiques pour pouvoir être documentés ici. - La documentation locale de SSM se trouve dans le répertoire
doc/
. - Le wiki SSM est accessible à partir de cette adresse http://storagemanager.sourceforge.net/index.html.
- On peut s'abonner à la liste de diffusion à cet endroit https://lists.sourceforge.net/lists/listinfo/storagemanager-devel et aux archives des listes de diffusion à cet endroit http://sourceforge.net/mailarchive/forum.php?forum_name=storagemanager-devel. La liste de diffusion est l'endroit où les développeurs communiquent entre eux. Il n'y a actuellement aucune liste de diffusion utilisateur, donc sentez-vous libre de poser des questions également.
Chapitre 16. Quotas de disques
quota
doit être installé pour implémenter les quotas de disques.
Note
16.1. Configurer les quotas de disques
- Activez les quotas par système de fichiers en modifiant le fichier
/etc/fstab
. - Remontez le(s) système(s) de fichiers.
- Créez les fichiers de la base de données des quotas et générez le tableau d'utilisation du disque.
- Assignez les politiques des quotas.
16.1.1. Activer les quotas
/etc/fstab
.
Exemple 16.1. Modifiez /etc/fstab
vim
, veuillez saisir :
# vim /etc/fstab
usrquota
ou grpquota
aux systèmes de fichiers qui requièrent des quotas :
Exemple 16.2. Ajoutez les quotas
/dev/VolGroup00/LogVol00 / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0 /dev/VolGroup00/LogVol02 /home ext3 defaults,usrquota,grpquota 1 2 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 . . .
/home
possède des quotas utilisateurs et groupes activés.
Note
/home
ait été créée pendant l'installation de Red Hat Enterprise Linux. La partition root (/
) peut être utilisée pour définir les politiques de quotas dans le fichier /etc/fstab
.
16.1.2. Remonter les systèmes de fichiers
usrquota
ou grpquota
, veuillez remonter chaque système de fichier dont l'entrée fstab
a été modifiée. Si le système de fichiers n'est pas en cours d'utilisation par un processus, veuillez utiliser l'une des méthodes suivantes :
- Saisissez la commande
umount
suivie de la commandemount
afin de remonter le système de fichiers. Veuillez consulter la pageman
pourumount
etmount
afin de connaître la syntaxe particulière pour monter et démonter divers types de systèmes de fichiers. - Saisissez la commande
mount -o remount file-system
(oùfile-system
est le nom du système de fichiers) afin de remonter le système de fichiers. Par exemple, pour remonter le système de fichiers/home
, veuillez utiliser la commandemount -o remount /home
.
16.1.3. Créer les fichiers de base de données de quotas
quotacheck
.
quotacheck
examine les systèmes de fichier dont les quotas sont activés et crée un tableau de l'utilisation actuelle du disque par système de fichiers. Le tableau est ensuite utilisé pour mettre à jour la copie de l'utilisation du disque du système d'exploitation. En outre, les fichiers de quotas du système de fichiers sont aussi mis à jour.
Note
quotacheck
n'a aucun effet sur XFS car le tableau d'utilisation de disque est complété automatiquement au moment du montage. Voir la page man de xfs_quota(8)
pour plus d'informations.
aquota.user
et aquota.group
) sur le système de fichiers, veuillez utiliser l'option -c
de la commande quotacheck
.
Exemple 16.3. Créer des fichiers de quotas
/home
, veuillez créer les fichiers dans le répertoire /home
:
# quotacheck -cug /home
-c
indique que des fichiers de quotas doivent être créés pour chaque système de fichiers sur lequel les quotas sont activés, l'option -u
indique que les quotas d'utilisateurs seront vérifiés, et l'option -g
indique que les quotas de groupes seront vérifiés.
-u
ou -g
ne sont pas spécifiées, seul le fichier du quota d'utilisateurs sera créé. Si seule l'option -g
est spécifiée, seul le fichier du quota de groupes sera créé.
# quotacheck -avug
- a
- Vérifie tous les systèmes de fichiers montés localement avec quotas activés
- v
- Affiche les informations détaillées pendant la progression de la vérification du quota
- u
- Vérifie les informations du quota de disques de l'utilisateur
- g
- Vérifie les informations du quota de disques de groupe
quotacheck
a terminé son exécution, les fichiers de quotas correspondants aux quotas activés (d'utilisateurs ou de groupes) sont remplis avec des données pour chaque système de fichiers monté localement avec quotas activés, tel que /home
.
16.1.4. Allouer les quotas par utilisateur
edquota
.
# edquota username
/etc/fstab
pour la partition /home
(/dev/VolGroup00/LogVol02
dans l'exemple ci-dessous) et que la commande edquota testuser
est exécutée, vous verrez ce qui suit dans l'éditeur configuré par défaut dans le système :
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 0 0 37418 0 0
Note
EDITOR
est utilisé par edquota
. Pour changer l'éditeur, définir la variable d'environnement EDITOR
dans votre fichier ~/.bash_profile
vers le chemin d'accès de l'éditeur de votre choix.
inodes
affiche le nombre d'inodes actuellement en cours d'utilisation par l'utilisateur. Les deux dernières colonnes sont utilisées pour définir les limites d'inode « soft » et « hard » pour l'utilisateur sur le système de fichiers.
Exemple 16.4. Modifier les limites souhaitées
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 500000 550000 37418 0 0
# quota username Disk quotas for user username (uid 501): Filesystem blocks quota limit grace files quota limit grace /dev/sdb 1000* 1000 1000 0 0 0
16.1.5. Assigner les quotas par groupe
devel
(le groupe doit exister avant de définir le quota du groupe), veuillez utiliser la commande :
# edquota -g devel
Disk quotas for group devel (gid 505): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440400 0 0 37418 0 0
# quota -g devel
16.1.6. Définir la période de grâce pour les limites soft
# edquota -t
Important
edquota
opèrent sur les quotas d'un utilisateur ou d'un groupe particulier, l'option -t
opère sur tous les systèmes de fichiers dont les quotas sont activés.
16.2. Gérer les quotas de disque
16.2.1. Activation et désactivation
# quotaoff -vaug
-u
ou -g
ne sont pas spécifiées, seuls les quotas d'utilisateur seront désactivés. Si seule l'option -g
est spécifiée, seuls les quotas de groupe seront désactivés. L'interrupteur -v
provoque l'affichage des informations verbeuses du statut lorsque la commande est exécutée.
quotaon
avec les mêmes options.
# quotaon -vaug
/home
, veuillez utiliser la commande suivante :
# quotaon -vug /home
-u
ou -g
ne sont pas spécifiées, seuls les quotas d'utilisateur seront activés. Si seule l'option -g
est spécifiée, seuls les quotas de groupe seront activés.
Note
quotaon
n'est pas toujours requise sur XFS car elle est exécutée automatiquement au moment du montage. Voir la page man de xfs_quota(8)
pour plus d'informations.
16.2.2. Rapports sur les quotas de disques
repquota
.
Exemple 16.5. Sortie de la commande repquota
repquota /home
produit la sortie suivante :
*** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 36 0 0 4 0 0 kristin -- 540 0 0 125 0 0 testuser -- 440400 500000 550000 37418 0 0
-a
), utiliser la commande suivante :
# repquota -a
--
qui sont affichés après chaque utilisateur servent à déterminer si les limites du bloc ou de l'inode ont été dépassées. Si la limite soft est dépassée, le caractère +
apparaîtra à la place du caractère -
correspondant ; le premier caractère -
représente la limite du bloc, et le second représente la limite de l'inode.
grace
sont normalement vides. Si une limite soft a été dépassée, la colonne affichera le temps correspondant au délai restant de la période de grâce. Si la période de grâce a été dépassée, la chaîne none
(aucun) s'affichera à sa place.
16.2.3. Contrôler l'exactitude des quotas
quotacheck
. Cependant, quotacheck
peut être exécuté de manière régulière, même si le système n'est pas tombé en panne. Les méthodes sûres pour exécuter quotacheck
périodiquement incluent :
- L'assurance que quotacheck sera exécuté lors du prochain redémarrage
Note
Cette méthode fonctionne mieux pour les systèmes multi-utilisateur (occupés) qui sont redémarrés périodiquement.En tant qu'utilisateur root, veuillez placer un script shell dans le répertoire/etc/cron.daily/
ou/etc/cron.weekly/
qui contient la commandetouch /forcequotacheck
— ou planifiez-en un à l'aide de la commandecrontab -e
. Ceci crée un fichierforcequotacheck
vide dans le répertoire root, que le script init du sytème cherchera lors du démarrage. Si celui-ci est trouvé, le script init exécuteraquotacheck
. Puis le script init supprimera le fichier/forcequotacheck
; ainsi, la planification de la création périodique de ce fichier aveccron
assure quequotacheck
soit effectivement exécuté lors du prochain redémarrage.Pour obtenir davantage d'informations surcron
, veuillez consulterman cron
.- Exécuter quotacheck en mode mono-utilisateur
- Une manière alternative d'exécuter
quotacheck
en toute sécurité consiste à démarrer le système en mode mono-utilisateur, ce qui empêche toute possibilité de corruption de données dans les fichiers de quota, puis d'exécuter les commandes suivantes :#
quotaoff -vug /file_system
#
quotacheck -vug /file_system
#
quotaon -vug /file_system
- Exécuter quotacheck sur un système en cours d'exécution
- Si nécessaire, il est possible d'exécuter
quotacheck
sur un ordinateur à un moment où aucun utilisateur n'est connecté, ainsi il n'y aura aucun fichier ouvert sur le système en cours de vérification. Exécutez la commandequotacheck -vug file_system
; cette commande échouera siquotacheck
ne peut pas monter à nouveau le système de fichiers donné file_system en lecture seule. Remarquez qu'après la vérification, le système de fichiers sera remonté en lecture-écriture.Avertissement
Exécuterquotacheck
sur un système de fichiers en cours d'exécution monté en lecture-écriture n'est pas recommandé à cause de la possibilité de corruption de fichier(s) de quota.
man cron
pour obtenir davantage d'informations sur la configuration de cron
.
Chapitre 17. Réseau redondant de disques indépendants (RAID, de l'anglais « Redundant Array of Independent Disks »)
- Amélioration de la vitesse
- Augmentation des capacités de stockage à l'aide d'un seul disque virtuel
- Perte de données due aux échecs de disque minimisée
17.1. Types RAID
RAID microprogramme
Matériel RAID
RAID logiciel
- Conception multi-threads
- Portabilité des matrices entre ordinateurs Linux sans reconstruction
- Reconstruction de matrices en arrière-plan à l'aide des ressources système inactives
- Prise en charge des disques enfichables à chaud
- Détection de CPU automatique pour tirer profit de certaines fonctionnalités, comme la prise en charge du streaming SIMD
- Correction automatique des mauvais secteurs sur les disques d'une matrice
- Vérifications régulières de la consistance des données RAID afin de s'assurer de la bonne santé de la matrice
- Surveillance pro-active des matrices avec des alertes par courrier électronique envoyées sur une adresse désignée lors d'événements importants
- Les « write-intent bitmap », qui augmentent dramatiquement la vitesse des événements de resynchronisation en permettant au noyau de savoir précisément quelles portions d'un disque doivent être resynchronisées au lieu de devoir resynchroniser la matrice toute entière
- Resynchronisez les points de contrôle. Ainsi, si vous redémarrez votre ordinateur pendant une resynchronisation, pendant le démarrage, la resynchronisation reprendra à l'emplacement où elle s'était arrêtée et ne devra pas recommencer depuis le début.
- La capacité à changer les paramètres de la matrice après l'installation. Par exemple, vous pouvez agrandir une matrice RAID5 à 4 disques en matrice RAID5 à 5 disques lorsque vous avez un nouveau disque à ajouter. Cette opération d'agrandissement se fait à chaud et ne requiert pas de réinstallation sur la nouvelle matrice.
17.2. Niveaux RAID et prise en charge linéaire
- Niveau 0
- RAID niveau 0, souvent appelé « entrelacement », est une technique de mappage de données entrelacées orientée performances. Cela signifie que les données écrites sur la matrice sont divisées en bandes et écrites sur les disques membres de la matrice, permettant ainsi de hautes performances d'E/S pour un moindre coût, mais cela ne fournit pas de redondance.De nombreuses implémentations RAID niveau 0 entrelaceront uniquement les données à travers les périphériques membres d'une taille égale à ou inférieure à la taille du plus petit périphérique de la matrice. Cela signifie que si vous possédez plusieurs périphériques de tailles légèrement différentes, chaque périphérique sera traité comme s'il était égal au plus petit disque. Ainsi, la capacité de stockage courante d'une matrice de niveau 0 est égale au plus petit disque dans la matrice RAID matériel, ou à la capacité de la plus petite partition membre dans une matrice RAID logiciel multipliée par le nombre de disques ou partitions dans la matrice.
- Niveau 1
- RAID niveau 1, ou la « mise en miroir », a été utilisé depuis plus longtemps que toute autre forme de RAID. Le niveau 1 fournit de la redondance en écrivant des données identiques sur chaque disque membre de la matrice, laissant un copie « miroir » sur chaque disque. La mise en miroir est populaire du fait de sa simplicité et du haut niveau de disponibilité de données offert. Le niveau 1 fonctionne avec deux disques ou plus et offre une très bonne fiabilité de donnés et améliore les performances des applications à lecture intensive, mais à coût relativement élevé. [3]La capacité de stockage d'une matrice de niveau 1 est égale à la capacité du disque dur miroir le plus petit dans une matrice RAID matériel ou à la partition miroir la plus petite dans une matrice RAID logiciel. La redondance du niveau 1 est la plus élevée possible parmi les différents types RAID, la matrice étant capable de fonctionner avec un seul disque présent.
- Niveau 4
- Le niveau 4 utilise une parité [4] concentrée sur un seul disque pour protéger les données. Comme le disque de parité dédié représente un goulot d'étranglement inhérent à toutes les transactions d'écriture sur la matrice RAID, le niveau 4 est rarement utilisé sans technologie d'accompagnement telle que le cache en écriture différée, ou dans des circonstances particulières, où l'administrateur système conçoit le périphérique RAID logiciel avec ce goulot d'étranglement en tête (par exemple, avec une matrice qui aurait peu ou pas de transactions d'écriture une fois remplie de données). RAID niveau 4 est si rarement utilisé qu'il n'est pas disponible en tant qu'option dans Anaconda. Cependant, il peut être créé manuellement par l'utilisateur si réellement nécessaire.La capacité de stockage RAID matériel niveau 4 est égale à la capacité de la partition membre la plus petite, multiplié par le nombre de partitions moins un. Les performances d'une matrice RAID niveau 4 seront toujours asymétriques, ce qui signifie que les lectures seront plus performantes que les écritures. Ceci est dû au fait que les écritures consomment davantage de ressources du CPU et de bande passante de la mémoire lors de la génération de parité, qui consomme également davantage de bande passante du bus lors de l'écriture des données sur disque car vous n'écrivez pas seulement les données, mais aussi la parité. Les lectures ne font que lire les données et non la parité, à moins que la matrice ne se trouve dans un état dégradé. Par conséquent, les lectures génèrent moins de trafic sur les disques et à travers les bus de l'ordinateur pour une même quantité de données transférée que sous des conditions normales.
- Niveau 5
- Type RAID le plus commun. En distribuant la parité à travers tous les disques membres d'une matrice, RAID niveau 5 élimine le goulot d'étranglement des écritures, qui est inhérent au niveau 4. Le seul goulot d'étranglement des performances est le processus de calcul de parité en soi-même. Avec les CPU modernes et RAID logiciel, il n'y a habituellement pas de goulot d'étranglement, car tous les CPU modernes peuvent générer une parité très rapidement. Cependant, si vous possédez suffisamment de périphériques membres dans une matrice RAID5 logiciel, permettant ainsi une grande vitesse de transfert de données agrégées à travers tous les périphériques, alors ce goulot d'étranglement peut se révéler problématique.Comme avec le niveau 4, le niveau 5 offre des performances asymétriques, avec des lectures considérablement plus performantes que les écritures. La capacité de stockage RAID niveau 5 est calculée de la même manière qu'avec le niveau 4.
- Niveau 6
- Ce niveau RAID commun, sur lequel la redondance et la préservation des données, et non les performances forment le but principal, considère l'inefficacité en termes d'espace du niveau 1 inacceptable. Le niveau 6 utilise un schéma de parité complexe afin d'être en mesure de récupérer après la perte de deux disques de la matrice. Ce schéma de parité complexe crée un fardeau pour le CPU bien plus important sur les périphériques RAID logiciel, mais aussi pendant les transactions d'écriture. Ainsi, le niveau 6 est considérablement plus asymétrique quant aux performances que les niveaux 4 et 5.La capacité totale d'une matrice RAID niveau 6 est calculée de manière similaire à celles des matrices RAID niveaux 4 et 5, à l'exception que vous devrez soustraire 2 périphériques (au lieu d'un seul) du compte des périphériques pour l'espace de stockage supplémentaire de la parité.
- Niveau 10
- Ce niveau RAID tente de combiner les avantages de performance du niveau 0 avec la redondance du niveau 1. Il aide également à alléger une certaine quantité de l'espace gaspillé dans les matrices niveau 1 contenant plus de deux périphériques. Avec le niveau 10, il est possible de créer une matrice à 3 disques configurée pour stocker uniquement 2 copies de chaque « morceau » de données, ce qui permettra ensuite à la taille de la matrice de faire 1,5 fois la taille du périphérique le plus petit, au lieu d'être égal à la taille de celui-ci (comme cela aurait été le cas avec une matrice niveau 1 à trois périphériques).Le nombre d'options disponible lors de la création de matrices de niveau 10 (ainsi que la complexité de la sélection des bonnes options pour un cas d'utilisation particulier) rend la création pendant une installation très peu pratique. Il est possible d'en créer une manuellement à l'aide de l'outil en ligne de commande
mdadm
. Pour obtenir davantage de détails sur les options et les compromis en termes de performance, veuillez consulterman md
. - RAID linéaire
- RAID linéaire est un simple regroupement de disques servant à créer un disque virtuel de plus grande taille. Avec une matrice RAID linéaire, les morceaux sont alloués de manière séquentielle, d'un disque au suivant, en allant au second disque qu'une fois que le premier disque aura été entièrement rempli. Ce regroupement ne fournit pas de bénéfices de performance, car il est très improbable que des opérations d'E/S soient divisées entre disques membres. RAID linéaire n'offre pas non plus de redondance, et réduit la fiabilité. — si un disque membre échoue, la matrice toute entière ne pourra pas être utilisée. La capacité est égale au total des disques membres.
17.3. Sous-systèmes RAID Linux
Pilotes de contrôleurs RAID matériel Linux
mdraid
mdraid
a été conçu comme solution RAID logiciel pour Linux ; celui-ci est également la solution préférée pour RAID logiciel sous Linux. Ce sous-système utilise son propre format de métadonnées, habituellement appelé « métadonnées mdraid
natives ».
mdraid
prend également en charge d'autre formats de métadonnées, appelées métadonnées externes. Red Hat Enterprise Linux 7 utilise mdraid
avec des métadonnées externes pour accéder aux ensembles ISW / IMSM (RAID microprogramme d'Intel). Les ensembles mdraid
sont configurés et contrôlés via l'utilitaire mdadm
.
dmraid
dmraid
fait référence au code du noyau mappeur de périphériques qui offre un mécanisme permettant d'assembler des disques pour former un ensemble RAID. Ce même code du noyau ne fournit aucun mécanisme de configuration RAID.
dmraid
est entièrement configuré dans l'espace utilisateur, ce qui rend la prise en charge des différents formats de métadonnées plus facile. Ainsi, dmraid
est utilisé sur un large éventail d'implémentations RAID microprogramme. dmraid
prend aussi en charge le RAID microprogramme d'Intel, malgré le fait que Red Hat Enterprise Linux 7 utilise mdraid
pour accéder aux ensembles RAID microprogramme d'Intel.
17.4. RAID Support in the Installer
mdraid
, et peut reconnaître les ensembles mdraid
existants.
initrd
quel(s) ensemble(s) RAID doivent être activés avant de chercher le système de fichiers root.
17.5. Convertir un disque root en RAID 1 après l'installation
- Copier le contenu de la partition boot de la PowerPC Reference Platform (PReP) à partir de
/dev/sda1
vers/dev/sdb1
:# dd if=/dev/sda1 of=/dev/sdb1
- Mettre à jour les indicateurs prep et boot sur la première partition sur les deux disques :
$ parted /dev/sda set 1 prep on $ parted /dev/sda set 1 boot on $ parted /dev/sdb set 1 prep on $ parted /dev/sdb set 1 boot on
grub2-install /dev/sda
ne fonctionne pas sur une machine PowerPC et retourne une erreur, mais le système démarre comme prévu.
17.6. Configuring RAID Sets
mdadm
mdadm
est utilisé pour gérer RAID logiciel sur Linux, c'est-à-dire mdraid
. Pour obtenir des informations sur les différents modes et options mdadm
, veuillez consulter man mdadm
. La page man
contient également des exemples utiles pour des opérations communes, comme la création, le contrôle, et l'assemblage de matrices RAID logiciel.
dmraid
dmraid
est utilisé pour gérer les ensembles RAID du mappeur de périphériques device-mapper. L'outil dmraid
trouve les périphériques ATARAID en utilisant plusieurs gestionnaires de format de métadonnées, chacun prenant en charge divers formats. Pour afficher une liste complète des formats pris en charge, veuillez exécuter dmraid -l
.
dmraid
ne peut pas configurer les ensembles RAID après leur création. Pour obtenir des informations supplémentaires sur l'utilisation de dmraid
, veuillez consulter man dmraid
.
17.7. Création de périphériques RAID avancée
/boot
ou de matrices du système de fichiers root sur un périphérique RAID complexe ; dans de tels cas, vous pourriez devoir utiliser des options de matrices qui ne sont pas prises en charge par Anaconda. Pour contourner ce problème, veuillez observer la procédure suivante :
Procédure 17.1. Création avancée de périphériques RAID
- Insérez le disque d'installation comme d'habitude.
- Pendant le démarrage initial, veuillez sélectionner le mode de secours (« Rescue Mode ») au lieu de l'installation (« Install ») ou de la mise à niveau (« Upgrade »). Lorsque le système est entièrement démarré en mode de secours (« Rescue mode »), un terminal de ligne de commande sera présenté à l'utilisateur.
- À partir de ce terminal, veuillez utiliser
parted
pour créer des partitions RAID sur les disques durs cibles. Puis, utilisezmdadm
pour créer des matrices RAID manuellement à partir de ces partitions en utilisant tous les paramètres et options disponibles. Pour obtenir des informations supplémentaires sur la manière d'accomplir cela, veuillez consulter Chapitre 12, Partitions,man parted
, etman mdadm
. - Une fois que les aires de stockage sont créées, vous pourrez, si vous le souhaitez, créer des systèmes de fichiers sur ces aires également.
- Redémarrez l'ordinateur et sélectionnez Installation (« Install ») ou Mise à niveau (« Upgrade ») pour effectuer l'installation normalement. Comme Anaconda recherche les disques dans le système, il trouvera les périphériques RAID pré-existants.
- Lorsqu'il vous sera demandé comment utiliser les disques du système, veuillez sélectionner Structure personnalisée (« Custom Layout »), puis cliquez sur Suivant (« Next »). Les périphériques RAID MD pré-existants y seront répertoriés.
- Sélectionnez un périphérique RAID, cliquez sur Modifier (« Edit »), puis configurez sont point de montage et (optionnellement) le type de fichier que le système de fichiers devrait utiliser (si vous n'en avez pas déjà créé un auparavant). Veuillez ensuite cliquer sur Terminé (« Done »). Anaconda effectuera l'installation sur ce périphérique RAID pré-existant, tout en conservant les options personnalisées que vous avez sélectionnées lors de sa création dans le mode de secours (« Rescue Mode »).
Note
man
. man mdadm
et man md
contiennent des informations utiles à la création de matrices RAID personnalisées, et peuvent être nécessaires tout au long de la solution de contournement. Ainsi, il peut être utile d'avoir accès à une machine avec ces pages man
présentes, ou de les imprimer avant de démarrer en Mode de secours et de créer vos propres matrices personnalisées.
Chapitre 18. Utilisation de la commande mount
mount
ou umount
. Ce chapitre décrit l'utilisation de base de ces commandes, ainsi que certains sujets avancés comme le déplacement de points de montage ou la création de sous-structures partagées.
18.1. Répertorier les systèmes de fichiers actuellement montés
mount
sans arguments supplémentaires :
mount
périphérique sur le type de répertoire type (options)
findmnt
, qui permet aux utilisateurs de répertorier les systèmes de fichiers montés sous la forme d'une arborescence, est également disponible à partir de Red Hat Enterprise Linux 6.1. Pour afficher tous les systèmes de fichiers actuellement attachés, veuillez exécuter la commande findmnt
sans arguments supplémentaires :
findmnt
18.1.1. Spécifier le type de système de fichiers
mount
inclut divers systèmes de fichiers virtuels, tels que sysfs
et tmpfs
. Pour afficher uniquement les périphériques avec un certain type de système de fichiers, veuillez ajouter l'option -t
sur la ligne de commande :
mount
-t
type
findmnt
, veuillez saisir :
findmnt
-t
type
ext4
actuellement montés ».
Exemple 18.1. Répertorier les systèmes de fichiers ext4
actuellement montés
/
et /boot
sont formatées pour utiliser ext4
. Pour afficher uniquement les points de montage qui utilisent ce système de fichiers, veuillez saisir ce qui suit dans l'invite shell :
~]$ mount -t ext4
/dev/sda2 on / type ext4 (rw)
/dev/sda1 on /boot type ext4 (rw)
findmnt
, veuillez saisir :
~]$ findmnt -t ext4
TARGET SOURCE FSTYPE OPTIONS
/ /dev/sda2 ext4 rw,realtime,seclabel,barrier=1,data=ordered
/boot /dev/sda1 ext4 rw,realtime,seclabel,barrier=1,data=ordered
18.2. Monter un système de fichiers
mount
sous la forme suivante :
mount
[option…] device directory
Important
findmnt
avec le répertoire en tant qu'argument et vérifiez le code de sortie :
findmnt
directory;echo
$?
1
.
mount
est exécutée sans toutes les informations requises (c'est-à-dire sans le nom de périphérique, le répertoire cible, ou le type de système de fichiers), la commande mount
lit le contenu du fichier de configuration /etc/fstab
pour voir si le système de fichiers donné est répertorié. Ce fichier /etc/fstab
contient une liste de noms de périphériques et les répertoires dans lesquels les systèmes de fichiers sélectionnés doivent être montés, ainsi que le type de système de fichiers et les options de montage. De ce fait, lors du montage d'un système de fichiers qui est spécifié dans ce fichier /etc/fstab
, vous pouvez utiliser l'une des variantes suivantes de la commande :
mount
[option…] directorymount
[option…] device
root
(voir la Section 18.2.2, « Spécifier les options de montage »).
Note
blkid
sous le format suivant :
blkid
device
/dev/sda3
, veuillez saisir :
~]# blkid /dev/sda3
/dev/sda3: LABEL="home" UUID="34795a28-ca6d-4fd8-a347-73671d0c19cb" TYPE="ext3"
18.2.1. Spécifier le type de système de fichiers
mount
détecte le système de fichiers automatiquement. Cependant, certains systèmes de fichiers, tels que NFS
(« Network File System ») ou CIFS
(« Common Internet File System ») ne sont pas reconnus, et doivent être spécifiés manuellement. Pour spécifier le type de système de fichiers, veuillez utiliser la commande mount
sous le format suivant :
mount
-t
type périphérique répertoire
mount
. Pour une liste complète de tous les types de système de fichiers disponibles, veuillez consulter la page du manuel correspondante comme indiqué dans la Section 18.4.1, « Documentation installée ».
Tableau 18.1. Types de systèmes de fichiers communs
Type | Description |
---|---|
ext2 | Système de fichiers ext2 . |
ext3 | Système de fichier ext3 . |
ext4 | Système de fichiers ext4 . |
btrfs | Système de fichiers btrfs . |
xfs | Système de fichiers xfs . |
iso9660 | Système de fichiers ISO 9660 . Communément utilisé par les supports optiques, comme les CD. |
jfs | Système de fichier JFS créé par IBM. |
nfs | Système de fichiers NFS . Celui-ci est communément utilisé pour accéder à des fichiers sur un réseau. |
nfs4 | Système de fichiers NFSv4 . Celui-ci est communément utilisé pour accéder à des fichiers sur un réseau. |
ntfs | Système de fichiers NTFS . Celui-ci est communément utilisé sur des ordinateurs exécutant un système d'exploitation Windows. |
udf | Système de fichiers UDF . Communément utilisé par les supports optiques, comme les DVD. |
vfat | Système de fichiers FAT . Celui-ci est communément utilisé sur les ordinateurs exécutant un système d'exploitation Windows ainsi que sur certains supports numériques, tels que les lecteurs flash USB ou les disquettes. |
Exemple 18.2. Monter un disque flash USB
/dev/sdc1
et que le répertoire /media/flashdisk/
existe, veuillez le monter sur ce répertoire en saisissant ce qui suit à l'invite shell en tant qu'utilisateur root
:
~]# mount -t vfat /dev/sdc1 /media/flashdisk
18.2.2. Spécifier les options de montage
mount
-o
options périphérique répertoire
mount
interprétera incorrectement les valeurs qui suivent les espaces en tant que paramètres supplémentaires.
Tableau 18.2. Options de montage communes
Option | Description |
---|---|
async | Permet les opérations d'entrées/sorties asynchrones sur le système de fichiers. |
auto | Permet au système de fichiers d'être monté automatiquement en utilisant la commande mount -a . |
defaults | Fournit un alias pour async,auto,dev,exec,nouser,rw,suid . |
exec | Permet l'exécution de fichiers binaires sur un système de fichiers particulier. |
loop | Monte une image en tant que périphérique boucle. |
noauto | Le comportement par défaut interdit le montage automatique du système de fichiers à l'aide de la commande mount -a . |
noexec | Interdit l'exécution de fichiers binaires sur le système de fichiers en particulier. |
nouser | Interdit à un utilisateur normal (c'est-à-dire autre que root ) de monter et démonter le système de fichiers. |
remount | Remonte le système de fichiers au cas où il serait déjà monté. |
ro | Monte le système de fichiers en lecture seule. |
rw | Monte le système de fichier en lecture et écriture. |
user | Permet à un utilisateur normal (c'est-à-dire autre que root ) de monter et démonter le système de fichiers. |
Exemple 18.3. Monter une image ISO
/media/cdrom/
existe, veuillez monter l'image sur ce répertoire en exécutant la commande suivante en tant qu'utilisateur root
:
~]# mount -o ro,loop Fedora-14-x86_64-Live-Desktop.iso /media/cdrom
18.2.3. Partager des montages
mount
implémente l'option --bind
qui fournit un moyen pour dupliquer certains montages. Son utilisation fonctionne comme suit :
mount
--bind
old_directory new_directory
mount
--rbind
old_directory new_directory
- Shared Mount
- Un montage partagé permet la création d'une réplique exacte d'un point de montage donné. Lorsqu'un point de montage est marqué en tant que montage partagé, tout montage à l'intérieur du point de montage d'origine est reflété dedans, et vice-versa. Pour modifier le type d'un point de montage en montage partagé, veuillez saisir la commande suivante à l'invite shell :
mount
--make-shared
mount_pointDe manière alternative, pour modifier le type de montage du point de montage sélectionné et de tous les points de montage se trouvant sous celui-ci, veuillez saisir :mount
--make-rshared
mount_pointVeuillez consulter Exemple 18.4, « Créer un point de montage partagé » pour un exemple d'utilisation.Exemple 18.4. Créer un point de montage partagé
Il existe deux emplacements dans lesquels les autres systèmes de fichiers sont communément montés : le répertoire/media
pour les supports amovibles, et le répertoire/mnt
pour les systèmes de fichiers montés temporairement. En utilisant un montage partagé, vous pouvez faire en sorte que ces deux répertoires partagent le même contenu. Pour ce faire, en tant qu'utilisateurroot
, marquez le répertoire/media
en tant que répertoire « partagé » :~]#
mount --bind /media /media
~]#mount --make-shared /media
Puis créez son double dans/mnt
en utilisant la commande suivante :~]#
mount --bind /media /mnt
Il est désormais possible de vérifier qu'un montage à l'intérieur de/media
apparaît aussi dans/mnt
. Par exemple, si le lecteur CD-ROM contient un support qui n'est pas vide et que le répertoire/media/cdrom/
existe, veuillez exécuter les commandes suivantes :~]#
mount /dev/cdrom /media/cdrom
~]#ls /media/cdrom
EFI GPL isolinux LiveOS ~]#ls /mnt/cdrom
EFI GPL isolinux LiveOSDe la même manière, il est possible de vérifier que n'importe quel système de fichiers monté dans le répertoire/mnt
se reflètera dans/media
. Par exemple, si un lecteur flash USB qui utilise le périphérique/dev/sdc1
est enfiché et que le répertoire/mnt/flashdisk/
est présent, veuillez saisir :~]#
mount /dev/sdc1 /mnt/flashdisk
~]#ls /media/flashdisk
en-US publican.cfg ~]#ls /mnt/flashdisk
en-US publican.cfg - Slave Mount
- Un montage esclave permet la création d'un double limité d'un point de montage donné. Lorsqu'un point de montage est marqué en tant que montage esclave, tout montage dans le point de montage d'origine y sera reflété, mais aucun montage à l'intérieur d'un montage esclave n'est reflété dans son point d'origine. Pour modifier le type d'un point de montage en montage esclave, veuillez saisir ce qui suit à l'invite shell :
mount
--make-slave
mount_pointAlternativement, il est possible de modifier le type de montage du point de montage sélectionné et de tous les points de montage se trouvant sous celui-ci en saisissant :mount
--make-rslave
mount_pointVeuillez consulter l'Exemple 18.5, « Créer un point de montage esclave » pour voir un exemple d'utilisation.Exemple 18.5. Créer un point de montage esclave
Cet exemple montre comment faire pour que le contenu du répertoire/media
soit également affiché dans/mnt
, mais sans qu'aucun montage du répertoire/mnt
ne soit reflété dans/media
. En tant qu'utilisateurroot
, veuillez marquer le répertoire/media
en tant que répertoire « partagé » :~]#
mount --bind /media /media
~]#mount --make-shared /media
Puis créez son dupliqué dans/mnt
, mais marquez-le en tant qu'« esclave » :~]#
mount --bind /media /mnt
~]#mount --make-slave /mnt
Veuillez vérifier qu'un montage à l'intérieur de/media
apparaîsse aussi dans/mnt
. Par exemple, si le lecteur CD-ROM contient un support qui n'est pas vide et que le répertoire/media/cdrom/
existe, veuillez exécuter les commandes suivantes :~]#
mount /dev/cdrom /media/cdrom
~]#ls /media/cdrom
EFI GPL isolinux LiveOS ~]#ls /mnt/cdrom
EFI GPL isolinux LiveOSVeuillez également vérifier qu'aucun des systèmes de fichiers montés dans le répertoire/mnt
ne soit reflété dans/media
. Par exemple, si un lecteur flash USB qui utilise le périphérique/dev/sdc1
est attaché et que le répertoire/mnt/flashdisk/
est présent, veuillez saisir :~]#
mount /dev/sdc1 /mnt/flashdisk
~]#ls /media/flashdisk
~]#ls /mnt/flashdisk
en-US publican.cfg - Private Mount
- Un montage privé est le type de montage par défaut, contrairement à un montage privé ou partagé, il ne reçoit et ne transfère pas d'événements de propagation. Pour marquer explicitement un point de montage en tant que montage privé, veuillez saisir ce qui suit à l'invite shell :
mount
--make-private
mount_pointAlternativement, il est possible de modifier le type de montage du point de montage sélectionné et de tous les points de montage se trouvant sous celui-ci :mount
--make-rprivate
mount_pointVeuillez consulter l'Exemple 18.6, « Créer un point de montage privé » pour voir un exemple d'utilisation.Exemple 18.6. Créer un point de montage privé
En prenant en compte le scénario dans l'Exemple 18.4, « Créer un point de montage partagé », supposez que le point de montage partagé a été créé auparavant en utilisant les commandes suivantes en tant qu'utilisateurroot
:~]#
mount --bind /media /media
~]#mount --make-shared /media
~]#mount --bind /media /mnt
Pour marquer le répertoire/mnt
en tant que « privé », veuillez saisir :~]#
mount --make-private /mnt
Il est désormais possible de vérifier qu'aucun des montages présents à l'intérieur de/media
n'apparaissent dans/mnt
. Par exemple, si le lecteur CD-ROM contient un support qui n'est pas vide et que le répertoire/media/cdrom/
existe, veuillez exécuter les commandes suivantes :~]#
mount /dev/cdrom /media/cdrom
~]#ls /media/cdrom
EFI GPL isolinux LiveOS ~]#ls /mnt/cdrom
~]#Il est également possible de vérifier qu'aucun des systèmes de fichiers montés dans le répertoire/mnt
ne soit reflété dans/media
. Par exemple, si un lecteur flash USB qui utilise le périphérique/dev/sdc1
est attaché et que le répertoire/mnt/flashdisk/
est présent, veuillez saisir :~]#
mount /dev/sdc1 /mnt/flashdisk
~]#ls /media/flashdisk
~]#ls /mnt/flashdisk
en-US publican.cfg - Unbindable Mount
- Pour empêcher qu'un point de montage donné ne soit dupliqué, un montage ne pouvant pas être lié peut être utilisé. Pour modifier le type d'un point de montage en montage ne pouvant pas être lié, veuillez saisir ce qui suit à l'invite shell :
mount
--make-unbindable
mount_pointAlternativement, il est possible de modifier le type de montage du point de montage sélectionné et de tous les points de montage se trouvant sous celui-ci :mount
--make-runbindable
mount_pointVeuillez consulter l'Exemple 18.7, « Créer un point de montage ne pouvant pas être lié » pour voir un exemple d'utilisation.Exemple 18.7. Créer un point de montage ne pouvant pas être lié
Pour empêcher que le répertoire/media
soit partagé, veuillez saisir ce qui suit à l'invite shell en tant qu'utilisateurroot
:~]#
mount --bind /media /media
~]#mount --make-unbindable /media
Ainsi, toute tentative conséquente de créer un dupliqué de ce montage échouera avec une erreur :~]#
mount --bind /media /mnt
mount: wrong fs type, bad option, bad superblock on /media, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so
18.2.4. Déplacer un point de montage
mount
--move
old_directory new_directory
Exemple 18.8. Déplacer un point de montage NFS existant
/mnt/userdirs/
. En tant qu'utilisateur root
, veuillez déplacer ce point de montage sur /home
en utilisant la commande suivante :
~]# mount --move /mnt/userdirs /home
~]#ls /mnt/userdirs
~]#ls /home
jill joe
18.2.5. Définir la permission Lecture-seule pour root
18.2.5.1. Configurer root
pour qu'il puisse monter avec les persmissions lecture-seule au démarrage.
- Dans le fichier
/etc/sysconfig/readonly-root
, modifier la valeur deREADONLY
àyes
:# Set to 'yes' to mount the system file systems read-only. READONLY=yes[sortie tronquée]
- Changer
defaults
enro
dans l'entrée root (/
) dans le fichier/etc/fstab
:/dev/mapper/luks-c376919e... / ext4 ro,x-systemd.device-timeout=0 1 1
- Ajouter
ro
à la directiveGRUB_CMDLINE_LINUX
dans le fichier/etc/default/grub
et assurez-vous qu'il n'y ait pas derw
:GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet ro"
- Recréer le fichier de configuration GRUB2 :
~]#
grub2-mkconfig -o /boot/grub2/grub.cfg
- Si vous ajoutez des fichiers et des répertoires à monter avec la permission écriture dans le système de fichiers
tmpfs
, créer un fichier texte dans le répertoire/etc/rwtab.d/
et mettez-y la configuration. Par exemple, pour monter/etc/example/file
avec des permissions écriture (w), ajouter cette ligne dans le fichier/etc/rwtab.d/example
:files /etc/example/file
Important
Les changements apportés aux fichiers et répertoires danstmpfs
ne sont pas persistants d'un démarrage à l'autre.Voir Section 18.2.5.3, « Fichiers et répertoires qui retiennent les permissions écriture » pour obtenir plus d'informations sur cette étape. - Redémarrer le système.
18.2.5.2. Remonter root
instantanément
/
) a été monté avec les permissions lecture-seule au démarrage du système, vous pouvez le remonter avec les permissions écriture :
~]# mount -o remount,rw /
/
n'est pas monté correctement avec les permissions lecture-seule.
/
avec les permissions lecture-seule à nouveau, exécuter :
~]# mount -o remount,ro /
Note
/
avec les permissions lecture-seule. Une meilleure approche consiste à conserver les permissions d'écriture pour certains fichiers et répertoires en les copiant en RAM, comme expliqué dans Section 18.2.5.1, « Configurer root
pour qu'il puisse monter avec les persmissions lecture-seule au démarrage. ».
18.2.5.3. Fichiers et répertoires qui retiennent les permissions écriture
tmpfs
. Les valeurs par défaut de tels fichiers et répertoires se trouvent dans le fichier /etc/rwtab
, qui contient :
dirs /var/cache/man dirs /var/gdm[sortie tronquée] empty /tmp empty /var/cache/foomatic[sortie tronquée] files /etc/adjtime files /etc/ntp.conf[sortie tronquée]
/etc/rwtab
doivent suivre le format suivant :
comment le fichier ou répertoire est copié dans tmpfs chemin vers le fichier ou répertoire
tmpfs
de trois façons, donc il y a trois sortes d'entrées :
empty path
: un chemin vide est copié danstmpfs
. Exemple :empty /tmp
dirs path
: une aborescence de répertoires est copiée danstmpfs
empty. Exemple :dirs /var/run
files path
: un fichier ou répertoire est copié danstmpfs
intact. Exemple :files /etc/resolv.conf
/etc/rwtab.d/
.
18.3. Démonter un système de fichiers
umount
:
umount
directoryumount
device
root
, les bonnes permissions doivent être disponibles pour démonter le système de fichiers (veuillez consulter la Section 18.2.2, « Spécifier les options de montage »). Voir Exemple 18.9, « Démonter un CD » pour un exemple d'utilisation.
Important
umount
échouera avec une erreur. Pour déterminer quels processus accèdent au système de fichiers, veuillez utiliser la commande fuser
sous le format suivant :
fuser
-m
directory
/media/cdrom/
, veuillez saisir :
~]$ fuser -m /media/cdrom
/media/cdrom: 1793 2013 2022 2435 10532c 10672c
Exemple 18.9. Démonter un CD
/media/cdrom/
, veuillez saisir ce qui suit à l'invite shell :
~]$ umount /media/cdrom
18.4. Références de la commande mount
18.4.1. Documentation installée
man 8 mount
— Page du manuel pour la commandemount
, celle-ci fournit une documentation complète sur sont utilisation.man 8 umount
— Page du manuel pour la commandeumount
, celle-ci fournit une documentation complète sur son utilisation.man 8 findmnt
— Page du manuel pour la commandefindmnt
, celle-ci fournit une documentation complète sur son utilisation.man 5 fstab
— Page du manuel fournissant une description détaillée du format de fichier/etc/fstab
.
18.4.2. Sites Web utiles
- Sous-arborescences partagées — Un article LWN couvrant le concept de sous-arborescence partagée.
Chapitre 19. Fonction volume_key
volume_key
. libvolume_key est une bibliothèque pour manipuler des clés de chiffrment du volume de stockage et pour les stocker hors des volumes. volume_key
est un outil de ligne de commande associé utilisé pour extraire les clés et phrases de passe afin de restaurer l'accès à un disque dur chiffré.
volume_key
pour effectuer des copies de sauvegarde des clés de chiffrement avant de rendre l'ordinateur à l'utilisateur final.
volume_key
prend uniquement en charge le format de chiffrement de volumes LUKS.
Note
volume_key
n'est pas inclus dans une installation standard du serveur Red Hat Enterprise Linux 7. Pour obtenir des informations sur son installation, veuillez consulter http://fedoraproject.org/wiki/Disk_encryption_key_escrow_use_cases.
19.1. Commandes volume_key
volume_key
est :
volume_key [OPTION]... OPERAND
volume_key
sont déterminés par une des options suivantes :
--save
- Cette commande attend l’opérande volume [paquet]. Si un paquet est fourni, alors
volume_key
en extraira les clés et les phrases secrètes. Si le paquet n’est pas fourni, alorsvolume_key
va extraire les clés et phrases secrètes du volume, en invitant l’utilisateur si nécessaire. Ces clés et les phrases secrètes seront alors stockées dans un ou plusieurs paquets de sortie. --restore
- Cette commande attend les opérandes de paquets de volume. Puis, il ouvre le volume et utilise les clés et phrases secrètes du paquet pour rendre le volume accessible à nouveau, invitant l’utilisateur à saisir un nouveau mot de passe, par exemple.
--setup-volume
- Cette commande s'attend aux opérandes nom de paquet de volume, puis, ouvre le volume et utilise les clés et phrases secrètes du paquet pour configurer le volume à utiliser des données déchiffrées comme un nom.Nom est le nom d’un volume de dm-crypt. Cette opération rend le volume décrypté disponible comme
/dev/mapper/nom
.Cette opération ne modifie pas en permanence le volume en ajoutant une nouvelle phrase secrète, par exemple. L’utilisateur peut accéder et modifier le volume décrypté, en modifiant le volume dans le processus. --reencrypt
,--secrets
, et--dump
- Ces trois commandes exécutent des fonctions semblables avec diverses méthodes de sortie. Chacune d’entre elle requiert l'opérande paquet et ouvre le paquet, décryptant si nécessaire.
--reencrypt
stocke ensuite les informations dans un ou plusieurs nouveaux paquets de sortie. Les sorties de--secrets
sont des clés et des phrases secrètes contenues dans le paquet.--dump
affiche le contenu du paquet, bien que les clés et les phrases secrètes ne soient pas des sorties par défaut. Ceci peut être changé en ajoutant--with-secrets
à la commande. Il est également possible de vider uniquement les pièces non cryptées du paquet, le cas échéant, à l’aide de la commande--unencrypted
. Cela ne nécessite pas de phrase secrète ou d'accès de clé privée.
-o
,--output packet
- Cette commande écrit la phrase secrète ou le mot de passe par défaut dans le paquet. La phrase secrète ou le mot de passe par défaut dépendent du format de volume. S’assurer qu'ils ne risquent pas d’expirer, et qu'ils permettront à
--restore
de restaurer l’accès au volume. --output-format format
- Cette commande utilise le format spécifié pour tous les paquets de sortie. Actuellement, le format peut correspondre à l'une des conditions suivantes :
asymmetric
: utilise CMS pour encrypter le paquet, et exige un certificatasymmetric_wrap_secret_only
: englobe seulement le secret, ou les clés et les phrases secrètes et exige un certificatpassphrase
: utilise GPG pour déchiffrer tout le paquet, et exige une phrase secrète
--create-random-passphrase packet
- Cette commande génère une phrase secrète alphanumérique au hasard, l'ajoute au volume (sans affecter les autres phrases secrètes) et stocke ensuite ce mot de passe aléatoire dans le paquet.
19.2. Exécutez volume_key
en tant qu'utilisateur individuel
volume_key
peut être utilisé pour sauvegarder les clés d'encodage par la procédure suivante.
Note
/path/to/volume
est un périphérique LUKS, et non pas un périphérique en texte brut intégré. La commande blkid -s type /path/to/volume
doit rapporter type="crypto_LUKS"
.
Procédure 19.1. Exécutez volume_key
en autonome
- Exécutez:
Vous apercevrez alors une invite vous demandant une phrase secrète de paquet escrow pour protéger la clé.volume_key --save
/path/to/volume
-o escrow-packet - Sauvegarder le fichier
escrow-packet
, en veillant à ne pas oublier la phrase secrète.
Procédure 19.2. Restaurer l'accès aux données par le paquet escrow
- Démarrer le système dans un environnement où
volume_key
peut être exécuté et où un paquet escrow est disponible (en mode de secours, par exemple). - Exécutez:
Vous apercevrez alors une invite vous demandant la phrase secrète de paquet escrow qui a été utilisée lors de la création du paquet, et pour la nouvelle phrase secrète du volume.volume_key --restore
/path/to/volume
escrow-packet - Mounter le volume en utilisant la phrase secrète choisie.
cryptsetup luksKillSlot
.
19.3. Exécutez volume_key
dans une grande organisation
volume_key
peut utiliser la cryptographie asymétrique pour réduire le nombre de personnes qui connaissent le mot de passe requis pour accéder aux données cryptées sur un ordinateur.
19.3.1. Se préparer à enregistrer vos clés de chiffrement.
Procédure 19.3. Préparation
- Créer une paire privée/certificat X509.
- Indique les utilisateurs auxquels on fait confiance pour ne pas compromettre la clé privée. Ces utilisateurs seront en mesure de décrypter les paquets escrow.
- Choisir les systèmes qui seront utilisés pour décrypter les paquets escrow. Sur ces systèmes, définir une base de données NSS qui contienne la clé privée.Si la clé privée n'a pas été créée dans une base de données NSS, suivre les étapes suivantes :
- Stocker le certificat et la clé privée dans un fichier
PKCS#12
. - Exécutez :
certutil -d
/the/nss/directory
-NÀ ce stade, il est possible de choisir un mot de passe de base de données NSS. Chaque base de données NSS peut avoir un mot de passe différent, donc les utilisateurs désignés n'ont pas besoin de partager un mot de passe unique, si une base de données NSS séparée est utilisé par chaque utilisateur. - Exécutez :
pk12util -d
/the/nss/directory
-ithe-pkcs12-file
- Distribuer le certificat à quiconque installant des systèmes ou sauvegardant des clés sur les systèmes existants.
- Pour les clés privées sauvegardées, préparez un stockage qui leur permette d'être consultées par une machine et un volume. Il peut s'agir, par exemple, d'un simple répertoire avec un sous-répertoire par machine, ou d'une base de données utilisée pour d'autres tâches de gestion de système également.
19.3.2. Sauvegarde des clés de chiffrement
Note
/path/to/volume
est un périphérique LUKS, et non pas un périphérique en texte brut intégré. La commandeblkid -s type /path/to/volume
doit rapporter type="crypto_LUKS"
.
Procédure 19.4. Sauvegarde des clés de chiffrement
- Exécutez :
volume_key --save
/path/to/volume
-c/path/to/cert
escrow-packet - Sauvegarder le fichier
escrow-packet
créé dans le stockage préparé, en l'associant avec le système et le volume.
19.3.3. Restaurer l'accès à un volume
Procédure 19.5. Restaurer l'accès à un volume
- Extraire le paquet escrow pour le volume, du stockage de paquets, et envoyez le vers l'un des utilisateurs désignées afin qu'il soit décrypté.
- L'utilisateur désigné exécute :
volume_key --reencrypt -d
/the/nss/directory
escrow-packet-in -o escrow-packet-outAprès avoir fourni le mot de passe de base de données NSS, l’utilisateur désigné choisira une phrase secrète pour le chiffrementescrow-paquet-out
. Cette phrase secrète peut varier à chaque fois et ne protège que les clés de cryptage que lorsqu'elles sont transférées de l’utilisateur désigné au système cible. - Obtenir le fichier
escrow-packet-out
et la phrase secrète de l'utilisateur désigné. - Démarrer le système cible dans un environnement où
volume_key
peut être exécuté et où un paquetescrow-packet-out
est disponible (en mode de secours, par exemple). - Exécutez :
volume_key --restore
/path/to/volume
escrow-packet-outVous apercevrez alors une invite vous demandant la phrase secrète de paquet qui a été choisie par l'utilisateur désigné, et la nouvelle phrase secrète du volume. - Monter le volume en utilisant la phrase secrète de volume choisie.
cryptsetup luksKillSlot
, par exemple, afin de libérer l'emplacement pour la phrase secrète dans l’en-tête de LUKS du volume chiffré. Cela se fait par la commande cryptsetup luksKillSlot device key-slot
. Pour plus d’informations et d’exemples, voir cryptsetup--aider
.
19.3.4. Configurer les phrases secrètes pour les urgences
volume_key
peut fonctionner avec des phrases secrètes, ainsi qu'avec des clés de chiffrement.
volume_key --save /path/to/volume
-c /path/to/ert
--create-random-passphrase passphrase-packet
passphrase-packet
. Il est également possible de combiner les options --create-random-passphrase
et -o
pour générer les deux paquets en même temps.
volume_key --secrets -d /your/nss/directory passphrase-packet
19.4. Références volume_key
volume_key
à l'adresse suivante :
- dans le fichier readme qui se situe
/usr/share/doc/volume_key-*/README
- dans la page man de
volume_key
en exécutantman volume_key
- en ligne à l'adresse suivante http://fedoraproject.org/wiki/Disk_encryption_key_escrow_use_cases
Chapitre 20. Directives de déploiement des disques SSD
TRIM
pour ATA, et WRITE SAME
si UNMAP
est défini, ou la commande UNMAP
pour SCSI).
discard
est surtout utile quand les deux points suivants s'appliquent :
- Il y a de l'espace libre toujours disponible sur le système de fichiers.
- La plupart des blocs logiques situés sur le périphérique de stockage sous-jacent contiennent déjà des écritures.
TRIM
, voir Data Set Management T13 Specifications dans le lien suivant :
UNMAP
, veuillez consulter la section 4.7.3.4 du document SCSI Block Commands 3 T10 Specification, disponible sur le lien suivant :
Note
discard
. Pour déterminer si votre disque dur offre la prise en charge de discard
, veuillez vérifier la présence de /sys/block/sda/queue/discard_granularity
.
20.1. Considérations pour le déploiement
mdadm
) écrivent sur tous les blocs du périphérique de stockage pour s'assurer que les checksums fonctionnent correctement. Ceci entraine une dégradation rapide des performances du disque SSD.
discard
. Dans les versions précédentes de Red Hat Enterprise Linux 6, seul ext4 prenait totalement en charge discard
. Pour activer les commandes discard
sur un périphérique, veuillez utiliser l'option mount
de discard
. Par exemple, pour monter /dev/sda2
sur /mnt
lorsque discard
est activé, veuillez exécuter :
# mount -t ext4 -o discard /dev/sda2 /mnt
discard
. Cela est le cas afin d'éviter tout problème sur des périphériquers qui pourraient ne pas implémenter la commande discard
correctement. Le code swap
Linux délivrera les commandes discard
aux périphériques sur lesquels discard
est activé, il n'existe aucune option pour contrôler ce comportement.
20.2. Considérations pour le paramétrage
Planificateur d'E/S
/usr/share/doc/kernel-version/Documentation/block/switching-sched.txt
Mémoire virtuelle
vm_dirty_background_ratio
et vm_dirty_ratio
, car une augmentation des activités d'écriture ne devrait pas avoir d'impact négatif sur la latence des autres opérations sur le disque. Cependant, ceci peut également générer davantage d'E/S générales est n'est donc pas recommandé sans effectuer de tests spécifiques aux charges au préalable.
Chapitre 21. Barrières d'écriture
fsync()
persistent lors de pannes de courant.
fsync()
, ou qui créent et suppriment de nombreux fichiers de petite taille fonctionneront probablement bien plus lentement.
21.1. Importance des barrières d'écriture
- Premièrement, le système de fichiers envoie le corps de la transaction au périphérique de stockage.
- Puis le système de fichiers envoie un bloc de validation.
- Si la transaction et son bloc de validation correspondant sont écrits sur le disque, le système de fichiers supposera que la transaction pourra survivre à une panne de courant.
Comment les barrières d'écriture fonctionnent
- Le disque contient bien toutes les données.
- Aucun changement d'ordre ne s'est produit.
fsync()
provoquera également le vidage du cache du stockage. Ceci garantit la persistance sur disque des données de fichiers même si une panne de courant se produit peu après le retour de fsync()
.
21.2. Activer/désactiver les barrières d'écriture
Note
-o nobarrier
de mount
. Cependant, certains périphériques ne prennent pas en charge les barrières d'écriture ; ce type de périphérique journalisera un message d'erreur sur /var/log/messages
(veuillez consulter Tableau 21.1, « Messages d'erreur des barrières d'écriture par système de fichiers »).
Tableau 21.1. Messages d'erreur des barrières d'écriture par système de fichiers
Système de fichiers | Message d'erreur |
---|---|
ext3/ext4 | JBD: barrier-based sync failed on device - disabling barriers |
XFS | Filesystem device - Disabling barriers, trial barrier write failed |
btrfs | btrfs: disabling barriers on dev device |
21.3. Considérations pour barrières d'écriture
Désactiver les caches d'écriture
hdparm
, comme suit :
# hdparm -W0 /device/
Caches d'écriture avec batteries de secours
MegaCli64
pour gérer les disques cibles. Pour afficher l'état de tous les disques d'arrière-plan pour SAS Megaraid LSI, veuillez utiliser :
# MegaCli64 -LDGetProp -DskCache -LAll -aALL
# MegaCli64 -LDSetProp -DisDskCache -Lall -aALL
Note
Matrices haut de gamme
NFS
Chapitre 22. Alignement et taille des E/S de stockage
parted
, lvm
, mkfs.*
, etc. ) d'optimiser le placement et l'accès aux données. Si un périphérique hérité n'exporte pas les données d'alignement et de taille des E/S, alors les outils de gestion de stockage Red Hat Enterprise Linux 7 aligneront de manière conservative les E/S sur une limite de 4 Ko (ou sur une puissance de 2). Ceci assurera que les périphériques à secteurs de 4 Ko opérèrent correctement même s'ils n'indiquent pas d'alignement et de taille d'E/S requis ou préféré.
22.1. Paramètres d'accès au stockage
- physical_block_size
- Unité interne la plus petite sur laquelle le périphérique peut opérer
- logical_block_size
- Utilisé de manière externe pour adresser un emplacement sur le périphérique
- alignment_offset
- Nombre d'octets de décalage du début du périphérique bloc Linux (périphérique partition/MD/LVM) par rapport à l'alignement physique sous-jacent
- minimum_io_size
- Unité minimale préférée du périphérique pour les E/S aléatoires
- optimal_io_size
- Unité préférée du périphérique pour la transmission d'E/S
physical_block_size
de 4K de manière interne mais présenter une taille logical_block_size
de 512 octets plus granuleuse dans Linux. Cet écart présente un certain potentiel pour des E/S non-alignées. Pour répondre à ce problème, la pile d'E/S Red Hat Enterprise Linux 7 tentera de démarrer toutes les zones de données sur une limite naturellement alignée (physical_block_size
) en s'assurant de prendre en compte tout décalage d'alignement « alignment_offset » si le début du périphérique bloc est décalé par rapport à l'alignement physique sous-jacent.
minimum_io_size
) ainsi que pour les E/S de transmission (optimal_io_size
) d'un périphérique. Par exemple, minimum_io_size
et optimal_io_size
pourraient correspondre, respectivement, aux tailles de bloc et d'entrelacement d'un périphérique RAID.
22.2. Accès à l'espace utilisateur
logical_block_size
, et sur des multiples de logical_block_size
.
logical_block_size
font 4K) il est désormais critique que les applications effectuent des E/S directes multiples de logical_block_size
. Ceci signifie que les applications échoueront avec les périphériques 4k qui effectuent des E/S alignées sur 512 octets plutôt que sur des E/S alignées 4k.
sysfs
et ioctl
de périphérique bloc.
man libblkid
. Cette page man
est fournie par le paquet libblkid-devel
.
Interface sysfs
- /sys/block/
disk
/alignment_offsetou/sys/block/disk
/partition
/alignment_offsetNote
L'emplacement du fichier dépendra si le disque est un disque physique (local, RAID local ou LUN multivoies) ou un disque virtuel. Le premier emplacement s'applique aux disques physiques alors que le second s'applique aux disques virtuels. La raison pour ceci est que virtio-blk rapportera toujours une valeur d'alignement à la partition. Les disques physiques rapporteront ou non un valeur d'alignement. - /sys/block/
disk
/queue/physical_block_size - /sys/block/
disk
/queue/logical_block_size - /sys/block/
disk
/queue/minimum_io_size - /sys/block/
disk
/queue/optimal_io_size
sysfs
pour les périphériques « hérités » qui ne fournissent pas d'informations sur les paramètres d'E/S, par exemple :
Exemple 22.1. Interface sysfs
alignment_offset: 0 physical_block_size: 512 logical_block_size: 512 minimum_io_size: 512 optimal_io_size: 0
22.3. Standards
ATA
IDENTIFY DEVICE
. Les périphériques ATA rapportent uniquement les paramètres d'E/S pour physical_block_size
, logical_block_size
, et alignment_offset
. Les indicateurs d'E/S supplémentaires se trouvent hors du champ de l'ensemble des commandes ATA.
SCSI
BLOCK LIMITS VPD
) et une commande READ CAPACITY(16)
sur les périphériques se réclamant être conformes à SPC-3.
READ CAPACITY(16)
fournit le décalage des tailles et alignements des blocs :
LOGICAL BLOCK LENGTH IN BYTES
(« Longueur de bloc logique en octets ») est utilisé pour dériver/sys/block/disque/queue/physical_block_size
LOGICAL BLOCKS PER PHYSICAL BLOCK EXPONENT
(« Blocs logiques par exposant de bloc physique ») est utilisé pour dériver/sys/block/disque/queue/logical_block_size
LOWEST ALIGNED LOGICAL BLOCK ADDRESS
(« Adresse du bloc logique aligné au plus bas ») est utilisée pour dériver :/sys/block/disk/alignment_offset
/sys/block/disk/partition/alignment_offset
BLOCK LIMITS VPD
(0xb0
) fournit les indicateurs d'E/S. OPTIMAL TRANSFER LENGTH GRANULARITY
et OPTIMAL TRANSFER LENGTH
sont également utilisés pour dériver :
/sys/block/disk/queue/minimum_io_size
/sys/block/disk/queue/optimal_io_size
sg3_utils
fournit l'utilitaire sg_inq
, qui peut être utilisé pour accéder à la page BLOCK LIMITS VPD
. Pour ce faire, veuillez exécuter :
# sg_inq -p 0xb0 disk
22.4. Empiler les paramètres d'E/S
- Seule une couche de la pile d'E/S doit s'ajuster pour un décalage
alignment_offset
qui n'est pas égal à zéro ; une fois que la couche s'ajuste de manière correspondante, un périphérique avec un décalagealignment_offset
de zéro sera exporté. - Un périphérique DM (« Device Mapper ») entrelacé créé avec LVM doit exporter des valeurs
minimum_io_size
etoptimal_io_size
relatives au compte des entrelacements (nombre de disques) et à la taille de bloc fournie par l'utilisateur.
logical_block_size
de 4K. Les systèmes de fichiers en couche sur de tels périphériques hybrides supposent que l'écriture sur 4K sera atomique, mais en réalité, cela s'étendra sur 8 adresses de blocs logiques lors de l'exécution sur le périphérique de 512 octets. L'utilisation de la valeur logical_block_size
4K pour un périphérique de 512 octets de haut niveau augmente le potentiel d'écriture partielle sur le périphérique de 512 octets en cas de panne du système.
22.5. Gestionnaire de volumes logiques LVM
alignment_offset
qui n'est pas égal à zéro et associé à tout périphérique géré par LVM. Cela signifie que les volumes logiques seront correctement alignés (alignment_offset=0
).
alignment_offset
, mais ce comportement peut être désactivé en paramétrant data_alignment_offset_detection
sur 0
dans /etc/lvm/lvm.conf
. Cette désactivation n'est pas recommandée.
minimum_io_size
ou optimal_io_size
exposées dans sysfs. LVM utilisera minimum_io_size
si la valeur optimal_io_size
n'est pas définie (c'est-à-dire égale à 0
).
data_alignment_detection
sur 0
dans /etc/lvm/lvm.conf
. Cette désactivation n'est pas recommandée.
22.6. Outils des partitions et systèmes de fichiers
libblkid de util-linux-ng et fdisk
libblkid
fournie avec le paquet util-linux-ng
inclut une interface de programmation pour accéder aux paramètres d'E/S d'un périphérique. libblkid
permet aux applications, particulièrement celles qui utilisent des E/S directes, de redimensionner correctement leurs requêtes d'E/S. L'utilitaire fdisk
de util-linux-ng
utilise libblkid
pour déterminer les paramètres d'E/S d'un périphérique pour un placement optimal de toutes les partitions. L'utilitaire fdisk
alignera toutes les partitions sur une limite de 1 Mo.
parted et libparted
libparted
de parted
utilise également l'interface de programmation des paramètres d'E/S de libblkid
. L'installateur Red Hat Enterprise Linux 7 (Anaconda) utilise libparted
, ce qui signifie que toutes les partitions créées par l'installateur ou parted
seront correctement alignés. Pour les partitions créées sur un périphérique qui ne semble pas fournir de paramètres d'E/S, l'alignement par défaut sera de 1 Mo.
parted
sont comme suit :
- Veuillez toujours utiliser la valeur
alignment_offset
rapportée comme décalage pour le lancement de la première partition principale. - Si
optimal_io_size
est défini (c'est-à-dire différent de0
), veuillez aligner toutes les partitions sur une limiteoptimal_io_size
. - Si
optimal_io_size
n'est pas défini (c'est-à-dire égal à0
), alorsalignment_offset
est égal à0
, etminimum_io_size
est une puissance de 2, utilisez un alignement par défaut de 1 Mo.Ceci sert à récupérer tous les périphériques « hérités » qui ne semblent pas fournir d'indicateur d'E/S. Ainsi, toutes les partitions par défaut seront alignées sur une limite de 1 Mo.Note
Red Hat Enterprise Linux 7 ne fait pas de distinction entre les périphériques qui ne fournissent pas d'indicateurs d'E/S et ceux qui en fournissent par le biais dealignment_offset=0
etoptimal_io_size=0
. Un tel périphérique peut être un périphérique 4K SAS unique. De cette manière, au pire seul 1 Mo est perdu lors du démarrage du disque.
Outils de systèmes de fichiers
mkfs.filesystem
ont aussi été améliorés afin de consommer les paramètres d'E/S d'un périphérique. Ces utilitaires ne permettront pas à un système de fichiers d'être formaté pour utiliser une taille de bloc plus petite que la taille logical_block_size
du périphérique de stockage sous-jacent.
mkfs.gfs2
, tous les autres utilitaires mkfs.filesystem
utilisent également les indicateurs d'E/S pour agencer la structure des données sur disque et les zones de données relatives aux valeurs minimum_io_size
et optimal_io_size
des périphériques de stockage sous-jacent. Ceci permet aux systèmes de fichiers d'être formatés de manière optimale pour divers agencements (entrelacés) RAID.
Chapitre 23. Paramétrer un système sans disque distant
tftp-server
xinetd
dhcp
syslinux
dracut-network
Note
Après avoir installé le packagedracut-network
, ajouter la ligne suivante à/etc/dracut.conf
:add_dracutmodules+="nfs"
tftp
(fourni par tftp-server
) et un service DHCP (fourni par dhcp
). Le service tftp
est utilisé pour récupérer l'image du noyau et initrd
sur le réseau via le chargeur PXE.
Note
/etc/sysconfig/nfs
en ajoutant la ligne :
RPCNFSDARGS="-V 4.2"
/var/lib/tftpboot/pxelinux.cfg/default
, changer root=nfs:server-ip:/exported/root/directory
en root=nfs:server-ip:/exported/root/directory,vers=4.2
.
Important
setcap
et getcap
). Cependant, NFS ne les prend pas actuellement en charge, donc essayer d'installer ou de mettre à jour un package qui utilise cette fonctionnalité échouera.
23.1. Configuration d'un service tftp pour des clients sans disque
tftp
est désactivé par défaut. Pour l'activer et autoriser le démarrage PXE via le réseau, définissez l'option Disabled
(désactivé) dans /etc/xinetd.d/tftp
sur no
. Pour configurer tftp
, veuillez effectuer les étapes suivantes :
Procédure 23.1. Pour configurer tftp
- Le répertoire racine
tftp
(chroot
) est situé dans/var/lib/tftpboot
. Copiez/usr/share/syslinux/pxelinux.0
sur/var/lib/tftpboot/
:cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
- Créez un répertoire
pxelinux.cfg
dans le répertoire roottftp
:mkdir -p /var/lib/tftpboot/pxelinux.cfg/
tftp
. Comme tftp
prend en charge les wrappers TCP, vous pouvez configurer l'accès des hôtes à tftp
via /etc/hosts.allow
. Pour obtenir des informations supplémentaires sur la configuration des wrappersTCP et sur le fichier de configuration /etc/hosts.allow
, veuillez consulter le Guide de sécurité de Red Hat Enterprise Linux 7. man hosts_access
fournit également des informations sur /etc/hosts.allow
.
tftp
pour des clients sans disque, veuillez configurer DHCP, NFS, et le système de fichiers exporté. Veuillez consulter Section 23.2, « Configuration DHCP pour les clients sans disque » et Section 23.3, « Configuration d'un système de fichiers exporté pour les clients sans disque » pour obtenir des instructions sur la manière de procéder.
23.2. Configuration DHCP pour les clients sans disque
tftp
, vous devrez paramétrer un service DHCP sur la même machine hôte. Veuillez consulter le Guide de déploiement Red Hat Enterprise Linux 7 pour obtenir des instructions sur la manière de paramétrer un serveur DHCP. En outre, vous devrez activer le démarrage PXE sur le serveur DHCP ; pour ce faire, veuillez ajouter la configuration suivante au fichier /etc/dhcp/dhcp.conf
:
allow booting; allow bootp; class "pxeclients" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; next-server server-ip; filename "pxelinux.0"; }
server-ip
par l'adresse IP de la machine hôte sur laquelle les services tftp
et DHCP résident. Maintenant que tftp
et DHCP sont configurés, il ne reste plus qu'à configurer NFS et le système de fichiers exporté. Veuillez consulter Section 23.3, « Configuration d'un système de fichiers exporté pour les clients sans disque » afin d'obtenir des instructions.
Note
libvirt
sont utilisées comme client sans disque, libvirt
fournit le service DHCP et le serveur DHCP autonome n'est pas utilisé. Dans cette situation, le redémarrage du réseau doit être activé par l'option bootp file='filename'
dans la configuration de réseau de libvirt
, virsh net-edit
.
23.3. Configuration d'un système de fichiers exporté pour les clients sans disque
/etc/exports
. Pour obtenir des instructions sur la manière d'effectuer cela, veuillez consulter Section 8.7.1, « Fichier de configuration /etc/exports
».
rsync
:
# rsync -a -e ssh --exclude='/proc/*' --exclude='/sys/*' hostname.com:/ /exported/root/directory
hostname.com
par le nom d'hôte du système d'exploitation du système en cours d'exécution avec lequel se synchroniser via rsync
. /exported/root/directory
est le chemin vers le système de fichiers exporté.
yum
avec l'option --installroot
pour installer Red Hat Enterprise Linux sur un emplacement spécifique. Par exemple :
yum groupinstall Base --installroot=/exported/root/directory --releasever=/
Procédure 23.2. Configurer le système de fichiers
- Configurez le fichier
/etc/fstab
du système de fichiers afin qu'il contienne (au minimum) la configuration suivante :none /tmp tmpfs defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
- Sélectionnez le noyau que les clients sans disque devront utiliser (
vmlinuz-kernel-version
) et copiez-le sur le répertoire roottftp
:# cp /boot/vmlinuz-kernel-version /var/lib/tftpboot/
- Créez le fichier
initrd
(c'est-à-direinitramfs-kernel-version.img
) avec le support réseau :# dracut initramfs-kernel-version.img kernel-version
- Les permissions de fichiers d'initrd doivent être modifiées à 600 ou bien, le chargeur boot
pxelinux.0
échouera avec l'erreur "file not found". Effectuez ceci avec la commande suivante :# chmod go-r initramfs-kernel-version.img
- Copiez également le fichier
initramfs-kernel-version.img
résultant dans le répertoire de démarragetftp
. - Modifiez la configuration de démarrage par défaut afin d'utiliser
initrd
et le noyau situé à l'intérieur de/var/lib/tftpboot
. Cette configuration devrait instruire au répertoire root du client sans disque de monter le système de fichiers exporté (/exported/root/directory
) en lecture-écriture. Pour ce faire, veuillez configurer/var/lib/tftpboot/pxelinux.cfg/default
avec :default rhel7 label rhel7 kernel vmlinuz-kernel-version append initrd=initramfs-kernel-version.img root=nfs:server-ip:/exported/root/directory rw
Remplacezserver-ip
avec l'adresse IP de la machine hôte sur laquelle les servicestftp
et DHCP résident.
Chapitre 24. Online Storage Management
sysfs
. Red Hat tient à vous informer que les noms d'objets et la structure des répertoires sysfs
pourraient faire l'objet de changements lors des publications de versions majeures de Red Hat Enterprise Linux. Ceci est dû au fait que le noyau Linux en amont ne fournit pas d'API interne stable. Pour obtenir des directives sur la manière de référencer les objets sysfs
de manière transportable, veuillez vous reporter au document /usr/share/doc/kernel-doc-version/Documentation/sysfs-rules.txt
dans l'arborescence source du noyau.
Avertissement
24.1. Installation de la Cible
targetcli
comme un front-end pour l’affichage, l'édition et l'enregistrement de la configuration de la cible Linux-IO sans avoir besoin de manipuler directement les fichiers de configuration de la cible du noyau. targetcli
est une interface de ligne de commande qui permet à un administrateur d’exporter les ressources de stockage locales (soutenues par des fichiers, volumes, périphériques SCSI locaux ou disques RAM) vers des systèmes distants. Il a une disposition arborescente, qui comprend la saisie semi-automatique par tabulation intégrée et fournit une documentation en ligne et un support complet semi-automatique.
Note
targetcli
ne correspond pas toujours à l'interface du noyau. C'est parce qu'elle est conçue pour être simplifiée le plus possible.
Important
targetcli
sont persistants, démarrer et activer le service cible :
~]# systemctl start target ~]# systemctl enable target
24.1.1. Installer et exécuter targetcli
targetcli
, exécuter :
# yum install targetcli
# systemctl start target
# systemctl enable target
targetcli
, exécuter targetcli
et obtenir une installation des trois interfaces, exécuter ls
:
# targetcli : /> ls o- /........................................[...] o- backstores.............................[...] | o- block.................[Storage Objects: 0] | o- fileio................[Storage Objects: 0] | o- pscsi.................[Storage Objects: 0] | o- ramdisk...............[Storage Ojbects: 0] o- iscsi...........................[Targets: 0] o- loopback........................[Targets: 0]
Note
targetcli
du bash (par exemple, targetcli iscsi/ create
) ne fonctionnait pas, ni ne donnait de code d'erreur. Cela a été corrigé dans Red Hat Enterprise Linux 7.1 qui fournit un code d'erreur, ce qui en facilite l'utilisation avec les scripts shell.
24.1.2. Créer un Backstore
Note
- FILEIO (Stockage par sauvegarde de fichiers de Linux)
- Les objets de stockage FILEIO peuvent soit supporter l'opération
write_back
ouwrite_thru
. L'opérationwrite_back
active le cache du système de fichiers local. Cela améliore la performance mais réduit le risque de perte de données. Il est conseillé d'utiliser la commandewrite_back=false
afin de désactiverwrite_back
au bénéfice dewrite_thru
.Pour créer un objet de stockage fileio, exécuter la commande/backstores/fileio create file_name file_location file_size write_back=false
. Exemple :/> /backstores/fileio create file1 /tmp/disk1.img 200M write_back=false Created fileio file1 with size 209715200
- BLOCK (périphériques BLOCK Linux)
- Le pilote de blocs permet l'utilisation de n'importe quel périphérique en bloc situé dans
/sys/block
à utiliser dans LIO. Inclut les périphériques physiques comme les HDDs, SSDs, CDs, DVDs) et les périphériques logiques comme les logiciels ou matériels de volumes RAID, ou les volumes LVM.Note
Les backstores BLOCK fournissent généralement la meilleure performance.Pour créer un backstore BLOCK par le périphérique block/dev/sdb
, utiliser la commande suivante :/> /backstores/block create name=block_backend dev=/dev/sdb Generating a wwn serial. Created block storage object block_backend using /dev/sdb.
- PSCSI (périphériques Linux pass-through SCSI)
- Tout objet de stockage qui supporte Direct Pass Through des commandes SCSI sans émulation SCSI, avec un périphérique SCSI sous-jacent qui apparaît avec lsscsi dans
/proc/scsi/scsi
(comme un disque dur SAS) peut être configuré en tant que backstore. SCSI-3 et versions supérieures sont pris en charge dans ce sous-système.Avertissement
PSCSI doit être uniquement utilisé par les utilisateurs avancés. Les commandes avancées de SCSI comme ALUA (Aysmmetric Logical Unit Assignment) ou Persistant Reservations (utilisées par VMware ESX et vSphere) ne sont généralement pas implémentées dans le firmware et peuvent provoquer des dysfonctionnements ou des pannes. En cas de doute, utilisez BLOCK pour les intallations en production à la place.Pour créer un backstore PSCSI de périphérique physique SCSI, unpériphériqueTYPE_ROM
utilisant/dev/sr0
dans ce exemple, exécutez :/> backstores/pscsi/ create name=pscsi_backend dev=/dev/sr0 Generating a wwn serial. Created pscsi storage object pscsi_backend using /dev/sr0
- Memory Copy RAM disk (Linux RAMDISK_MCP)
- Les disques Memory Copy RAM (
ramdisk
) vous donnent des disques de RAM avec émulation SCSI et des mappages de mémoire séparés qui utilisent les mappages en copiant la mémoire des initiateurs. Cela vous donne une capacité sur plusieurs sessions et c'est particulièrement utile pour un stockage en massse volatile à but de production.Pour créer 1Go Disque RAM Backstore, exécuter la commande suivante :/> backstores/ramdisk/ create name=rd_backend size=1GB Generating a wwn serial. Created rd_mcp ramdisk rd_backend with size 1GB.
24.1.3. Créer une Cible iSCSI
Procédure 24.1. Créer une Cible iSCSI
- Exécuter
targetcli
. - Rendez-vous sur le chemin de configuration iSCSI :
/> iscsi/
Note
La commandecd
est également acceptée pour les changements de répertoires, ainsi que pour indiquer le chemin vers lequel se déplacer. - Créer une cible iSCSI en utilisant un nom de cible par défaut.
/iscsi> create Created target iqn.2003-01.org.linux-iscsi.hostname.x8664:sn.78b473f296ff Created TPG1
Ou bien créer une cible iSCSI en utilisant un nom spécifique./iscsi > create iqn.2006-04.com.example:444 Created target iqn.2006-04.com.example:444 Created TPG1
- Vérifier que la cible nouvellement créée soit visible quand les cibles sont répertoriées par la commande
ls
./iscsi > ls o- iscsi.......................................[1 Target] o- iqn.2006-04.com.example:444................[1 TPG] o- tpg1...........................[enabled, auth] o- acls...............................[0 ACL] o- luns...............................[0 LUN] o- portals.........................[0 Portal]
Note
24.1.4. Configuration d'un Portail iSCSI
Note
/iscsi/iqn-name/tpg1/portals delete ip_address=0.0.0.0 ip_port=3260
, puis créer un nouveau portail avec les informations requises.
Procédure 24.2. Créer un portail iSCSI
- Se rendre dans le TPG.
/iscsi> iqn.2006-04.example:444/tpg1/
- Il y a deux façons de créer un portail : créer un portail par défaut, ou créer un portail spécifiant quelle adresse IP écouter.Créer un portail par défaut qui utilise le port par défaut 3260 et qui permet à la cible d'écouter sur toutes les adresses IP de ce port.
/iscsi/iqn.20...mple:444/tpg1> portals/ create Using default IP port 3260 Binding to INADDR_Any (0.0.0.0) Created network portal 0.0.0.0:3260
Pour créer un portail spécifiant sur quelle adresse IP écouter, exécuter la commande suivante./iscsi/iqn.20...mple:444/tpg1> portals/ create 192.168.122.137 Using default IP port 3260 Created network portal 192.168.122.137:3260
- Vérifier que le portail nouvellement créé soit visible par la commande
ls
./iscsi/iqn.20...mple:444/tpg1> ls o- tpg.................................. [enambled, auth] o- acls ......................................[0 ACL] o- luns ......................................[0 LUN] o- portals ................................[1 Portal] o- 192.168.122.137:3260......................[OK]
24.1.5. Configurer les LUN
Procédure 24.3. Configurer les LUN
- Créer des LUN d'objets de stockage déjà créés.
/iscsi/iqn.20...mple:444/tpg1> luns/ create /backstores/ramdisk/ramdisk1 Created LUN 0. /iscsi/iqn.20...mple:444/tpg1> luns/ create /backstores/block/block1 Created LUN 1. /iscsi/iqn.20...mple:444/tpg1> luns/ create /backstores/fileio/file1 Created LUN 2.
- Afficher les changements.
/iscsi/iqn.20...mple:444/tpg1> ls o- tpg.................................. [enambled, auth] o- acls ......................................[0 ACL] o- luns .....................................[3 LUNs] | o- lun0.........................[ramdisk/ramdisk1] | o- lun1.................[block/block1 (/dev/vdb1)] | o- lun2...................[fileio/file1 (/foo.img)] o- portals ................................[1 Portal] o- 192.168.122.137:3260......................[OK]
Note
Nous vous rappelons que le nom LUN par défaut démarre par 0, et non 1, ce qui était le cas avectgtd
dans Red Hat Enterprise Linux 6.
Important
Procédure 24.4. Créer un LUN en lecture-seule
- Pour créer un LUN avec les permissions lecture-seule, exécuter la commande suivante pour commencer :
/> set global auto_add_mapped_luns=false Parameter auto_add_mapped_luns is now 'false'.
Cela évite l'auto-mappage des LUN en ACL existants, ce qui permet le mappage manuel des LUN. - Puis, créer manuellement le LUN par la commande
iscsi/target_iqn_name/tpg1/acls/initiator_iqn_name/ create mapped_lun=next_sequential_LUN_number tpg_lun_or_backstore=backstore write_protect=1
./> iscsi/iqn.2015-06.com.redhat:target/tpg1/acls/iqn.2015-06.com.redhat:initiator/ create mapped_lun=1 tpg_lun_or_backstore=/backstores/block/block2 write_protect=1 Created LUN 1. Created Mapped LUN 1. /> ls o- / ...................................................... [...] o- backstores ........................................... [...] <snip> o- iscsi ......................................... [Targets: 1] | o- iqn.2015-06.com.redhat:target .................. [TPGs: 1] | o- tpg1 ............................ [no-gen-acls, no-auth] | o- acls ....................................... [ACLs: 2] | | o- iqn.2015-06.com.redhat:initiator .. [Mapped LUNs: 2] | | | o- mapped_lun0 .............. [lun0 block/disk1 (rw)] | | | o- mapped_lun1 .............. [lun1 block/disk2 (ro)] | o- luns ....................................... [LUNs: 2] | | o- lun0 ...................... [block/disk1 (/dev/vdb)] | | o- lun1 ...................... [block/disk2 (/dev/vdc)] <snip>
La ligne mapped_lun1 a maintenant (ro) à la fin (à la différence de mapped_lun0's (rw)) ce qui indique « read-only » (lecture-seule).
24.1.6. Configurez les ACL
/etc/iscsi/initiatorname.iscsi
.
Procédure 24.5. Configurez les ACL
- Déplacez-vous dans le répertoire acls.
/iscsi/iqn.20...mple:444/tpg1> acls/
- Créer un ACL. Vous pouvez soit utliser le nom d'initiateur qui se trouve dans
/etc/iscsi/initiatorname.iscsi
sur l'initiateur, ou si vous utilisez un nom facile à retenir, voir Section 24.2, « Créer un initiateur iSCSI » pour vous assurer que l'ACL corresponde à l'initiateur. Ainsi :/iscsi/iqn.20...444/tpg1/acls> create iqn.2006-04.com.example.foo:888 Created Node ACL for iqn.2006-04.com.example.foo:888 Created mapped LUN 2. Created mapped LUN 1. Created mapped LUN 0.
Note
Le comportement de l'exemple ci-dessus dépend de la configuration qui aura été utilisée. Dans ce cas, le paramètre globalauto_add_mapped_luns
sera utilisé. Cela fait correspondre les LUN aux ACL créés automatiquement. - Afficher les changements.
/iscsi/iqn.20...444/tpg1/acls> ls o- acls .................................................[1 ACL] o- iqn.2006-04.com.example.foo:888 ....[3 Mapped LUNs, auth] o- mapped_lun0 .............[lun0 ramdisk/ramdisk1 (rw)] o- mapped_lun1 .................[lun1 block/block1 (rw)] o- mapped_lun2 .................[lun2 fileio/file1 (rw)]
24.1.7. Installation de l'une cible Fibre Channel over Ethernet (FCoE)
targetcli
.
Important
fcoeadm -i
affiche les interfaces FCoE configurées.
Procédure 24.6. Configurer un cible FCoE
- Configurer une cible FCoE requiert l'installation du package
targetcli
et de ses dépendances. Voir Section 24.1, « Installation de la Cible » pour obtenir plus d'informations sur les bases detargetcli
et son installation. - Créer une instance de cible FCoE sur une interface FCoE.
/> tcm_fc/ create 00:11:22:33:44:55:66:77
Si des interfaces FCoE sont présentes sur le système, la complétion par la touche de tabulation après la saisie decreate
répertoriera les interfaces disponibles. Si ce n'est pas le cas, assurez-vous quefcoeadm -i
affiche bien des interfaces actives. - Mettre en correspondance d'un « backstore » avec une instance cible.
Exemple 24.1. Exemple de mise en correspondance d'un « backstore » avec l'instance cible.
/> tcm_fc/00:11:22:33:44:55:66:77
/> luns/ create /backstores/fileio/example2
- Autoriser l'accès au LUN à partir d'un initiateur FCoE.
/> acls/ create 00:99:88:77:66:55:44:33
Le LUN devrait désormais être accessible à cet initiateur. - Pour rendre les changements persistants à travers les démarrages, utiliser la commande
saveconfig
et tapezyes
lorsqu'on vous y invite, sinon la configuration sera perdue au second démarrage. - Quittez
targetcli
en saisissantexit
ou ctrl+D.
24.1.8. Supprimer les objets par la commande targetcli
/> /backstores/backstore-type/backstore-name
/> /iscsi/iqn-name/tpg/acls/ delete iqn-name
/> /iscsi delete iqn-name
24.1.9. Références targetcli
targetcli
, référez-vous aux ressources suivantes :
man targetcli
- La page man
targetcli
inclut un exemple. - Linux SCSI Target Wiki
- Screencast par Andy Grover
Note
Chargé le 28 février 2012. Le nom du service a changé. Il est passé detargetcli
àtarget
.
24.2. Créer un initiateur iSCSI
targetcli
comme dans Section 24.1, « Installation de la Cible » utiliser iscsiadm
pour définir un initiateur.
Note
iscsiadm
, le service démarrera.
Procédure 24.7. Créer un initiateur iSCSI
- Installer
iscsi-initiator-utils
.~]$ sudo yum install iscsi-initiator-utils
- Si un nom personnalisé a été donnée à l'ACL dans Section 24.1.6, « Configurez les ACL », alors, modifiez le fichier
/etc/iscsi/initiatorname.isci
pour qu'il corresponde.~]$ sudo vim /etc/iscsi/initiatorname.iscsi ~]$ cat /etc/iscsi/initiatorname.iscsi InitiatorName=iqn.2006-04.com.example.foo
- Découvrir la cible.
~]$ sudo iscsiadm -m discovery -t st -p target-ip-address 10.64.24.179:3260,1 iqn.2006-04.com.example:3260
- Connectez-vous à la cible avec le nom iqn qui se trouve dans l'étape précédente.
~]$ sudo iscsiadm -m node -T iqn.2006-04.com.example:3260 -l Logging in to [iface: default, target: iqn.2006-04.com.example:3260, portal: 10.64.24.179,3260] (multiple) Login to [iface: default, target: iqn.2006-04.com.example:3260, portal: 10.64.24.179,3260] successful.
24.3. Fibre Channel
24.3.1. Interface de programmation Fibre Channel
/sys/class/
qui contiennent des fichiers utilisés pour fournir l'API de l'espace utilisateur. Dans chaque élément, les numéros des hôtes sont désignés par H
, les numéros des bus par B
, les cibles par T
, les numéros d'unité logique (LUN) par L
, et les numéros de ports distants par R
.
Important
- Transport :
/sys/class/fc_transport/targetH:B:T/
port_id
— ID/adresse du port 24 bitsnode_name
— nom du nœud 64 bitsport_name
— nom du port 64 bits
- Port distant :
/sys/class/fc_remote_ports/rport-H:B-R/
port_id
node_name
port_name
dev_loss_tmo
— nombre de secondes à attendre avant de marquer un lien comme étant « erroné ». Une fois qu'un lien est marqué comme étant erroné, les E/S exécutées sur le chemin correspondant (ainsi que toute nouvelle E/S sur ce chemin) échoueront.La valeur par défautdev_loss_tmo
varie, en fonction du pilote ou périphérique utilisé. Si un adaptateur Qlogic est utilisé, la valeur par défaut est de 35 secondes, tandis que si un adaptateur Emulex est utilisé, elle sera de 30 secondes. La valeurdev_loss_tmo
peut être modifiée via le paramètredev_loss_tmo
du modulescsi_transport_fc
, même si le pilote peut remplacer cette valeur de délai d'expiration.La valeur maximum dedev_loss_tmo
est de 600 secondes. Sidev_loss_tmo
est paramétré sur zéro ou toute valeur plus importante que 600, alors les délais d'expiration internes du pilote seront utilisés à la place.fast_io_fail_tmo
— temps à attendre avant de faire échouer les E/S exécutées lorsqu'un problème de lien est détecté. Les E/S qui atteignent le pilote échoueront. Si des E/S se trouvent dans une file d'attente bloquée, elles n'échoueront pas avant quedev_loss_tmo
n'expire et que la file ne soit débloquée.
- Hôte :
/sys/class/fc_host/hostH/
24.3.2. Pilotes et capacités natifs Fibre Channel
lpfc
qla2xxx
zfcp
bfa
Tableau 24.1. Fonctionnalités de l'API Fibre Channel
24.4. Configurer une interface FCoE (« Fibre-Channel Over Ethernet »)
fcoe-utils
lldpad
Procédure 24.8. Configurer une interface Ethernet pour utiliser FCoE
- Configurez un nouveau réseau VLAN, copier un script réseau existante (par exemple,
/etc/fcoe/cfg-eth0
) et changer le nom du périphérique Ethernet qui prend en charge FCoE. Ceci vous fournira un fichier par défaut à configurer. Étant donné que le périphérique FCoE est nomméethX
, veuillez exécuter :# cp /etc/fcoe/cfg-eth0 /etc/fcoe/cfg-ethX
Modifiez le contenu decfg-ethX
comme nécessaire.DCB_REQUIRED
devrait être défini surno
pour les interfaces réseau qui implémentent un client DCBX (Data Center Bridging Exchange) matériel. - Si vous souhaitez que le périphérique soit automatiquement chargé pendant le démarrage, définissez
ONBOOT=yes
dans le fichier/etc/sysconfig/network-scripts/ifcfg-ethX
correspondant. Par exemple, si le périphérique FCoE est nommé eth2, alors veuillez modifier/etc/sysconfig/network-scripts/ifcfg-eth2
en conséquence. - Lancez le démon de pontage du centre de données (
dcbd
) en exécutant :# systemctl start lldpad
- Pour les interfaces réseau qui implémentent un client DCBX matériel, ignorez cette étape.Pour les interfaces qui requièrent un client DCBX logiciel, veuillez activer le pontage de centre de données sur l'interface Ethernet en exécutant :
# dcbtool sc ethX dcb on
Puis, activez FCoE sur l'interface Ethernet en exécutant :# dcbtool sc ethX app:fcoe e:1
Notez que ces commandes ne fonctionneront uniquement que si les paramètresdcbd
de l'interface Ethernet n'ont pas été modifiés. - Chargez le périphérique FCoE en utilisant :
# ifconfig ethX up
- Lancez FCoE en utilisant :
# systemctl start fcoe
Le périphérique FCoE apparaîtra sous peu, en supposant que tous les autres paramètres de la structure soient corrects. Pour afficher les périphériques FCoE configurés, veuillez exécuter :# fcoeadm -i
lldpad
pour s'exécuter lors du démarrage. Pour ce faire, veuillez utiliser chkconfig
, comme dans :
# systemctl enable lldpad
# systemctl enable fcoe
Note
# systemctl stop fcoe
stoppe le démon, mais ne réinitialise pas la configuration des interfaces FCoE. Pour cela, exécuter la commande # systemctl -s SIGHUP kill fcoe
.
24.5. Configurer une interface FCoE pour qu'elle soit automatiquement montée lors du démarrage
Note
/usr/share/doc/fcoe-utils-version/README
à partir de Red Hat Enterprise Linux 6.1. Veuillez consulter ce document en cas de changement lors des sorties de versions mineures.
udev
, autofs
, et autres méthodes similaires. Cependant, de temps à autres un service particulier peut nécessiter que le disque FCoE soit monté pendant le démarrage. Dans de tels cas, le disque FCoE devrait être monté dès que le service fcoe
est exécuté et avant l'initialisation de tout service qui requiert le disque FCoE.
fcoe
. Le script de démarrage fcoe
se trouve ici : /etc/init.d/fcoe
.
Exemple 24.2. Code de montage FCoE
/etc/fstab
:
mount_fcoe_disks_from_fstab() { local timeout=20 local done=1 local fcoe_disks=($(egrep 'by-path\/fc-.*_netdev' /etc/fstab | cut -d ' ' -f1)) test -z $fcoe_disks && return 0 echo -n "Waiting for fcoe disks . " while [ $timeout -gt 0 ]; do for disk in ${fcoe_disks[*]}; do if ! test -b $disk; then done=0 break fi done test $done -eq 1 && break; sleep 1 echo -n ". " done=1 let timeout-- done if test $timeout -eq 0; then echo "timeout!" else echo "done!" fi # mount any newly discovered disk mount -a 2>/dev/null }
mount_fcoe_disks_from_fstab
doit être invoquée après que le script du service fcoe
ait lancé le démon fcoemon
. Ceci montera les disques FCoE spécifiés par les chemins suivants dans /etc/fstab
:
/dev/disk/by-path/fc-0xXX:0xXX /mnt/fcoe-disk1 ext3 defaults,_netdev 0 0 /dev/disk/by-path/fc-0xYY:0xYY /mnt/fcoe-disk2 ext3 defaults,_netdev 0 0
fc-
et _netdev
activent la fonction mount_fcoe_disks_from_fstab
pour identifier les entrées de montage de disques FCoE. Pour obtenir davantage d'informations sur les entrées /etc/fstab
, veuillez consulter man 5 fstab
.
Note
fcoe
n'implémente pas de délai d'expiration pour la récupération de disque FCoE. Ainsi, le code de montage FCoE doit implémenter son propre délai d'expiration.
24.6. iSCSI
iscsiadm
. Avant d'utiliser l'utilitaire iscsiadm
, veuillez commencer par installer le paquet iscsi-initiator-utils
en exécutant yum install iscsi-initiator-utils
.
node.startup = automatic
, alors le service iSCSI ne sera pas lancé tant que la commande iscsiadm
n'est pas exécutée, celle-ci requiert le démarrage du module du noyau iscsid ou iscsi. Par exemple, exécuter la commande de découverte iscsiadm -m discovery -t st -p ip:port
provoquera la lancement du service iSCSI par iscsiadmin.
service iscsid force-start
.
24.6.1. API iSCSI
# iscsiadm -m session -P 3
# iscsiadm -m session -P 0
# iscsiadm -m session
driver [sid] target_ip:port,target_portal_group_tag proper_target_name
Exemple 24.3. Sortie de la commande iscisadm -m session
# iscsiadm -m session tcp [2] 10.15.84.19:3260,2 iqn.1992-08.com.netapp:sn.33615311 tcp [3] 10.15.85.19:3260,3 iqn.1992-08.com.netapp:sn.33615311
/usr/share/doc/iscsi-initiator-utils-version/README
.
24.7. Dénomination persistante
24.7.1. /dev/sd*
et leurs nombres Majeurs et Mineurs
sd
sont identifiés en interne par une collection de numéros de périphériques principaux et leurs numéros mineurs associés. Les numéros majeurs utilisés à cette fin ne sont pas dans une plage contiguë. Chaque périphérique de stockage est représenté par un numéro principal et un éventail de numéros mineurs, qui servent à identifier le dispositif entier ou une partition au sein de l’appareil. Il y a une association directe entre les numéros majeurs et mineurs attribués à un périphérique et les nombres sous la forme de sd< lettre(s)>< numéro(s) en option>
. Chaque fois que le pilote sd
détecte un nouveau périphérique, une gamme de numéros mineurs et numéros majeurs est allouée. Chaque fois qu’un périphérique est supprimé du système d’exploitation, la gamme de numéros mineurs et majeurs est libérée afin d'être réutilisés plus tard.
sd
sont attribués pour chaque périphérique lorsqu’il est détecté. Cela signifie que l’association entre la plage de numéros majeurs et mineurs et les noms associés de sd
peut changer si l’ordre de détection des périphériques change. Bien que cela soit inhabituel avec certaines configurations matérielles (par exemple, avec les disques ayant leur ID de cible SCSI assignée par leur emplacement physique dans le châssis), cela peut néanmoins se produire. Voici des exemples de situations où cela peut se produire :
- Un disque peut ne pas s’allumer ou répondre au contrôleur SCSI. Ainsi, il ne sera pas détecté par la sonde classique du périphérique. Le disque ne sera pas accessible au système et les périphériques ultérieurs auront leur plage de numéros majeurs et mineurs, y compris les noms de
sd
associés déplacées vers le bas. Par exemple, si un disque normalement dénommésdb
n’est pas détecté, un disque normalement appelésdc
apparaît commesdb
. - Un contrôleur SCSI (adaptateur de bus hôte ou HBA) peut ne pas s’initialiser, ce qui fait que tous les disques connectés à cet adaptateur HBA ne sont pas détectés. Tous les disques connectés aux HBA sondés par la suite se verront attribuer différentes gammes de numéros majeurs et mineurs, et différents noms
sd
associés. - L'ordre d'initialisation peut changer si différents types de HBA sont présents dans le système. Cela entrainera un détection des disques connectés à ces HBA dans un ordre différent. Cela a lieu également si les HBA vont dans différents slots PCI du système.
- Les disques connectés au système avec Fibre Channel, iSCSI, ou avec des adaptateurs FCoE pourraient être inaccessibles au moment où les périphériques de stockage sont détectés, en raison d’une baie de stockage ou d'un interrupteur qui passe hors tension, par exemple. Cela pourrait se produire lorsqu'un système démarre à nouveau après une panne de courant, si la matrice de stockage prend plus de temps à se mettre en ligne qu'il ne faut pour le reboot du système. Bien que certains pilotes Fibre Channel prennent en charge un mécanisme qui sert à spécifier un ID de cible SCSI persistant au mappage WWPN, cela n’entraînera pas les gammes majeures et mineures de numéros, ainsi que les noms de
sd
associés à être réservés, cela ne fournira que des numéros d’ID de cibles SCSI compatibles.
sd
associés quand on se réfère aux périphériques, comme dans le fichier /etc/fstab
. Il est possible que le mauvais périphérique soit monté et qu'une corruption de données en résulte.
sd
même si un autre mécanisme est utilisé (comme lorsque des erreurs sont reportées par un périphérique). C'est parce que le noyau Linux utilise les noms sd
(et les tuples SCSI host/channel/target/LUN) dans les messages du noyau à propos du périphérique.
24.7.2. WWID
0x83
) ou le numéro de série de l'unité (page 0x80
). Les mappages de ces WWID aux noms /dev/sd
actuels peuvent être observés sur les liens symboliques maintenus dans le répertoire /dev/disk/by-id/
.
Exemple 24.4. WWID
0x83
aurait :
scsi-3600508b400105e210000900000490000 -> ../../sda
0x80
aurait :
scsi-SSEAGATE_ST373453LW_3HW1RHM6 -> ../../sda
/dev/sd
sur ce système. Les applications peuvent utiliser le nom /dev/disk/by-id/
pour référencer les données sur le disque, même si le chemin vers le périphérique change, et même pendant l'accession à ce périphérique par différents systèmes.
/dev/mapper/wwid
, tel que /dev/mapper/3600508b400105df70000e00000ac0000
.
multipath -l
affiche le mappage vers les identificateurs non-persistants : Hôte:Canal:Cible:LUN
, le nom /dev/sd
, et le numéro major:minor
.
3600508b400105df70000e00000ac0000 dm-2 vendor,product [size=20G][features=1 queue_if_no_path][hwhandler=0][rw] \_ round-robin 0 [prio=0][active] \_ 5:0:1:1 sdc 8:32 [active][undef] \_ 6:0:1:1 sdg 8:96 [active][undef] \_ round-robin 0 [prio=0][enabled] \_ 5:0:0:1 sdb 8:16 [active][undef] \_ 6:0:0:1 sdf 8:80 [active][undef]
/dev/sd
correspondant sur le système. Ces noms sont persistants à travers les changements de chemin, et sont cohérents lors de l'accession au périphérique à partir de différents systèmes.
user_friendly_names
(de device-mapper-multipath) est utilisée, le WWID est mappé à un nom sous le format /dev/mapper/mpathn
. Par défaut, ce mappage est maintenu dans le fichier /etc/multipath/bindings
. Ces noms mpathn
sont persistants tant que le fichier est maintenu.
Important
user_friendly_names
, alors des étapes supplémentaires sont requises pour obtenir des noms cohérents dans un cluster. Veuillez consulter les « Noms cohérents de périphériques multivoies » dans la section « Cluster » de l'ouvrage Utilisation de l'administration et de la configuration DM Multipath.
udev
pour implémenter des noms persistants de votre choix, mappés au WWID du stockage.
24.7.3. Noms de périphériques gérés par le mécanisme udev
(/dev/disk/by-*
)
udev
est consititué de trois composants principaux :
- Le noyau
- Génère des événements qui sont envoyés dans l'espace utilisateur quand les périphériques sont ajoutés, supprimées ou modifiés.
- Le démon
udevd
- Réceptionne les événements.
- Les règles
udev
- Indiquent les actions à prendre quand le démon
udev
reçoit des événements de noyau.
udev
qui créent des liens symboliques dans le répertoire /dev/disk/
permettant ainsi à des périphériques de stockage d'être référencés par leur contenu, un identifiant unique, un numéro de série ou le chemin d'accès du matériel utilisé pour accéder au périphérique.
/dev/disk/by-label
- Les entrées à ce répertoire fournissent un nom symbolique qui se réfère au périphérique de stockage par un libellé dans le contenu (c-a-d les données) stocké dans ce périphérique. Le programme
blkid
est utilisé pour lire les données du périphérique et déterminer un nom (c-a-d un libéllé) de périphérique. Exemple :/dev/disk/by-label/Boot
Note
Les informations se trouvent dans le contenu (c-a-d les données) du périphérique, donc si le contenu est copié à partir d'un autre périphérique, le libellé sera le même.Le libellé peut aussi être utilisé pour se référer au périphérique qui se trouve dans/etc/fstab
en utilisant la syntaxe suivante :LABEL=Boot
/dev/disk/by-uuid
- Les entrées à ce répertoire fournissent un nom symbolique qui se réfère au périphérique de stockage par un identifiant unique dans le contenu (c-a-d les données) stocké dans le périphérique. Le programme
blkid
est utilisé pour lire les données du périphérique et déterminer un identifiant unique (c-a-d un uuid) de périphérique. Exemple :UUID=3e6be9de-8139-11d1-9106-a43f08d823a6
/dev/disk/by-id
- Les entrées à ce répertoire fournissent un nom symbolique qui se réfère au périphérique de stockage par un identifiant unique (différent de tous les autres périphériques de stockage). L'identifiant est une propriété du périphérique mais il n'est pas stocké dans le contenu (c-a-d les données) des périphériques. Exemple :
/dev/disk/by-id/scsi-3600508e000000000ce506dc50ab0ad05
/dev/disk/by-id/wwn-0x600508e000000000ce506dc50ab0ad05
L'id s'obtient à partir de l'ID word-wide du périphérique, ou du numéro de série du périphérique. Les entrées/dev/disk/by-id
peuvent également inclure un numéro de partition. Exemple :/dev/disk/by-id/scsi-3600508e000000000ce506dc50ab0ad05-part1
/dev/disk/by-id/wwn-0x600508e000000000ce506dc50ab0ad05-part1
/dev/disk/by-path
- Les entrées de ce répertoire procurent un nom symbolique qui désigne le périphérique de stockage par le chemin d’accès au matériel utilisé pour accéder au périphérique, commençant par une référence au contrôleur de stockage dans la hiérarchie PCI et qui inclut l’hôte SCSI, le canal, la cible, et les numéros LUN et, parfois, le nombre de partitions. Bien que ces noms soient préférable à l’utilisation des numéros majeurs et mineurs ou des noms de
sd
, vous devez veiller à ce que les chiffres cibles ne changent pas dans un environnement SAN Fibre Channel (par exemple, par le biais de liaisons permanentes) et que l’utilisation des noms soit mise à jour si un adaptateur d'hôte est déplacé vers un autre emplacement PCI. En outre, il est possible que le nombre d’hôtes SCSI change si un HBA ne parvient pas à interroger, si les pilotes sont chargés dans un ordre différent, ou si un nouvel HBA est installé sur le système. Exemple de listing de by-path :/dev/disk/by-path/pci-0000:03:00.0-scsi-0:1:0:0
Les entrées/dev/disk/by-path
peuvent également inclure un numéro de partition, comme :/dev/disk/by-path/pci-0000:03:00.0-scsi-0:1:0:0-part1
24.7.3.1. Limitations de la convention de nommage de périphérique d' udev
udev
.
- Il est possible que le périphérique ne soit pas accessible au moment de la requête car le mécanisme d'
udev
se repose sans doute sur la capacité d'interroger le périphérique de stockage quand les règles d'udev
sont analysées à l'occasion d'un événementudev
. Cela a une meilleure chance de se produire avec Fibre Channel, iSCSI ou les périphériques de stockage FCoE quand le périphérique n'est pas situé sur le chassis du serveur. - Le noyau envoie également des événements
udev
à tout moment, donc les règles sont analysées et cela entraîne la suppression des liens/dev/disk/by-*
quand le périphérique n'est plus accessible. - Un lapse de temps peut s'écouler entre le moment où l'événement
udev
est généré et le moment où il est traité (comme quand on détecte un grand nombre de périphériques et que le démonudevd
d'espace utilisateur prend un bon moment à analyser les règles pour chacun). Ceci peut entraîner un délai entre le moment où le noyau détecte le périphérique et le moment où les noms/dev/disk/by-*
sont rendus disponibles. - Des programmes externes comme
blkid
qui sont invoqués par les règles peuvent ouvrir le périphérique pendant un court moment, rendant ainsi le périphérique inaccessible à tout autre utilisation.
24.8. Supprimer un périphérique de stockage
vmstat 1 100
; la suppression du périphérique n'est pas recommandée si :
- La mémoire disponible fait moins de 5% de la totalité de la mémoire dans plus de 10 échantillons pour 100 (la commande
free
peut également être utilisée pour afficher la mémoire totale). - La fonction swap est active (colonnes
si
etso
non égales à zéro dans la sortievmstat
).
Procédure 24.9. S'assurer d'une suppression de périphérique normale
- Fermez tous les utilisateurs du périphérique et effectuez une copie de sauvegarde des données du périphérique selon les besoins.
- Veuillez utiliser
umount
pour démonter tout système de fichiers qui aurait monté le périphérique. - Supprimez le périphérique de tout volume
md
et LVM qui l'utilise. Si le périphérique est un membre d'un groupe de volumes LVM, alors il faudra sans doute déplacer les données hors du périphérique en utilisant la commandepvmove
, puis utiliser la commandevgreduce
pour supprimer le volume physique, et (optionnellement)pvremove
pour supprimer les métadonnées LVM du disque. - Si le périphérique utilise la fonction multivoies, veuillez exécuter
multipath -l
et prendre note de tous les chemins menant au périphérique. Ensuite, veuillez supprimer le périphérique multivoies en utilisantmultipath -f device
. - Veuillez exécuter
blockdev --flushbufs device
pour vider toute E/S restante sur tous les chemins vers le périphérique. Ceci est particulièrement important pour les périphériques bruts, lorsqu'il n'y a pas d'opérationumount
ouvgreduce
pour causer un vidage d'E/S. - Veuillez supprimer toute référence au nom basée sur le chemin du périphérique, comme
/dev/sd
,/dev/disk/by-path
ou sur le numéromajor:minor
, dans les applications, scripts, ou utilitaires du système. Ceci est important pour s'assurer que les différents périphériques ajoutés dans le futur ne soient pas confondus avec le périphérique actuel. - Finalement, veuillez supprimer chaque chemin vers le périphérique à partir du sous-système SCSI. Pour ce faire, veuillez utiliser la commande
echo 1 > /sys/block/device-name/device/delete
, oùdevice-name
pourrait, par exemple, êtresde
.Une autre variation de cette opération estecho 1 > /sys/class/scsi_device/h:c:t:l/device/delete
, oùh
est le numéro HBA,c
est le canal sur le HBA,t
est l'ID de la cible SCSI, etl
est le LUN.Note
L'ancienne forme de ces commandes,echo "scsi remove-single-device 0 0 0 0" > /proc/scsi/scsi
, est déconseillée.
nom-du-périphérique
, le numéro du HBA, canal du HBA, l'ID et le LUN de la cible SCSI d'un périphérique à l'aide de diverses commandes, telles que lsscsi
, scsi_id
, multipath -l
, et ls -l /dev/disk/by-*
.
24.9. Supprimer un chemin vers un périphérique de stockage
Procédure 24.10. Supprimer un chemin vers un périphérique de stockage
- Veuillez supprimer toute référence au nom basée sur le chemin du périphérique, comme
/dev/sd
,/dev/disk/by-path
ou sur le numéromajor:minor
, dans les applications, scripts, ou utilitaires du système. Ceci est important pour s'assurer que les différents périphériques ajoutés dans le futur ne soient pas confondus avec le périphérique actuel. - Mettez le chemin hors-ligne en utilisant
echo offline > /sys/block/sda/device/state
.Ceci provoquera l'échec immédiat de toute E/S ultérieure envoyée sur ce chemin. Device-mapper-multipath continuera d'utiliser les chemins restants vers le périphérique. - Veuillez supprimer le chemin du sous-système SCSI. Pour ce faire, veuillez utiliser la commande
echo 1 > /sys/block/device-name/device/delete
, oùdevice-name
pourrait, par exemple, êtresde
(comme décrit dans Procédure 24.9, « S'assurer d'une suppression de périphérique normale »).
24.10. Ajouter un périphérique ou un chemin de stockage
/dev/sd
, le numéro de major:minor
et le nom de /dev/disk/by-path
) assigné par le système au nouveau périphérique peut déjà avoir été utilisé par un périphérique qui a depuis été supprimé. Ainsi, veuillez vous assurer que toutes les anciennes références au nom du périphérique basé chemin ont bien été supprimées. Autrement, le nouveau périphérique pourrait malencontreusement passer pour l'ancien périphérique.
Procédure 24.11. Ajouter un périphérique ou un chemin de stockage
- La première étape de l'ajout d'un périphérique ou d'un chemin de stockage consiste à physiquement activer l'accès au nouveau périphérique de stockage ou à physiquement activer un nouveau chemin vers un périphérique existant. Ceci peut être effectué à l'aide de commandes appartenant aux vendeurs sur le serveur de stockage iSCSI ou Fibre Channel. Une fois effectué, prenez note de la valeur LUN du nouveau stockage qui sera présenté à votre hôte. Si le serveur de stockage est Fibre Channel, veuillez aussi prendre note du WWNN (World Wide Node Name) du serveur de stockage et déterminez s'il y a un WWNN unique pour tous les ports sur le serveur de stockage. Si ce n'est pas le cas, veuillez noter le WWPN (World Wide Port Name) de chaque port qui sera utilisé pour accéder au nouveau LUN.
- Veuillez ensuite indiquer le nouveau périphérique de stockage au système d'exploitation, ou le nouveau chemin à un périphérique existant. La commande recommandée est la suivante :
$ echo "c t l" > /sys/class/scsi_host/hosth/scan
Dans la commande précédente,h
est le numéro HBA,c
est le canal sur le HBA,t
est l'ID de la cible SCSI etl
est le LUN.Note
La plus ancienne forme de cette commande,echo "scsi add-single-device 0 0 0 0" > /proc/scsi/scsi
, est dépréciée.- Sur certains matériaux Fibre Channel, un nouveau LUN créé sur la matrice RAID pourrait ne pas être visible par le système d'exploitation tant qu'une opération LIP (Loop Initialization Protocol) n'est pas effectuée. Reportez-vous à Section 24.11, « Scanner les interconnexions du stockage » pour obtenir des instructions sur la manière d'effectuer cela.
Important
Il faudra arrêter les E/S tant que cette opération est exécutée, si un LIP est requis. - Si un nouveau LUN a été ajouté à la matrice RAID mais qu'il n'est toujours pas configuré par le système d'exploitation, veuillez confirmer la liste des LUN qui sont exportés par la matrice à l'aide de la commande
sg_luns
, faisant partie du paquet sg3_utils. Ceci délivrera la commandeSCSI REPORT LUNS
à la matrice RAID et retournera une liste des LUN présents.
Pour les serveurs de stockage Fibre Channel qui implémentent un WWNN unique pour tous les ports, vous pouvez déterminer les valeursh
,c
ett
correctes (c'est-à-dire le numéro HBA, le canal HBA et l'ID de la cible SCSI) en recherchant le WWNN danssysfs
.Exemple 24.5. Déterminer les valeurs
h
,c
ett
correctesPar exemple, si le WWNN du serveur de stockage est0x5006016090203181
veuillez utiliser :$ grep 5006016090203181 /sys/class/fc_transport/*/node_name
La sortie résultante devrait être similaire à ceci :/sys/class/fc_transport/target5:0:2/node_name:0x5006016090203181 /sys/class/fc_transport/target5:0:3/node_name:0x5006016090203181 /sys/class/fc_transport/target6:0:2/node_name:0x5006016090203181 /sys/class/fc_transport/target6:0:3/node_name:0x5006016090203181
Ceci indique qu'il y a quatre routes Fibre Channel vers cette cible (deux HBA à canal unique, menant chacune à deux ports de stockage). En supposant qu'une valeur LUN est56
, alors la commande suivante configurera le premier chemin :$ echo "0 2 56" > /sys/class/scsi_host/host5/scan
Ceci doit être effectué pour chaque chemin vers le nouveau périphérique.Pour les serveurs de stockage Fibre Channel qui n'implémentent pas un WWNN unique pour tous les ports, vous pouvez déterminer le numéro HBA, le canal HBA et l'ID de la cible SCSI qui conviennent en recherchant chaque WWNN danssysfs
.Il est aussi possible de déterminer la numéro HBA, le canal HBA et l'ID de la cible SCSI en vous référant à un autre périphérique déjà configuré sur le même chemin que le nouveau périphérique. Ceci peut être accompli à l'aide de diverses commandes, commelsscsi
,scsi_id
,multipath -l
etls -l /dev/disk/by-*
. Ces informations, en plus du numéro LUN du nouveau périphérique, peuvent être utilisés, comme expliqué ci-dessus, afin d'analyser et de configurer ce chemin vers le nouveau périphérique. - Après avoir ajouté tous les chemins SCSI au périphérique, veuillez exécuter la commande
multipath
et vérifier que le périphérique a été configuré correctement. À ce moment, le périphérique peut, par exemple, être ajouté àmd
, LVM,mkfs
, ou àmount
.
24.11. Scanner les interconnexions du stockage
- Toutes les E/S sur interconnexions affectées doivent être mises sur pause et vidées avant d'exécuter la procédure, et les résultats du scan doivent être vérifiés avant de reprendre les E/S.
- Comme pour la suppression de périphériques, scanner des interconnexions n'est pas recommandé lorsque le système se trouve sous pression mémoire. Pour déterminer le niveau de pression mémoire, exécutez la commande
vmstat 1 100
. Scanner les interconnexions n'est pas recommandé si la quantité de mémoire disponible fait moins de 5% de la mémoire totale dans plus de 10 échantillons pour 100. Aussi, le scan d'interconexions n'est pas recommandé si la fonction swap est active (avec des colonnessi
etso
qui ne sont pas égales à zéro dans la sortievmstat
). La commandefree
peut également afficher la mémoire totale.
echo "1" > /sys/class/fc_host/host/issue_lip
- Cette opération effectue un Loop Initialization Protocol (LIP), analyse l’interconnexion et met à jour la couche SCSI pour refléter les périphériques actuellement présents sur le bus. Essentiellement, un LIP est une réinitialisation du bus et entraîne l'ajout ou la suppression de périphériques. Cette procédure est nécessaire pour configurer une nouvelle cible SCSI sur un réseau d’interconnexion Fibre Channel.Notez que
issue_lip
est une opération asynchrone. La commande peut finaliser son but avant la fin du scan. Vous pourrez vérifier dans le fichier/var/log/messages
si la commandeissue_lip
est terminée.Les piloteslpfc
,qla2xxx
, etbnx2fc
supportentissue_lip
. Pour plus d'informations sur les fonctions des API supportées par chaque pilote dans Red Hat Enterprise Linux, consulter Tableau 24.1, « Fonctionnalités de l'API Fibre Channel ». /usr/bin/rescan-scsi-bus.sh
- Le script
/usr/bin/rescan-scsi-bus.sh
a été introduit dans Red Hat Enterprise Linux 5.4. Par défaut, ce script scanne tous les bus SCSI du système, et met à jour la couche SCSI pour refléter la présence de nouveaux périphériques sur le bus. Le script fournit des options supplémentaires pour permettre la suppresion de périphériques, et le lancement des LIP. Pour obtenir plus d'informations sur ce script, y compris les problèmes connus, consulter Section 24.17, « Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh ». echo "- - -" > /sys/class/scsi_host/hosth/scan
- C’est la même commande, comme décrit dans Section 24.10, « Ajouter un périphérique ou un chemin de stockage », qui sert à ajouter un périphérique de stockage ou le chemin d’accès. Dans ce cas, toutefois, le numéro du canal, l'ID cible SCSI, et des valeurs LUN sont remplacés par des caractères génériques. Toute combinaison de caractères génériques et d'identificateurs est autorisée, donc vous pouvez rendre la commande aussi précise qu'englobante selon les besoins. Cette procédure ajoute des LUN, mais ne les supprime pas.
modprobe --remove driver-name
,modprobe driver-name
- En exécutant la commande
modprobe--remove driver-name
suivie de la commandemodprobe driver-name
, vous ré-initialisez totalement l’état de toutes les interconnexions controlées par le pilote. Bien qu’il s'agisse d'une mesure relativement extrême, utiliser les commandes décrites peut être appropriée dans certaines situations. Les commandes peuvent être utilisées, par exemple, pour redémarrer le pilote avec une valeur de paramètre de module différente.
24.12. Configuration de la découverte iSCSI
/etc/iscsi/iscsid.conf
. Ce fichier contient les paramètres iSCSI utilisés par iscsid
et iscsiadm
.
iscsiadm
utilise les paramètres du fichier /etc/iscsi/iscsid.conf
pour créer deux types d'enregistrements :
- Les enregistrements de nœuds dans
/var/lib/iscsi/nodes
- Lors de la connexion à une cible,
iscsiadm
utilise les paramètres dans ce fichier. - Les enregistrements de découverte dans
/var/lib/iscsi/discovery_type
- Lorsque la découverte est appliquée sur la même destination,
iscsiadm
utilise les paramètres dans ce fichier.
/var/lib/iscsi/discovery_type
). Pour cela, utilisez la commande suivante :
discovery_type
peut être sendtargets
, isns
, ou fw
.
man iscsiadm
.
- Modifiez le fichier
/etc/iscsi/iscsid.conf
directement avant d'effectuer une découverte. Les paramètres de découverte utilisent le préfixediscovery
. Pour les afficher, exécutez :# iscsiadm -m discovery -t discovery_type -p target_IP:port
- Alternativement,
iscsiadm
peut aussi être utilisé pour modifier les paramètres d'enregistrement de découverte comme suit :# iscsiadm -m discovery -t discovery_type -p target_IP:port -o update -n setting -v %value
Veuillez consulterman iscsiadm
pour obtenir davantage d'informations sur les paramètressetting
disponibles et les valeursvalue
valides de chacun d'entre eux.
man
de iscsiadm
et iscsid
. Le fichier /etc/iscsi/iscsid.conf
contient également des exemples sur la syntaxe de configuration correcte.
24.13. Configurer le déchargement et la liaison d'interfaces iSCSI
$ ping -I ethX target_IP
ping
échoue, alors vous ne pourrez pas lier une session à un NIC. Si cela est le cas, veuillez vérifier les paramètres réseau en premier.
24.13.1. Afficher les configurations iface disponibles
- Logiciel iSCSI
- Cette pile alloue une instance d'hôte iSCSI (apr ex.
scsi_host
) par session, avec une seule connexion par session. De ce fait,/sys/class_scsi_host
et/proc/scsi
reporteront unscsi_host
pour chaque connexion/session à laquelle vous vous connectez. - Offload iSCSI
- Le pile alloue une instance
scsi_host
à chaque périphérique PCI. Ainsi, chaque port s'affichera en tant que périphérique PCI séparé sur un adaptateur de bus d'hôte, avec unscsi_host
différent pour chaque port HBA.
iscsiadm
utilise la structure iface
. Avec cette structure, une configuration iface
doit être saisie dans /var/lib/iscsi/ifaces
pour chaque port HBA, chaque logiciel iSCSI, ou chaque périphérique de réseau (ethX
) utilisé pour lier les sessions.
iface
disponibles, exécutez iscsiadm -m iface
. Cela permettre d'afficher les informations iface
dans le format suivant :
iface_name transport_name,hardware_address,ip_address,net_ifacename,initiator_name
Tableau 24.2. Configurations iface
Paramètre | Description |
---|---|
iface_name | nom de configuration iface . |
transport_name | Nom du pilote |
hardware_address | Adresse MAC |
ip_address | Adresse IP pour ce port |
net_iface_name | Nom utilisé pour le vlan ou pour l'alias de liaison d'une sessions iSCSI. Pour les déchargements iSCSI, net_iface_name sera <vide> car cette valeur n'est pas persistante au redémarrage. |
initiator_name | Configuration utilisée pour substituer un nouveau nom au nom par défaut de l'initiateur, défini dans /etc/iscsi/initiatorname.iscsi |
Exemple 24.6. Échantillon de sortie de la commande iscsiadm -m iface
iscsiadm -m iface
:
iface0 qla4xxx,00:c0:dd:08:63:e8,20.15.0.7,default,iqn.2005-06.com.redhat:madmax iface1 qla4xxx,00:c0:dd:08:63:ea,20.15.0.9,default,iqn.2005-06.com.redhat:madmax
iface
doit avoir un nom unique (de moins de 65 caractères). Le nom iface_name
des périphériques réseau qui supportent le déchargement apparaît sous le format transport_name.hardware_name
.
Exemple 24.7. Sortie de la commande iscsiadm -m iface
avec une carte réseau Chelsio
iscsiadm -m iface
sur un système utilisant une carte réseau Chelsio :
default tcp,<empty>,<empty>,<empty>,<empty> iser iser,<empty>,<empty>,<empty>,<empty> cxgb3i.00:07:43:05:97:07 cxgb3i,00:07:43:05:97:07,<empty>,<empty>,<empty>
iface
particulière d'une façon plus agréable pour l'utilisateur. Pour cela, utiliser l'option -I iface_name
. Cela affichera les paramètres dans le format suivant :
iface.paramètre = valeur
Exemple 24.8. Utiliser les paramètres de configuration iface
avec un adaptateur de réseau Chelsio convergé
iface
du même adaptateur de réseau Chelsio convergé (par ex. iscsiadm -m iface -I cxgb3i.00:07:43:05:97:07
) s'afficheront ainsi :
# BEGIN RECORD 2.0-871 iface.iscsi_ifacename = cxgb3i.00:07:43:05:97:07 iface.net_ifacename = <empty> iface.ipaddress = <empty> iface.hwaddress = 00:07:43:05:97:07 iface.transport_name = cxgb3i iface.initiatorname = <empty> # END RECORD
24.13.2. Configurer un iface pour iSCSI logiciel
iface
est requise pour chaque objet réseau qui sera utilisé pour lier une session.
iface
pour iSCSI logiciel, veuillez exécuter la commande suivante :
# iscsiadm -m iface -I iface_name --op=new
iface
vide avec une valeur iface_name
spécifiée. Si une configuration iface
existante possède déjà la même valeur iface_name
, alors celle-ci sera écrasée par une autre, nouvelle et vide.
iface
, veuillez utiliser la commande suivante :
# iscsiadm -m iface -I iface_name --op=update -n iface.setting -v hw_address
Exemple 24.9. Définir l'adresse MAC de iface0
hardware_address
) de iface0
sur 00:0F:1F:92:6B:BF
, veuillez exécuter :
# iscsiadm -m iface -I iface0 --op=update -n iface.hwaddress -v 00:0F:1F:92:6B:BF
Avertissement
default
ou iser
comme noms iface
. Ces deux chaînes sont des valeurs spéciales utilisées par iscsiadm
pour une compatibilité ascendante. Toute configuration iface
créée manuellement nommée default
ou iser
désactivera la compatibilité ascendante.
24.13.3. Configurer un iface pour le déchargement iSCSI
iscsiadm
créera une configuration iface
pour chaque port. Pour afficher les configurations iface
disponibles, veuillez utiliser la même commande que pour le logiciel iSCSI, c'est-à-dire iscsiadm -m iface
.
iface
d'une carte réseau pour le déchargement iSCSI, veuillez commencer par définir l'adresse IP (target_IP
[5]) que le périphérique devrait utiliser. Pour les périphériques qui utilisent le pilote be2iscsi
, l'adresse IP est configurée dans l'écran de paramétrage BIOS. Pour tous les autres périphériques, pour configurer l'adresse IP d'iface
, utilisez :
# iscsiadm -m iface -I iface_name -o update -n iface.ipaddress -v target_IP
Exemple 24.10. Paramétrez l'adresse IP de l'iface
d'une carte Chelsio
iface
à 20.15.0.66
avec une carte dont le nom iface est cxgb3i.00:07:43:05:97:07, utilisez :
# iscsiadm -m iface -I cxgb3i.00:07:43:05:97:07 -o update -n iface.ipaddress -v 20.15.0.66
24.13.4. Lier ou délier un iface sur un portail
iscsiadm
est utilisé pour rechercher des interconnexions, la vérification commencera par les paramètres iface.transport
de chaque configuration iface
dans /var/lib/iscsi/ifaces
. L'utilitaire iscsiadm
liera ensuite les portails découverts avec tout iface
dont iface.transport
est tcp
.
-I iface_name
pour spécifier quel portail lier à un iface
, comme suit :
# iscsiadm -m discovery -t st -p target_IP:port -I iface_name -P 1 [5]
iscsiadm
ne liera pas automatiquement tous les portails aux configurations iface
utilisant le déchargement. Ceci est dû au fait que de telles configurations iface
n'ont pas paramétré iface.transport
sur tcp
. Ainsi, les configurations iface
doivent être liées manuellement aux portails découverts.
iface
existant. Pour ce faire, veuillez utiliser default
comme iface_name
de la manière suivante :
# iscsiadm -m discovery -t st -p IP:port -I default -P 1
iface
, veuillez utiliser :
# iscsiadm -m node -targetname proper_target_name -I iface0 --op=delete[6]
iface
particulier, veuillez utiliser :
# iscsiadm -m node -I iface_name --op=delete
# iscsiadm -m node -p IP:port -I iface_name --op=delete
Note
iface
définie dans /var/lib/iscsi/iface
et que l'option -I
n'est pas utilisée, iscsiadm
autorisera le sous-système du réseau à décider quel périphérique un portail particulier devrait utiliser.
24.14. Scanner les interconnexions iSCSI
iscsiadm
. Cependant, avant cela, vous devrez récupérer les valeurs --targetname
et --portal
correctes. Si le modèle de votre périphérique prend uniquement en charge une seule unité logique et un seul portail par cible, utilisez iscsiadm
pour délivrer une commande sendtargets
sur l'hôte, comme suit :
# iscsiadm -m discovery -t sendtargets -p target_IP:port [5]
target_IP:port,target_portal_group_tag proper_target_name
Exemple 24.11. Utiliser iscsiadm
pour envoyer une commande sendtargets
proper_target_name
est iqn.1992-08.com.netapp:sn.33615311
et dont la valeur target_IP:port
est 10.15.85.19:3260
, la sortie pourrait être comme suit :
10.15.84.19:3260,2 iqn.1992-08.com.netapp:sn.33615311 10.15.85.19:3260,3 iqn.1992-08.com.netapp:sn.33615311
target_ip:port
de 10.15.84.19:3260
et de 10.15.85.19:3260
.
iface
sera utilisée pour chaque session, veuillez ajouter l'option -P 1
. Cette option imprimera également les informations de la session sous la forme d'une arborescence, comme suit :
Target: proper_target_name Portal: target_IP:port,target_portal_group_tag Iface Name: iface_name
Exemple 24.12. Afficher la configuration iface
iscsiadm -m discovery -t sendtargets -p 10.15.85.19:3260 -P 1
, la sortie pourrait être comme suit :
Target: iqn.1992-08.com.netapp:sn.33615311 Portal: 10.15.84.19:3260,2 Iface Name: iface2 Portal: 10.15.85.19:3260,3 Iface Name: iface2
iqn.1992-08.com.netapp:sn.33615311
utilisera iface2
comme configuration iface
.
sendtargets
sur l'hôte pour trouver de nouveaux portails sur la cible. Puis, scannez à nouveau les sessions existantes en utilisant :
# iscsiadm -m session --rescan
SID
comme suit :
# iscsiadm -m session -r SID --rescan[7]
sendtargets
sur les hôtes pour trouver les nouveaux portails de chaque cible. Scannez à nouveau les sessions existantes pour découvrir de nouvelles unités logiques en utilisant l'option --rescan
.
Important
sendtargets
utilisée pour récupérer les valeurs --targetname
et --portal
remplace le contenu de la base de données /var/lib/iscsi/nodes
. Cette base de données sera alors remplie à nouveau en utilisant les paramètres du fichier /etc/iscsi/iscsid.conf
. Cependant, ceci ne se produira pas si une session est actuellement connectée et en cours d'utilisation.
-o new
ou -o delete
, respectivement. Par exemple, pour ajouter de nouveaux portails ou cibles sans écraser /var/lib/iscsi/nodes
, veuillez utiliser la commande suivante :
iscsiadm -m discovery -t st -p target_IP -o new
/var/lib/iscsi/nodes
que la cible n'a pas affichées pendant la découverte, veuillez utiliser :
iscsiadm -m discovery -t st -p target_IP -o delete
iscsiadm -m discovery -t st -p target_IP -o delete -o new
sendtargets
générera la sortie suivante :
ip:port,target_portal_group_tag proper_target_name
Exemple 24.13. Sortie de la commande sendtargets
equallogic-iscsi1
en tant que target_name
, la sortie devrait être similaire à la suivante :
10.16.41.155:3260,0 iqn.2001-05.com.equallogic:6-8a0900-ac3fe0101-63aff113e344a4a2-dl585-03-1
proper_target_name
et ip:port,target_portal_group_tag
sont identiques aux valeurs du même nom dans Section 24.6.1, « API iSCSI ».
--targetname
et --portal
nécessaires pour scanner manuellement les périphériques iSCSI. Pour ce faire, veuillez exécuter la commande suivante :
# iscsiadm --mode node --targetname proper_target_name --portal ip:port,target_portal_group_tag \ --login [8]
Exemple 24.14. Commande iscsiadm
complète
proper_target_name
est equallogic-iscsi1
), la commande complète aura la forme suivante :
# iscsiadm --mode node --targetname \ iqn.2001-05.com.equallogic:6-8a0900-ac3fe0101-63aff113e344a4a2-dl585-03-1 \ --portal 10.16.41.155:3260,0 --login[8]
24.15. Connexion à une cible iSCSI
# service iscsi start
init
iSCSI se connecteront automatiquement aux cibles sur lesquelles le paramètre node.startup
est configuré sur automatic
. Ceci est la valeur par défaut de node.startup
pour toutes les cibles.
node.startup
sur manual
. Pour effectuer ceci, veuillez exécuter la commande suivante :
# iscsiadm -m node --targetname proper_target_name -p target_IP:port -o update -n node.startup -v manual
# iscsiadm -m node --targetname proper_target_name -p target_IP:port -o delete
/etc/fstab
avec l'option _netdev
. Par exemple, pour automatiquement monter le périphérique iSCSI sdb
sur /mount/iscsi
pendant le démarrage, ajoutez la ligne suivante à /etc/fstab
:
/dev/sdb /mnt/iscsi ext3 _netdev 0 0
# iscsiadm -m node --targetname proper_target_name -p target_IP:port -l
Note
proper_target_name
et target_IP:port
font référence au nom complet et à la combinaison adresse IP et port d'une cible. Pour obtenir davantage d'informations, veuillez consulter Section 24.6.1, « API iSCSI » et Section 24.14, « Scanner les interconnexions iSCSI ».
24.16. Redimensionner une Unité logique En ligne
Note
24.16.1. Redimensionner des unités logiques Fibre Channel
$ echo 1 > /sys/block/sdX/device/rescan
Important
sd1
, sd2
, et ainsi de suite...) qui représente un chemin pour l'unité logique multivoies. Pour déterminer quels périphériques sont des chemins pour une unité logique mulitvoies, veuillez utiliser multipath -ll
; puis trouvez l'entrée correspondant à l'unité logique en cours de redimensionnement. Il est recommandé de faire référence à l'ID global (WWID) de chaque entrée afin de faciliter la recherche de celui qui correspond à l'unité logique en cours de redimensionnement.
24.16.2. Redimensionner une unité logique iSCSI
# iscsiadm -m node --targetname target_name -R [5]
target_name
par le nom de la cible sur laquelle le périphérique se trouve.
Note
# iscsiadm -m node -R -I interface
interface
par le nom d'interface correspondant de l'unité logique redimensionnée (par exemple, iface0
). Cette commande effectue deux opérations :
- Un scan est effectué pour trouver de nouveaux périphériques de la même manière que le fait la commande
echo "- - -" > /sys/class/scsi_host/host/scan
(veuillez consulter Section 24.14, « Scanner les interconnexions iSCSI »). - Un second scan est effectué pour trouver les nouvelles unités logiques ou les unités logiques modifiées de la même manière que le fait la commande
echo 1 > /sys/block/sdX/device/rescan
. Remarquez que cette commande est également la même que celle utilisée pour scanner à nouveau des unités logiques Fibre Channel.
24.16.3. Mettre à jour la taille du périphérique multivoies (« Multipath »)
multipathd
. Tout d'abord, veuillez vous assurer que multipathd
soit bien en cours d'exécution en utilisant service multipathd status
. Une fois le bon fonctionnement de multipathd
vérifié, veuillez exécuter la commande suivante :
# multipathd -k"resize map multipath_device"
multipath_device
est l'entrée multivoies correspondante du périphérique dans /dev/mapper
. Selon la manière par laquelle la fonction multivoies est configurée sur le système, multipath_device
peut se trouver sous deux différents formats :
mpathX
, oùX
est l'entrée correspondante du périphérique (par exemple,mpath0
)- un WWID ; par exemple,
3600508b400105e210000900000490000
multipath -ll
. Ceci affiche une liste de toutes les entrées multivoies dans le système, ainsi que les chiffres majeurs et mineurs des périphériques correspondants.
Important
multipathd -k"resize map multipath_device"
si des commandes sont en file d'attente sur multipath_device
. Autrement dit, veuillez ne pas utiliser cette commande lorsque le paramètre no_path_retry
(dans /etc/multipath.conf
) est défini sur "queue"
, et qu'il n'existe aucun chemin actif vers le périphérique.
24.16.4. Modifier l'état de lecture/écriture d'une unité logique en ligne
# blockdev --getro /dev/sdXYZ
# cat /sys/block/sdXYZ/ro 1 = read-only 0 = read-write
multipath -ll
. Exemple :
36001438005deb4710000500000640000 dm-8 GZ,GZ500 [size=20G][features=0][hwhandler=0][ro] \_ round-robin 0 [prio=200][active] \_ 6:0:4:1 sdax 67:16 [active][ready] \_ 6:0:5:1 sday 67:32 [active][ready] \_ round-robin 0 [prio=40][enabled] \_ 6:0:6:1 sdaz 67:48 [active][ready] \_ 6:0:7:1 sdba 67:64 [active][ready]
Procédure 24.12. Modifier l'état R/W
- Pour déplacer l'état du périphérique de RO à R/W, veuillez consulter l'étape 2.Pour déplacer l'état du périphérique de R/W à RO, assurez-vous qu'aucune écriture supplémentaire ne sera passée. Ceci peut être fait en arrêtant l'application, ou en utilisant une action correspondante spécifique à l'application.Assurez-vous que toutes les E/S d'écriture restantes soient bien terminées par la commande suivante :
# blockdev --flushbufs /dev/device
Remplacez device par l'appellation souhaitée. Pour un périphérique multivoies mappeur de périphériques, il s'agit de l'entrée du périphérique dansdev/mapper
. Par exemple,/dev/mapper/mpath3
. - Veuillez utiliser l'interface de gestion du périphérique de stockage pour changer l'état de l'unité logique de RW (lecture/écriture) à RO (lecture seule), ou au contraire de RO à RW. Cette procédure est différente pour chaque matrice. Pour obtenir davantage d'informations, veuillez consulter la documentation du fournisseur de matrice de stockage applicable.
- Scannez à nouveau le périphérique pour mettre à jour l'affichage de l'état RW du système d'exploitation du périphérique. Si vous utilisez un périphérique mappeur multivoies, veuillez ré-effectuer ce scan pour chaque chemin vers le périphérique avant de passer la commande ordonnant au périphérique multivoies de recharger ses cartes de périphérique.Ce processus est expliqué en détails dans Section 24.16.4.1, « Scanner à nouveau des unités logiques ».
24.16.4.1. Scanner à nouveau des unités logiques
# echo 1 > /sys/block/sdX/device/rescan
multipath -11
, puis trouvez l'entrée qui correspond à l'unité logique devant être modifiée.
Exemple 24.15. Utilisation de la commande multipath -11
multipath -11
affiche le chemin pour le LUN avec l'ID WWID 36001438005deb4710000500000640000. Dans ce cas, veuillez saisir :
# echo 1 > /sys/block/sdax/device/rescan
# echo 1 > /sys/block/sday/device/rescan
# echo 1 > /sys/block/sdaz/device/rescan
# echo 1 > /sys/block/sdba/device/rescan
24.16.4.2. Mettre à jour l'état RW d'un périphérique multivoies
# multipath -r
multipath -11
peut être utilisée pour confirmer le changement.
24.16.4.3. Documentation
24.17. Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
sg3_utils
fournit le script rescan-scsi-bus.sh
, qui peut automatiquement mettre à jour la configuration de l'unité logique de l'hôte selon les besoins (après l'ajout du périphérique au système). Le script rescan-scsi-bus.sh
peut également effectuer une opération issue_lip
sur les périphériques pris en charge. Pour obtenir davantage d'informations sur l'utilisation de ce script, veuillez consulter rescan-scsi-bus.sh --help
.
sg3_utils
, veuillez exécuter yum install sg3_utils
.
Problèmes connus avec rescan-scsi-bus.sh
rescan-scsi-bus.sh
, veuillez prendre note des problèmes connus suivants :
- Afin que
rescan-scsi-bus.sh
fonctionne correctement,LUN0
doit être la première unité logique mise en correspondance.rescan-scsi-bus.sh
peut uniquement détecter la première unité logique mise en correspondance s'il s'agit deLUN0
.rescan-scsi-bus.sh
ne pourra pas scanner d'autre unité logique sans avoir détecté la première unité logique au préalable, même si vous utilisez l'option--nooptscan
. - Une condition race requiert que
rescan-scsi-bus.sh
soit exécuté deux fois si les unités logiques sont mises en correspondance pour la première fois. Pendant cette première recherche,rescan-scsi-bus.sh
ajoute uniquementLUN0
; toutes les autres unités logiques seront ajoutées pendant la seconde recherche. - Un bogue dans le script
rescan-scsi-bus.sh
exécute incorrectement la fonctionnalité de reconnaissance du changement de taille de l'unité logique lorsque l'option--remove
est utilisée. - Le script
rescan-scsi-bus.sh
ne reconnaît pas les suppressions d'unités logiques ISCSI.
24.18. Modifier le comportement de la perte de lien
24.18.1. Fibre Channel
dev_loss_tmo
de transport, les tentatives d'accès à un périphérique via un lien seront bloquées lorsqu'un problème de transport est détecté. Pour vérifier si un périphérique est bloqué, exécutez la commande suivante :
$ cat /sys/block/device/device/state
blocked
(« bloqué ») si le périphérique est bloqué. Si le périphérique fonctionne normalement, alors cette commande retournera running
(« en cours d'exécution »).
Procédure 24.13. Déterminer l'état d'un port distant
- Pour déterminer l'état d'un port distant, exécutez la commande suivante :
$ cat /sys/class/fc_remote_port/rport-H:B:R/port_state
- Cette commande retournera
Blocked
(« bloqué ») lorsque le port distant ainsi que les périphériques pouvant être atteints par ce biais sont bloqués. Si le port distant fonctionne normalement, la commande retourneraOnline
(« en ligne »). - Si le problème n'est pas résolu en
dev_loss_tmo
secondes, le port et les périphériques seront débloqués et toutes les E/S exécutées sur ce périphérique (ainsi que toute nouvelle E/S envoyée sur celui-ci) échoueront.
Procédure 24.14. Modifier dev_loss_tmo
- Pour modifier la valeur de
dev_loss_tmo
, saisissez avececho
la valeur souhaitée dans le fichier. Par exemple, pour définirdev_loss_tmo
sur 30 secondes, veuillez exécuter :$ echo 30 > /sys/class/fc_remote_port/rport-H:B:R/dev_loss_tmo
dev_loss_tmo
, veuillez consulter Section 24.3.1, « Interface de programmation Fibre Channel ».
dev_loss_tmo
, les périphériques scsi_device
et sdN
sont supprimés. Normalement, la classe de Fibre Channel laisse le périphérique tel quel; c-a-d /dev/sdx
demeure /dev/sdx
. C'est parce que la liaison cible est conservée par le pilote de Fibre Channel, donc quand le port cible revient, les adresses SCSI sont recréées en rapport. Cependant, il n'y a rien de garanti ; le sdx
ne sera restauré que si aucun changement supplémentaire n'est fait à la configuration de la case « in-storage » du LUN.
24.18.2. Paramètres iSCSI avec dm-multipath
dm-multipath
est implémenté, il est recommandé de paramétrer les minuteurs iSCSI immédiatement pour déférer les commandes sur la couche multipath. Pour configurer ceci, ajoutez la ligne suivante à device {
dans /etc/multipath.conf
:
features "1 queue_if_no_path"
dm-multipath
.
replacement_timeout
sont des minuteurs iSCSI disponibles et configurables, dont il est question dans les sections suivantes.
24.18.2.1. Intervalle/Délai d'expiration NOP-Out
dm-multipath
est utilisée, la couche SCSI fera échouer les commandes en cours d'exécution et les déferrera sur la couche multipath. Puis, la couche multipath tentera à nouveau ces commandes sur un autre chemin. Si dm-multipath
n'est pas en cours d'utilisation, ces commandes seront tentées à nouveau cinq fois avant d'être en échec.
/etc/iscsi/iscsid.conf
et modifiez la ligne suivante :
node.conn[0].timeo.noop_out_interval = [interval value]
/etc/iscsi/iscsid.conf
and edit the following line:
node.conn[0].timeo.noop_out_timeout = [timeout value]
SCSI Error Handler
replacement_timeout
secondes. Pour obtenir davantage d'informations sur replacement_timeout
, veuillez consulter Section 24.18.2.2, « replacement_timeout
».
# iscsiadm -m session -P 3
24.18.2.2. replacement_timeout
replacement_timeout
contrôle le temps que la couche iSCSI doit attendre pour qu'un chemin ou une session dont le délai a expiré puisse se rétablir avant de faire échouer ses commandes. La valeur par défaut de replacement_timeout
s'élève à 120 secondes.
replacement_timeout
, ouvrez /etc/iscsi/iscsid.conf
et modifiez la ligne suivante :
node.session.timeo.replacement_timeout = [replacement_timeout]
1 queue_if_no_path
dans /etc/multipath.conf
paramètres les horodateurs iSCSI pour déférer immédiatement les commandes sur la couche multipath (veuillez consulter Section 24.18.2, « Paramètres iSCSI avec dm-multipath
»). Ce paramètre empêche les erreurs d'E/S de se propager à l'application. Par conséquent, vous pouvez définir replacement_timeout
sur 15 à 20 secondes.
replacement_timeout
plus basse, les E/S sont rapidement envoyées vers un nouveau chemin et exécutées (en cas de dépassement du délai NOP-Out) tandis que la couche iSCSI tente de rétablir le chemin ou la session en échec. Si le délai expire pour tous les chemins, alors la couche du mappeur de périphérique et du multipath mettront les E/S en file d'attente interne, en se basant sur les paramètres du fichier /etc/multipath.conf
au lieu de ceux de /etc/iscsi/iscsid.conf
.
Important
replacement_timeout
dépendra également d'autres facteurs. Ces autres facteurs incluent le réseau, la cible, et la charge de travail du système. Ainsi, il est recommandé de minutieusement tester replacements_timeout
avec toute nouvelle configuration avant de l'appliquer sur un système à mission critique.
24.18.3. Root iSCSI
dm-multipath
est implémenté.
/etc/iscsi/iscsid.conf
et modifiez-le comme suit :
node.conn[0].timeo.noop_out_interval = 0 node.conn[0].timeo.noop_out_timeout = 0
replacement_timeout
doit être élevé. Cela instruira au système d'attendre plus longtemps qu'un chemin ou une session se rétablisse. Pour ajuster replacement_timeout
, ouvrez /etc/iscsi/iscsid.conf
et modifiez la ligne suivante :
node.session.timeo.replacement_timeout = replacement_timeout
/etc/iscsi/iscsid.conf
, vous devriez effectuer une redécouverte du stockage affecté. Cela permettra au système de charger et d'utiliser les valeurs nouvelles dans /etc/iscsi/iscsid.conf
. Pour obtenir davantage d'informations sur la manière de découvrir les périphériques iSCSI, veuillez consulter Section 24.14, « Scanner les interconnexions iSCSI ».
Configurer des délais d'expiration pour une session particulière
/etc/iscsi/iscsid.conf
). Pour effectuer ceci, exécutez la commande suivante (en remplaçant les variables au besoin) :
# iscsiadm -m node -T target_name -p target_IP:port -o update -n node.session.timeo.replacement_timeout -v $timeout_value
Important
dm-multipath
), veuillez consulter Section 24.18.2, « Paramètres iSCSI avec dm-multipath
».
24.19. Contrôle du Minuteur de commande SCSI et du Statut de périphérique
- Annuler la commande.
- Réinitialiser le périphérique.
- Réinitialiser le bus.
- Réinitialiser l'hôte.
offline
. Dans un tel cas, toutes les E/S de ce périphérique échoueront, jusqu'à ce que le problème soit corrigé et que l'utilisateur définisse le périphérique à running
.
rport
est bloqué, les pilotes attendent quelques secondes pour que le rport
revienne en ligne à nouveau avant d’activer le gestionnaire d’erreurs. Cela empêche les périphériques d'être hors ligne en raison de problèmes de transport temporaires.
24.20. Résolution de problème de configuration de stockage en ligne
- Le statut de la suppression d'unité logique n'est pas reflétée sur l'hôte.
- Lorsqu'une unité logique est supprimée sur un fichier configuré, le changement ne se reflète pas sur l'hôte. Dans de tels cas, les commandes
lvm
seront en suspend indéfiniement quanddm-multipath
sera utilisé, car l'unité logique est maintenant caduque.Pour contourner ce problème, effectuez la procédure suivante :Procédure 24.15. Contourner le problème d'unités logiques caduques
- Déterminer les entrées du lien
mpath
de/etc/lvm/cache/.cache
qui sont spécifiques à l'unité logique caduque. Pour cela, exécutez la commande suivante :$ ls -l /dev/mpath | grep stale-logical-unit
Exemple 24.16. Déterminer les entrées de lien
mpath
spécifiquesPar exemple, sistale-logical-unit
correspond à 3600d0230003414f30000203a7bc41a00, les résultats suivants apparaîtront :lrwxrwxrwx 1 root root 7 Aug 2 10:33 /3600d0230003414f30000203a7bc41a00 -> ../dm-4 lrwxrwxrwx 1 root root 7 Aug 2 10:33 /3600d0230003414f30000203a7bc41a00p1 -> ../dm-5
Cela signifie que 3600d0230003414f30000203a7bc41a00 est mappé à deux liensmpath
:dm-4
etdm-5
. - Puis, ouvrez
/etc/lvm/cache/.cache
. Supprimer toutes les lignes contenantstale-logical-unit
et les liensmpath
auxquelsstale-logical-unit
se mappe.Exemple 24.17. Supprimer les lignes qui conviennent
En utilisant l'exemple de l'étape précédente, voici les lignes qu'il vous faudra supprimer :/dev/dm-4 /dev/dm-5 /dev/mapper/3600d0230003414f30000203a7bc41a00 /dev/mapper/3600d0230003414f30000203a7bc41a00p1 /dev/mpath/3600d0230003414f30000203a7bc41a00 /dev/mpath/3600d0230003414f30000203a7bc41a00p1
target_IP
and port
variables refer to the IP address and port combination of a target/portal, respectively. For more information, refer to Section 24.6.1, « API iSCSI » and Section 24.14, « Scanner les interconnexions iSCSI ».
proper_target_name
.
Chapitre 25. Mappeur de périphériques à multiples chemins d'accès et Stockage virtuel
25.1. Stockage virtuel
- Fibre Channel
- iSCSI
- NFS
- GFS2
libvirt
pour gérer les instances virtuelles. L'utilitaire libvirt
utilise le concept de pools de stockage pour gérer le stockage d'invités virtualisés. Un pool de stockage est un stockage pouvant être divisé en volumes de plus petite taille ou directement alloué(s) à un invité. Les volumes d'un pool de stockage peuvent être alloués à des invités virtualisés. Il existe deux catégories de pools de stockage sont :
- Pools de stockage locaux
- Le stockage local couvre les périphériques de stockage, les fichiers ou répertoires directement attachés à un hôte. Le stockage local inclut les répertoires locaux, les disques directement attachés, et les groupes de volumes LVM.
- Pools de stockage en réseau (partagés)
- Le stockage en réseau couvre les périphériques de stockage partagés sur un réseau à l'aide de protocoles standards. Ce type de stockage inclut les périphériques de stockage partagé utilisant les protocoles Fibre Channel, iSCSI, NFS, GFS2 et SCSI RDMA, et est une condition nécessaire pour effectuer des migrations d'invités virtualisés entre hôtes.
Important
25.2. DM-Multipath
- Redondance
- DM-Multipath peut amener à un échec dans une configuration active/passive. Dans une configuration active/passive, on utilise seulement la moitié des chemins à tout moment pour E/S. Si un élément (le câble, le commutateur, ou le contrôleur) d'un chemin E/S échoue, DM-Multipath passe à un chemin alternatif.
- Performance améliorée
- DM-Multipath peut être configuré dans un mode actif/actif, où E/S est étendu à travers les chemins en circuit cyclique. Dans certaines configurations, DM-Multipath peut détecter un chargement sur le chemin E/S et re-équilibrer le chargement de façon dynamique.
Important
Chapitre 26. External Array Management (libStorageMgmt
)
libStorageMgmt
.
26.1. Qu'est-ce que libStorageMgmt
?
libStorageMgmt
est une API (« Application Programming Interface ») indépendante de l'aire de stockage. Il fournit une API stable et consistante qui permet aux développeurs de gérer par programme différentes aires de stockage et de tirer profit des fonctionnalités accélérées par le matériel.
libStorageMgmt
permet les opérations comme :
- Lister les pools de stockage, les volumes, les groupes d'accès ou les systèmes de fichiers.
- Créer et supprimer les volumes, les groupes d'accès, les systèmes de fichiers, ou les exportations NFS.
- Donner et supprimer l'accès aux volumes, aux groupes d'accès, ou aux initiateurs.
- Répliquer les volumes avec des clichés, clônages ou copies.
- Créer et supprimer des groupes d'accès et modifier les membres d'un groupe.
- Une API Python et C stables pour l'application client et les plug-in développeurs.
- Une interface en ligne de commande qui utilise la bibliothèque (
lsmcli
). - Un démon qui exécute le plug-in (
lsmd
). - Un plug-in de simulateur qui permet de tester les applications clientes (
sim
). - Architecture de plug-in pour l'interface avec les baies de stockage.
Avertissement
libStorageMgmt
de Red Hat Enterprise Linux 7 ajoute une règle udev par défaut pour Unit Attention REPORTED LUNS DATA HAS CHANGED.
sysfs
.
/lib/udev/rules.d/90-scsi-ua.rules
contient des exemples de règles pour énumérer des événements que le noyau peut générer.
libStorageMgmt
utilise une architecture en plug-in pour accommoder les différences entre les baies de stockage. Pour plus d'informations sur les plug-ins de libStorageMgmt
et sur la façon de les rédiger, voir le Guide du développeur de Red Hat.
26.2. Terminologie de libStorageMgmt
- Aire de stockage
- Tout système de stockage qui fournit un accès blocs (FC, FCoE, iSCSI) ou fichiers comme Network Attached Storage (NAS).
- Volume
- Les aires de stockage de Storage Area Network (SAN) peuvent exposer un volume au Host Bus Adapter (HBA) sur un certain nombre de transports comme FC, iSCSI, ou FCoE. Le SE de l'hôte le traite comme des périphériques en bloc. Un volume peut être exposé à plusieurs baies de stockage si
multipath[2]
est activé.Également connu sous le nom Logical Unit Number (LUN), StorageVolume avec terminologie SNIA ou disque virtuel. - Pool
- Un groupe d'espaces de stockage. Les systèmes de fichiers et les volumes peuvent être créés à partir d'un pool. Les pools peuvent être créés à partir de disques, de volumes, ou d'autres pools. Un pool peut contenir des configurations de RAID ou de thin provisioning.Également connu sous le nom StoragePool dans la terminologie SNIA.
- Cliché
- Une réplique des données figée dans le temps, en lecture seule et préservant de l'espace.Également connu sous le nom du cliché en lecture-seule.
- Cloner
- Une réplique des données figée dans le temps, en permission lecture et écriture (rw), et préservant de l'espace.Également connu sous le nom du cliché en lecture et écriture.
- Copier
- Une copie des données au niveau du bit. Occupe tout l'espace.
- Miroir
- Une copie continue sans cesse mise à jour (en mode synchrone ou asynchrone).
- Access group
- Ensemble d'initiateurs FCoE, FC ou iSCSI à qui est donné un accès à un ou plusieurs volumes de stockage. Cela garantit que seules les volumes de stockages sont accessibles aux intiateurs indiqués.Également connu sous le nom de groupe d'initiateurs.
- Access Grant
- Exposer un volume à un initiateur ou à un groupe d'accès spécifique. La bibliothèque
libStorageMgmt
ne prend pas en charge actuellement le mappage LUN avec la possibilité de choisir un nombre d'inités logiques spécifiques. La bibliothèquelibStorageMgmt
permet à l'aire de stockage de sélectionner le prochain LUN pour la tâche. Si vous configurez un démarrage boot de SAN ou si vous masquez plus de 256 volumes, veillez à lire les documents HBA, Storage Array, OS.Grant access est également connu sous le nom Masquage LUN. - Système
- Représente une aire de stockage ou un RAID de stockage attaché directement.
- Système de fichiers
- Une baie de stockage NAS (Network Attached Storage) peut exposer un système de fichiers pour héberger un SE via un réseau IP, par l'intermédiaire du protocole NFS ou CIFS. Le SE Hôte le traite comme point de montage ou comme dossier contenant des fichiers qui dépendent du système d'exploitation du client.
- Disque
- Le disque physique contient des données. Normalement utilisé quand on crée un pool avec des configurations RAID.Également connu sous le nom DiskDrive dans la terminologie SNIA.
- Initiateur
- Avec Fibre Channel (FC) ou Fibre Channel over Ethernet (FCoE), L'initiateur est le World Wide Port Name (WWPN) ou World Wide Node Name (WWNN). Avec iSCSI, l'initiateur est le iSCSI Qualified Name (IQN) (nom complet). Avec NFS ou CIFS, l'initiateur est le nom de l'hôte ou l'adresse IP de l'hôte.
- Dépendance
- Certaines baies de stockage ont une relation implicite entre l’origine (système de fichier ou volume parent) et de l’enfant (comme un cliché ou un clone). Par exemple, il est impossible de supprimer le parent si il a un ou plusieurs dépendants (enfants). L’API fournit des méthodes pour déterminer si une telle relation existe et une méthode pour supprimer la dépendance en reproduisant les blocs requis.
26.3. Installation
libStorageMgmt
pour utilisation en ligne de commande, avec les bibliothèques et les plugs-in de simulateur requis, exécutez la commande suivante :
$ sudo yum install libstoragemgmt libstoragemgmt-python
libstoragemgmt-devel
et libstorage-debuginfo
en option, par la commande suivante :
$ sudo yum install libstoragemgmt-devel libstoragemgmt-debuginfo
libStorageMgmt
à utiliser dans les baies de stockage, sélectionner un ou plusieurs packages de plug-ins appropriés par la commande suivante :
$ sudo yum install libstoragemgmt-name-plugin
- libstoragemgmt-smis-plugin
- Support SMI-S Array standard
- libstoragemgmt-netapp-plugin
- Fichiers Support NetApp spécifique
- libstoragemgmt-nstor-plugin
- Support NexentaStor spécifique
- libstoragemgmt-targetd-plugin
- Support targetd spécifique
lsmd
) se comporte comme n'importe quel service standard du système.
$ sudo systemctl status libstoragemgmt
$ sudo systemctl stop libstoragemgmt
$ sudo systemctl start libstoragemgmt
26.4. Utilisation de libStorageMgmt
libStorageMgmt
de manière interactive, exécutez la commande lsmcli
.
lsmcli
a besoin de deux choses pour fonctionner :
- Un URI (Uniform Resource Identifier) à utiliser pour identifier le plug-in auquel se connecter dans l'aire de stockage et toutes les options de configuration possibles nécessaires.
- Un nom d'utilisateur et un mot de passe pour l'aire de stockage.
Exemple 26.1. Exemples de prérequis de plug-in
sim://
ontap+ssl://root@filer.company.com/
smis+ssl://admin@provider.com:5989/?namespace=root/emc
- Passer l'URI comme partie de la commande.
$ lsmcli -u sim://...
- Stocker l'URI dans une variable d'environnement.
$ export LSMCLI_URI=sim:// && lsmcli ...
- Mettre l'URI dans le fichier
~/.lsmcli
, qui contient les paires nom-valeur séparées par "=". La seule configuration actuellement prise en charge est 'uri'.
Exemple 26.2. Exemples de lsmcli
$ lsmcli list --type SYSTEMS ID | Name | Status -------+-------------------------------+-------- sim-01 | LSM simulated storage plug-in | OK
$ lsmcli list --type POOLS -H ID | Name | Total space | Free space | System ID -----+---------------+----------------------+----------------------+----------- POO2 | Pool 2 | 18446744073709551616 | 18446744073709551616 | sim-01 POO3 | Pool 3 | 18446744073709551616 | 18446744073709551616 | sim-01 POO1 | Pool 1 | 18446744073709551616 | 18446744073709551616 | sim-01 POO4 | lsm_test_aggr | 18446744073709551616 | 18446744073709551616 | sim-01
$ lsmcli volume-create --name volume_name --size 20G --pool POO1 -H ID | Name | vpd83 | bs | #blocks | status | ... -----+-------------+----------------------------------+-----+----------+--------+---- Vol1 | volume_name | F7DDF7CA945C66238F593BC38137BD2F | 512 | 41943040 | OK | ...
$ lsmcli --create-access-group example_ag --id iqn.1994-05.com.domain:01.89bd01 --type ISCSI --system sim-01 ID | Name | Initiator ID |SystemID ---------------------------------+------------+----------------------------------+-------- 782d00c8ac63819d6cca7069282e03a0 | example_ag | iqn.1994-05.com.domain:01.89bd01 |sim-01
$ lsmcli access-group-create --name example_ag --init iqn.1994-05.com.domain:01.89bd01 --init-type ISCSI --sys sim-01 ID | Name | Initiator IDs | System ID ---------------------------------+------------+----------------------------------+----------- 782d00c8ac63819d6cca7069282e03a0 | example_ag | iqn.1994-05.com.domain:01.89bd01 | sim-01
$ lsmcli access-group-grant --ag 782d00c8ac63819d6cca7069282e03a0 --vol Vol1 --access RW
-b
en ligne de commande. Si le code de sortie vaut 0, la commande est exécutée. Si le code de sortie est de 7, la commande est en cours et un identificateur de tâche s'inscrit sur la sortie standard. L’utilisateur ou le script peut alors prendre l'ID de la tâche et interroger l’état de la commande au besoin à l’aide de lsmcli--jobstatus JobID
. Si la tâche est terminée, la valeur de sortie sera 0 et les résultats seront inscrits dans la sortie standard. Si la commande est toujours en cours, la valeur de retour sera le 7 et le pourcentage complet sera imprimé sur la sortie standard.
Exemple 26.3. Exemple asynchrone
-b
pour que la commande renvoie immédiatement.
$ lsmcli volume-create --name async_created --size 20G --pool POO1 -b JOB_3
$ echo $? 7
$ lsmcli job-status --job JOB_3 33
$ echo $? 7
$ lsmcli job-status --job JOB_3 ID | Name | vpd83 | Block Size | ... -----+---------------+----------------------------------+-------------+----- Vol2 | async_created | 855C9BA51991B0CC122A3791996F6B15 | 512 | ...
-t SeparatorCharacters
. Cela facilitera l'analyse de la sortie.
Exemple 26.4. Exemples de scipt
$ lsmcli list --type volumes -t# Vol1#volume_name#049167B5D09EC0A173E92A63F6C3EA2A#512#41943040#21474836480#OK#sim-01#POO1 Vol2#async_created#3E771A2E807F68A32FA5E15C235B60CC#512#41943040#21474836480#OK#sim-01#POO1
$ lsmcli list --type volumes -t " | " Vol1 | volume_name | 049167B5D09EC0A173E92A63F6C3EA2A | 512 | 41943040 | 21474836480 | OK | 21474836480 | sim-01 | POO1 Vol2 | async_created | 3E771A2E807F68A32FA5E15C235B60CC | 512 | 41943040 | 21474836480 | OK | sim-01 | POO1
$ lsmcli list --type volumes -s --------------------------------------------- ID | Vol1 Name | volume_name VPD83 | 049167B5D09EC0A173E92A63F6C3EA2A Block Size | 512 #blocks | 41943040 Size | 21474836480 Status | OK System ID | sim-01 Pool ID | POO1 --------------------------------------------- ID | Vol2 Name | async_created VPD83 | 3E771A2E807F68A32FA5E15C235B60CC Block Size | 512 #blocks | 41943040 Size | 21474836480 Status | OK System ID | sim-01 Pool ID | POO1 ---------------------------------------------
lsmcli
, voir les pages man ou la commande lsmcli --help
.
26.5. Documentation libStorageMgmt
- Site Web officiel : https://sourceforge.net/projects/libstoragemgmt/.
- Projet wiki : https://sourceforge.net/p/libstoragemgmt/wiki/Home/.
Annexe A. Historique des versions
Historique des versions | |||
---|---|---|---|
Version 3-68.2 | Tue Jul 4 2017 | Terry Chuang | |
| |||
Version 3-68.1 | Tue Jul 4 2017 | Terry Chuang | |
| |||
Version 3-68 | Fri Oct 21 2016 | Milan Navratil | |
| |||
Version 3-67 | Fri Jun 17 2016 | Milan Navratil | |
| |||
Version 3-64 | Wed Nov 11 2015 | Jana Heves | |
| |||
Version 3-33 | Wed Feb 18 2015 | Jacquelynn East | |
| |||
Version 3-26 | Wed Jan 21 2015 | Jacquelynn East | |
| |||
Version 3-22 | Thu Dec 4 2014 | Jacquelynn East | |
| |||
Version 3-4 | Thu Jul 17 2014 | Jacquelynn East | |
| |||
Version 3-1 | Tue Jun 3 2014 | Jacquelynn East | |
|
Index
Symboles
- , quotas de disque
- gestion de
- la commande quotacheck, utilisée pour vérifier, Contrôler l'exactitude des quotas
- /dev/shm, Collecte des informations sur les systèmes de fichiers
- /etc/fstab, Conversion vers un système de fichiers ext3, Monter des systèmes de fichiers NFS à l'aide de /etc/fstab, Monter un système de fichiers
- /local/directory (configuration du client, montage)
- /proc
- /proc/devices, Système de fichiers virtuel /proc
- /proc/filesystems, Système de fichiers virtuel /proc
- /proc/mdstat, Système de fichiers virtuel /proc
- /proc/mounts, Système de fichiers virtuel /proc
- /proc/mounts/, Système de fichiers virtuel /proc
- /proc/partitions, Système de fichiers virtuel /proc
- /proc/devices
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /proc/filesystems
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /proc/mdstat
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /proc/mounts
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /proc/mounts/
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /proc/partitions
- système de fichiers virtuel (/proc), Système de fichiers virtuel /proc
- /remote/export (configuration du client, montage)
A
- accès à l'espace utilisateur
- alignement et taille des E/S, Accès à l'espace utilisateur
- activer/désactiver
- barrières d'écriture, Activer/désactiver les barrières d'écriture
- afficher les configurations iface disponibles
- déchargement et liaison d'interfaces
- ajouter des chemins à un périphérique de stockage, Ajouter un périphérique ou un chemin de stockage
- ajouter ou supprimer
- LUN (numéro d'unité logique), Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- Alignement et taille des E/S, Alignement et taille des E/S de stockage
- empiler les paramètres d'E/S, Empiler les paramètres d'E/S
- paramètres d'accès au stockage, Paramètres d'accès au stockage
- Pile d'E/S Linux, Alignement et taille des E/S de stockage
- alignement et taille des E/S
- accès à l'espace utilisateur, Accès à l'espace utilisateur
- interface sysfs (accès à l'espace utilisateur), Interface sysfs
- ioctls du périphérique bloc (accès à l'espace utilisateur), ioctls du périphérique bloc
- logical_block_size, Accès à l'espace utilisateur
- LVM, Gestionnaire de volumes logiques LVM
- outils (pour le partitionnement et autres fonctions des systèmes de fichiers), Outils des partitions et systèmes de fichiers
- READ CAPACITY(16), SCSI
- standards ATA, ATA
- standards SCSI, SCSI
- allocation features
- aperçu
- stockage en ligne, Online Storage Management
- aperçu général, Aperçu
- API Fibre Channel, Interface de programmation Fibre Channel
- API iSCSI, API iSCSI
- API, Fibre Channel, Interface de programmation Fibre Channel
- API, iSCSI, API iSCSI
- augmenter la taille d'un système de fichiers
- autofs , autofs, Configuration autofs
- (voir aussi NFS)
- autofs version 5
- autres utilitaires du système de fichiers
B
- backend de cache
- FS-Cache, FS-Cache
- barrières d'écriture
- activer/désactiver, Activer/désactiver les barrières d'écriture
- caches d'écriture avec batteries de secours, Caches d'écriture avec batteries de secours
- comment les barrières d'écriture fonctionnent, Comment les barrières d'écriture fonctionnent
- définition, Barrières d'écriture
- désactiver les caches d'écriture, Désactiver les caches d'écriture
- ext4, Monter un système de fichiers Ext4
- importance des barrières d'écriture, Importance des barrières d'écriture
- matrices haut de gamme, Matrices haut de gamme
- messages d'erreur, Activer/désactiver les barrières d'écriture
- NFS, NFS
- XFS, Barrières d'écriture
- bcull (cache cull limits settings)
- besoins de stockage à prendre en compte pendant l'installation
- ce qui est nouveau, Besoins de stockage à prendre en compte pendant l'installation
- mises à jour, Besoins de stockage à prendre en compte pendant l'installation
- besoins du stockage à prendre en compte pendant l'installation
- channel command word (CCW), Périphériques DASD et zFCP sur IBM System Z
- configuration et détection iSCSI, Détection et configuration iSCSI
- LUKS/dm-crypt, chiffrer des périphériques blocs à l'aide de, Chiffrer des périphériques blocs avec LUKS
- métadonnées RAID BIOS périmées, Métadonnées RAID BIOS périmées
- partitions séparées (pour /home, /opt, /usr/local), Partitions séparées pour /home, /opt, /usr/local
- périphériques bloc activés DIF/DIX, Périphériques bloc avec DIF/DIX activé
- périphériques DASD et zFCP sur IBM System Z, Périphériques DASD et zFCP sur IBM System Z
- brun (cache cull limits settings)
- bstop (cache cull limits settings)
- Btrfs
- Système de fichiers, Btrfs (Aperçu technologique)
C
- cachefiles
- FS-Cache, FS-Cache
- cachefilesd
- FS-Cache, Paramétrer un cache
- caches d'écriture avec batteries de secours
- barrières d'écriture, Caches d'écriture avec batteries de secours
- CCW, channel command word
- besoins du stockage à prendre en compte pendant l'installation, Périphériques DASD et zFCP sur IBM System Z
- ce qui est nouveau
- besoins de stockage à prendre en compte pendant l'installation, Besoins de stockage à prendre en compte pendant l'installation
- channel command word (CCW)
- besoins du stockage à prendre en compte pendant l'installation, Périphériques DASD et zFCP sur IBM System Z
- chemin vers des périphériques de stockage, supprimer, Supprimer un chemin vers un périphérique de stockage
- chemin vers les périphériques de stockage, ajouter, Ajouter un périphérique ou un chemin de stockage
- cibles
- iSCSI, Connexion à une cible iSCSI
- classes de débit
- solid-state disks, Directives de déploiement des disques SSD
- clés d'indexation
- FS-Cache, FS-Cache
- commande TRIM
- solid-state disks, Directives de déploiement des disques SSD
- commandes
- volume_key, Commandes volume_key
- comment les barrières d'écriture fonctionnent
- barrières d'écriture, Comment les barrières d'écriture fonctionnent
- configuration
- découverte
- configuration d'ensembles RAID
- RAID, Configuring RAID Sets
- configuration d'un service tftp pour des clients sans disque
- systèmes sans disque, Configuration d'un service tftp pour des clients sans disque
- configuration DHCP pour des clients sans disque
- systèmes sans disque, Configuration DHCP pour les clients sans disque
- configuration et détection iSCSI
- besoins du stockage à prendre en compte pendant l'installation, Détection et configuration iSCSI
- configurations des stockages d'installation
- ce qui est nouveau, Besoins de stockage à prendre en compte pendant l'installation
- channel command word (CCW), Périphériques DASD et zFCP sur IBM System Z
- configuration et détection iSCSI, Détection et configuration iSCSI
- LUKS/dm-crypt, chiffrer des périphériques blocs à l'aide de, Chiffrer des périphériques blocs avec LUKS
- métadonnées RAID BIOS périmées, Métadonnées RAID BIOS périmées
- mises à jour, Besoins de stockage à prendre en compte pendant l'installation
- partitions séparées (pour /home, /opt, /usr/local), Partitions séparées pour /home, /opt, /usr/local
- périphériques bloc activés DIF/DIX, Périphériques bloc avec DIF/DIX activé
- périphériques DASD et zFCP sur IBM System Z, Périphériques DASD et zFCP sur IBM System Z
- configurations iface
- déchargement et liaison d'interfaces
- configurations iface, affichage
- déchargement et liaison d'interfaces
- configurer une interface Ethernet pour utiliser FCoE
- connexion aux
- cibles iSCSI, Connexion à une cible iSCSI
- contrôle des informations statistiques
- FS-Cache, Informations statistiques
- contrôle du minuteur de commande SCSI et du statut de périphérique
- couche Linux SCSI, Contrôle du Minuteur de commande SCSI et du Statut de périphérique
- création
- création de périphériques RAID avancée
- créer
D
- debugfs (autres utilitaires du système de fichiers ext4)
- déchargement et liaison d'interfaces
- découverte
- délai d'expiration pour une session particulière, configuration
- configuration iSCSI, Configurer des délais d'expiration pour une session particulière
- démonter, Démonter un système de fichiers
- dénomination persistante, Dénomination persistante
- déplacer un point de montage, Déplacer un point de montage
- déploiement
- solid-state disks, Considérations pour le déploiement
- désactivation de NOP-Outs
- configuration iSCSI, Root iSCSI
- désactiver les caches d'écriture
- barrières d'écriture, Désactiver les caches d'écriture
- déterminer les états des ports distants
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- device-mapper multipathing, DM-Multipath
- dev_loss_tmo
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- Fibre Channel API, Interface de programmation Fibre Channel
- dev_loss_tmo, modifier
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- df, Collecte des informations sur les systèmes de fichiers
- DHCP, configuration
- systèmes sans disque, Configuration DHCP pour les clients sans disque
- dhcpd.leases, Collecte des informations sur les systèmes de fichiers
- direct map support (autofs version 5)
- directives de déploiement
- solid-state disks, Directives de déploiement des disques SSD
- directories
- /boot/, Répertoire /boot/
- dm-multipath
- configuration iSCSI, Paramètres iSCSI avec dm-multipath
- dmraid
- RAID, dmraid
- dmraid (configuration d'ensembles RAID)
- RAID, dmraid
- données de cohérence
- FS-Cache, FS-Cache
- du, Collecte des informations sur les systèmes de fichiers
E
- e2fsck, Rétablir un système de fichiers Ext2
- e2image (autres utilitaires du système de fichiers ext4)
- e2label
- e2label (autres utilitaires du système de fichiers ext4)
- empiler les paramètres d'E/S
- Alignement et taille des E/S, Empiler les paramètres d'E/S
- alignement et taille des E/S, Empiler les paramètres d'E/S
- Emplacement des fichiers spécifiques à Red Hat Enterprise Linux
- /etc/sysconfig/, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- (voir aussi Répertoire sysconfig)
- /var/cache/yum, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- /var/lib/rpm/, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- enhanced LDAP support (autofs version 5)
- entrelacement
- espace swap, Espace swap
- création, Ajouter de l'espace swap
- déplacement, Déplacer l'espace swap
- expansion, Ajouter de l'espace swap
- fichier
- création, Création d'un fichier Swap
- LVM2
- suppression, Supprimer de l'espace swap
- taille recommandée, Espace swap
- états des ports (distants), déterminer
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- états des ports distants, déterminer
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- ext2
- rétablir à partir d'ext3, Rétablir un système de fichiers Ext2
- ext3
- conversion à partir d'ext2, Conversion vers un système de fichiers ext3
- création, Créer un système de fichiers ext3
- fonctionnalités, Système de fichiers Ext3
- ext4
- autres utilitaires du système de fichiers, Autres utilitaires du système de fichiers Ext4
- barrières d'écriture, Monter un système de fichiers Ext4
- créer, Créer un système de fichiers Ext4
- debugfs (autres utilitaires du système de fichiers ext4), Autres utilitaires du système de fichiers Ext4
- e2image (autres utilitaires du système de fichiers ext4), Autres utilitaires du système de fichiers Ext4
- e2label, Autres utilitaires du système de fichiers Ext4
- e2label (autres utilitaires du système de fichiers ext4), Autres utilitaires du système de fichiers Ext4
- fonctionnalités d'allocation, Le système de fichiers Ext4
- fonctionnalités principales, Le système de fichiers Ext4
- fsync(), Le système de fichiers Ext4
- géométrie d'entrelacement, Créer un système de fichiers Ext4
- largeur d'entrelacement (spécifier la géométrie d'entrelacement), Créer un système de fichiers Ext4
- mkfs.ext4, Créer un système de fichiers Ext4
- monter, Monter un système de fichiers Ext4
- option de montage « nobarrier », Monter un système de fichiers Ext4
- quota (autres utilitaires du système de fichiers ext4), Autres utilitaires du système de fichiers Ext4
- redimensionner, Redimensionner un système de fichiers Ext4
- resize2fs (redimensionner ext4), Redimensionner un système de fichiers Ext4
- stride (spécifier la géométrie d'entrelacement), Créer un système de fichiers Ext4
- tune2fs (montage), Monter un système de fichiers Ext4
- types de systèmes de fichiers, Le système de fichiers Ext4
F
- fast_io_fail_tmo
- Fibre Channel API, Interface de programmation Fibre Channel
- FCoE
- configurer une interface Ethernet pour utiliser FCoE, Configurer une interface FCoE (« Fibre-Channel Over Ethernet »)
- Fibre Channel over ethernet, Configurer une interface FCoE (« Fibre-Channel Over Ethernet »)
- paquets requis, Configurer une interface FCoE (« Fibre-Channel Over Ethernet »)
- FHS, Vue d'ensemble du standard de hiérarchie des systèmes de fichiers (FHS, ou « Filesystem Hierarchy Standard »), Organisation FHS
- (voir aussi système de fichiers)
- Fibre Channel
- stockage en ligne, Fibre Channel
- Fibre Channel over Ethernet
- Fichier /etc/fstab
- activer les quotas de disques avec, Activer les quotas
- fichiers API espace utilisateur
- API Fibre Channel, Interface de programmation Fibre Channel
- findmnt (commande)
- répertorier les montages, Répertorier les systèmes de fichiers actuellement montés
- fonctionnalités d'allocation
- fonctionnalités principales
- FS-Cache
- backend de cache, FS-Cache
- bcull (cache cull limits settings), Définir les limites d'élimination du cache
- brun (cache cull limits settings), Définir les limites d'élimination du cache
- bstop (cache cull limits settings), Définir les limites d'élimination du cache
- cachefiles, FS-Cache
- cachefilesd, Paramétrer un cache
- clés d'indexation, FS-Cache
- données de cohérence, FS-Cache
- garantie des performances, Garantie des performances
- informations statistiques (contrôle), Informations statistiques
- limites d'élimination du cache, Définir les limites d'élimination du cache
- NFS (limitations de cache avec), Limitations des caches avec NFS
- NFS (utiliser avec), Utiliser le cache avec NFS
- paramétrage d'un cache, Paramétrer un cache
- partage de cache, Partage de cache
- tune2fs (définir un cache), Paramétrer un cache
- fsync()
G
- garantie des performances
- FS-Cache, Garantie des performances
- géométrie d'entrelacement
- gestion des quotas
- GFS2
- gfs2.ko, Global File System 2
- taille maximale, Global File System 2
- types de systèmes de fichiers, Global File System 2
- gfs2.ko
- GFS2, Global File System 2
- Global File System 2
- gfs2.ko, Global File System 2
- taille maximale, Global File System 2
- types de systèmes de fichiers, Global File System 2
- gquota/gqnoenforce
H
- hiérarchie, système de fichiers, Vue d'ensemble du standard de hiérarchie des systèmes de fichiers (FHS, ou « Filesystem Hierarchy Standard »)
- host
- Fibre Channel API, Interface de programmation Fibre Channel
I
- iface (configuration pour déchargement iSCSI)
- déchargement et liaison d'interfaces
- iface pour iSCSI logiciel
- déchargement et liaison d'interfaces
- implémentations d'initiateur
- déchargement et liaison d'interfaces
- importance des barrières d'écriture
- barrières d'écriture, Importance des barrières d'écriture
- information système
- systèmes de fichiers
- informations statistiques (contrôle)
- FS-Cache, Informations statistiques
- informations système
- systèmes de fichiers, Collecte des informations sur les systèmes de fichiers
- interconnexions (scanner)
- interconnexions du stockage, scanner, Scanner les interconnexions du stockage
- interface sysfs (accès à l'espace utilisateur)
- alignement et taille des E/S, Interface sysfs
- introduction, Aperçu
- ioctls du périphérique bloc (accès à l'espace utilisateur)
- alignement et taille des E/S, ioctls du périphérique bloc
- iSCSI
- cibles, Connexion à une cible iSCSI
- connexion aux, Connexion à une cible iSCSI
- déchargement et liaison d'interface
- afficher les configurations iface disponibles, Afficher les configurations iface disponibles
- déchargement et liaison d'interfaces, Configurer le déchargement et la liaison d'interfaces iSCSI
- Configurations iface, Afficher les configurations iface disponibles
- configurations iface, affichage, Afficher les configurations iface disponibles
- iface (configuration pour déchargement iSCSI), Configurer un iface pour le déchargement iSCSI
- iface pour iSCSI logiciel, Configurer un iface pour iSCSI logiciel
- implémentations d'initiateur, Afficher les configurations iface disponibles
- iSCSI logiciel, Configurer un iface pour iSCSI logiciel
- lier ou délier un iface sur un portail, Lier ou délier un iface sur un portail
- découverte, Configuration de la découverte iSCSI
- configuration, Configuration de la découverte iSCSI
- types d'enregistrements, Configuration de la découverte iSCSI
- iSCSI logiciel, Configurer un iface pour iSCSI logiciel
- scanner les interconnexions, Scanner les interconnexions iSCSI
- iSCSI logiciel
- déchargement et liaison d'interfaces
- iSCSI, Configurer un iface pour iSCSI logiciel
- issue_lip
- Fibre Channel API, Interface de programmation Fibre Channel
J
- journaux endommagés (réparation de systèmes de fichiers XFS)
L
- la commande quotacheck
- vérifier l'exactitude des quotas avec, Contrôler l'exactitude des quotas
- largeur d'entrelacement (spécifier la géométrie d'entrelacement)
- lazy mount/unmount support (autofs version 5)
- les caches d'écriture, désactiver
- barrières d'écriture, Désactiver les caches d'écriture
- lier ou délier un iface
- déchargement et liaison d'interfaces
- lier ou délier un iface sur un portail
- déchargement et liaison d'interfaces
- limitations de cache avec NFS
- FS-Cache, Limitations des caches avec NFS
- limite (mode xfs_quota expert)
- limites d'élimination du cache
- limites de projets (paramétrage)
- logical_block_size
- alignement et taille des E/S, Accès à l'espace utilisateur
- LUKS/dm-crypt, chiffrer des périphériques blocs à l'aide de
- besoins du stockage à prendre en compte pendant l'installation, Chiffrer des périphériques blocs avec LUKS
- LUN (numéro d'unité logique)
- ajouter ou supprimer, Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- paquets requis, Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- problèmes connus, Problèmes connus avec rescan-scsi-bus.sh
- rescan-scsi-bus.sh, Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- LVM
- alignement et taille des E/S, Gestionnaire de volumes logiques LVM
M
- matrices haut de gamme
- barrières d'écriture, Matrices haut de gamme
- mdadm (configuration d'ensembles RAID)
- RAID, mdadm
- mdraid
- RAID, mdraid
- mémoire virtuelle (tuning)
- solid-state disks, Mémoire virtuelle
- messages d'erreur
- barrières d'écriture, Activer/désactiver les barrières d'écriture
- métadonnées RAID BIOS périmées
- besoins du stockage à prendre en compte pendant l'installation, Métadonnées RAID BIOS périmées
- minuteur de commande (SCSI)
- couche Linux SCSI, Minuteur de commande
- minuteur de commande SCSI
- couche Linux SCSI, Minuteur de commande
- mise en miroir
- mises à jour
- besoins de stockage à prendre en compte pendant l'installation, Besoins de stockage à prendre en compte pendant l'installation
- mkfs , Formatage et étiquetage de la partition
- mkfs.ext4
- mkfs.xfs
- mkpart , Créer la partition
- mode cumulatif (xfsrestore)
- mode expert (xfs_quota)
- mode simple (xfsrestore)
- modifier dev_loss_tmo
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- Modifier l'état de lecture/écriture
- Unités logiques en ligne, Modifier l'état de lecture/écriture d'une unité logique en ligne
- modifier le comportement de la perte de lien, Modifier le comportement de la perte de lien
- Fibre Channel, Fibre Channel
- montage
- montage (configuration du client)
- monter
- mount (command), Utilisation de la commande mount
- déplacer un point de montage, Déplacer un point de montage
- monter un système de fichiers, Monter un système de fichiers
- options, Spécifier les options de montage
- répertorier les montages, Répertorier les systèmes de fichiers actuellement montés
- shared subtrees
- private mount, Partager des montages
- shared mount, Partager des montages
- slave mount, Partager des montages
- unbindable mount, Partager des montages
- sous-arborescences partagées, Partager des montages
- mounting, Monter un système de fichiers
- multiple master map entries per autofs mount point (autofs version 5)
N
- Network File System (voir NFS)
- NFS
- /etc/fstab , Monter des systèmes de fichiers NFS à l'aide de /etc/fstab
- /local/directory (configuration du client, montage), Configuration du client NFS
- /remote/export (configuration du client, montage), Configuration du client NFS
- arrêt, Démarrage et arrêt NFS
- autofs
- autofs version 5, Améliorations de autofs Version 5 par rapport à la Version 4
- barrières d'écriture, NFS
- client
- autofs , autofs
- configuration, Configuration du client NFS
- options de montage, Options de montage NFS courantes
- condrestart, Démarrage et arrêt NFS
- configuration avec un pare-feu, Exécuter NFS derrière un pare-feu
- configuration du serveur, Configuration du serveur NFS
- /etc/exports , Fichier de configuration /etc/exports
- commande exportfs, Commande exportfs
- commande exportfs avec NFSv4, Utiliser exportfs avec NFSv4
- démarrage, Démarrage et arrêt NFS
- direct map support (autofs version 5), Améliorations de autofs Version 5 par rapport à la Version 4
- enhanced LDAP support (autofs version 5), Améliorations de autofs Version 5 par rapport à la Version 4
- fonctionnement, Fonctionnement NFS
- formats des noms d'hôtes, Formats des noms d'hôtes
- FS-Cache, Utiliser le cache avec NFS
- introduction, Network File System (NFS)
- lazy mount/unmount support (autofs version 5), Améliorations de autofs Version 5 par rapport à la Version 4
- montage (configuration du client), Configuration du client NFS
- multiple master map entries per autofs mount point (autofs version 5), Améliorations de autofs Version 5 par rapport à la Version 4
- options (configuration du client, montage), Configuration du client NFS
- proper nsswitch configuration (autofs version 5), use of, Améliorations de autofs Version 5 par rapport à la Version 4
- RDMA, NFS sur RDMA
- rechargement, Démarrage et arrêt NFS
- redémarrage, Démarrage et arrêt NFS
- remplacer/augmenter les fichiers de configuration du site (autofs), Configuration autofs
- résolution des problèmes NFS et rpcbind, Résolution des problèmes NFS et rpcbind
- ressources supplémentaires, Références
- documentation installée, Documentation installée
- livres apparentés, Livres sur le sujet
- sites web utiles, Sites Web utiles
- rfc2307bis (autofs), Utiliser LDAP pour stocker des mappages Automounter
- rpcbind , NFS et rpcbind
- sécurité, Sécurisation de NFS
- accès aux hôtes NFSv4, Sécurité NFS avec AUTH_GSS
- permissions de fichiers, Permissions de fichier
- security
- NFSv3 host access, Sécurité NFS avec AUTH_SYS et les contrôles d'export
- serveur (configuration du client, montage), Configuration du client NFS
- services requis, Services requis
- statut, Démarrage et arrêt NFS
- stockage de mappages automounter, utiliser LDAP pour le stockage (autofs), Remplacer ou augmenter les fichiers de configuration du site
- TCP, Fonctionnement NFS
- UDP, Fonctionnement NFS
- NFS (limitations de cache avec)
- FS-Cache, Limitations des caches avec NFS
- NFS (utiliser avec)
- FS-Cache, Utiliser le cache avec NFS
- niveaux
- niveaux de vidage
- NOP-Outs (désactivation)
- configuration iSCSI, Root iSCSI
O
- opération interactive (xfsrestore)
- option de montage « nobarrier »
- options (configuration du client, montage)
- outils (pour le partitionnement et autres fonctions des systèmes de fichiers)
- alignement et taille des E/S, Outils des partitions et systèmes de fichiers
P
- paquets requis
- ajouter ou supprimer
- LUN (numéro d'unité logique), Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- FCoE, Configurer une interface FCoE (« Fibre-Channel Over Ethernet »)
- systèmes sans disque, Paramétrer un système sans disque distant
- Parallel NFS
- pNFS, pNFS
- paramétrer un cache
- FS-Cache, Paramétrer un cache
- paramètres d'accès au stockage
- Alignement et taille des E/S, Paramètres d'accès au stockage
- parité
- partage de cache
- FS-Cache, Partage de cache
- parted , Partitions
- afficher la table de partitions, Afficher la table de partitions
- création de partitions, Création d'une partition
- redimensionnement de partitions, Redimensionnement d'une partition
- sélection du périphérique, Afficher la table de partitions
- suppression de partitions, Suppression de partition
- tableau des commandes, Partitions
- vue d'ensemble, Partitions
- partitions
- afficher la liste, Afficher la table de partitions
- création, Création d'une partition
- mkpart , Créer la partition
- formatage
- redimensionnement, Redimensionnement d'une partition
- suppresion, Suppression de partition
- partitions séparées (pour /home, /opt, /usr/local)
- besoins du stockage à prendre en compte pendant l'installation, Partitions séparées pour /home, /opt, /usr/local
- périphérique bloc, vérification
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- périphériques bloc activés DIF/DIX
- besoins de stockage à prendre en compte pendant l'installation, Périphériques bloc avec DIF/DIX activé
- périphériques DASD et zFCP sur IBM System Z
- besoins du stockage à prendre en compte pendant l'installation, Périphériques DASD et zFCP sur IBM System Z
- périphériques, suppression, Supprimer un périphérique de stockage
- Pile d'E/S Linux
- Alignement et taille des E/S, Alignement et taille des E/S de stockage
- pilotes (natifs) Fibre Channel, Pilotes et capacités natifs Fibre Channel
- pilotes (natifs), Fibre Channel, Pilotes et capacités natifs Fibre Channel
- pilotes de contrôleurs RAID matériel
- pilotes natifs Fibre Channel, Pilotes et capacités natifs Fibre Channel
- planificateur E/S (tuning)
- solid-state disks, Planificateur d'E/S
- pNFS
- Parallel NFS, pNFS
- pquota/pqnoenforce
- prise en charge d'Anaconda
- prise en charge de l'installateur
- private mount, Partager des montages
- problèmes connus
- ajouter ou supprimer
- LUN (numéro d'unité logique), Problèmes connus avec rescan-scsi-bus.sh
- proper nsswitch configuration (autofs version 5), use of
Q
- queue_if_no_path
- configuration iSCSI, Paramètres iSCSI avec dm-multipath
- modification de la perte de lien
- configuration iSCSI, replacement_timeout
- quota (autres utilitaires du système de fichiers ext4)
- quota de disques
- ressources supplémentaires, Références de quotas de disques
- quotacheck , Créer les fichiers de base de données de quotas
- quotaoff , Activation et désactivation
- quotaon , Activation et désactivation
- quotas de disque
- désactivation, Activation et désactivation
- gestion de, Gérer les quotas de disque
- quotas de disques, Quotas de disques
- activation, Configurer les quotas de disques, Activation et désactivation
- /etc/fstab, modification, Activer les quotas
- créer des fichiers de quotas, Créer les fichiers de base de données de quotas
- quotacheck, exécution, Créer les fichiers de base de données de quotas
- allocation par groupe, Assigner les quotas par groupe
- allocation par système de fichiers, Définir la période de grâce pour les limites soft
- allocation par utilisateur, Allouer les quotas par utilisateur
- gestion des
- rapports, Rapports sur les quotas de disques
- hard limit, Allouer les quotas par utilisateur
- période de grâce, Allouer les quotas par utilisateur
- soft limit, Allouer les quotas par utilisateur
R
- RAID
- configuration d'ensembles RAID, Configuring RAID Sets
- création de périphériques RAID avancée, Création de périphériques RAID avancée
- dmraid, dmraid
- dmraid (configuration d'ensembles RAID), dmraid
- entrelacement, Niveaux RAID et prise en charge linéaire
- mdadm (configuration d'ensembles RAID), mdadm
- mdraid, mdraid
- mise en miroir, Niveaux RAID et prise en charge linéaire
- niveau 0, Niveaux RAID et prise en charge linéaire
- niveau 1, Niveaux RAID et prise en charge linéaire
- niveau 4, Niveaux RAID et prise en charge linéaire
- niveau 5, Niveaux RAID et prise en charge linéaire
- niveaux, Niveaux RAID et prise en charge linéaire
- parité, Niveaux RAID et prise en charge linéaire
- pilotes de contrôleurs RAID matériel, Pilotes de contrôleurs RAID matériel Linux
- prise en charge d'Anaconda, RAID Support in the Installer
- prise en charge de l'installateur, RAID Support in the Installer
- RAID linéaire, Niveaux RAID et prise en charge linéaire
- RAID logiciel, Types RAID
- RAID matériel, Types RAID
- raisons d'utilisation, Réseau redondant de disques indépendants (RAID, de l'anglais « Redundant Array of Independent Disks »)
- sous-systèmes RAID, Sous-systèmes RAID Linux
- RAID linéaire
- RAID logiciel (voir RAID)
- RAID matériel (voir RAID)
- rapport (mode xfs_quota expert)
- RDMA
- NFS, NFS sur RDMA
- READ CAPACITY(16)
- alignement et taille des E/S, SCSI
- redimensionnement d'unités logiques redimensionnées, Redimensionner une Unité logique En ligne
- redimensionner
- redimensionner une unité logique iSCSI, Redimensionner une unité logique iSCSI
- remote port
- Fibre Channel API, Interface de programmation Fibre Channel
- remplacer/augmenter les fichiers de configuration du site (autofs)
- NFS, Configuration autofs
- répare des systèmes de fichiers XFS avec des journaux endommagés
- réparer un système de fichiers
- Répertoire /boot/, Répertoire /boot/
- répertoire dev, Répertoire /dev/
- répertoire etc, Répertoire /etc/
- répertoire mnt, Répertoire /mnt/
- répertoire opt, Répertoire /opt/
- répertoire proc, Répertoire /proc/
- répertoire srv, Répertoire /srv/
- répertoire sys, Répertoire /sys/
- répertoire sysconfig, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- répertoire usr, Répertoire /usr/
- répertoire var, Répertoire /var/
- répertoire var/lib/rpm/, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- répertoire var/spool/up2date/, Emplacement des fichiers Red Hat Enterprise Linux spéciaux
- répertoires
- /dev/, Répertoire /dev/
- /etc/, Répertoire /etc/
- /mnt/, Répertoire /mnt/
- /opt/, Répertoire /opt/
- /proc/, Répertoire /proc/
- /srv/, Répertoire /srv/
- /sys/, Répertoire /sys/
- /usr/, Répertoire /usr/
- /var/, Répertoire /var/
- replacement_timeout
- modification de la perte de lien
- configuration iSCSI, SCSI Error Handler, replacement_timeout
- replacement_timeoutM
- configuration iSCSI, Root iSCSI
- requêtes NOP-Out
- modification de la perte de lien
- configuration iSCSI, Intervalle/Délai d'expiration NOP-Out
- rescan-scsi-bus.sh
- ajouter ou supprimer
- LUN (numéro d'unité logique), Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh
- resize2fs, Rétablir un système de fichiers Ext2
- resize2fs (redimensionner ext4)
- résolution de problème
- stockage en ligne, Résolution de problème de configuration de stockage en ligne
- résolution des problèmes NFS et rpcbind
- restaurer une copie de sauvegarde
- rfc2307bis (autofs)
- root iSCSI
- configuration iSCSI, Root iSCSI
- rpcbind , NFS et rpcbind
- (voir aussi NFS)
- NFS, Résolution des problèmes NFS et rpcbind
- rpcinfo , Résolution des problèmes NFS et rpcbind
- statut, Démarrage et arrêt NFS
- rpcinfo , Résolution des problèmes NFS et rpcbind
S
- sauvegarde/restauration
- scanner les interconnexions
- scanner les interconnexions du stockage, Scanner les interconnexions du stockage
- SCSI Error Handler
- modification de la perte de lien
- configuration iSCSI, SCSI Error Handler
- serveur (configuration du client, montage)
- service de démarrage réseau
- systèmes sans disque, Paramétrer un système sans disque distant
- service tftp, configuration
- systèmes sans disque, Configuration d'un service tftp pour des clients sans disque
- sessions en cours, récupération d'informations sur
- API iSCSI, API iSCSI
- shared mount, Partager des montages
- shared subtrees
- private mount, Partager des montages
- shared mount, Partager des montages
- slave mount, Partager des montages
- unbindable mount, Partager des montages
- slave mount, Partager des montages
- solid-state disks
- commande TRIM, Directives de déploiement des disques SSD
- déploiement, Considérations pour le déploiement
- directives de déploiement, Directives de déploiement des disques SSD
- mémoire virtuelle (tuning), Mémoire virtuelle
- planificateur E/S (tuning), Planificateur d'E/S
- SSD, Directives de déploiement des disques SSD
- swap (tuning), Mémoire swap
- throughput classes de débit, Directives de déploiement des disques SSD
- tuning, Considérations pour le paramétrage
- sous-arborescences partagées, Partager des montages
- sous-systèmes RAID
- RAID, Sous-systèmes RAID Linux
- SSD
- solid-state disks, Directives de déploiement des disques SSD
- SSM
- System Storage Manager, System Storage Managerm(SSM)
- Backends, SSM Backends
- commande cliché, Cliché
- Installation, Installation du Gestionnaire de stockage de système (SSM)
- list command, Afficher les informations sur tous les périphériques détectés
- resize command, Augmenter une taille de volume
- standards ATA
- alignement et taille des E/S, ATA
- standards SCSI
- alignement et taille des E/S, SCSI
- statut de périphérique
- couche Linux SCSI, États de périphériques
- statut en cours
- couche Linux SCSI, Contrôle du Minuteur de commande SCSI et du Statut de périphérique
- statut hors ligne
- couche Linux SCSI, Contrôle du Minuteur de commande SCSI et du Statut de périphérique
- stockage de disques (voir quotas de disques)
- stockage de mappages automounter, utiliser LDAP pour le stockage (autofs)
- stockage en ligne
- aperçu, Online Storage Management
- sysfs, Online Storage Management
- Fibre Channel, Fibre Channel
- résolution de problème, Résolution de problème de configuration de stockage en ligne
- stockage sur disque
- parted (voir parted)
- stockage virtuel, Stockage virtuel
- stride (spécifier la géométrie d'entrelacement)
- su (mkfs.xfs sub-options)
- suppression de périphériques, Supprimer un périphérique de stockage
- supprimer des chemins vers un périphérique de stockage, Supprimer un chemin vers un périphérique de stockage
- suspension
- sw (mkfs.xfs sub-options)
- swap (tuning)
- solid-state disks, Mémoire swap
- swap space
- file
- creating, Supprimer un fichier swap
- sysfs
- aperçu
- stockage en ligne, Online Storage Management
- System Storage Manager
- SSM, System Storage Managerm(SSM)
- Backends, SSM Backends
- commande cliché, Cliché
- Installation, Installation du Gestionnaire de stockage de système (SSM)
- list command, Afficher les informations sur tous les périphériques détectés
- resize command, Augmenter une taille de volume
- système de fichiers
- hiérarchie, Vue d'ensemble du standard de hiérarchie des systèmes de fichiers (FHS, ou « Filesystem Hierarchy Standard »)
- organisation, Organisation FHS
- standard FHS, Organisation FHS
- structure, Structure et maintenance des systèmes de fichiers
- Système de fichiers
- Btrfs, Btrfs (Aperçu technologique)
- système de fichiers virtuel (/proc)
- /proc/devices, Système de fichiers virtuel /proc
- /proc/filesystems, Système de fichiers virtuel /proc
- /proc/mdstat, Système de fichiers virtuel /proc
- /proc/mounts, Système de fichiers virtuel /proc
- /proc/mounts/, Système de fichiers virtuel /proc
- /proc/partitions, Système de fichiers virtuel /proc
- systèmes de fichiers
- ext2 (voir ext2)
- ext3 (voir ext3)
- systèmes de fichiers exportés
- systèmes sans disque, Configuration d'un système de fichiers exporté pour les clients sans disque
- systèmes sans disque
- DHCP, configuration, Configuration DHCP pour les clients sans disque
- paquets requis, Paramétrer un système sans disque distant
- service de démarrage réseau, Paramétrer un système sans disque distant
- service tftp, configuration, Configuration d'un service tftp pour des clients sans disque
- systèmes de fichiers exportés, Configuration d'un système de fichiers exporté pour les clients sans disque
- systèmes sans disque distants, Paramétrer un système sans disque distant
- systèmes sans disque distants
- systèmes sans disque, Paramétrer un système sans disque distant
T
- table de partitions
- afficher, Afficher la table de partitions
- taille maximale
- GFS2, Global File System 2
- taille maximum de systèmes de fichiers GFS2, Global File System 2
- taille maximum, systèmes de fichiers GFS2, Global File System 2
- transport
- Fibre Channel API, Interface de programmation Fibre Channel
- tune2fs
- conversion vers ext3 avec, Conversion vers un système de fichiers ext3
- rétablie ext2 avec, Rétablir un système de fichiers Ext2
- tune2fs (définir un cache)
- FS-Cache, Paramétrer un cache
- tune2fs (montage)
- tuning
- solid-state disks, Considérations pour le paramétrage
- types d'enregistrements
- découverte
- types de systèmes de fichiers
U
- udev règle (délai d'expiration)
- minuteur de commande (SCSI), Minuteur de commande
- umount, Démonter un système de fichiers
- unbindable mount, Partager des montages
- Unités logiques en ligne
- Modifier l'état de lecture/écriture, Modifier l'état de lecture/écriture d'une unité logique en ligne
- unités logiques iSCSI, redimensionnement, Redimensionner une unité logique iSCSI
- unités logiques redimensionnées, redimensionnement, Redimensionner une Unité logique En ligne
- uquota/uqnoenforce
- utilisateur individuel
V
- vérifier si un périphérique est bloqué
- Fibre Channel
- modifier le comportement de la perte de lien, Fibre Channel
- version
- what is new
- volume_key
- commandes, Commandes volume_key
- utilisateur individuel, Exécutez volume_key en tant qu'utilisateur individuel
X
- XFS
- allocation features, Le système de fichiers XFS
- augmenter la taille d'un système de fichiers, Augmenter la taille d'un système de fichiers XFS
- barrières d'écriture, Barrières d'écriture
- création, Créer un système de fichiers XFS
- fonctionnalités principales, Le système de fichiers XFS
- fsync(), Le système de fichiers XFS
- gestion des quotas, Gestion des quotas XFS
- gquota/gqnoenforce, Gestion des quotas XFS
- limite (mode xfs_quota expert), Gestion des quotas XFS
- limites de projets (paramétrage), Paramétrer des limites de projets
- mkfs.xfs, Créer un système de fichiers XFS
- mode cumulatif (xfsrestore), Mode cumulatif de xfsrestore
- mode expert (xfs_quota), Gestion des quotas XFS
- mode simple (xfsrestore), Mode simple de xfsrestore
- montage, Monter un système de fichiers XFS
- niveaux de vidage, Sauvegarde et restauration des systèmes de fichiers XFS
- opération interactive (xfsrestore), Opération interactive
- option de montage « nobarrier », Barrières d'écriture
- pquota/pqnoenforce, Gestion des quotas XFS
- rapport (mode xfs_quota expert), Gestion des quotas XFS
- répare des systèmes de fichiers XFS avec des journaux endommagés, Réparer un système de fichiers XFS
- réparer un système de fichiers, Réparer un système de fichiers XFS
- sauvegarde/restauration, Sauvegarde et restauration des systèmes de fichiers XFS
- su (mkfs.xfs sub-options), Créer un système de fichiers XFS
- suspension, Suspendre un système de fichier XFS
- sw (mkfs.xfs sub-options), Créer un système de fichiers XFS
- types de systèmes de fichiers, Le système de fichiers XFS
- uquota/uqnoenforce, Gestion des quotas XFS
- xfsdump, Sauvegarde et restauration des systèmes de fichiers XFS
- xfsprogs, Suspendre un système de fichier XFS
- xfsrestore, Sauvegarde et restauration des systèmes de fichiers XFS
- xfs_admin, Autres utilitaires des systèmes de fichiers XFS
- xfs_bmap, Autres utilitaires des systèmes de fichiers XFS
- xfs_copy, Autres utilitaires des systèmes de fichiers XFS
- xfs_db, Autres utilitaires des systèmes de fichiers XFS
- xfs_freeze, Suspendre un système de fichier XFS
- xfs_fsr, Autres utilitaires des systèmes de fichiers XFS
- xfs_growfs, Augmenter la taille d'un système de fichiers XFS
- xfs_info, Autres utilitaires des systèmes de fichiers XFS
- xfs_mdrestore, Autres utilitaires des systèmes de fichiers XFS
- xfs_metadump, Autres utilitaires des systèmes de fichiers XFS
- xfs_quota, Gestion des quotas XFS
- xfs_repair, Réparer un système de fichiers XFS
- xfsdump
- xfsprogs
- xfsrestore
- xfs_admin
- xfs_bmap
- xfs_copy
- xfs_db
- xfs_freeze
- xfs_fsr
- xfs_growfs
- xfs_info
- xfs_mdrestore
- xfs_metadump
- xfs_quota
- xfs_repair