XFS auf CentOS 7 nachträglich Docker kompatibel machen
Die Benutzung von Podman oder Docker erfordert unter XFS ein Dateisystem, dass die Option ftype=1 aktiviert hat. Unter alten CentOS 7 Installationen wurde dies nicht standardmäßig aktiviert und lässt sich auch nicht so ohne weiteres wieder aktivieren. Man muss das komplette Dateisystem neu anlegen über einen kleinen Umweg mit einer Live-CD. Das Problem hier ist, dass neuere LiveCDs die XFS-Option reflink aktivieren, mit der CentOS 7 nicht klarkommt, und solche Dateisysteme readonly mountet.
So geht es trotzdem:
- Man braucht eine zusätzliche Festplatte. Bei ner VM hängt man die einfach zusätzlich ein.
- Booten mit ner Live-CD von Linux Mint.
- Dann auf der Kommandozeile folgende Befehle ausführen
Ich bin in dem Beispiel davon ausgegangen, dass die root-Partition geändert werden soll, diese als /dev/centos/
root als LVM-Device vorliegt und die temporäre Festplatte /dev/sdb
ist.
sudo apt-get install xfsdump
sudo mkdir /mnt/temp
sudo mkdir /mnt/root
sudo mount /dev/centos/root /mnt/root
sudo parted -s /dev/sdb mkpart primary 0% 100%
sudo mkfs.xfs /dev/sdb1
sudo mount /dev/sdb1 /mnt/temp
sudo xfsdump -J -f /mnt/temp/root.dump /mnt/root
sudo umount /mnt/root
sudo mkfs.xfs -f -m reflink=0 -n ftype=1 /dev/centos/root
sudo mount /dev/centos/root /mnt/root
sudo xfsrestore -J -f /mnt/temp/root.dump /mnt/root
xfs_info /mnt/root