亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Linux系統(tǒng)中UUID與UDEV實際意義

IT那活兒 / 1682人閱讀
Linux系統(tǒng)中UUID與UDEV實際意義

點擊上方“IT那活兒”公眾號,關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了?。?!


  
目的:
通過建立知識庫管理,積累、保存信息和知識資產(chǎn),為團隊內(nèi)部信息和知識的傳播提供平臺,實現(xiàn)團隊內(nèi)知識共享,也使得企業(yè)知識得到很好的精煉和沉淀。


知識點描述

UUID 是指Universally Unique Identifier,翻譯為中文是通用唯一識別碼,UUID 的目的是讓分布式系統(tǒng)中的所有元素都能有唯一的識別信息。
如此一來,每個人都可以創(chuàng)建不與其它人沖突的 UUID,就不需考慮數(shù)據(jù)庫創(chuàng)建時的名稱重復(fù)問題。UUID 是由一組32位數(shù)的16進制數(shù)字所構(gòu)成,通常我們使用UUID來標識對象或持久化數(shù)據(jù)如磁盤。

udev 是Linux 的 設(shè)備管理器 。它主要的功能是管理/dev目錄底下的設(shè)備節(jié)點。它同時也用來接替devfs及熱插拔的功能,這意味著它要在添加/刪除硬件時處理/dev目錄以及所有用戶空間的行為,包括加載固件及Linux 2.6.13內(nèi)核。

詳解與實例

1. 通過uuid識別磁盤
當我們掛載新的磁盤在分布式系統(tǒng)中如下例:
Test服務(wù)器有兩個節(jié)點t1和t2節(jié)點,當我們在系統(tǒng)中掛載了三塊磁盤磁盤路徑為/dev/sda,/dev/sdb,/dev/sdc。且已經(jīng)將磁盤路徑為/dev/sda掛載給了數(shù)據(jù)庫使用,當需要再掛載一塊新的磁盤給數(shù)據(jù)庫使用時,我們首先需要進行如下的審查。
查詢兩個庫相同目路徑磁盤的uuid是否一致。
例:
  • 在t1節(jié)點使用如下指令:

/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sda
sda的uuid:360001440000000107021*********A
/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb
sdb的uuid:360001440000000107021*********B

/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sdc
sdc的uuid:360001440000000107021*********C
  • 在t2節(jié)點使用如下指令:

/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sda
sda的uuid:360001440000000107021*********A
/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb
sdb的uuid:360001440000000107021*********B
/usr/lib/scsi_id --whitelisted --replace-whitespace --device=/dev/sdc
sdc的uuid:360001440000000107021*********A

此時發(fā)現(xiàn)兩個節(jié)點的相同磁盤路徑下的uuid不一致,這時我們要確認同一塊磁盤需要根據(jù)uuid進行確認,我們通過觀察發(fā)現(xiàn)1節(jié)點的dev/sda與2節(jié)點中dev/sdb的uuid是一致的,所以實際上1節(jié)點的sda與二節(jié)點sdc為同一塊磁盤。當通過目路徑掛載磁盤時我們不能使用/dev/sdb進行掛載。這樣會導(dǎo)致uuid為360001440000000107021*********A的磁盤文件丟失。

2. udev詳解
udev --它能根據(jù)系統(tǒng)中硬件設(shè)備的狀態(tài)動態(tài)的更新設(shè)備文件,包括設(shè)備文件的創(chuàng)建,刪除,權(quán)限等。這些文件通常都定義在/dev 目錄下,但也可以在配置文件中指定。udev 必須內(nèi)核中的sysfstmpfs支持,sysfs 為udev 提供設(shè)備入口和uevent 通道,tmpfs 為udev 設(shè)備文件提供存放空間。udev是通過對內(nèi)核產(chǎn)生的設(shè)備名增加別名的方式來達到上述目的的。
udev是用戶模式程序,不會更改內(nèi)核的行為,內(nèi)核依然會我行我素地產(chǎn)生設(shè)備名如sda,sdb等。但是,udev可以根據(jù)設(shè)備的其他信息如總線等不同來區(qū)分不同的設(shè)備,并產(chǎn)生設(shè)備文件。udev只要為這個設(shè)備文件取一個固定的文件名就可以解決這個問題。在后續(xù)對設(shè)備的操作中,只要引用新的設(shè)備名就可以了。
例:
內(nèi)核產(chǎn)生了sda設(shè)備名,而根據(jù)信息,這個設(shè)備對應(yīng)于是我的內(nèi)置硬盤,那我就可以制定udev規(guī)則,讓udev除了產(chǎn)生/dev/sda設(shè)備文件 外,另外創(chuàng)建一個符號鏈接叫/dev/internalHD。

我們使用udev將如下三塊磁盤按指定的規(guī)則創(chuàng)建鏈接:

  • /dev/sda==>/dev/asmdatadg1
  • /dev/sdb==>/dev/asmdatadg2
  • /dev/sdc==>/dev/asmdatadg3
當我們打算使用磁盤時以防sd*設(shè)備名被內(nèi)核修改,我們只需要調(diào)用/dev/asmdatadg*新的設(shè)備名即可。

注:

  • fstab:當系統(tǒng)啟動的時候,系統(tǒng)會自動地從這個文件讀取信息,并且會自動將此文件中指定的文件系統(tǒng)掛載到指定的目錄。
  • sysfs:是 Linux 內(nèi)核中設(shè)計較新的一種虛擬的基于內(nèi)存的文件系統(tǒng)。
  • tmpfs:基于內(nèi)存的文件系統(tǒng),可以使用您的內(nèi)存或swap分區(qū)來存儲文件。

本文作者:李孝林(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/129283.html

相關(guān)文章

  • Linux驅(qū)動實踐:你知道【字符設(shè)備驅(qū)動程序】的兩種寫法嗎?

    摘要:我們就繼續(xù)以此為基礎(chǔ),用保姆級的粒度一步一步操作,來討論一下字符設(shè)備驅(qū)動程序的編寫方法。如何使用新的函數(shù)來編寫字符設(shè)備驅(qū)動程序,下一篇文章再詳細討論。 作 者:道哥,10+年嵌入式開發(fā)老兵,專注于:C/C++、嵌入式、Linux。 關(guān)注下方公眾號,回復(fù)【書籍】,獲取 Linux、嵌入式領(lǐng)域經(jīng)典書籍;回復(fù)【PDF】,獲取所有原創(chuàng)文章( PDF 格式)。 目錄 ...

    Godtoy 評論0 收藏0
  • Linux Udev

    摘要:比如盤插入,電腦是如何即時的做出響應(yīng)耳機插入又是如何做到自動關(guān)閉外部音量這些都跟有關(guān)。雖然很強大,功能很多,本來就針對硬盤設(shè)備的插拔做一些經(jīng)驗的分享。 在我入門udev的時候,看著各種各樣的資料覺得這個東西很高深的時候,突然瞄到一篇文章里面說道: 要樹立一個信念:udev很簡單,當時不以為然,現(xiàn)在能夠理解,其實稍作研究就能理解了,看起來很高端很遙遠的Title,比如Linux Kern...

    macg0406 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<