Utiliser un appareil via SSH?

14

J'ai 2 PC avec Ubuntu à la maison et un lien réseau entre eux.

Si je fais

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

puis-je utiliser un appareil distant comme un appareil local? (dans ce cas: /media/pc2/dev/sr0comme un DVD-RW local). En fin de compte, tout dans Unixes est un fichier, non?

J'ai fait

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

mais sans succès: Brasero et K3b ne voient aucun périphérique DVD.

Je sais que pour la plupart des tâches, SSH et sshfs sont plus que suffisants, mais j'aimerais savoir s'il existe une solution générale.

culebrón
la source
SSHFS ne peut pas gérer les périphériques de bloc. Regardez dans Network Block Device si c'est quelque chose dont vous avez vraiment besoin.
Zaz

Réponses:

15

SSHFS ne fonctionne pas de cette façon - il gère les fichiers, mais pas les périphériques. Tout est un fichier, mais il existe de nombreux types de fichiers, notamment: les fichiers normaux, les répertoires, les liens symboliques, les sockets, les périphériques de caractères et les périphériques de bloc.

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

La lettre bindique qu'il s'agit d'un périphérique bloc. Ces types de fichiers prennent ioctlen charge en plus des fonctions normales de lecture et d'écriture. Le but de ioctlest de permettre un moyen d'effectuer des opérations "supplémentaires" sur l'appareil. Ces opérations sont différentes pour chaque type d'appareil: un appareil DVD peut ouvrir / fermer sa porte, mais pas un appareil Ethernet.

C'est pourquoi le logiciel SSHFS ne peut pas rendre les fichiers de périphérique disponibles sur le réseau.

Vous aurez besoin d'un système différent conçu à cet effet, quelque chose comme webCDwriter .

Kevin Panko
la source
1
Je ne peux pas croire que webCDwriter existe toujours.
phresus
1
Je ne l'ai jamais essayé - si ça craint, ne me blâmez pas: D
Kevin Panko
11

Si vous souhaitez accéder à distance à un périphérique de bloc, il existe un tel outil appelé « nbd » (Network Block Device). J'ai utilisé cela dans le passé pour cloner un disque dur en utilisant dd if=/dev/nbd0 of=/dev/hdaavec un succès raisonnable.

Cependant, je doute que cela fonctionne pour les lecteurs optiques.

Je pense que vous feriez mieux d'exécuter le logiciel de gravure localement sur la machine distante (disons avec X ou VNC), et de le faire extraire des fichiers en utilisant des mécanismes de partage de fichiers comme la samba ou NFS.

Éteindre le feu
la source
6

Linux / UNIX ne sont pas Plan 9. «Tout est un fichier» ne signifie pas qu'ils sont tous du même type de fichiers. Les FIFO et les nœuds de périphériques en sont des exemples.

Non, vous ne pouvez pas le faire de cette façon. Ma recommandation serait d'utiliser un écrivain virtuel (Celebron écrit sur une image, .iso ou autre) et de le canaliser pour enregistrer sur ssh.

Phresus
la source
2

Brasero et K3b ne voient pas de périphérique DVD car le noyau du système d'exploitation de votre ordinateur local ne voit pas de périphérique DVD.

Le montage à distance de systèmes de fichiers est facile; il existe des protocoles réseau comme CIFS, NFS, AFS et même SSHFS pour gérer tous les détails de l'accès aux fichiers. Mais l'accès aux périphériques de bas niveau est un animal différent - notez qu'aucun de ces protocoles ne permettrait, par exemple, de repartitionner ou de reformater le système de fichiers auquel vous accédez.

Vous auriez besoin d'un protocole de bas niveau comme iSCSI, FCoE (Fibre Channel over Ethernet) ou ATAoE (ATA over Ethernet) pour faire ce que vous voulez faire. Cela impliquerait un logiciel au niveau du pilote sur le périphérique distant pour exporter le périphérique, et un logiciel au niveau du pilote sur le périphérique local pour s'y connecter. Il existe un logiciel Windows appelé Starport qui revendique cette capacité, et un site Linux-iSCSI qui peut vous donner plus d'informations sur ce qui est actuellement possible.

Mais généralement, ces technologies sont utilisées dans les centres de données d'entreprise dotés d'un matériel coûteux. Pour un usage domestique général, vous voulez vraiment exécuter Brasero sur votre ordinateur distant et simplement afficher la fenêtre GUI sur votre système local (via X, VNC ou une autre technologie de bureau à distance).

Quack Quichotte
la source
1
AFAIK, iSCSI n'enverra pas de commandes ATAPI. Remote X, FreeNX, VNC sont d'excellentes suggestions.
phresus
hmmm, peut-être pas, mais la gravure sur un périphérique optique distant est donnée comme exemple iSCSI sur le site de Starport. peut avoir besoin d'un graveur SCSI pour cela. ou utilisez ATAoE, qui (théoriquement) devrait très bien gérer ATAPI.
Quack Quichote