Я работаю над пользовательской ОС, и рецепт make я написал для создания нового образа диска, требует sudo для подключения / отключения виртуального образа жесткого диска к устройству /dev/nbdN . Поскольку я не хочу использовать sudo в рецепте, я просто использовал sudo make disk .
Я подумал, что могу просто добавить себя в группу disk (так как stat /dev/nbd0 показывает UID файла как root , а GID как disk), чтобы я мог подключать и отключать устройства /dev/nbdN без sudo , но это все же не работает (да, я вышел из системы и снова вошел в систему, а id отображается на групповом disk).
Должен ли я по-прежнему иметь права root для успешной обработки вызовов ioctl (вот где, кажется, происходит сбой, если я не root)? Или есть что-то еще специфичное для qemu-nbd которое мне нужно сделать, чтобы избежать использования root?
Изменить: моя команда это (у меня есть разрешения R/W для hda.qcow2):
$ qemu-nbd -c /dev/nbd0 hda.qcow2
И вывод такой:
/build/buildd/qemu-2.0.0+dfsg/nbd.c:nbd_init():L504: Failed to set NBD socket
/build/buildd/qemu-2.0.0+dfsg/nbd.c:nbd_receive_request():L638: read failed
Выполнение той же команды с sudo выполняется успешно без вывода.
ОС Ubuntu 14.04 x64.
