Я принял ответ овцы. Но я думал, что выложу свой собственный, просто чтобы получить это там. Я подумал об этом еще немного, и вот единственный способ, которым я могу представить, как это работает:
Имейте корпус диска, который имеет как порт USB, так и порт Ethernet. В корпусе есть небольшая прошивка, которая запускает веб-сервер для конфигурации. Устройство имеет два режима, режим USB и режим NAS. Вы можете переключаться между ними с помощью веб-конфигурации (поэтому сетевой порт всегда активен, но общий доступ к файлам SMB не всегда активен). Чтобы войти в режим NAS, устройство отключает USB на своем USB-порту, монтирует файловую систему на самом диске и запускает процесс совместного использования SMB. При переключении в режим USB устройство отключает процесс SMB, отключает файловую систему, а затем выполняет повторное подключение USB.
Похоже, что на самом деле это не сработает и не вызовет проблем. Практически все, что ожидает общения с USB-накопителем, будет корректно работать с горячим подключением / отключением, и большинство клиентов SMB в порядке с удалением сервера.
Немного по-другому (безумнее?) Версия этого будет более автоматической. Допустим, режим USB используется по умолчанию. Когда он больше ничего не делает, по умолчанию используется режим USB. Процесс совместного использования SMB запущен, но из-за того, что USB-накопитель владеет дисководом, файловой системы на самом деле нет (пока). Когда приходит запрос SMB, требующий реального содержимого, переключитесь с USB на NAS, как описано выше. Возможно, он остается в режиме NAS до тех пор, пока существует какая-то активность, требующая от SMB доступа к актуальным файлам в течение настраиваемого времени ожидания.
Это, вероятно, приведет к генерации тонны подключений / отключений на стороне USB, и я могу представить, что различные компьютеры в сети могут случайно проиндексировать, пропинговать или непреднамеренно вызвать непреднамеренное пробуждение стороны NAS.
Да, я хочу, чтобы это существовало дешево, но я не могу себе представить, что это будет дешево производить. Там есть немного кодирования.