Logical Volume Manager (LVM)

LVM 是一種可用在 Linux內核邏輯分卷管理器;可用於管理磁盤驅動器或其餘相似的大容量存儲設備。

本文提供如何在 Arch Linux 中配置和使用 Logical Volume Manager (LVM) 的例子。php

 

LVM基本組成

LVM利用Linux內核的device-mapper來實現存儲系統的虛擬化(系統分區獨立於底層硬件)。 經過LVM,你能夠實現存儲空間的抽象化並在上面創建虛擬分區(virtual partitions),能夠更簡便地擴大和縮小分區,能夠增刪分區時無需擔憂某個硬盤上沒有足夠的連續空間, without getting caught up in the problems of fdisking a disk that is in use (and wondering whether the kernel is using the old or new partition table) and without having to move other partition out of the way. LVM是用來方便管理的,不會提供額外的安全保證。 However, it sits nicely with the other two technologies we are using.html

LVM的基本組成塊(building blocks)以下:node

  • 物理卷Physical volume (PV):能夠在上面創建卷組的媒介,能夠是硬盤分區,也能夠是硬盤自己或者回環文件(loopback file)。物理捲包括一個特殊的header,其他部分被切割爲一塊塊物理區域(physical extents)。 Think of physical volumes as big building blocks which can be used to build your hard drive.
  • 卷組Volume group (VG):將一組物理卷收集爲一個管理單元。Group of physical volumes that are used as storage volume (as one disk). They contain logical volumes. Think of volume groups as hard drives.
  • 邏輯卷Logical volume (LV):虛擬分區,由物理區域(physical extents)組成。A "virtual/logical partition" that resides in a volume group and is composed of physical extents. Think of logical volumes as normal partitions.
  • 物理區域Physical extent (PE):硬盤可供指派給邏輯卷的最小單位(一般爲4MB)。A small part of a disk (usually 4MB) that can be assigned to a logical Volume. Think of physical extents as parts of disks that can be allocated to any partition.

示例:linux

兩塊物理硬盤
                
  硬盤1 (/dev/sda):
     _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
    |分區1 50GB (物理卷)           |分區2 80GB (物理卷)            |
    |/dev/sda1                    |/dev/sda2                     |
    |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _ _ _ __|
                                  
  硬盤2 (/dev/sdb):
     _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
    |分區1 120GB (物理卷)                         |
    |/dev/sdb1                                   |
    | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|
LVM方式

  卷組VG1 (/dev/MyStorage/ = /dev/sda1 + /dev/sda2 + /dev/sdb1):
     _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ 
    |邏輯卷1 15GB                  |邏輯卷2 35GB                        |邏輯卷3 200GB                         |
    |/dev/MyStorage/rootvol        |/dev/MyStorage/homevol             |/dev/MyStorage/mediavol              |
    |_ _ _ _ _ _ _ _ _ _ _ _ _ _ __|_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|

優勢

比起正常的硬盤分區管理,LVM更富於彈性:ubuntu

  • 使用卷組(VG),使衆多硬盤空間看起來像一個大硬盤。
  • 使用邏輯卷(LV),能夠建立跨越衆多硬盤空間的分區。
  • 能夠建立小的邏輯卷(LV),在空間不足時再動態調整它的大小。
  • 在調整邏輯卷(LV)大小時能夠不用考慮邏輯卷在硬盤上的位置,不用擔憂沒有可用的連續空間。It does not depend on the position of the LV within VG, there is no need to ensure surrounding available space.
  • 能夠在線(online)對邏輯卷(LV)和卷組(VG)進行建立、刪除、調整大小等操做。LVM上的文件系統也須要從新調整大小,某些文件系統也支持這樣的在線操做。
  • 無需從新啓動服務,就能夠將服務中用到的邏輯卷(LV)在線(online)/動態(live)遷移至別的硬盤上。
  • 容許建立快照,能夠保存文件系統的備份,同時使服務的下線時間(downtime)下降到最小。

這些優勢使得LVM對服務器的管理很是有用,對於桌面系統管理的幫助則沒有那麼顯著,你須要根據實際狀況進行取捨。安全

缺點

  • 在系統設置時須要更復雜的額外步驟。

