Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
4.6. 透過過濾器來控制 LVM 裝置掃描(LVM Device Scans)
在開機時,
vgscan
指令會被執行來掃描系統上的區塊裝置以搜尋 LVM 標籤,判斷出它們哪一個才是實體卷冊,並讀取 metadata 來建立一列卷冊群組清單。實體卷冊的名稱儲存在系統中各個節點的 cache 檔案中(/etc/lvm/.cache
)。後續的指令可讀取該檔案來避免重新掃描(rescanning)。
您可藉由在
lvm.conf
配置檔案中設定過濾器來控制 LVM 該掃描哪些裝置。lvm.conf
檔案中的過濾器包含著一系列會被套用至 /dev
目錄中的裝置名稱的基本正規表示式,以決定是否要接受或拒絕發現的各個區塊裝置。
下列範例顯示了如何使用此過濾器來控制 LVM 掃描哪些裝置。請注意,以下有些範例並不全然代表最佳作法,因為正規表示式被自由地拿來和完整的路徑名稱作比較。比方說,
a/loop/
相當於 a/.*loop.*/
並且將會符合 /dev/solooperation/lvol1
。
下列過濾器新增了所有被發現的裝置,這是預設的特性,因為在配置檔案中未配置過濾器:
filter = [ "a/.*/" ]
下列過濾器一除了 cdrom 裝置以避免在光碟機中沒有光碟時所造成的延緩:
filter = [ "r|/dev/cdrom|" ]
下列過濾器新增了所有的 loop 並移除了所有其它的區塊裝置:
filter = [ "a/loop.*/", "r/.*/" ]
下列過濾器新增了所有 loop 和 IDE 並移除了所有其它的區塊裝置:
filter =[ "a|loop.*|", "a|/dev/hd.*|", "r|.*|" ]
下列過濾器只在第一個 IDE drive 上新增了分割區 8 並移除了所有其它的區塊裝置:
filter = [ "a|^/dev/hda8$|", "r/.*/" ]
For more information on the
lvm.conf
file, see 附錄 B, LVM 配置檔案 and the lvm.conf
(5) man page.