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 смонтирован как tmpfs или же devtmpfs:
df -T /dev
Без devtmpfs только файлы устройств и символов, определенные во время начальной загрузки, будут заполнены в /dev, devtmpfs позволяет устройствам быть добавлены и удалены после загрузки.
Невозможно размонтировать /dev с umount /dev потому что там используются специальные файлы, но можно загрузить свежий devtmpfs по существующему /dev крепление.
sudo mount -t devtmpfs none /dev монтирует devtmpfs над существующим креплением в /dev,
Теперь, когда вы делаете sudo modprobe nbd, файлы устройства /dev/nbd0 через /dev/nbd15 заселиться в /dev,
причина
Я не определилась почему /dev был установлен как tmpfs вместо devtmpfs или почему Удев не бежал. devtmpfs должен был быть по умолчанию.
Этот ответ о сбое сервера может иметь несколько потенциальных клиентов.