在LVM上安裝Arch Linux

你應該在安裝過程的分區建立文件系統這一步中建立LVM卷, 並且根(root)分區再也不經過直接格式化硬盤來建立,而是建立在LVM邏輯卷(LV)上。服務器

快速導覽:app

  • 建立物理卷(PV)所在的分區,設置分區格式爲'Linux LVM',對應的十六進制碼爲8e(MBR)或8e00(GPT)。
  • 建立物理卷(PV)。若是你只有一個硬盤,那麼你最好只建立一個分區一個物理卷;若是你有多個硬盤,你能夠建立多個分區,在每一個分區上分別建立一個物理卷。
  • 建立卷組(VG),並把全部物理卷加進卷組。
  • 在卷組上建立邏輯卷(LV)。
  • 繼續初學者指南中的格式化分區步驟。
  • 當你作到初學者指南中的建立初始 ramdisk 環境時,把 lvm加入到 mkinitcpio.conf文件中(請參考下文)。
警告: 若是你的啓動引導程序使用的是 GRUB Legacy,那麼因爲GRUB Legacy不支持LVM,於是你將沒法在LVM上建立 /boot分區。 GRUB用戶則不會有這個限制。若是你必須使用GRUB Legacy,那麼請單首創建並在硬盤上直接格式化 /boot分區。

建立分區

注意: 儘管多數狀況下推薦首先對磁盤設備進行分區,但根據實際用戶須要,該步驟是可選的。

參見Partitioning對設備進行分區。tcp

建立物理卷(PV)

可經過如下命令列出可被用做物理卷的設備:ide

# lvmdiskscan
警告: 請確認你對正確的設備進行操做,不然會致使文件丟失!

在列出的設備上建立物理卷:

 # pvcreate DEVICE

該命令在各個設備上建立LVM使用的頭部。如#LVM基本組成所示, DEVICE能夠是磁盤(如/dev/sda),分區(如/dev/sda2)或環回設備。例如:

# pvcreate /dev/sda2

你能夠用如下命令查看已建立好的物理卷:

# pvdisplay
注意: 若是你用的是未格式化過且擦除塊(erase block)大小小於1M的SSD,請採用如下命令 pvcreate --dataalignment 1m /dev/sda來設置對齊(alignment),能夠參考 連接(英文)

建立卷組(VG)

建立完成物理卷(PV)以後,下一步就是在該物理卷建立卷組(VG)了。 首先必須先在其中一個物理卷(PV)建立一個卷組

# vgcreate <volume_group> <physical_volume>

例如:

# vgcreate VolGroup00 /dev/sda2

而後讓該卷組擴大到其餘全部的物理卷:

# vgextend <volume_group> <physical_volume>
# vgextend <volume_group> <another_physical_volume>
# ...

例如:

# vgextend VolGroup00 /dev/sdb1
# vgextend VolGroup00 /dev/sdc

其中,「VolGroup00」名字換成你本身起的名字便可。接下來能夠用如下命令查看卷組:

# vgdisplay
注意: 你能夠建立多個的卷組,但這將使你的硬盤空間分佈在不一樣(邏輯)磁盤上。

一步建立卷組

LVM支持將卷組與物理卷的建立聚合在一個命令中。例如,爲了在前文提到的三個設備中建立名爲VolGroup00的卷組,能夠執行以下命令:

# vgcreate VolGroup00 /dev/sda2 /dev/sdb1 /dev/sdc

該命令首先會在分區上建立物理卷(若是以前沒有建立過),再建立一個包含三個物理卷的卷組。若是設備上已經存在文件系統,命令會提出警告。

建立邏輯卷(LV)

建立完卷組(VG)以後,就能夠開始建立邏輯卷(LV)了。輸入下面命令以指定新邏輯卷的名字、大小及其所在的卷組:

# lvcreate -L <size> <volume_group> -n <logical_volume>

例如:

# lvcreate -L 10G VolGroup00 -n lvolhome

該邏輯卷建立完後,你就能夠經過/dev/mapper/Volgroup00-lvolhome/dev/VolGroup00/lvolhome來訪問它。與卷組命名相似,你能夠按你的須要將邏輯卷命名。

