web-dev-qa-db-fra.com

Recréer un système de fichiers XFS avec `ftype = 1`

J'ai un système Centos 7 dans lequel le système de fichiers racine est XFS (créé avec ftype=0, le paramètre Centos par défaut au moment de l'installation du système). Malheureusement, le docker overlay2 Le pilote de stockage nécessite que le système de fichiers ait été créé avec ftype=1:

https://docs.docker.com/storage/storagedRiver/overlayfs-driver/#prerequisites

Alors maintenant, je voudrais recréer la racine FS avec ftype=1. Je pensais faire cela comme suit:

  1. Démarrer dans une image de sauvetage d'une sorte.
  2. xfsdump la racine FS= à un emplacement distant.
  3. Recréer la racine FS avec ftype=1.
  4. xfsrestore la racine FS à partir du dépotoir à distance.

Une chose que je ne suis pas sûre, cependant, est de savoir si la sortie xfsdump transmet quelque chose de lié au paramètre ftype. C'est-à-dire qu'il y aurait des problèmes de l'xfsrestore sur un système de fichiers XFS avec un paramètre différent de ftype?

Ou existe-t-il une meilleure approche pour résoudre ce problème spécifique (qui ne consiste pas à réinstaller l'ensemble du système, répartition, etc.)?

6
jjlin

Ma méthode proposée semblait bien fonctionner. Voici ma procédure:

  1. Démarrer dans CentOS-7-x86_64-LiveGNOME-1804.iso.
  2. Ouvrez un terminal et Sudo -s.
  3. Numériser pour les volumes LVM: vgscan
  4. Changement dans le groupe de volumes approprié (centos dans mon cas): vgchange -ay centos
  5. Numérisez pour les volumes logiques de ce groupe: lvscan
  6. Créez un point de montage pour la racine FS: mkdir /mnt/root
  7. Montez le volume logique correspondant à la racine FS: mount /dev/centos/root /mnt/root
  8. Dump to Remote Host: xfsdump -J - /mnt/root | ssh <Host> 'cat >/data/rootfs.dump'
  9. Démonter la racine FS: umount /mnt/root
  10. Recréer la racine FS: mkfs.xfs -f -n ftype=1 /dev/centos/root
  11. Montez la racine recréée FS: mount /dev/centos/root /mnt/root
  12. Restaurer de l'hôte distant: ssh <Host> 'cat /data/rootfs.dump' | xfsrestore -J - /mnt/root
  13. Redémarrer. Tout devrait être tel qu'il était auparavant, sauf xfs_info / devrait maintenant montrer ftype=1.

Remarque: mon appel xfsdump appel a abouti à un certain nombre d'avertissements du formulaire

xfsdump: WARNING: failed to get bulkstat information for inode 10485897

Selon une personne qui semble être un développeur XFS ( http://xfs.9218.n7.n.nlvm-snapshots-and-lvm-snapshots-tp1241p1246.html ):

Ils peuvent être ignorés - ce sont des inodes qui étaient auparavant dissociés, mais sont encore partiellement là sur le volume d'instantané et visibles aux interfaces par la poignée que XFsdump utilise pour extraire toutes les inodes de l'instantané.

9
jjlin