Linux(바람직하게는 Ubuntu)에서 USB-USB 데이터 전송 시스템을 만들고 싶습니다. 이를 위해 외부 하드웨어나 스위치(이 케이블을 제외하고). 이는 시스템에 USB 드라이브를 설치하는 것과 같지만 이 경우 하나의 Linux 시스템이 다른 시스템에 설치됩니다. 어떻게 만들 수 있나요?
내 커널 프로그래밍 경험이 매우 기본적이라는 점을 감안할 때 사용 가능한 커널 모듈이 있습니까?
답변1
네 가능합니다만 그렇습니다아니요USB-A 커넥터(일반적으로 마더보드의 USB에 연결됨)가 있는 두 개의 USB 케이블을 자르고 데이터 케이블을 교차 연결하면 됩니다.이와 같은 집에서 만든 케이블을 사용하여 USB 전원 코드를 연결하면 온보드 USB 처리 칩이 튀겨질 가능성이 높습니다.. 집에서 이것을 시도하지 마십시오!
대부분의 컴퓨터 마더보드에서 USB를 처리하는 칩은 호스트 칩일 뿐입니다. 뿐만 아니라 작업 속도를 높이고 CPU의 부하를 줄이기 위해 많은 저수준 통신을 처리합니다. USB 포트의 핀을 처리하여 호스트가 아닌 역할을 하도록 컴퓨터를 프로그래밍할 수 없습니다. 칩 수준에서는 호스트 역할과 호스트 연결 사이를 전환할 수 있는 장치가 거의 없습니다. 이를 위해서는 더 비싼 칩이 필요하기 때문입니다. 그렇기 때문에 내 스마트폰, GPS, 전자책과 같은 스마트 장치는 모두 Linux 또는 이와 유사한 장치를 실행하지만 ssh
일반 USB 케이블을 통해 연결하면 통신할 수 없습니다.
장치는 연결되면 일종의 바보 모드로 들어가고 호스트 컴퓨터(내 데스크톱 시스템)는 저장소를 USB 디스크로 사용할 수 있습니다. 연결이 끊어지면 장치는 호스트와 동일한 인터페이스를 사용하여 데이터를 가져옵니다(케이블 연결은 필요하지 않지만 내부적으로 발생합니다).이러한 장치의 경우 Linux가 두 시스템 모두에서 실행되고 있더라도 시스템 간에 통신이 없습니다.. 이는 데스크탑에 연결하는 일반 마이크로 또는 미니 USB 케이블과 별개입니다.
두 데스크톱 컴퓨터 사이에는 일반적으로 USB-A-USB-A 케이블이 필요하기 때문에 위의 작업은 불가능합니다. 이는 일반적이지 않습니다(연결을 구동하는 일반 칩에서는 작동하지 않기 때문입니다).
두 개의 USB-A 커넥터를 사용하는 USB-USB 솔루션은 중간에 일부 전자 장치가 있는 케이블을 기반으로 합니다. (USB→직렬을 직렬→USB 케이블에 연결한 다음 모두 하나로 연결하는 것과 비슷합니다). "일반" 직렬 포트를 통해처럼 케이블을 통해 UUCP 등을 사용할 수도 있지만 일반적으로 전송하려면 드라이버가 필요합니다. 다른 시스템에 로그인하려면 inetd와 올바른 구성이 필요할 수도 있습니다.
1 이런 방식으로 소프트웨어를 변경할 수 있는 유일한 장치는 이 특정 칩이 탑재된 Arduino 보드입니다. 이 칩을 사용하여 마더보드를 만들었습니다. 두 배일반 Arduino 보드만큼 비쌉니다.
답변2
예, USB 3.0을 사용하면 3.0 케이블을 통한 전이중 데이터 전송이 가능합니다. 이 사양은 USB 사양의 섹션 5.5.2에 나와 있습니다. 이 사양에 대한 링크는 다른 이전 답변에 제공됩니다.http://www.gaw.ru/pdf/interface/usb/USB%203%200_english.pdf
케이블을 찾기가 점점 더 쉬워지고 있습니다. 예를 들어 Amazon에서 $8.00 미만의 가격으로 구매할 수 있습니다. 데이터 전송용 A형 수 케이블과 A형 수 케이블을 구입하십시오. 최신 버전의 Linux는 전송을 지원합니다.
이것이 누군가에게 도움이 되기를 바랍니다. 저는 오랫동안 스스로 답을 찾고 있었습니다.
답변3
이런 케이블 모양의 USB 브리지 장치를 사용할 수 있습니다.http://www.usbgear.com/link/(동영상 자동재생 경고)
답변4
내 접근 방식은 2개의 USB 직렬 케이블과 이들 케이블 사이에 널 연결을 사용하는 것입니다. 그런 다음 xmodem, zmodem, kermit 등을 사용하여 파일을 전송하거나 ppp 또는 슬립을 사용하여 두 시스템 사이에 네트워크를 설정할 수 있습니다. 구식이지만 작동합니다.
슬퍼