你能夠指定一個或多個物理捲來限制LVM分配數據空間的位置。好比你但願在較小的SSD硬盤上建立根文件系統,並在較慢的機械硬盤上建立家目錄卷,僅需把物理卷設備加入到命令中,例如:

# lvcreate -L 10G VolGroup00 -n lvolhome /dev/sdc1

若是你想讓要建立的邏輯卷擁有卷組(VG)的全部未使用空間,請使用如下命令:

# lvcreate -l +100%FREE  <volume_group> -n <logical_volume>

能夠經過如下命令來查看邏輯卷:

# lvdisplay
注意: 爲了使上述命令能正常運行,你可能須要加載 device-mapper內核模塊(請使用命令 modprobe dm-mod)。
提示: 一開始能夠建立小一點的邏輯卷,在卷組裏留下一部分未使用空間,之後就能夠根據須要再做擴展了。

創建文件系統與掛載邏輯卷

如今你的邏輯卷應該已經在/dev/mapper//dev/YourVolumeGroupName中了。若是你沒法在以上位置找到它,請使用如下命令來加載模塊、並掃描與激活卷組:

# modprobe dm-mod
# vgscan
# vgchange -ay

如今你能夠在邏輯捲上建立文件系統並像普通分區同樣掛載它了(若是你正在安裝Arch linux,須要更詳細的信息,請參考掛載分區):

# mkfs.<fstype> /dev/mapper/<volume_group>-<logical_volume>
# mount /dev/mapper/<volume_group>-<logical_volume> /<mountpoint>

例如:

# mkfs.ext4 /dev/mapper/VolGroup00-lvolhome
# mount /dev/mapper/VolGroup00-lvolhome /home
警告: 掛載點請選擇你所新建的邏輯卷(例如: /dev/mapper/Volgroup00-lvolhome), 不要使用邏輯卷所在的實際分區設備(即不要使用: /dev/sda2)。

在mkinitcpio.conf中加入lvm的鉤子擴展(hook)

若是你的根文件系統基於LVM,你須要保證udevlvm2這兩個mkinitcpio的鉤子擴展被啓用。

udev默認已經預設好,沒必要手動啓用了。你只須要編輯/etc/mkinitcpio.conf文件,在blockfilesystem這兩項中間插入lvm2

/etc/mkinitcpio.conf
HOOKS="base udev ... block lvm2 filesystems"

以後你就能夠繼續下一步的建立和啓用鏡像操做了。

內核參數

若是你的根文件系統位於邏輯分卷,則root= 內核參數必須指向一個映射設備,好比/dev/mapper/vg-name-lv-name

Tango-preferences-desktop-locale.png本頁面須要更新翻譯,內容可能已經與英文脫節。要貢獻翻譯,請訪問簡體中文翻譯組Tango-preferences-desktop-locale.png

附註: 英文章不正。據2015年5月內核參數文檔  https://www.kernel.org/doc/Documentation/kernel-parameters.txt,  dolvm並未列於其中。

你可能還須要dolvm的支持。

配置

高級選項

若是你須要監控功能(這對快照是必須的),那麼你須要啓用lvmetad。 這隻須要在/etc/lvm/lvm.conf文件中設置use_lvmetad = 1選項便可。 目前這個選項已經成爲預設選項,不須要手動設置。

能夠經過修改/etc/lvm/lvm.conf文件中的auto_activation_volume_list參數限制自動激活的卷。若是存在問題,能夠將此選項註釋掉。

物理卷

對於存在物理卷的設備,在擴增其容量以後或縮小其容量以前,必須使用pvresize命令對應地增長或減小物理卷的大小。

擴增

增大分區/dev/sda1的容量以後,須要執行如下命令擴展物理卷的大小

# pvresize /dev/sda1

命令將自動探測設備當前大小並將物理卷擴展到其最大容量。

注意: 該命令可在卷在線時運行。
縮小

在減小某個物理卷所在設備大小以前,須要經過指定--setphysicalvolumesize size參數縮小物理卷大小,例如

# pvresize --setphysicalvolumesize 40G /dev/sda1

