Linux獲取磁碟uuid

2021-09-13 23:46:10 字數 1055 閱讀 4495

注:uuid-universally unique identifiers全域性唯一識別符號

一、linux uuid的作用及意義

原因1:它是真正的唯一標誌符

uuid為系統中的儲存裝置提供唯一的標識字串,不管這個裝置是什麼型別的。如果你在系統中新增了新的儲存裝置如硬碟,很可能會造成一些麻煩,比如說啟動的時候因為找不到裝置而失敗,而使用uuid則不會有這樣的問題。

原因2:裝置名並非總是不變的

自動分配的裝置名稱並非總是一致的,它們依賴於啟動時核心載入模組的順序。如果你在插入了usb盤時啟動了系統,而下次啟動時又把它拔掉了,就有可能導致裝置名分配不一致。

使用uuid對於掛載移動裝置也非常有好處──例如我有乙個24合一的讀卡器,它支援各種各樣的卡,而使用uuid總可以使同一塊卡掛載在同乙個地方。

原因3:ubuntu中的許多關鍵功能現在開始依賴於uuid

例如grub──系統引導程式

二、linux磁碟分割槽uuid的獲取方法

① $ ls -l /dev/disk/by-uuid/

② 通過blkid命令   $ blkid  /dev/sda1

三、**方式獲取

第一種:

1、獲取掛載列表 字串比較獲取根目錄對應的裝置名 可通過 /proc/mount或/etc/mtab等獲取

2、獲取/dev/disk/by-uuid/目錄下的uuid檔名  readdir

3、獲取裝置名的真實路徑(centos獲取的mount裝置名仍為軟鏈結)   realpath

獲取2得到的的uuid對應的真實裝置路徑

4、字串比較獲得獲得uuid

第二種:

閱讀blkid原始碼分析其獲取原理 原始碼鏈結

Linux磁碟分割槽UUID的獲取及其UUID的作用

注 uuid universally unique identifiers全域性唯一識別符號 一 linux磁碟分割槽uuid的獲取方法 1 san localhost ls l dev disk by uuid total 0 lrwxrwxrwx 1 root root 10 2010 01 1...

Linux磁碟分割槽UUID的獲取及其UUID的作用

注 uuid universally unique identifiers全域性唯一識別符號 一 linux磁碟分割槽uuid的獲取方法 1 san localhost ls l dev disk by uuid total 0 lrwxrwxrwx 1 root root 10 2010 01 1...

Linux磁碟分割槽UUID的獲取及其UUID的作用

注 uuid universally unique identifiers全域性唯一識別符號 一 linux磁碟分割槽uuid的獲取方法 1 san localhost ls l dev disk by uuid total 0 lrwxrwxrwx 1 root root 10 2010 01 1...