Modprobe 无法创建 nbd 设备

Modprobe 无法创建 nbd 设备

我正在运行 Debian 8 服务器,运行后modprobe nbd,程序运行正常。但是,由于/dev/nbd0不存在,因此未创建设备。我应该怎么做才能让 modprobe 正常运行?

答案1

我有一个部分答案,可以有效解决您的问题,但并不能最终解释为什么问题首先发生。

解决

运行以下命令:

sudo rmmod nbd 
sudo mount -t devtmpfs none /dev 
sudo modprobe nbd 
ls /dev/nbd*

最终命令应如下所示:

root@node51 [~]# ls /dev/nbd*
/dev/nbd0  /dev/nbd1  /dev/nbd10  /dev/nbd11  /dev/nbd12  /dev/nbd13  /dev/nbd14  /dev/nbd15  /dev/nbd2  /dev/nbd3  /dev/nbd4  /dev/nbd5  /dev/nbd6  /dev/nbd7  /dev/nbd8  /dev/nbd9

解释

我们确定在聊天中由于已安装为,因此/dev未进行更新tmpfs而不是devtmpfs

您可以检查以下命令的第二列以查看是否/dev已安装为tmpfsdevtmpfs

df -T /dev

如果没有devtmpfs,则只有在初始启动期间定义的设备和字符文件才会填充/devdevtmpfs允许在启动后添加和删除设备。

/dev由于其中的特殊文件正在使用中,因此无法卸载umount /dev,但可以devtmpfs在现有/dev挂载上加载新的文件。

sudo mount -t devtmpfs none /dev将 a 安装devtmpfs在现有的 支架上/dev

现在,当您这样做时sudo modprobe nbd,设备文件将/dev/nbd0通过/dev/nbd15被填充/dev

原因

我不知道为什么/dev被安装为tmpfs而不是devtmpfs或者为什么udev没有运行。 devtmpfs应为默认设置。

Server Fault 上的这个答案可能会有一些线索。

相关内容