該命令可能會提示如下錯誤:

 /dev/sda1: cannot resize to 25599 extents as later ones are allocated.
 0 physical volume(s) resized / 1 physical volume(s) not resized

即該物理卷已分配物理區域超過了命令指定的新大小邊界,pvresize會拒絕將物理捲縮小。若磁盤空間足夠,可經過pvmove將物理區域從新分配至別的卷組來解決這個問題。

移動物理區域

在移動空閒的物理區域到卷尾部以前,須要運行# pvdisplay -v -m命令查看物理分段。以下例所示,僅有一個物理卷/dev/sdd1, 一個卷組vg1和一個邏輯卷backup

# pvdisplay -v -m
    Finding all volume groups.
    Using physical volume(s) on command line.
  --- Physical volume ---
  PV Name               /dev/sdd1
  VG Name               vg1
  PV Size               1.52 TiB / not usable 1.97 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              399669
  Free PE               153600
  Allocated PE          246069
  PV UUID               MR9J0X-zQB4-wi3k-EnaV-5ksf-hN1P-Jkm5mW
   
  --- Physical Segments ---
  Physical extent 0 to 153600:
    FREE
  Physical extent 153601 to 307199:
    Logical volume	/dev/vg1/backup
    Logical extents	1 to 153599
  Physical extent 307200 to 307200:
    FREE
  Physical extent 307201 to 399668:
    Logical volume	/dev/vg1/backup
    Logical extents	153601 to 246068

可用空間在卷中段。爲了減少物理卷大小,首先必須把全部的已用分段移到前部。

此例中,第一個可用空間在第0至第153600分段共153601個可用區域。咱們能夠從最後的分段中移動相同數目的物理區域來填補這段空間

# pvmove --alloc anywhere /dev/sdd1:307201-399668 /dev/sdd1:0-92466
/dev/sdd1: Moved: 0.1 %
/dev/sdd1: Moved: 0.2 %
...
/dev/sdd1: Moved: 99.9 %
/dev/sdd1: Moved: 100,0%
Note:
  • 命令將92467 (399668-307201)個物理區域最後一個分段移動到第一個分段。因爲第一個分段共有153600個空閒的物理區域,能夠容納92467個物理區域,命令能夠成功執行。
  • 參數--alloc anywhere能夠用於在同一個分區中移動物理區域的。若要在不一樣分區中移動,命令形式應該是# pvmove /dev/sdb1:1000-1999 /dev/sdc1:0-999
  • 當操做的數據較多時,移動操做將持續好久(一到兩個小時)。最好在TmuxGNU Screen會話中執行此過程。任何形式的意外中斷均可能會致使致命錯誤。
  • 當操做完成後,可運行Fsck保證文件系統完整性。
調整物理卷大小

當全部空閒分段都移動到最後的物理區域時,運行# vgdisplay查看。

以後能夠再次運行命令:

# pvresize --setphysicalvolumesize size PhysicalVolume

結果相似:

# pvs
  PV         VG   Fmt  Attr PSize    PFree 
  /dev/sdd1  vg1  lvm2 a--     1t     500g
調整分區大小

最後,你能夠用你喜歡的分區工具來縮小該分區。

邏輯卷

注意: 雖然 lvextendlvreduce能夠實現 lvresize特定選項實現的功能,且他們都有一個 -r, --resizefs選項容許文件系統利用 fsadm(8)(支持 ext2ext3ext4ReiserFSXFS)同步調節其大小。但除非你要對整個過程有更加精確的控制,直接使用 lvresize輔以 --resizefs選項來完成全部工做比較簡便。
使用lvresize增長或縮小容量
警告: 雖然即使是對根分區,增長文件系統大小通常均可以在線完成( 文件系統已經被掛載),縮小其大小每每要求首先卸載文件系統以免數據丟失。請首先肯定你的文件系統支持相關操做。

爲了向邏輯組vg1中的邏輯卷lv1增長2GB空間但並不修改其文件系統,執行:

# lvresize -L +2G vg1/lv1

而從邏輯組vg1/lv1中減小500MB空間但並不修改其文件系統大小(須要確保文件系統已經縮小過[broken link: invalid section]),執行:

# lvresize -L -500M vg1/lv1

