2010-11-06 47 views
1

我需要在linux中使用c/C++(而不是d-bus)爲特定設備獲取標籤。問題是我不能打開設備並閱讀它的信息(對於extN,從設備獲取標籤非常容易),因爲從/ dev/xxx讀取需要root權限。如何在Linux中使用C從用戶空間獲得驅動器標籤

+2

以root權限運行的程序仍然是「用戶空間」(而不是「內核空間」)。 – 2010-11-06 11:57:44

回答

1

我認爲在大多數發行版,現在你有

/dev/disk/by-label/ 

這是充滿了指向實際設備的符號鏈接。

+0

嗯,這不是我認爲的最好的方式......據我所知,這些文件夾需要系統中的udev。也許最好使用libudev?但是我沒有在它的文檔中找到適當的功能。 – ABBAPOH 2010-11-06 12:13:43

+0

如果您的代碼在引導過程的早期不需要,我認爲這通常可行。我沒有使用libudev的經驗,但我想如果你想訪問原始設備,你必須有root權限,不是嗎?這個目錄的好處在於你可以準確地看到系統想要輸出到用戶空間的內容。 – 2010-11-06 15:29:06

相關問題