Use um dispositivo sobre SSH?

14

Eu tenho 2 PCs com o Ubuntu em casa e um link de rede entre eles.

Se eu fizer

 $ sshfs [email protected]:/ /media/pc2

posso usar um dispositivo remoto como local? (neste caso: /media/pc2/dev/sr0como um DVD-RW local). No final, tudo no Unixes é um arquivo, certo?

eu fiz

 culebrón@culebrón:/dev$ sudo ln -s /media/pc2/dev/sr0 dvdrw

mas sem sucesso: Brasero e K3b não veem nenhum dispositivo de DVD.

Eu sei que, para a maioria das tarefas, SSH e sshfs são mais que suficientes, mas gostaria de saber se há uma solução geral.

culebrón
fonte
O SSHFS não pode manipular dispositivos de bloco. Olhe para o dispositivo de bloqueio de rede se isso é algo que você realmente precisa.
Zaz

Respostas:

15

O SSHFS não funciona dessa maneira - ele lida com arquivos, mas não com dispositivos. Tudo é um arquivo, mas existem muitos tipos de arquivos, incluindo: arquivos regulares, diretórios, links simbólicos, soquetes, dispositivos de caracteres e dispositivos de bloco.

% ls -l /dev/sda
brw-r----- 1 root disk 8, 0 Oct  9 20:59 /dev/sda

A letra bindica que este é um dispositivo de bloco. Esses tipos de arquivos são compatíveis ioctlcom as funções normais de leitura e gravação. O objetivo de ioctlé permitir uma maneira de executar operações "extras" no dispositivo. Essas operações são diferentes para cada tipo de dispositivo: um dispositivo de DVD pode abrir / fechar sua porta, mas um dispositivo Ethernet não.

É por isso que o software SSHFS não pode disponibilizar arquivos do dispositivo pela rede.

Você precisará de um sistema diferente criado para esse fim, algo como o webCDwriter .

Kevin Panko
fonte
1
Eu meio que não posso acreditar que o webCDwriter ainda esteja por aí.
phresus
1
Eu nunca tentei - se é uma porcaria, não me culpe: D
Kevin Panko #
11

Se você deseja acessar remotamente um dispositivo de bloco, existe uma ferramenta chamada ' nbd ' (Dispositivo de Bloco de Rede). Eu usei isso no passado para clonar um disco rígido usando dd if=/dev/nbd0 of=/dev/hdacom sucesso razoável.

No entanto, duvido que isso funcione para unidades ópticas.

Eu acho que seria melhor executar o software de gravação localmente na máquina remota (digamos, com X ou VNC) e fazer com que ele puxe arquivos usando mecanismos regulares de compartilhamento de arquivos, como samba ou NFS.

Suprimindo fogo
fonte
6

Linux / UNIX não são o Plano 9. "Tudo é um arquivo" não significa que eles são todos do mesmo tipo de arquivo. FIFOs e nós de dispositivo são exemplos principais.

Não, você não pode fazer dessa maneira. Minha recomendação seria usar um gravador virtual (celebron grava em uma imagem, .iso ou outra) e canalizar isso para gravar no ssh.

phresus
fonte
2

Brasero e K3b não veem um dispositivo de DVD porque o kernel do SO do computador local não vê um dispositivo de DVD.

Montar sistemas de arquivos remotamente é fácil; existem protocolos de rede como CIFS, NFS, AFS e até SSHFS para lidar com todos os detalhes do acesso a arquivos. Mas o acesso a dispositivos de baixo nível é um animal diferente - observe que nenhum desses protocolos permitiria, por exemplo, reparticionar ou reformatar o sistema de arquivos que está sendo acessado.

Você precisaria de um protocolo de baixo nível como iSCSI, FCoE (Fibre Channel over Ethernet) ou ATAoE (ATA sobre Ethernet) para fazer o que deseja. Isso envolveria o software no nível do driver no dispositivo remoto para exportar o dispositivo e o software no nível do driver no dispositivo local para conectar-se a ele. Há um software Windows chamado Starport que reivindica esse recurso e um site Linux-iSCSI que pode fornecer mais informações sobre o que é possível no momento.

Mas, geralmente, essas tecnologias são usadas em data centers corporativos com hardware caro. Para uso doméstico geral, você realmente deseja executar o Brasero no seu computador remoto e apenas exibir a janela da GUI no sistema local (via X, VNC ou alguma outra tecnologia de desktop remoto).

charlatão quixote
fonte
1
AFAIK, o iSCSI não enviará comandos ATAPI. Remote X, FreeNX, VNC são ótimas sugestões.
Phresus #
hmmm, talvez não, mas a gravação em um dispositivo óptico remoto é fornecida como um exemplo iSCSI no site Starport. pode precisar de um dispositivo de queimador SCSI para isso. ou use o ATAoE, que (teoricamente) deve lidar com o ATAPI muito bem.
quack quixote