設置vg1/lv1爲15GB並同時更改其文件系統大小:

# lvresize -L 15G -r vg1/lv1
注意: 僅支持 ext2ext3ext4ReiserFS and  XFS  file systems。若是使用不一樣文件系統請使用 合適的組件 [broken link: invalid section]

若是想將全部可用空間都加入一個卷組,能夠執行:

# lvresize -l +100%FREE vg/lv

查閱lvresize(8)可見詳細說明。

單獨設置文件系統大小

若是在執行lv{resize,extend,reduce}時沒有使用-r, --resizefs選項, 或文件系統不支持fsadm(8)(如BtrfsZFS等),則須要在縮小邏輯卷以前或擴增邏輯卷後手動調整文件系統大小。

警告: 並不是全部文件系統都支持無損或/且在線地調整大小。

例如對於ext2/ext3/ext4文件系統:

# resize2fs vg/lv

會將文件系統大小擴展到邏輯卷支持的最大容量,而

# resize2fs -M vg/lv

會將文件系統減少到其所需的最小容量。也能夠指定具體的尺寸:

# resize2fs vg/lv NewSize

移除邏輯卷

警告: 在移除邏輯卷以前,請先備份好數據以避免丟失!

首先,找到你所要移除的邏輯卷的名稱。你可使用如下命令來查看系統的全部邏輯卷:

# lvs

接下來,找到你所要移除的邏輯卷的掛載點

$ lsblk

並卸載它:

# umount /<mountpoint>

最後,使用如下命令來移除邏輯卷:

# lvremove <volume_group>/<logical_volume>

例如:

# lvremove VolGroup00/lvolhome

請輸入y來肯定你要執行移除邏輯卷操做。

此外,請不要忘了更新/etc/fstab

你能夠再次使用lvs命令來確認你的邏輯卷已被移除。

添加物理卷(PV)到卷組(VG)中

首先建立一個新的物理卷(PV),再把卷組(VG)擴充到該物理捲上:

# pvcreate /dev/sdb1
# vgextend VolGroup00 /dev/sdb1

這將增長你卷組中的物理區域總數,你能夠按須要將它們分配到邏輯卷中。

注意: 分區表保存在LVM所在媒體設備是個值得借鑑的方式。對於MBR可使用類型 8e,或GPT類型 8e00

從卷組(VG)中移除分區

首先,分區中的全部數據須要被轉移到別的分區,幸而LVM提供瞭如下的簡便方式:

# pvmove /dev/sdb1

若是你想指定所要轉移的目標分區,那麼能夠把該分區做爲pvmove的第二個參數:

# pvmove /dev/sdb1 /dev/sdf1

接着,從卷組(VG)中移除物理卷(PV):

# vgreduce myVg /dev/sdb1

或者把全部的空物理卷(PV)都移除掉:

# vgreduce --all vg0

最後,若是你仍然想要使用該分區,並且不想讓LVM覺得它是一個物理卷,那麼你能夠執行如下命令:

# pvremove /dev/sdb1

快照功能

介紹

LVM能夠給系統建立一個快照,因爲使用了寫入時複製(copy-on-write) 策略,相比傳統的備份更有效率。 初始的快照只有關聯到實際數據的inode的實體連接(hark-link)而已。只要實際的數據沒有改變,快照就只會包含指向數據的inode的指針,而非數據自己。一旦你更改了快照對應的文件或目錄,LVM就會自動拷貝相應的數據,包括快照所對應的舊數據的拷貝和你當前系統所對應的新數據的拷貝。這樣的話,只要你修改的數據(包括原始的和快照的)不超過2G,你就能夠只使用2G的空間對一個有35G數據的系統建立快照。

配置

你能夠像建立普通邏輯卷同樣建立快照邏輯卷。

# lvcreate --size 100M --snapshot --name snap01 /dev/mapper/vg0-pv

你能夠修改少於100M的數據直到該快照邏輯卷空間不足爲止。

Reverting the modified 'pv' logical volume to the state when the 'snap01' snapshot was taken can be done with

# lvconvert --merge /dev/vg0/snap01

In case the origin logical volume is active, merging will occur on the next reboot.(Merging can be done even from a LiveCD)

