- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有人可以帮助我了解我需要如何配置 buildroot,以便我能够成功启动我自己的文件系统并登录到它吗?
我有一个(看似)工作的内核,现在我创建了自己的文件系统(除了将控制台设置为 ttyAMA0 之外,没有真正更改构建根目录中的任何设置),但引导过程似乎没有任何问题地挂起对此:
....
[ 3.130000] VFS: Mounted root (ext3 filesystem) on device 179:2.
[ 3.140000] Freeing init memory: 144K
Starting logging: OK
Starting network...
ip: RTNETLINK answers: Operation not permitted
ip: SIOCSIFFLAGS: Permission denied
整个启动日志在这里可见:http://paste.ubuntu.com/1364407/
我了解到/etc/inittab 控制着启动过程,内容是这样的:
# Startup the system
null::sysinit:/bin/mount -t proc proc /proc
null::sysinit:/bin/mount -o remount,rw / # REMOUNT_ROOTFS_RW
null::sysinit:/bin/mkdir -p /dev/pts
null::sysinit:/bin/mkdir -p /dev/shm
null::sysinit:/bin/mount -a
null::sysinit:/bin/hostname -F /etc/hostname
# now run any rc scripts
::sysinit:/etc/init.d/rcS
# Put a getty on the sttyAMA0::respawn:/sbin/getty -L ttyAMA0 115200 vt100 # GENERIC_SERIAL
# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot
# Stuff to do before rebooting
null::shutdown:/etc/init.d/rcK
null::shutdown:/bin/umount -a -r
null::shutdown:/sbin/swapoff -a
关于我的配置有什么问题有什么建议吗?关于创建我自己的 Linux 系统时所需的“通常必要配置”的良好概述的任何提示?
最佳答案
这个问题是由 Buildroot 邮件列表中的提交者提出的。解决方案是提交者直接使用 Buildroot 输出/目标目录的内容作为其根文件系统,即使 Buildroot 文档明确告诉不要这样做。这是因为 Buildroot 不以根用户身份运行,因此无法在输出/目标中正确创 build 备文件或调整权限/所有权。这些步骤是在创建根文件系统镜像时完成的,这要归功于一个名为 fakeroot 的神奇工具。
因此,如果有人想要将根文件系统提取到 SD 卡分区或类似的东西上,应该让 Buildroot 生成一个 tar 镜像,然后将其作为根文件系统提取到 SD 卡分区中。
由于这个问题很常见,我们现在在输出/目标中添加了一个名为 THIS_IS_NOT_YOUR_ROOT_FILESYTEM 的文件,其中包含有关此问题的详细信息。参见 http://git.buildroot.net/buildroot/commit/?id=9226a9907c4eb0fffab777f50e88b74aa14d1737 .
关于linux - Buildroot - 建了一个文件系统,如何登录?引导挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13429068/
我是一名优秀的程序员,十分优秀!