我不知道该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