Надо было больше узнать об этом, прежде чем пытаться это сделать, но теперь я гораздо более информирован ... облажаться, как правило, так и происходит. Только узнал о недостатках xfs
постфактум.
Очевидно, что ОС была установлена с разделами и типом по умолчанию, поэтому было (было) следующее:
/dev/mapper/cl-root 50G xfs
/dev/mapper/cl-home 50G xfs
В cl-root
был на 100%, поэтому подумал, что украду пространство у cl-home
поскольку на самом деле он не использовался.
Сделал следующее:
lvresize --size 10GB /dev/mapper/cl-home
lvresize --size 89GB /dev/mapper/cl-root
Оба были успешными, и изменения отражены в lvdisplay
для каждого тома; тем не мение df -h
все еще показывал их одного размера.
Решил перезагрузить компьютер, и тут проблема стала очевидной, потому что он перешел в аварийный режим из-за /home
неправильно установлен. В качестве работы я изменил /etc/fstab
так что это было nofail
для /dev/mapper/cl-home
что позволило мне нормально загрузиться, хотя и переделал /home
каталог.
я смотрю на df -h
и это не показывает /dev/mapper/cl-home
и файловая система по-прежнему показывает тот же размер для /dev/mapper/cl-root
. lvdisplay
показывает размеры регулируемого диска.
Пробовать mount /home
и получить: mount: /dev/mapper/cl-home: can't read superblock
.
Насколько я понимаю, процесс уменьшения или увеличения размера файловой системы состоит из двух частей: 1) изменение логического тома и 2) изменение файловой системы. У меня сложилось впечатление, что я уже сделал 1) и просто нужно сделать 2).
Пытаться:
resize2fs /dev/mapper/cl-home 10G
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/cl-home
Couldn't find valid filesystem superblock.
Пытаться:
xfs_repair /dev/mapper/cl-home
Phase 1 - find and verify superblock...
error reading superblock 1 -- seek to offset 13315866624 failed
couldn't verify primary superblock - attempted to perform I/O beyond EOF !!!
attempting to find secondary superblock...
...Sorry, could not find valid secondary superblock
Exiting now.
Хорошо, я попробую расширить /root
тогда и в основном получаются те же ошибки.
Так что на данный момент я просто хочу вернуть все как было.
lvresize --size 50G /dev/mapper/cl-root
WARNING: Reducing active and open logical volume to 50.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce cl/root? [y/n]:
Не уверен, что хочу сделать это в этой файловой системе.
Кажется, я не могу увеличить /dev/mapper/cl-home
без уменьшения cl-root
первый.
Так что с того места, где я стою, я как бы застрял. На данный момент все работает нормально, так что я думаю, что могу просто оставить это.
Есть предложения, как решить эту проблему?
Во всяком случае, использовал эти ссылки в качестве руководства.
http://www.microhowto.info/howto/increase_the_size_of_an_lvm_logical_volume.html
http://www.microhowto.info/howto/increase_the_size_of_an_ext2_ext3_or_ext4_filesystem.html
http://www.microhowto.info/howto/reduce_the_size_of_an_ext2_ext3_or_ext4_filesystem.html
Кто-то с похожей проблемой, которая заставляет меня думать, что я должен просто оставить ее в покое.
Файловые системы XFS можно только увеличивать, но нельзя сжимать.
Если ваша установка, вероятно, потребует сжатия файловых систем, используйте вместо этого EXT4.
Также - при использовании lvresize
, убедитесь, что вы также используете -r
/ --resizefs
вариант, иначе вы испортите свои файловые системы, возможно, безвозвратно. Хотя я лично не тестировал его на уменьшение файловой системы xfs, я ожидал, что он сообщит об ошибке и ничего не изменит (поскольку инструмент изменения размера xfs будет знать, что он не может сжать файловую систему).