6.9. Migration de ext4 à XFS
À partir de Red Hat Enterprise Linux 7.0, XFS sera le système de fichiers par défaut et non plus ext4. Cette section pointe les différences entre utiliser et administrer un système de fichiers XFS.
Le système de fichiers ext4 est toujours pris en charge par Red Hat Enterprise Linux 7 et peut être sélectionné au moment de l'installation. Non requis quand on peut migrer d'ext4 à XFS.
6.9.1. Commandes utilisées avec ext3 et ext4 comparé à XFS
Le tableau suivant dresse une comparaison des commandes utilisées avec ext3 et ext4 par rapport à leurs équivalents spécifiques à 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 |
Le tableau suivant répertorie tous les outils standard qui fonctionnent pour les systèmes de fichiers XFS, mais les versions XFS ont un fonctionnalité particulière, et sont conseillés pour cette raison.
Tâche | ext4 | XFS |
---|---|---|
Quota | quota | xfs_quota |
Mappage de fichiers | filefrag | xfs_bmap |
Vous trouverez davantage d'informations sur les commandes XFS listées dans Chapitre 6, Le système de fichiers XFS. Vous pourrez également consulter les pages man des outils d'administration XFS listés pour obtenir plus d'informations.
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.