The snapshot will no longer exist after merging.

Also multiple snapshots can be taken and each one can be merged with the origin logical volume at will.

The snapshot can be mounted and backed up with dd or tar. The size of the backup file done with dd will be the size of the files residing on the snapshot volume. To restore just create a snapshot, mount it, and write or extract the backup to it. And then merge it with the origin.

It is important to have the dm_snapshot module listed in the MODULES variable of /etc/mkinitcpio.conf, otherwise the system will not boot. If you do this on an already installed system, make sure to rebuild the image with

# mkinitcpio -g /boot/initramfs-linux.img

Todo: scripts to automate snapshots of root before updates, to rollback... updating menu.lst to boot snapshots (separate article?)

快照能夠提供文件系統的凍結副本,主要被用來作備份;一份須要兩小時才能完成的(快照)備份比直接備份分區更能保證文件系統映像的一致性。

See Create root filesystem snapshots with LVM for automating the creation of clean root file system snapshots during system startup for backup and rollback.

Dm-crypt/Encrypting an entire system#LVM on LUKS and Dm-crypt/Encrypting an entire system#LUKS on LVM.

If you have LVM volumes not activated via the initramfsenable[broken link: invalid section] the lvm-monitoring service, which is provided by the lvm2 package.

常見問題

Arch Linux默認設定所必須的設定值

/etc/lvm/lvm.conf文件中必須設定use_lvmetad = 1。如今這個選項已經成爲預設值——你能夠經過合併lvm.conf.pacnew文件來更新你過期的/etc/lvm/lvm.conf文件。

LVM 命令不起做用

  • 加載如下模塊:
# modprobe dm_mod

正常狀況下,dm_mod模塊應當被自動加載。假如該模塊沒法被自動加載,你能夠試着修改/etc/mkinitcpio.conf

 

附註: 英文章不正。是否應當考慮加入到"/etc/modules-load.d"?
/etc/mkinitcpio.conf:
MODULES="dm_mod ..."

你須要重建initramfs來提交你對/etc/mkinitcpio.conf的更改。

  • 測試以lvm開頭的命令是否能夠被正確執行,例如:
# lvm pvdisplay

邏輯卷沒法顯示

若是你在掛載某個已建立好的邏輯卷時,發現它沒有出如今lvscan命令的結果列表裏,那麼你能夠用如下命令去激活它:

# vgscan
# vgchange -ay

在可移除設備上的LVM問題

症狀:

# vgscan
 Reading all physical volumes.  This may take a while...
 /dev/backupdrive1/backup: read failed after 0 of 4096 at 319836585984: Input/output error
 /dev/backupdrive1/backup: read failed after 0 of 4096 at 319836643328: Input/output error
 /dev/backupdrive1/backup: read failed after 0 of 4096 at 0: Input/output error
 /dev/backupdrive1/backup: read failed after 0 of 4096 at 4096: Input/output error
 Found volume group "backupdrive1" using metadata type lvm2
 Found volume group "networkdrive" using metadata type lvm2

產生緣由:

在卷組(VG)失活(deactivate)以前就移除掉外部的LVM設備。在你斷開鏈接以前,須要保證如下命令被執行:
# vgchange -an volume group name


解決方案:(假設你已經用# vgchange -ay vg命令來激活卷組,但仍有Input/output error的錯誤信息。)執行如下命令:

# vgchange -an volume group name

移除外部設備,稍候幾分鐘後再執行如下命令:

# vgscan
# vgchange -ay volume group name

Resizing a contiguous logical volume fails

If trying to extend a logical volume errors with:

" Insufficient suitable contiguous allocatable extents for logical volume "

The reason is that the logical volume was created with an explicit contiguous allocation policy (options -C y or --alloc contiguous) and no further adjacent contiguous extents are available (see also reference).

To fix this, prior to extending the logical volume, change its allocation policy with lvchange --alloc inherit <logical_volume>. If you need to keep the contiguous allocation policy, an alternative approach is to move the volume to a disk area with sufficient free extents (see [1]).

Command "grub-mkconfig" reports "unknown filesystem" errors

Make sure to remove snapshot volumes before generating grub.cfg

更多資源

相關文章
相關標籤/搜索