가상 하드 드라이브(특히 freeNAS 설치 시)를 전화나 비디오 게임 콘솔과 같은 외부 장치용 USB 대용량 저장 장치 주변 장치로 사용하려는 경우가 있습니다. 내 생각은 설정에서 모든 USB 저장 장치를 제거하고 대신 NAS의 일부로 가상화하여 정기적인 백업 루틴의 일부로 쉽게 만드는 것이었습니다.
USB가 대칭 설정이 아니라는 것을 깨달았기 때문에 NAS에 슬레이브 포트가 필요했습니다. 또한 이 작업은 실제 USB 컨트롤러 카드에서 수행되므로 USB 포트를 슬레이브 포트로 "사용"할 수 있는 실제 방법은 없습니다.
제 질문은 하드웨어, 소프트웨어 또는 이들의 조합을 통해 이를 달성하기 위한 어떤 종류의 에뮬레이션이나 변환 방법이 있습니까?입니다. 슬레이브 포트를 작동시킬 수 있다면 대용량 저장 모드에서 Linux USB-gadget API를 사용할 수 있는 것 같습니다. 그러나 USB 슬레이브나 USB-OTG를 지원하는 어떤 종류의 확장 카드도 찾을 수 없는 것 같고, 이 설정에서 작동하는 다른 하드웨어 솔루션도 없는 것 같습니다.
누구든지 포인터가 있습니까?
편집: 그런 장치가 작동할까요?
답변1
"대량 저장소 가젯" 문서를 확인하세요. 이것이 출발점이 될 수 있습니다. https://www.kernel.org/doc/html/latest/usb/mass-storage.html
가상 USB 장치를 호스팅하는 컴퓨터의 하드웨어에 대해서는 특별한 것이 필요하지 않습니다. 저도 이것에 대해 연구해 본 결과, 시중에 나와 있는 대부분의 USB-C 컨트롤러가 USB 장치(호스트가 아닌) 모드로 들어갈 수 있는 것 같습니다. USB-C 포트가 있는 Apple 컴퓨터에는 대상 디스크 모드를 지원하는 올바른 칩이 있습니다. "Black Apple"(macOS를 실행하는 Apple이 아닌 컴퓨터) 군중은 이 칩이 얼마나 흔한지 증명합니다. Black Apple은 이 기능이 운영 체제의 일부가 아니기 때문에 대상 디스크 모드로 들어갈 수 없습니다. Apple은 이 기능을 펌웨어에 넣습니다. 이를 통해 컴퓨터가 부팅할 수 없는 컴퓨터를 수정하기 위해 이 모드로 들어갈 수 있습니다.
여기에 추가할 내용이 별로 없습니다. 지금까지 제가 아는 것은 Linux 컴퓨터가 가상 USB 장치로 작동하는 기능을 개발하는 "USB 가젯"이라는 프로젝트가 있다는 것뿐입니다. 이 작업을 수행하는 데 필요한 하드웨어는 상당히 일반적이라는 것을 알고 있으며, 점점 더 많은 노트북이 USB-C를 전원 입력 포트로 사용합니다. USB 전원 공급이 제대로 작동하려면 전원을 공급하는 "호스트"와 전원을 받는 "장치"가 있어야 합니다. 각 USB-PD 전원 장치는 연결된 모든 장치(예: USB-C를 전원 입력 포트로 사용하는 노트북)에 전원 공급을 협상하는 USB 호스트입니다.
답변2
Linux 기반 OS가 옵션인 경우 USB 프런트 엔드가 있는 LIO를 살펴볼 수 있습니다.
"USB Gadget Fabric 모듈을 사용하면 Linux에서 USB(범용 직렬 버스)를 통해 로컬 저장 장치를 내보내 다른 시스템에서 이를 일반 저장 장치로 마운트할 수 있습니다."(https://en.wikipedia.org/wiki/LIO_(SCSI_target))
지금 말씀드릴 수 없는 것은 다음과 같습니다.
- 어떤 종류의 배선이 필요합니까? 단순한 일대일 연결을 하지 마십시오. 기계가 파손될 수 있습니다!
- 특정 USB 포트를 구성하는 방법
시간이 더 나면 더 연구해보겠습니다!
편집: 시도했지만 실패했습니다. 실제보다 훨씬 쉽게 들립니다. 어쩌면 다른 사람이 이에 대해 더 많은 정보를 가지고 있을까요?