/dev/null
在我的系统上删除了错误编写的脚本。我确实在这里找到了答案并进行了尝试。但是一旦我向 new 写了一些东西/dev/null
,系统就会崩溃。恐怕这个答案不适用于 BSD。
任何人都可以帮忙吗?
这是 FreeBSD 10.3
在 FreeBSD 上:
mknod /dev/null c 15 0 root:wheel
chmod 0666 /dev/null
Run Code Online (Sandbox Code Playgroud)
正如您所发现的,数字 15 和 0 不可移植到其他系统。
创建设备节点条目的命令mknod
几乎在所有 unix 系统上都有。设备编号完全取决于 unix 变体,因此您需要在文档中查找它们。在某些系统上,man 4 null
(null
第 4 节“特殊文件”中的手册页)会告诉您设备编号是什么。(设备在 BSD 和 Linux 上的第 4 部分,但在其他 Unix 变体上,部分编号可能会有所不同,例如它在 Solaris 上是第 7 部分。)
如果手册页没有告诉您,请查找MAKEDEV
命令,通常位于/dev
. 这通常是一个 shell 脚本,您可以在其中轻松找到设备编号,或将其作为cd /dev && ./MAKEDEV null
.
一些现代 unix 系统不使用,MAKEDEV
因为设备节点是自动创建的。在带有 udev 的 Linux 系统(某些嵌入式系统除外)上就是这种情况,在带有devfs 的FreeBSD 上也是如此。如何重新创建通常自动创建的条目取决于自动设备创建系统。在 FreeBSD 上,您可以简单地为mknod
命令提供设备名称:mknod /dev/null
.
归档时间: |
|
查看次数: |
1406 次 |
最近记录: |