Linux

在 CentOS 7 中執行 lvreduce 並搞砸事情后將邏輯卷恢復到其原始大小

  • September 20, 2017

在嘗試這個之前應該閱讀更多關於這個主題的內容,但現在我了解更多……把事情搞砸往往會做到這一點。xfs事後才知道缺點。

作業系統顯然是使用預設分區和類型安裝的,因此有以下內容:

/dev/mapper/cl-root 50G xfs
/dev/mapper/cl-home 50G xfs

cl-root100% 所以我想我會偷空間,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-rootlvdisplay顯示調整驅動器大小。

嘗試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.

好的,我想我會嘗試擴展/rootthen 並基本上得到相同的錯誤。

所以在這一點上,我只想把它放回原來的樣子。

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

有類似問題的人讓我相信我應該不管它。

https://www.linuxquestions.org/questions/linux-newbie-8/home-partition-doesn%27t-mount-after-resizing-using-lvreduce-can%27t-read-superblock-4175593319/

XFS 文件系統只能增長,不能縮小。

如果您的設置可能需要縮小文件系統,請改用 EXT4。

另外 - 使用時lvresize,請確保您也使用-r/--resizefs選項,否則您將弄亂您的文件系統,可能無法挽回。雖然我個人沒有在減少 xfs 文件系統方面對其進行測試,但我希望它會報告錯誤並且不會調整任何大小(因為 xfs 調整大小工具會知道它不能縮小文件系統)。

引用自:https://serverfault.com/questions/874743