Acho que você pode conseguir o que deseja usando dispositivos de bloco de rede (NBD). Analisando a página da Wikipédia sobre o assunto , mencionamos uma ferramenta chamada nbd
. É composto por um componente de cliente e servidor.
Exemplo
Neste cenário, estou configurando um CDROM no meu laptop Fedora 19 (servidor) e estou compartilhando com um sistema Ubuntu 12.10 (cliente).
instalando$ 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
compartilhando um CD
Agora, de volta ao servidor (Fedodra 19), faço uma coisa semelhante usando o gerenciador de pacotes YUM. Depois de concluído, insiro um CD e executo esse comando para compartilhá-lo como um dispositivo de bloco:
$ 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.
$
Uma verificação rápida para ver se está em execução:
$ 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
Montando o CD
Agora, de volta ao cliente Ubuntu, precisamos nos conectar ao nbd-server
usando nbd-client
. OBSERVAÇÃO: o nome do nbd-server é greeneggs neste exemplo.
$ sudo nbd-client greeneggs 2000 /dev/nbd0
Negotiation: ..size = 643MB
bs=1024, sz=674983936 bytes
(Em alguns sistemas - por exemplo, o Fedora - é preciso usar modprobe nbd
primeiro.)
Podemos confirmar que agora há um dispositivo de bloco no sistema Ubuntu usando 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
E agora montamos:
$ sudo mount /dev/nbd0p1 /mnt/
mount: block device /dev/nbd0p1 is write-protected, mounting read-only
$
funcionou?
O suspense está me matando e nós temos decolagem:
$ sudo ls /mnt/
EFI GPL isolinux LiveOS
Há o conteúdo de um LiveCD do CentOS que montei no laptop do Fedora 19 e consegui montá-lo como um dispositivo de bloco da rede no Ubuntu.