我目前正在独立研究设备文件,以便更深入地了解 Linux 系统。我目前的目标是通过 引导 Debian Linux cdebootstrap
。我遵循了位于https://www.debian.org/releases/stable/i386/apds03.html。但是,有些事情让我感到困惑。当我在谷歌上搜索其他指南时,他们只是说要从当前操作系统绑定开发树。我正在从头开始安装,以了解有关基础系统的更多信息。指南指出有 3 种不同的方法可以实现这一点:
- install the makedev package, and create a default set of static device files using (after chrooting)
# apt-get install makedev
# mount none /proc -t proc
# cd /dev
# MAKEDEV generic
- manually create only specific device files using MAKEDEV
- bind mount /dev from your host system on top of /dev in the target system; note that the postinst scripts of some packages may try to create device files, so this option should only be used with care
如果我手动创建设备,而不是因为安装后脚本而绑定我的树,我的问题是使用 makedev 的常见做法是什么?通用还是标准更好?如果没有,是否有另一个应该使用的设备文件列表?我还注意到,在使用时MAKEDEV generic
,chroot 中列出的设备文件比启动到实际操作系统时多得多。
另外,静态和动态设备文件有什么区别?这也引起了我的兴趣。
第三,如果我决定按照第二个选项中提到的手动创建自己的设备,那么所需设备的基本列表是什么?
编辑:我得出结论,使用 makedev 是我最好的选择,克隆我的树时出现了一些奇怪的行为,包括一些不需要的文件。问题可以关闭。