今天我們將會向你展示如何使用 lsblk 和 blkid 工具來查找關於塊設備的信息,我們使用的是一台安裝了 CentOS 7.0 的機器。
lsblk
lsblk 是一個 Linux 工具,它會顯示有關你系統裡所有可用塊設備的信息。它從 sysfs 文件系統 中獲取信息。默認情況下,這個工具將會以樹狀格式顯示(除了內存虛擬磁盤外的)所有塊設備。
lsblk 默認輸出
默認情況下 lsblk 會將塊設備輸出為樹狀格式:
顯示設備的所有者
若想顯示設備所有者相關的信息,包括文件的所屬用戶、所屬組以及文件系統掛載的模式,你可以使用 -m 選項,像這樣:
復制代碼代碼如下:lsblk -m
列出設備塊
如果你只想要列出設備,而不想讓他們以樹狀輸出,你可以使用 -l 選項:
復制代碼代碼如下:lsblk -l
在腳本中使用
高級技巧:如果你想要在腳本中使用而希望剔除表頭,你可以這樣使用 -n 選項:
復制代碼代碼如下:lsblk -ln
復制代碼代碼如下:blkid
blkid 命令是一個命令行工具,它可以顯示關於可用塊設備的信息。它可以識別一個塊設備內容的類型(如文件系統、交換區)以及從內容的元數據(如卷標或 UUID 字段)中獲取屬性(如 tokens 和鍵值對)。它主要有兩類作用:用指定的鍵值對搜索一個設備,或是顯示一個或多個設備的鍵值對。
blkid 使用方法
不添加任何參數直接運行 blkid 將會輸出所有可用的設備、它們的通用唯一識別碼(UUID)、文件系統類型以及卷標(如果有設置過)。
復制代碼代碼如下: # blkid
根據名字或 UUID 列出設備
如果你只想顯示一個特定設備的信息,你可以將該設備的名字作為選項添加在 blkid 後面:
復制代碼代碼如下:# blkid /dev/sda1
如果你知道一個設備的 UUID 而想要知道它的設備名,你可以用 -U 選項,像這樣:
復制代碼代碼如下:# blkid -U d3b1dcc2-e3b0-45b0-b703-d6d0d360e524
詳細信息
如果你想要獲取更多詳細信息,你可以使用 -p 和 -o udev 選項來將它們用整齊的格式顯示出來,像這樣:
復制代碼代碼如下:# blkid -po udev /dev/sda1
重置緩存
有時候設備列表可能不會更新,如果遇到這種情況你可以使用 -g 選項來清理 blkid 的緩存,從而清除已經不存在的設備。
復制代碼代碼如下:# blkid -g