![如何从 C 挂载 /dev?](https://linux22.com/image/189540/%E5%A6%82%E4%BD%95%E4%BB%8E%20C%20%E6%8C%82%E8%BD%BD%20%2Fdev%EF%BC%9F.png)
如何/dev
从C挂载?我正在编写一个简单的 init,我知道这听起来很愚蠢,但我想安装/dev
到另一个文件夹。的联机帮助页mount()
不显示dev
为受支持的选项。
答案1
这联机帮助页mount(2)
仅给出/proc/filesystems
详尽列表的示例和提及。后一个文件列出了devtmpfs
您正在寻找的内容。
最终的 C 程序将类似于:
if (mount("-", "/.../dev", "devtmpfs", 0, NULL) != 0) perror("mount");
答案2
您还可以/dev
使用 mount 命令将其挂载到其他位置。
如果你想mount
直接使用系统调用,手册页上说
内核支持的 filesystemtype 参数的值在 中列出
/proc/filesystems
。
如果您不确定要使用哪种文件系统类型,请/dev
查看您的/etc/fstab
或/proc/mounts
,或者执行strace
on the mount 命令以了解它如何使用系统调用。