12

У меня есть 2 ПК с Ubuntu дома и сетевое соединение между ними.

Если я сделаю

 $ sshfs pc2root@192.168.0.2:/ /media/pc2

я могу использовать удаленное устройство как локальное? (в этом случае: /media/pc2/dev/sr0 как локальный DVD-RW). В конце концов, все в Unixes - это файл, верно?

я сделал

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

но безуспешно: Brasero и K3b не видят ни одного DVD-устройства.

Я знаю, что для большинства задач SSH и sshfs более чем достаточно, но хотелось бы знать, есть ли общее решение.

4 ответа4

15

SSHFS не работает таким образом - он обрабатывает файлы, но не устройства. Все является файлом, но есть много типов файлов, включая: обычные файлы, каталоги, символические ссылки, сокеты, символьные устройства и блочные устройства.

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

Буква b указывает, что это блочное устройство. Эти типы файлов поддерживают ioctl в дополнение к обычным функциям чтения и записи. Цель ioctl - предоставить возможность выполнять "дополнительные" операции с устройством. Эти операции различны для каждого типа устройства: устройство DVD может открывать / закрывать свою дверь, но устройство Ethernet не может.

Вот почему программное обеспечение SSHFS не может сделать файлы устройств доступными по сети.

Для этой цели вам понадобится другая система, например, webCDwriter.

11

Если вы хотите получить удаленный доступ к блочному устройству, есть такой инструмент под названием « nbd » (Сетевое блочное устройство). В прошлом я использовал это для клонирования жесткого диска с использованием dd if=/dev/nbd0 of=/dev/hda с разумным успехом.

Однако я сомневаюсь, что это будет работать для оптических приводов.

Я думаю, что вам лучше запустить локально записывающее программное обеспечение на удаленной машине (скажем, с X или VNC) и заставить его извлекать файлы, используя обычные механизмы обмена файлами, такие как samba или NFS.

6

Linux/UNIX не являются Планом 9. "Все это файл" не означает, что это все файлы одного типа. FIFO и узлы устройств являются яркими примерами.

Нет, ты не можешь сделать это таким образом. Я бы порекомендовал использовать виртуального писателя (например, celebron пишет в образ, .iso или другой) и направить его в cdrecord через ssh.

2

Brasero и K3b не видят устройство DVD, потому что ядро ОС вашего локального компьютера не видит устройство DVD.

Удаленно монтировать файловые системы; Существуют сетевые протоколы, такие как CIFS, NFS, AFS и даже SSHFS для обработки всех деталей доступа к файлам. Но низкоуровневый доступ к устройствам - это другое животное - обратите внимание, что ни один из этих протоколов не позволил бы, например, перераспределить или переформатировать файловую систему, к которой осуществляется доступ.

Вам понадобится протокол низкого уровня, такой как iSCSI, FCoE (Fibre Channel over Ethernet) или ATAoE (ATA over Ethernet), чтобы делать то, что вы хотите. Это может включать программное обеспечение уровня драйвера на удаленном устройстве для экспорта устройства и программное обеспечение уровня драйвера на локальном устройстве для подключения к нему. Есть программное обеспечение Windows под названием Starport, которое претендует на эту возможность, и сайт Linux-iSCSI, который может дать вам больше информации о том, что в настоящее время возможно.

Но, как правило, эти технологии используются в корпоративных дата-центрах с дорогостоящим оборудованием. Для общего домашнего использования вы действительно хотите запустить Brasero на своем удаленном компьютере и просто отобразить окно графического интерфейса в локальной системе (через X, VNC или другую технологию удаленного рабочего стола).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .