2011-09-27 61 views
0

我想在Linux上打開SD卡作爲物理驅動器。 Somethink like: CreateFile(「PHYSICALDRIVE0」,...) 在MS Windows上。 我該怎麼辦?從Linux打開物理驅動器

+2

難道你不只是讀'/ dev/sda1'或其他什麼? – Blindy

回答

4

所有設備均表示爲/dev目錄下的文件。這些文件可以像普通文件一樣打開,例如open(/dev/sdb, ...)

磁盤式設備也被鏈接到目錄/dev/disk/by-id/,/dev/disk/by-path/dev/disk/by-uuid中,這使得找到匹配的設備文件變得更容易。

0

鍵入df,列出所有掛載或卸載的文件系統。一旦你知道它的地址(在Linux中的所有東西都是一個文件,所以它看起來像/ dev/sda#或類似的東西),你可以使用mount命令裝入它:

mount/path/to/drive/folder/to/mount /到

+0

我想科斯塔問的不是關於掛載,而是關於訪問分區內容,就好像它是一個文件。 –

0

您打開塊設備專用文件(通常類似於/ dev/sdb),然後您可以從中讀取/寫入塊。

該接口沒有明確記錄,這是一個錯誤,沒有塊(4)手冊頁。

儘管sd(4)手冊頁確實有所幫助。這裏描述的ioctls也可能適用於(某些)其他塊設備。

如今幾乎所有塊設備都顯示爲「scsi驅動器」,無論它們是否實際上通過scsi連接。這包括USB和(大多數)ATA驅動器。

找到正確的設備可能是問題的重要部分,特別是如果您有熱插拔設備。你可以在/ sys中查詢一些東西來找出有哪些設備。