我不知道該undrestand(從Buildroot裏面手冊中的目錄說明):
Buildroot裏面,用於生成內核和根文件系統的工具,是在主機系統上作爲普通用戶,而不需要執行的超級用戶權限。
爲什麼buildroot的需要root權限才能創建/ dev
Buildroot裏面不使用超級用戶權限。
我知道那是什麼buildroot的使用目標生成圖像/ rootfs.tar;這是一個簡單的taror壓縮...?
.tar是一個沒有壓縮的普通壓縮文件。
您可以使用make menuconfig
過程來配置/指定壓縮(和/或選擇文件系統映像)。
請你幫我看看,生成圖像/ rootfs.tar廠名目標是什麼?
您不要在使 shell命令指定。
您可以使用make menuconfig
程序,通過可選壓縮(和/或選擇文件系統映像)來配置/指定tar和/或cpio存檔。
在使用NFS的情況下,爲什麼我們不能直接使用的目標文件夾爲根文件系統
因爲它是不適合作爲屋頂。
文件所有者&組不正確(這可能與NFS使用無關)。
文件權限可能不正確(例如,busybox二進制文件的setuid)。
/dev目錄沒有目標內核需要的最小設備節點。
代替所需的最小設備節點(例如console
)時,目標目錄具有普通文件在dev的:
buildroot-2015.05/output/target$ ls -l dev
total 4
-rw--w--w- 1 me swdev 0 Sep 15 16:34 console
lrwxrwxrwx 1 me swdev 10 Aug 14 2015 log -> ../tmp/log
drwxrwxr-x 2 me swdev 4096 May 31 2015 pts
$
當它期望的設備節點的目標內核不能使用這些文件。通過設備節點執行I/O,而不是通過這些文件嘗試進行普通的文件傳輸。
實際開發目錄應該是:
crw--w--w- 1 root root 5, 1 Sep 15 16:34 console
lrwxrwxrwx 1 root root 10 Aug 14 2015 log -> ../tmp/log
drwxr-xr-x 2 root root 4096 May 31 2015 pts
是什麼讓 「untaring」 圖像/ rootfs.tar不同於目標
Buildroot裏面可以巧妙地創建條目設備節點,並在創建檔案(或文件系統映像)時將正確的所有者和組分配給每個文件名。
這只是生成適當格式的二進制數據,插入到寫入文件的實際存檔條目(或fs圖像)中。
僅在解壓縮文件系統映像(或裝入文件系統映像文件)時纔會將「數據」正確解釋爲設備節點。
(1)Buildroot是一個用於生成內核和根文件系統的工具,可以在普通用戶的主機系統上執行,而不需要超級用戶權限。 (2).tar是一個沒有壓縮的普通檔案。您可以使用'make menuconfig'過程來配置/指定壓縮(和/或文件系統映像)。您不要在'make' shell命令中指定它。 – sawdust
@sawdust,感謝您的反饋,也許我的問題不是直截了當的。我需要知道的是爲什麼我們不能在buildroot手冊中使用'target'作爲rootfs,據說這是因爲它不包含'dev',因爲Buildroot沒有以root身份運行,所以爲什麼它需要root特權來創建它 – Mouin