我有一個閃存驅動器設備(/ dev/sda1)掛載到嵌入式Linux系統上的/ mnt(內核2.6.23)。使用C如何計算驅動器的大小?如何在C中找到安裝的USB閃存驅動器的大小?
6
A
回答
8
在Linux上,如果你不擔心可移植性(C不知道驅動器,因此任何這樣的特定代碼將是不可移植),使用statfs()
:
struct statfs fsb;
if(statfs("/mnt", &fsb) == 0)
printf("device has %ld blocks, each %ld bytes\n", fsb.f_blocks, fsb.f_bsize);
0
2
讀取並解析了一些設備的sysfs條目。在你的情況,
- 全面的設備(所有分區和分區表):
/sys/block/sda/size
- 此設備上的邏輯分區:
/sys/block/sda/sda1/size
的設備沒有被安裝還。
相關問題
- 1. 如何在USB閃存驅動器中製作安裝程序?
- 2. 如何檢測USB閃存驅動器的盤符USB閃存驅動器的
- 3. Debian CLI安裝到閃存驅動器
- 4. 如何從C#中的USB閃存驅動器獲取VID/PID?
- 5. 如何使用PowerShell查找USB閃存驅動器的路徑
- 6. 準備安裝Proxmox的USB時,爲什麼要卸載USB閃存驅動器?
- 7. 無法安裝閃存驅動器
- 8. 使用閃存驅動器安裝python.exe
- 9. 在Windows中編程區分USB軟盤驅動器和USB閃存驅動器
- 10. USB閃存驅動器問題
- 11. 用PC模擬USB閃存驅動器
- 12. USB閃存驅動器分區
- 13. 從USB閃存驅動器運行Tomcat
- 14. 在Windows上區分USB閃存驅動器和USB硬盤驅動器
- 15. C#檢查存在的USB驅動器
- 16. 如何開發一個加密的USB閃存驅動器
- 17. 錯誤分區和格式化USB閃存驅動器在C + +
- 18. 如何在安裝軟件後安裝USB驅動程序
- 19. 如何檢測Objective-c中的USB驅動器的大小和名稱
- 20. 將Anaconda點放到閃存驅動器上並安裝它
- 21. 在USB閃存驅動器連接時在Windows中運行vbscript
- 22. 安裝到Google TV的USB驅動器的標籤
- 23. 如何從USB閃存驅動器讀取數據?
- 24. 如何從USB閃存驅動器運行Android工作室ubuntu
- 25. QNX 6.6 Windows主機 - USB閃存驅動器中的閃存圖像
- 26. 如何在usb驅動器上輕鬆安裝pip?
- 27. 如何在Android Things應用上安裝USB驅動器?
- 28. 如何在C#中使用VID和PID查找USB海量存儲驅動器的驅動器號?
- 29. 獲取安裝的驅動器在c#
- 30. 在閃存驅動器上安裝並設置cygwin?
如果傳遞給statfs的路徑是「/ mnt」 – Andrew 2009-09-28 14:44:54