新聞中心
隨著計算機技術的發(fā)展,現(xiàn)代操作系統(tǒng)對于設備管理的需求越來越高。在Linux系統(tǒng)中,udev就是一個非常重要的設備管理工具。雖然udev的配置可能會帶來一定的挑戰(zhàn),但是深入了解和掌握udev的配置,能夠讓我們更加高效地管理設備。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于做網(wǎng)站、網(wǎng)站制作、龍沙網(wǎng)絡推廣、微信小程序定制開發(fā)、龍沙網(wǎng)絡營銷、龍沙企業(yè)策劃、龍沙品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供龍沙建站搭建服務,24小時服務熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
什么是udev?
udev是一個用戶空間的設備管理工具,它能夠在Linux中自動檢測和識別設備的插拔操作,并且可以自動為設備分配設備文件。使用udev可以使設備的管理更加容易和高效,同時也能夠減少超級用戶權限下的設備管理操作。
udev如何工作?
udev的工作流程可以簡單概括為以下幾個步驟:當設備插入時,內(nèi)核會發(fā)送一個事件通知,并通過sysfs文件系統(tǒng)將設備信息發(fā)布到udev中。接著,udev會根據(jù)設備的屬性進行匹配,然后執(zhí)行相應的動作,例如為設備分配設備文件、設置設備參數(shù)等。udev會將設備的操作記錄在日志中,以供后續(xù)調(diào)試和維護。
udev的配置文件
udev的配置文件位于/etc/udev/rules.d目錄下,主要包含以下兩個文件:
1. 99-custom.rules:這個文件是用戶自定義規(guī)則的存放位置,用戶可以在這里添加自己需要的規(guī)則。
2. 99-systemd.rules:這個文件是udev默認的規(guī)則文件,通常情況下我們不需要修改這個文件。
除了以上兩個常見的配置文件外,我們還可以在/etc/udev目錄下找到兩個重要的配置文件:
1. udev.conf:這個文件用于設置udev的一些全局選項和默認值。
2. rules.d/udev:這個文件是由udev安裝時默認生成的配置文件,它包含大量的系統(tǒng)默認規(guī)則。
配置udev規(guī)則
udev的規(guī)則是基于鍵值對進行匹配的,每個規(guī)則都由以下四個部分組成:模式、動作、環(huán)境變量和注釋。下面我們來具體介紹這幾個部分。
模式
模式是規(guī)則中關鍵的部分,它定義了設備的屬性,udev會匹配這些屬性來確定是否應該執(zhí)行這個規(guī)則。模式一般由以下三個部分構成:
1. 硬件匹配:這個部分通常指定設備的廠商ID、產(chǎn)品ID和子系統(tǒng)信息等。
2. 屬性匹配:udev可以根據(jù)設備的屬性來匹配規(guī)則。屬性通常包括設備的名稱、路徑和標志等。
3. 條件匹配:這個部分是可選的,可以定義一些條件,例如設備是否在某個特定的目錄下等。
動作
動作是指當規(guī)則匹配時要執(zhí)行的操作。常用的動作包括:
1. 指定設備文件權限:可以使用OWNER、GROUP和MODE等選項指定設備文件的所有者、組和權限。
2. 執(zhí)行腳本:可以使用RUN選項來調(diào)用腳本進行其他的自定義操作。
3. 創(chuàng)建符號鏈接:可以使用SYMLINK選項來創(chuàng)建符號鏈接,以方便操作設備。
環(huán)境變量
環(huán)境變量是規(guī)則中的可選部分,可以在規(guī)則中使用,以提供更多的信息。環(huán)境變量通常由udev在設備識別時自動設置,并且可以被其他規(guī)則和腳本使用。常用的環(huán)境變量包括$KERNEL、$DEVPATH和$SUBSYSTEM等。
注釋
注釋通常用來幫助用戶理解規(guī)則的作用和目的。注釋使用#號表示,可以在規(guī)則的任意位置添加注釋。
示例配置
下面是一些常見的udev規(guī)則示例:
1. 為設備分配固定的設備文件
KERNEL==”sda”, SYMLINK+=”mydisk”
這個規(guī)則是根據(jù)設備的名稱為sda來創(chuàng)建一個名為mydisk的符號鏈接。
2. 限制設備權限
ATTRS{idVendor}==”09da”, ATTRS{idProduct}==”9090″, MODE=”0660″, GROUP=”audio”
這個規(guī)則的作用是限制ID為09da和9090的USB音頻設備的權限為0660,并且設置設備文件的所有者為audio組。
3. 運行腳本
KERNEL==”sdb”, RUN+=”/usr/local/bin/script.sh”
這個規(guī)則的作用是根據(jù)設備的名稱為sdb,調(diào)用/usr/local/bin/script.sh腳本進行其他自定義操作。
udev是Linux中非常強大的設備管理工具,能夠自動檢測和識別設備的插拔操作,并且可以自動為設備分配設備文件。雖然配置udev可能會帶來一定的挑戰(zhàn),但是深入了解和掌握udev的配置,能夠讓我們更加高效地管理設備。在實際使用中,我們可以根據(jù)具體需求編寫自己的udev規(guī)則,以達到更加靈活和高效的設備管理效果。
成都網(wǎng)站建設公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設,提供企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,響應式網(wǎng)站制作,設計師量身打造品牌風格,熱線:028-86922220linux 中 udev 是干什么的啊
早期的linux的/dev目錄下有一大堆設備文件,不管你的主機上是否有這些設備,相當于提巖森供一個標準接口,比如 /dev/sda 一般表示 SISC 盤之一塊磁盤,但你主機上即使沒有這種磁盤,/dev/sda還是存在
于是,這就有個問題:/dev/下會有很多實際上并不需要的文件,盡管這些文件占用不了多少空間(都是一字節(jié)的大?。?/p>
后來linux只在/dev上保留一些必要的設備文件,比如 /dev/console (表示控制臺)等,旅仔其它的由udev在系統(tǒng)啟動時檢測并加載,比如 如果掃描到你有 SISC 設備(包括U盤)就在 /dev/下增加一個設備文件,比如 /dev/sda ,換句話說,有udev的前提下,/dev下的設備拆棗汪文件,就表示你的主機真的有這個設備
如何在Linux開發(fā)工具中啟動USB驅(qū)動程序
USB驅(qū)動程序支持在原生Linux提供了。
方法要求啟用驅(qū)動,但是,取決于你所使用的分布和內(nèi)核版本。
哪個發(fā)行版支持USBFS?
已知提供USBFS支持:
Ubuntu 9.04或以上,
Ubuntu 9.10的內(nèi)核2.6.31-19服務器,
CentOS的4.8,
CentOS的5.4,
一般情況下,任何分布用內(nèi)核版本 = 2.6.32
方法1:USBFS支持
如果你的發(fā)行版提供了USBFS支持,那么下面的命令將工作斗弊模:
mount -t ufs none /proc/bus/u -o devmode=0666
為了使這種更改永久,確保下面一行是在/ etc / fstab文件中:
none /proc/bus/u ufs defaults,devmode=
這將自動安裝在系統(tǒng)啟動。
一旦 /etc/fstab添加已經(jīng)做完,一個簡單的命令應該掛載USBFS文件系統(tǒng):
mount /proc/bus/u
無論是FTDI / XTAG和XTAG-2的調(diào)試適配器空緩現(xiàn)在應該工作。
方法2:沒有USBFS支持
為了確保在任何一個FTDI / XTAG或XTAG-2調(diào)試適配器插入時的權限是在設備上是正確的,您需要配置“udev”來識別這個設備。
創(chuàng)建一個文件“/etc/udev/rules.d/99-xmos.rules”,其內(nèi)容如下:
SUBSYSTEM!=”u|u_device”, GOTO=”xmos_rules_end”
ACTION!=”add”, GOTO=”xmos_rules_end”
# 20b1:f7d1 for xmos xtag2
ATTRS{idVendor}==”20b1″, ATTRS{idProduct}==”f7d1″, MODE=”0666″, SYMLINK+=”xtag2-%n”
# 20b1:f7d3 for xmos startkit
ATTRS{idVendor}==”20b1″, ATTRS{idProduct}==”f7d3″, MODE=”0666″, SYMLINK+=”startkit-%n”
# 0403:6010 for XC-1 with FTDI dual-uart chip
ATTRS{idVendor}==”0403″, ATTRS{idProduct}==”6010″, MODE=”0666″, SYMLINK+=”xc1-%n”
LABEL=”xmos_rules_end”
注意:本ATTRS,MODE和SYMLINK節(jié)必須全部在同一行,因為每個規(guī)卜清則只能在一行上。
現(xiàn)在告訴udev進行重新加載,以確保文件添加新的規(guī)則:
service udev reload
還必須拔下并重新插上USB線,讓udev的識別設備的新規(guī)則?;蛘哂|發(fā)重新插上的udev類型為“udevadm觸發(fā)”或“udevtrigger”命令,取決于在你的Linux分布上udev的版本。
FTDI / XTAG其他注意事項
FTDI的庫需要USB設備的文件都可以從/ proc /bus/ USB,不支持的/dev/bus/u作為文件的位置。
但是,如果你的發(fā)行版不支持USBFS(以上方法1),但確實有一個的/proc/bus/u空目錄,你可以使用下面的綁定mount命令的解決方法:
mount –bind /dev/bus/u /proc/bus/u
如果你的發(fā)行版不支持USBFS,也沒有一個的/proc/bus/u目錄(這是較新的內(nèi)核的情況下,大約從2.6.32開始),然后聯(lián)系XMOS的rthe設備庫的非官方補丁的版本; 發(fā)送XMOS的支持標簽,其中包括“Linux的FTDI庫請求”的主題。
關于linux udev 配置的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都網(wǎng)站建設選創(chuàng)新互聯(lián)(?:028-86922220),專業(yè)從事成都網(wǎng)站制作設計,高端小程序APP定制開發(fā),成都網(wǎng)絡營銷推廣等一站式服務。
名稱欄目:深入探索LinuxUdev配置,讓設備管理更加高效(linuxudev配置)
文章轉(zhuǎn)載:http://m.fisionsoft.com.cn/article/cddsdhd.html


咨詢
建站咨詢
