[etc] USB¸¦ ÀÌ´õ³ÝÀ¸·Î Å¿ö °¡»ó¸Ó½Å¿¡ ¿¬°áÇØÁá½À´Ï´Ù.
USB를 이더넷으로 태워 가상머신에 연결해줬습니다.
이게 된 계기는 저희 회사에는 Windows PC가 한대도 없고... 직원들도 전부 Linux, Mac을 쓰고있기도 하고 업무환경에 Windows를 고려하기 힘든 부분도 있어서 입니다. (커맨드라인 / 스크립트 자체가 너무 불편 / 많은걸 커맨드라인으로 해결도 못함)
하지만 고객사의 요청으로 Windows 에서 Firmware을 개발하여 Atmel Studio (Microchip Studio)를 통해 JTAG 장비인 ATMEL ICE로 펌웨어를 올려야하는 상황이 왔는데.
컴퓨터는 많지만 죄다 리눅스가 깔려있어서 무언가 해결을 하기 힘든 상황이었습니다.
이러한 문제 때문에 대부분 리눅스를 쓰시는 분이라 하더라도 윈도우PC를 따로 구비해서 쓰시는걸로 압니다.
그러던 와중 USBIP라는 존재를 깨닫고 이를 적용해보기로 했습니다.
준비물
- Odroid / RPI / Linux Desktop (linux상에서의 usbip는 커널 3.19이상이면 됩니다.)
- Windows 가상머신 (TESTSIGNING 을 허용가능해야합니다., 가급적이면 11이 아닌 10 추천) [https://github.com/cezanne/usbip-win 사용]
저는 이런식으로 세팅했으며, 집에있는 odroid나 회사에 비치해둔 odroid를 통해, 집/사무실2(별관)에서 이미 깔려있는 wireguard를 통해 가상머신win10에서 USB를 인식할 수 있게 되었습니다.
성공은 했지만 몇가지 제한점이 있다면
원격지와 가상머신 이 있는곳의 통신사 사업자가 다르면 에러율이 조금 생기긴합니다.
출퇴근 가능한 거리 내에서 쓰는게 가장 최적인것 같습니다.
혹시라도 회원님들 중에서도 회사에 Windows머신이 전혀 없거나 두고싶지않지만 Windows와 USB를 같이 써야하는 경우 이러한 방법을 고려해보시는것도 좋을것같아 소개드리게 되었습니다.
¼Õ½ÇÀ²ÀÌ ³ô´Ù¸é ´Ù¸¥ Åͳθµ ¼ö´ÜÀ¸·Î ¹Ù²Ù¾îº¸¼¼¿ä
USBIP´Â ´ë¾ÈÀÌ º°·Î º¸ÀÌÁö ¾Ê¾Æ ´Ù¸¥ ¼±ÅÃÁö°¡ Å©°Ô ¾ø°ÚÁö¸¸
Wireguard¸¦ »ç¿ëÁßÀÎ°Ç È¸»ç ÀÎÇÁ¶ó°¡ Wireguard·Î µÇ¾îÀÖ´Ù´Â°Ô °¡Àå Å©³×¿ä.
´Ù¸¥ Åͳθµµµ Çѹø Å×½ºÆ®Çغ¸°Ú½À´Ï´Ù!
Åͳθµ ¼Ö·ç¼ÇÀÌ ÆÐŶ ¼Õ½Ç¿¡ ´ëÇؼ Á¦´ë·Î º¸Á¤À» ÇØÁØ´Ù¸é ¼Õ½Ç½Ã ÀçÀü¼ÛÀ¸·Î Áö¿¬ÀÌ »ý±â´Â ÀÏÀº À־ ¾Æ¿¡ ³¯¾Æ°¡¼ ¿¡·¯¸¦ À¯¹ßÇÏÁø ¾ÊÀ»°Í °°³×¿ä (´Ù¸¸ ŸÀӾƿô¸¸À¸·Îµµ ¿¡·¯°¡ ¹ß»ýÇÒ °¡´É¼ºµµ ¹èÁ¦´Â ¸øÇÏ°Ú½À´Ï´Ù¸¸, ÀÌ°æ¿ì ¹æ¹ýÀÌ ¾ø´Ù°í º¾´Ï´Ù)