Как я могу экспортировать файл образа диска на удаленный компьютер с помощью ndb-сервера?
Я пытаюсь экспортировать образ диска с одного компьютера на другой, используя nbd-сервер и nbd-клиент. На стороне сервера (hostname gpu), где будет работать nbd-сервер, я создал образ диска с помощью команды dd и создал файловую систему для файла образа с помощью команды mke2fs. Файл изображения выглядит следующим образом.
hadoop@gpu:~/nbd_test$ file disk_image
disk_image: Linux rev 1.0 ext2 filesystem data, UUID=058e181f-6461-46b1-ba7c-ead455ae83c9 (large files)
Затем я настроил / etc / nbd-server / config следующим образом.
[generic]
# If you want to run everything as root rather than the nbd user, you
# may either say "root" in the two following lines, or remove them
# altogether. Do not remove the [generic] section, however.
user = nbd
group = nbd
includedir = /etc/nbd-server/conf.d
# What follows are export definitions. You may create as much of them as
# you want, but the section header has to be unique.
[nbd-test]
exportname = /home/hadoop/nbd_test/disk_image
# The following line will be ignored unless the
# "oldstyle = true" line in the generic section above is
# enabled.
port = 12345
#authfile = /export/nbd/export1-authfile
#timeout = 30
#filesize = 10000000
readonly = false
multifile = false
copyonwrite = false
#prerun = dd if=/dev/zero of=%s bs=1k count=500
#postrun = rm -f %s
Затем я запустил nbd-сервер следующим образом
hadoop@gpu:~/nbd_test$ sudo nbd-server -C /etc/nbd-server/config
** (process:17264): WARNING **: A port was specified, but oldstyle exports were not requested. This may not do what you expect.
** (process:17264): WARNING **: Please read 'man 5 nbd-server' and search for oldstyle for more info
Затем на клиентском компьютере (pcl-mr1) после монтирования специального файла блока / dev / nbd0 я получил следующее.
hadoop@pcl-mr1:~$ sudo nbd-client gpu -N nbd-test /dev/nbd0
Negotiation: ..size = 1953MB
bs=1024, sz=2048000000 bytes
hadoop@pcl-mr1:~$ sudo mount /dev/nbd0 nbd_disk/
mount: block device /dev/nbd0 is write-protected, mounting read-only
Несмотря на то, что я сконфигурировал файл конфигурации на стороне сервера с образом диска, доступным как для чтения, так и для записи, образ клиента был доступен только для чтения на стороне клиента. Что не так в шагах выше я прошел? Как я могу экспортировать образ диска с разрешением на чтение и запись? Любая помощь будет принята с благодарностью.
2 ответа
Вы, наверное, уже заметили, но для справки: это была ошибка в nbd-client, которая была исправлена в nbd-client v3.11.
Немного поздно для ответа здесь, но разместить его в интересах других людей, столкнувшихся с этой проблемой -
Вариант №1: сменить владельца файла резервной копии -
# chown nbd:nbd disk_image
Вариант № 2: Изменить права доступа к файлу резервной копии -
# chmod a+w disk_image
Вариант №3: Измените / etc / nbd-server / config для запуска nbd-server от имени подходящего пользователя (скажем, hadoop) -
# cat /etc/nbd-server/config
[generic]
user = hadoop
group = hadoop
...