1

我尝试在另一个位置模仿 /dev/null 的行为,但出现了一些奇怪的错误。我学习了如何在-bash: /dev/null: Permission denied中生成类似于 /dev/null 的特殊文件。

在某个文件夹(例如 home)中时,会发生以下情况:

$ sudo mknod -m 666 null2 c 1 3
$ cat null2
cat: null2: Permission denied

另一方面,当在 /dev 中时,不会发生错误:

$ cd /dev
$ sudo mknod -m 666 null2 c 1 3
$ cat null2

我可以在另一台 xubuntu 机器上重现该错误,但在第三台机器上该错误不会发生。有什么线索吗?

奇怪的是,在任何这些机器上,权限和主要/次要都是相同的:

$ ls -la null2
crw-rw-rw- 1 root root 1, 3 Mär  4 17:42 null2
$ ls -la /dev/null
crw-rw-rw- 1 root root 1, 3 Mär  4 11:46 /dev/null

复制 /dev/null 时也一样

$ sudo cp -pR /dev/null null2 && cat null2
cat: null2: Permission denied
4

1 回答 1

4

是否nodev为包含您的主目录的文件系统设置了挂载选项?

指定nodev强制文件系统不解释块特殊设备(如null2您创建的特殊文件mknod)。

于 2016-03-04T17:40:23.403 回答