Verwenden Sie ein Gerät über SSH?

14

Ich habe 2 PCs mit Ubuntu zu Hause und eine Netzwerkverbindung zwischen ihnen.

Wenn ich mache

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

Kann ich ein Remote-Gerät als lokales Gerät verwenden? (in diesem Fall /media/pc2/dev/sr0als lokale DVD-RW). Am Ende ist alles in Unixes eine Datei, oder?

Ich tat

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

aber ohne Erfolg: Brasero und K3b sehen kein DVD-Gerät.

Ich weiß, für die meisten Aufgaben sind SSH und sshfs mehr als genug, aber ich würde gerne wissen, ob es eine allgemeine Lösung gibt.

culebrón
quelle
SSHFS kann keine Blockgeräte verarbeiten. Sehen Sie sich Network Block Device an, wenn Sie dies wirklich benötigen.
Zaz

Antworten:

15

SSHFS funktioniert nicht so - es verarbeitet Dateien, aber keine Geräte. Alles ist eine Datei, aber es gibt viele Arten von Dateien, darunter reguläre Dateien, Verzeichnisse, symbolische Links, Sockets, Zeichengeräte und Blockgeräte.

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

Der Buchstabe bzeigt an, dass es sich um ein Blockgerät handelt. Diese Dateitypen unterstützen ioctlzusätzlich zu den normalen Lese- und Schreibfunktionen. Der Zweck von ioctlist, eine Möglichkeit zu ermöglichen, "zusätzliche" Operationen an dem Gerät durchzuführen. Diese Vorgänge sind für jeden Gerätetyp unterschiedlich: Ein DVD-Gerät kann seine Tür öffnen / schließen, ein Ethernet-Gerät nicht.

Aus diesem Grund kann die SSHFS-Software Gerätedateien nicht über das Netzwerk verfügbar machen.

Sie benötigen ein anderes System, das für diesen Zweck entwickelt wurde, wie zum Beispiel den webCDwriter .

Kevin Panko
quelle
1
Ich kann nicht glauben, dass webCDwriter immer noch da ist.
Phresus
1
Ich habe es nie ausprobiert - wenn es scheiße ist, beschuldigen Sie mich nicht: D
Kevin Panko
11

Wenn Sie remote auf ein Blockiergerät zugreifen möchten, gibt es ein solches Tool namens ' nbd ' (Network Block Device). Ich habe dies in der Vergangenheit verwendet, um eine Festplatte dd if=/dev/nbd0 of=/dev/hdamit angemessenem Erfolg zu klonen .

Ich bezweifle jedoch, dass dies für optische Laufwerke funktionieren wird.

Ich denke, Sie sollten die Brennsoftware besser lokal auf dem Remotecomputer ausführen (z. B. mit X oder VNC) und Dateien mithilfe regulärer Dateifreigabemechanismen wie Samba oder NFS ziehen lassen.

Feuer unterdrücken
quelle
6

Linux / UNIX sind nicht Plan 9. "Alles ist eine Datei" bedeutet nicht, dass sie alle die gleiche Art von Dateien sind. Beispiele hierfür sind FIFOs und Geräteknoten.

Nein, das kannst du nicht so machen. Meine Empfehlung wäre, einen virtuellen Writer zu verwenden (Celebron schreibt in ein Image, .iso oder ein anderes) und diesen per Pipe über ssh auf cdrecord zu übertragen.

phresus
quelle
2

Brasero und K3b sehen kein DVD-Gerät, da der Betriebssystemkern Ihres lokalen Computers kein DVD-Gerät erkennt.

Das Remote-Mounten von Dateisystemen ist einfach. Es gibt Netzwerkprotokolle wie CIFS, NFS, AFS und sogar SSHFS, um alle Details des Dateizugriffs zu verarbeiten. Der Gerätezugriff auf niedriger Ebene ist jedoch ein anderes Thema. Beachten Sie, dass keines dieser Protokolle beispielsweise das erneute Partitionieren oder Neuformatieren des Dateisystems ermöglicht, auf das zugegriffen wird.

Sie benötigen ein Low-Level-Protokoll wie iSCSI, FCoE (Fibre Channel over Ethernet) oder ATAoE (ATA over Ethernet) , um das zu tun, was Sie tun möchten. Dies würde Software auf Treiberebene auf dem Remote-Gerät zum Exportieren des Geräts und Software auf Treiberebene auf dem lokalen Gerät zum Anhängen umfassen. Es gibt Windows-Software namens Starport , die diese Fähigkeit beansprucht, und eine Linux-iSCSI-Site , die Ihnen möglicherweise weitere Informationen zu den derzeit möglichen Funktionen bietet .

Im Allgemeinen werden diese Technologien jedoch in Rechenzentren von Unternehmen mit teurer Hardware eingesetzt. Für den allgemeinen Heimgebrauch möchten Sie Brasero unbedingt auf Ihrem Remote-Computer ausführen und nur das GUI-Fenster auf Ihrem lokalen System anzeigen (über X, VNC oder eine andere Remote-Desktop-Technologie).

Quacksalber
quelle
1
AFAIK, iSCSI sendet keine ATAPI-Befehle. Remote X, FreeNX, VNC sind großartige Vorschläge.
Phresus
hmmm, vielleicht nicht, aber das Brennen auf ein entferntes optisches Gerät wird als iSCSI-Beispiel auf der Starport-Site angegeben. Möglicherweise benötigen Sie dafür einen SCSI-Brenner. oder benutze ATAoE, welches (theoretisch) mit ATAPI gut umgehen sollte.
Quacksalber 20.11.09