Я думаю, что вы могли бы достичь того, что вы хотите, используя сетевые блочные устройства (NBD). Глядя на страницу Википедии по теме, есть упоминание инструмента под названием nbd
. Он состоит из клиентского и серверного компонентов.
пример
В этом сценарии я устанавливаю CDROM на моем ноутбуке Fedora 19 (сервер) и делюсь им с системой Ubuntu 12.10 (клиент).
установка
$ apt-cache search ^nbd-
nbd-client - Network Block Device protocol - client
nbd-server - Network Block Device protocol - server
$ sudo apt-get install nbd-server nbd-client
делиться CD
Теперь вернувшись на сервер (Fedodra 19), я делаю аналогичную вещь, используя менеджер пакетов YUM. После завершения я вставляю компакт-диск и запускаю эту команду, чтобы поделиться им как блочным устройством:
$ sudo nbd-server 2000 /dev/sr0
** (process:29516): WARNING **: Specifying an export on the command line is deprecated.
** (process:29516): WARNING **: Please use a configuration file instead.
$
Быстрая проверка, чтобы увидеть, работает ли он:
$ ps -eaf | grep nbd
root 29517 1 0 12:02 ? 00:00:00 nbd-server 2000 /dev/sr0
root 29519 29071 0 12:02 pts/6 00:00:00 grep --color=auto nbd
Монтирование CD
Теперь вернемся к клиенту Ubuntu, нам нужно подключиться к nbd-server
использованию nbd-client
так. ПРИМЕЧАНИЕ: имя nbd-сервера в этом примере - greeneggs.
$ sudo nbd-client greeneggs 2000 /dev/nbd0
Negotiation: ..size = 643MB
bs=1024, sz=674983936 bytes
(В некоторых системах, например, в Fedora, нужно modprobe nbd
сначала.)
Мы можем подтвердить, что в системе Ubuntu теперь есть блочное устройство lsblk
:
$ sudo lsblk -l
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
sda1 8:1 0 243M 0 part /boot
sda2 8:2 0 1K 0 part
sda5 8:5 0 465.5G 0 part
ubuntu-root (dm-0) 252:0 0 461.7G 0 lvm /
ubuntu-swap_1 (dm-1) 252:1 0 3.8G 0 lvm [SWAP]
sr0 11:0 1 654.8M 0 rom
nbd0 43:0 0 643M 1 disk
nbd0p1 43:1 0 643M 1 part
И теперь мы монтируем это:
$ sudo mount /dev/nbd0p1 /mnt/
mount: block device /dev/nbd0p1 is write-protected, mounting read-only
$
это сработало?
Ожидание убивает меня, и у нас есть взлет:
$ sudo ls /mnt/
EFI GPL isolinux LiveOS
Это содержимое LiveCD CentOS, которое я смонтировал на ноутбуке Fedora 19 и смог смонтировать как блочное устройство сети в Ubuntu.