เจŸเฉˆเจฎเจฟเฉฐเจ— USB/IP

เจ‡เฉฑเจ• USB เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเจฅเจพเจจเจ• เจจเฉˆเจŸเจตเจฐเจ• เจฆเฉเจ†เจฐเจพ เจฐเจฟเจฎเฉ‹เจŸ เจชเฉ€เจธเฉ€ เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจ เจฆเจพ เจ•เฉฐเจฎ เจจเจฟเจฏเจฎเจฟเจค เจคเฉŒเจฐ 'เจคเฉ‡ เจ‰เฉฑเจ เจฆเจพ เจนเฉˆเฅค เจ•เฉฑเจŸ เจฆเฉ‡ เจคเจนเจฟเจค, เจ‡เจธ เจฆเจฟเจธเจผเจพ เจตเจฟเฉฑเจš เจฎเฉ‡เจฐเฉ€เจ†เจ‚ เจ–เฉ‹เจœเจพเจ‚ เจฆเจพ เจ‡เจคเจฟเจนเจพเจธ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ“เจชเจจ-เจธเฉ‹เจฐเจธ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจ‡เฉฑเจ• เจฐเฉˆเจกเฉ€เจฎเฉ‡เจก เจนเฉฑเจฒ เจฆเจพ เจฎเจพเจฐเจ— USB/IP เจ‡เจธ เจฎเจพเจฐเจ— 'เจคเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจฒเฉ‹เจ•เจพเจ‚ เจฆเฉเจ†เจฐเจพ เจงเจฟเจ†เจจ เจจเจพเจฒ เจฐเฉฑเจ–เฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจฐเฉเจ•เจพเจตเจŸเจพเจ‚ เจฆเฉ‡ เจตเจฐเจฃเจจ เจฆเฉ‡ เจจเจพเจฒ-เจจเจพเจฒ เจ‰เจจเฉเจนเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเจจ เจฆเฉ‡ เจคเจฐเฉ€เจ•เจฟเจ†เจ‚ เจฆเฉ‡ เจจเจพเจฒเฅค

เจญเจพเจ— เจชเจนเจฟเจฒเจพ, เจ‡เจคเจฟเจนเจพเจธเจ•

เจœเฉ‡ เจฎเจธเจผเฉ€เจจ เจตเจฐเจšเฉเจ…เจฒ เจนเฉˆ - เจ‡เจน เจธเจญ เจ†เจธเจพเจจ เจนเฉˆ. VMWare 4.1 เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจนเฉ‹เจธเจŸ เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจตเจฐเจšเฉเจ…เจฒ เจฎเจธเจผเฉ€เจจ เจคเฉฑเจ• USB เจซเจพเจฐเจตเจฐเจกเจฟเฉฐเจ— เจฆเฉ€ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฑเจคเฉ€เฅค เจชเจฐ เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจธเฉเจฐเฉฑเจ–เจฟเจ† เจ•เฉเฉฐเจœเฉ€, WIBU-KEY เจตเจœเฉ‹เจ‚ เจชเจ›เจพเจฃเจจ เจฏเฉ‹เจ—, เจจเฉ‚เฉฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจธเจฎเฉ‡เจ‚ 'เจคเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจธเจผเฉ€เจจเจพเจ‚ เจจเจพเจฒ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจชเฉˆเจ‚เจฆเจพ เจธเฉ€, เจจเจพ เจ•เจฟ เจธเจฟเจฐเจซเจผ เจตเจฐเจšเฉเจ…เจฒ เจจเจพเจฒเฅค
เจฆเฉ‚เจฐ 2009 เจตเจฟเฉฑเจš เจ–เฉ‹เจœ เจฆเฉ‡ เจชเจนเจฟเจฒเฉ‡ เจฆเฉŒเจฐ เจจเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจฒเฉ‹เจนเฉ‡ เจฆเฉ‡ เจ‡เฉฑเจ• เจŸเฉเจ•เฉœเฉ‡ เจตเฉฑเจฒ เจฒเฉˆ เจ—เจฟเจ† เจœเจฟเจธเจจเฉ‚เฉฐ เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจจ TrendNet TU2-NU4
เจชเฉเจฐเฉ‹:

  • เจ•เจˆ เจตเจพเจฐ เจ‡เจน เจ•เฉฐเจฎ เจตเฉ€ เจ•เจฐเจฆเจพ เจนเฉˆ

เจจเฉเจ•เจธเจพเจจ:

  • เจนเจฎเฉ‡เจธเจผเจพ เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพเฅค เจฎเฉฐเจจ เจฒเจ“ เจ•เจฟ เจ—เจพเจฐเจกเฉˆเจ‚เจŸ เจธเจŸเฉ€เจฒเจฅ II เจธเฉเจฐเฉฑเจ–เจฟเจ† เจ•เฉเฉฐเจœเฉ€ เจ‡เจธ เจฐเจพเจนเฉ€เจ‚ เจธเจผเฉเจฐเฉ‚ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, "เจกเจฟเจตเจพเจˆเจธ เจธเจผเฉเจฐเฉ‚ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€" เจฆเฉ€ เจ—เจฒเจคเฉ€ เจจเจพเจฒ เจธเจนเฉเฉฐ เจ–เจพเจ“เฅค
  • เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ (เจชเฉœเฉเจนเฉ‹ - เจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจจเจพ เจ…เจคเฉ‡ USB เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจจเฉ‚เฉฐ เจ…เจจเจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจจเจพ) เจ…เจคเจฟเจ…เฉฐเจค เจคเจฐเจธเจฏเฉ‹เจ— เจนเฉˆเฅค เจ•เจฎเจพเจ‚เจก เจฒเจพเจˆเจจ เจธเจตเจฟเฉฑเจš, เจ†เจŸเฉ‹เจฎเฉ‡เจธเจผเจจ - เจจเจนเฉ€เจ‚, เจธเฉเจฃเจฟเจ† เจจเจนเฉ€เจ‚ เจนเฉˆ. เจธเจญ เจ•เฉเจ เจนเฉฑเจฅ เจจเจพเจฒ เจนเฉ€ เจนเฉˆเฅค เจธเฉเจชเจจเจพ.
  • เจ•เฉฐเจŸเจฐเฉ‹เจฒ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจชเฉเจฐเจธเจพเจฐเจฃ เจฆเฉเจ†เจฐเจพ เจจเฉˆเจŸเจตเจฐเจ• เจตเจฟเฉฑเจš เจฒเฉ‹เจนเฉ‡ เจฆเฉ‡ เจŸเฉเจ•เฉœเฉ‡ เจฆเฉ€ เจ–เฉ‹เจœ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจ‡เจน เจ•เฉ‡เจตเจฒ เจ‡เฉฑเจ• เจชเฉเจฐเจธเจพเจฐเจฃ เจจเฉˆเจŸเจตเจฐเจ• เจนเจฟเฉฑเจธเฉ‡ เจตเจฟเฉฑเจš เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจคเฉเจธเฉ€เจ‚ เจนเฉฑเจฅ เจจเจพเจฒ เจฒเฉ‹เจนเฉ‡ เจฆเฉ‡ เจŸเฉเจ•เฉœเฉ‡ เจฆเจพ IP เจชเจคเจพ เจจเจนเฉ€เจ‚ เจฆเฉ‡ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจฆเฉ‚เจœเฉ‡ เจธเจฌเจจเฉˆเฉฑเจŸ เจตเจฟเฉฑเจš เจฒเฉ‹เจนเฉ‡ เจฆเจพ เจ‡เฉฑเจ• เจŸเฉเจ•เฉœเจพ? เจซเจฟเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเจฎเฉฑเจธเจฟเจ† เจนเฉˆ.
  • เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจจเฉ‡ เจกเจฟเจตเจพเจˆเจธ 'เจคเฉ‡ เจธเจ•เฉ‹เจฐ เจ•เฉ€เจคเจพ, เจฌเฉฑเจ— เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจญเฉ‡เจœเจฃเจพ เจฌเฉ‡เจ•เจพเจฐ เจนเฉˆเฅค

เจฆเฉ‚เจœเจพ เจฆเฉŒเจฐ เจ‡เฉฐเจจเจพ เจฆเฉ‚เจฐ เจฆเฉ‡ เจธเจฎเฉ‡เจ‚ เจตเจฟเฉฑเจš เจนเฉ‹เจ‡เจ†, เจ…เจคเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจฒเฉ‡เจ– เจฆเฉ‡ เจตเจฟเจธเจผเฉ‡ เจตเฉฑเจฒ เจฒเฉˆ เจ—เจฟเจ† - USB/IP เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ. เจ–เฉเฉฑเจฒเฉ‡เจชเจจ เจจเจพเจฒ เจ†เจ•เจฐเจธเจผเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ, เจ–เจพเจธ เจ•เจฐเจ•เฉ‡ เจœเจฆเฉ‹เจ‚ เจคเฉ‹เจ‚ เจฎเฉเฉฐเจกเจฟเจ†เจ‚ เจคเฉ‹เจ‚ เจฐเฉ€เจ•เฉˆเจŸเฉ‹เจœเจผ เจ‰เจนเจจเจพเจ‚ เจจเฉ‡ เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจฒเจˆ เจ‡เฉฑเจ• เจกเฉเจฐเจพเจˆเจตเจฐ 'เจคเฉ‡ เจฆเจธเจคเจ–เจค เจ•เฉ€เจคเฉ‡, เจ‡เจธ เจฒเจˆ เจนเฉเจฃ เจธเจญ เจ•เฉเจ x64 'เจคเฉ‡ เจตเฉ€ เจฌเจฟเจจเจพเจ‚ เจ•เจฟเจธเฉ‡ เจฌเฉˆเจธเจพเจ–เฉ€เจ†เจ‚ เจฆเฉ‡ เจŸเฉˆเจธเจŸ เจฎเฉ‹เจก เจตเจพเจ‚เจ— เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเจฟเจธ เจฒเจˆ ReactOS เจŸเฉ€เจฎ เจฆเจพ เจฌเจนเฉเจค เจฌเจนเฉเจค เจงเฉฐเจจเจตเจพเจฆ! เจนเจฐ เจšเฉ€เจœเจผ เจธเฉเฉฐเจฆเจฐ เจฒเฉฑเจ—เจฆเฉ€ เจนเฉˆ, เจ†เจ“ เจ‡เจธเจจเฉ‚เฉฐ เจฎเจนเจฟเจธเฉ‚เจธ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเฉ€เจ, เจ•เฉ€ เจ‡เจน เจธเฉฑเจšเจฎเฉเฉฑเจš เจ…เจœเจฟเจนเจพ เจนเฉˆ? เจฌเจฆเจ•เจฟเจธเจฎเจคเฉ€ เจจเจพเจฒ, เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจจเฉ‚เฉฐ เจตเฉ€ เจ›เฉฑเจก เจฆเจฟเฉฑเจคเจพ เจ—เจฟเจ† เจนเฉˆ, เจ…เจคเฉ‡ เจคเฉเจธเฉ€เจ‚ เจธเจฎเจฐเจฅเจจ 'เจคเฉ‡ เจญเจฐเฉ‹เจธเจพ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ - เจชเจฐ เจœเจฟเฉฑเจฅเฉ‡ เจธเจพเจกเจพ เจ…เจฒเฉ‹เจช เจจเจนเฉ€เจ‚ เจนเฉ‹เจ‡เจ†, เจธเจฐเฉ‹เจค เจ‰เฉฑเจฅเฉ‡ เจนเฉˆ, เจ…เจธเฉ€เจ‚ เจ‡เจธเจฆเจพ เจชเจคเจพ เจฒเจ—เจพ เจฒเจตเจพเจ‚เจ—เฉ‡!

เจญเจพเจ— เจฆเฉ‹, เจธเจฐเจตเจฐ-เจฒเฉ€เจจเจ•เจธ

เจ‡เฉฑเจ• USB/IP เจธเจฐเจตเจฐ เจœเฉ‹ USB เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‰เฉฑเจคเฉ‡ เจธเจพเจ‚เจเจพ เจ•เจฐเจฆเจพ เจนเฉˆ, เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• Linux-เจ…เจงเจพเจฐเจฟเจค OS 'เจคเฉ‡ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจ–เฉˆเจฐ, เจฒเฉ€เจจเจ•เจธ เจฒเฉ€เจจเจ•เจธ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจกเฉ‡เจฌเฉ€เจ…เจจ 8 เจตเจฐเจšเฉเจ…เจฒ เจฎเจธเจผเฉ€เจจ 'เจคเฉ‡ เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจธเฉฐเจฐเจšเจจเจพ, เจธเจŸเฉˆเจ‚เจกเจฐเจก เจนเฉˆเจ‚เจก เจฎเฉ‚เจตเจฎเฉˆเจ‚เจŸ เจตเจฟเฉฑเจš เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเฉ‹:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install usbip

เจตเจธเจพเจ‡เจ†เฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‡เฉฐเจŸเจฐเจจเฉˆเจŸ เจธเฉเจเจพเจ… เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฏเฉ‚เจเจธเจฌเฉ€เจ†เจˆเจชเฉ€ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€, เจชเจฐ - เจนเฉˆเจฒเฉ‹, เจชเจนเจฟเจฒเจพ เจฐเฉˆเจ•เฅค เจ…เจœเจฟเจนเจพ เจ•เฉ‹เจˆ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจ…เจคเฉ‡ เจ‡เจน เจธเจญ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจจเฉˆเฉฑเจŸเจตเจฐเจ• 'เจคเฉ‡ เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจฎเฉˆเจจเฉ‚เจ…เจฒ เจชเฉเจฐเจพเจฃเฉ€ เจธเจผเจพเจ–เจพ 0.1.x เจฆเจพ เจนเจตเจพเจฒเจพ เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจ, เจ…เจคเฉ‡ เจจเจตเฉ€เจจเจคเจฎ 0.2.0 เจตเจฟเฉฑเจš usbip เจฎเฉ‹เจกเฉ€เจŠเจฒ เจฆเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจจเจพเจฎ เจนเจจเฅค

เจ‡เจธ เจฒเจˆ:

sudo modprobe usbip-core
sudo modprobe usbip-host
sudo lsmod | grep usbip

เจ–เฉˆเจฐ, เจ†เจ‰ เจธเจฟเจธเจŸเจฎ เจธเจŸเจพเจฐเจŸเจ…เฉฑเจช เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจฒเฉ‹เจก เจ•เจฐเจจ เจฒเจˆ /etc/modules เจตเจฟเฉฑเจš เจนเฉ‡เจ  เจฒเจฟเจ–เฉ€เจ†เจ‚ เจฒเจพเจˆเจจเจพเจ‚ เจœเฉ‹เฉœเฉ€เจ:

usbip-core
usbip-host
vhci-hcd

เจšเจฒเฉ‹ usbip เจธเจฐเจตเจฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ€เจ:

sudo usbipd -D

เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจฏเฉ‚เจจเฉ€เจตเจฐเจธเจฒ เจฎเจจ เจธเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจฆเจพ เจนเฉˆ เจ•เจฟ usbip เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ†เจ‰เจ‚เจฆเจพ เจนเฉˆ เจœเฉ‹ เจธเจพเจจเฉ‚เฉฐ เจธเจฐเจตเจฐ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ - เจฆเจฟเจ–เจพเจ“ เจ•เจฟ เจ‡เจน เจจเฉˆเฉฑเจŸเจตเจฐเจ• 'เจคเฉ‡ เจ•เจฟเจนเฉœเฉ€ เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เจฐเฉ‡เจ—เจพ, เจธเจฅเจฟเจคเฉ€ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เฉ‹, เจ†เจฆเจฟเฅค เจ‡เฉฑเจฅเฉ‡ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจ—เจพเจฐเจกเจจ เจŸเฉ‚เจฒ เจธเจพเจกเฉ€ เจ‰เจกเฉ€เจ• เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆ - 0.2.x เจฌเฉเจฐเจพเจ‚เจš เจตเจฟเฉฑเจš เจ‡เจนเจจเจพเจ‚ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจจเจพเจฎ เจฆเจฟเฉฑเจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค เจจเจพเจฒ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹

sudo usbip

เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจฆเฉ‡ เจตเจฐเจฃเจจ เจจเฉ‚เฉฐ เจชเฉœเฉเจนเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‡เจน เจธเจชเฉฑเจธเจผเจŸ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ‡ USB เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เจฐเจจ เจฒเจˆ, usbip เจ†เจชเจฃเฉ€ เจฌเฉฑเจธ ID เจœเจพเจฃเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจชเจฟเจ†เจฐเฉ‡ เจฆเจฐเจธเจผเจ•, เจฐเฉ‡เจ• เจจเฉฐเจฌเจฐ เจคเจฟเฉฐเจจ เจ…เจ–เจพเฉœเฉ‡ เจตเจฟเฉฑเจš เจนเฉˆ: เจฌเฉฑเจธ เจ†เจˆเจกเฉ€ เจœเฉ‹ เจธเจพเจจเฉ‚เฉฐ เจฆเฉ‡เจตเฉ‡เจ—เฉ€ lsusb (เจ‡เจน เจธเจญ เจคเฉ‹เจ‚ เจธเจชเฉฑเจธเจผเจŸ เจคเจฐเฉ€เจ•เจพ เจœเจพเจชเจฆเจพ เจนเฉˆ) - เจ‡เจน เจ‰เจธเจฆเฉ‡ เจ…เจจเฉเจ•เฉ‚เจฒ เจจเจนเฉ€เจ‚ เจนเฉˆ! เจคเฉฑเจฅ เจ‡เจน เจนเฉˆ เจ•เจฟ usbip USB เจนเฉฑเจฌ เจตเจฐเจ—เฉ‡ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ เจจเฉ‚เฉฐ เจ…เจฃเจกเจฟเฉฑเจ  เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจฌเจฟเจฒเจŸ-เจ‡เจจ เจ•เจฎเจพเจ‚เจก เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡:

user@usb-server:~$ sudo usbip list -l
 - busid 1-1 (064f:0bd7)
   WIBU-Systems AG : BOX/U (064f:0bd7)

เจจเฉ‹เจŸ: เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจธเฉ‚เจšเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจฎเฉˆเจ‚ เจ†เจชเจฃเฉ€ เจ–เจพเจธ USB เจ•เฉเฉฐเจœเฉ€ เจฆเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจนเจฐ เจšเฉ€เจœเจผ เจฆเจพ เจตเจฐเจฃเจจ เจ•เจฐเจพเจ‚เจ—เจพเฅค เจคเฉเจนเจพเจกเจพ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ เจจเจพเจฎ เจ…เจคเฉ‡ VID:PID เจœเฉ‹เฉœเจพ เจตเฉฑเจ–เจฐเจพ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจ–เจพเจจ เจจเฉ‚เฉฐ Wibu-Systems AG เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ: BOX/U, VID 064F, PID 0BD7เฅค

เจนเฉเจฃ เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ€ เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚:

user@usb-server:~$ sudo usbip bind --busid=1-1
usbip: info: bind device on busid 1-1: complete

เจนเฉเจฐเจพ, เจธเจพเจฅเฉ€เจ“!

user@usb-server:~$ sudo usbip list -r localhost
Exportable USB devices
======================
 - localhost
        1-1: WIBU-Systems AG : BOX/U (064f:0bd7)
           : /sys/devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb1/1-1
           : Vendor Specific Class / unknown subclass / unknown protocol (ff/00/ff)

เจคเจฟเฉฐเจจ เจšเฉ€เจ…เจฐเจœเจผ, เจ•เจพเจฎเจฐเฉ‡เจก! เจธเจฐเจตเจฐ เจจเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‰เฉฑเจคเฉ‡ เจฒเฉ‹เจนเฉ‡ เจฆเฉ‡ เจŸเฉเจ•เฉœเฉ‡ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เฉ€เจคเจพ, เจ…เจคเฉ‡ เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚! เจ‡เจน เจธเจฟเจฐเจซเจผ usbip เจกเฉˆเจฎเจจ เจฆเฉ‡ เจ†เจŸเฉ‹เจธเจŸเจพเจฐเจŸ เจจเฉ‚เฉฐ /etc/rc.local เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจจ เจฒเจˆ เจฐเจนเจฟเฉฐเจฆเจพ เจนเฉˆ

usbipd -D

เจญเจพเจ— เจคเจฟเฉฐเจจ, เจ•เจฒเจพเจ‡เฉฐเจŸ-เจธเจพเจˆเจก เจ…เจคเฉ‡ เจ‰เจฒเจเจฃ เจตเจพเจฒเจพ

เจฎเฉˆเจ‚ เจ‰เจธเฉ‡ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚ เจ‡เฉฑเจ• เจกเฉ‡เจฌเฉ€เจ…เจจ เจฎเจธเจผเฉ€เจจ เจจเจพเจฒ เจจเฉˆเจŸเจตเจฐเจ• เจ‰เฉฑเจคเฉ‡ เจธเจผเฉ‡เจ…เจฐเจก เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เฉ€เจคเฉ€, เจ…เจคเฉ‡ เจธเจญ เจ•เฉเจ เจ เฉ€เจ• เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ:

sudo usbip attach --remote=localhost --busid=1-1

เจšเจฒเฉ‹ เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจ‰เฉฑเจคเฉ‡ เจšเฉฑเจฒเฉ€เจเฅค เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เจน เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจธเจฐเจตเจฐ 2008R2 เจธเจŸเฉˆเจ‚เจกเจฐเจก เจเจกเฉ€เจธเจผเจจ เจธเฉ€เฅค เจ…เจงเจฟเจ•เจพเจฐเจค เจ—เจพเจˆเจก เจคเฉเจนเจพเจจเฉ‚เฉฐ เจชเจนเจฟเจฒเจพเจ‚ เจกเจฐเจพเจˆเจตเจฐ เจธเจฅเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจ•เจนเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเจพเจฒ เจœเฉเฉœเฉ‡ เจฐเฉ€เจกเจฎเฉ€ เจตเจฟเฉฑเจš เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉฑเจธเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจ…เจธเฉ€เจ‚ เจธเจญ เจ•เฉเจ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ‡เจน เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจธเจญ เจ•เฉเจ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจเจ•เจธเจชเฉ€ 'เจคเฉ‡ เจ‡เจน เจฌเจฟเจจเจพเจ‚ เจ•เจฟเจธเฉ‡ เจธเจฎเฉฑเจธเจฟเจ† เจฆเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‚เฉฐ เจ…เจจเจชเฉˆเจ• เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ€ เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚:

C:Program FilesUSB-IP>usbip -a %server-ip% 1-1
usbip err: usbip_network.c: 121 (usbip_recv_op_common) recv op_common, -1
usbip err: usbip_windows.c: 756 (query_interface0) recv op_common
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

เจ“เจน เจ“. เจ•เฉเจ เจ—เจฒเจค เจนเฉ‹ เจ—เจฟเจ†. เจ…เจธเฉ€เจ‚ เจ—เฉ‚เจ—เจฒ เจฆเฉ‡ เจนเฉเจจเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค เจ‡เฉฑเจฅเฉ‡ เจ–เฉฐเจกเจฟเจค เจœเจผเจฟเจ•เจฐ เจนเจจ เจ•เจฟ เจธเจฅเจฟเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉเจ เจ—เจฒเจค เจนเฉˆ; เจธเจฐเจตเจฐ เจนเจฟเฉฑเจธเฉ‡ เจตเจฟเฉฑเจš, เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจจเฉ‡ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจธเฉฐเจธเจ•เจฐเจฃ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฟเจ† เจœเจฆเฉ‹เจ‚ เจธเฉฐเจธเจ•เจฐเจฃ 0.2.0 เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ† เจ—เจฟเจ†, เจชเจฐ เจ‰เจน เจตเจฟเจจ เจ•เจฒเจพเจ‡เฉฐเจŸ เจตเจฟเฉฑเจš เจ…เจœเจฟเจนเจพ เจ•เจฐเจจเจพ เจญเฉเฉฑเจฒ เจ—เจเฅค เจชเฉเจฐเจธเจคเจพเจตเจฟเจค เจนเฉฑเจฒ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจตเจฟเฉฑเจš เจธเจฅเจฟเจฐ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฃเจพ เจ…เจคเฉ‡ เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจฌเจฃเจพเจ‰เจฃเจพ เจนเฉˆเฅค

เจชเจฐ เจฎเฉˆเจ‚ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจ‡เจธ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเฉ€ เจ–เจผเจพเจคเจฐ เจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจจเฉ‚เฉฐ เจกเจพเจ‰เจจเจฒเฉ‹เจก เจจเจนเฉ€เจ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ. เจชเจฐ เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‹เจฒ เจ‡เฉฑเจ• เจšเฉฐเจ—เจพ เจชเฉเจฐเจพเจฃเจพ Hiew เจนเฉˆเฅค เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจตเจฟเฉฑเจš, เจธเจฅเจฟเจฐ เจจเฉ‚เฉฐ เจฆเฉ‹เจนเจฐเฉ‡ เจธเจผเจฌเจฆ เจตเจœเฉ‹เจ‚ เจ˜เฉ‹เจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ†เจ‰ 0x00000106 เจฒเจˆ เจซเจพเจˆเจฒ เจตเจฟเฉฑเจš เจตเฉ‡เจ–เฉ€เจ, เจ‡เจธเจจเฉ‚เฉฐ 0x00000111 เจจเจพเจฒ เจฌเจฆเจฒเฉ€เจเฅค เจฏเจพเจฆ เจฐเฉฑเจ–เฉ‹, เจฌเจพเจˆเจŸ เจ†เจฐเจกเจฐ เจ‰เจฒเจŸ เจนเฉˆเฅค เจจเจคเฉ€เจœเจพ เจฆเฉ‹ เจฎเฉˆเจš เจนเฉˆ, เจชเฉˆเจš:

[usbip.exe]
00000CBC: 06 11
00000E0A: 06 11

Eeeee... เจนเจพเจ‚!

C:Program FilesUSB-IP>usbip -a %server-ip% 1-1
new usb device attached to usbvbus port 1

เจ‡เจธ เจจเจพเจฒ เจชเฉ‡เจธเจผเจ•เจพเจฐเฉ€ เจ–เจคเจฎ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจธเฉ€, เจชเจฐ เจธเฉฐเจ—เฉ€เจค เจœเจผเจฟเจ†เจฆเจพ เจฆเฉ‡เจฐ เจคเฉฑเจ• เจจเจนเฉ€เจ‚ เจšเฉฑเจฒเจฟเจ†เฅค เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ เจฐเฉ€เจฌเฉ‚เจŸ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจฎเฉˆเจ‚ เจชเจพเจ‡เจ† เจ•เจฟ เจ•เจฒเจพเจ‡เฉฐเจŸ 'เจคเฉ‡ เจกเจฟเจตเจพเจˆเจธ เจฎเจพเจŠเจ‚เจŸ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ!

C:Program FilesUSB-IP>usbip -a %server-ip% 1-1
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

เจ…เจคเฉ‡ เจ‡เจน เจนเฉˆเฅค เจ‡เฉฑเจฅเฉ‹เจ‚ เจคเฉฑเจ• เจ•เจฟ เจธเจญ เจœเจพเจฃเจจ เจตเจพเจฒเจพ เจ—เฉ‚เจ—เจฒ เจฎเฉ‡เจฐเฉ‡ เจฒเจˆ เจ‡เจธเจฆเจพ เจœเจตเจพเจฌ เจจเจนเฉ€เจ‚ เจฆเฉ‡ เจธเจ•เจฟเจ†. เจ…เจคเฉ‡ เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ‰เจชเจฒเจฌเจง เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจ•เจฎเจพเจ‚เจก เจฌเจฟเจฒเจ•เฉเจฒ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆ - เจ‡เจน เจ‡เฉฑเจฅเฉ‡ เจนเฉˆ, เจ•เฉเฉฐเจœเฉ€, เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจฎเจพเจŠเจ‚เจŸ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹. เจฎเฉˆเจ‚ เจฒเฉ€เจจเจ•เจธ เจฆเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจคเฉ‹เจ‚ เจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚ - เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ! เจ…เจคเฉ‡ เจœเฉ‡เจ•เจฐ เจนเฉเจฃ เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจฆเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจคเฉ‹เจ‚ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเฉ‹? Oh shit - เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ!

เจ†เจ–เจฐเฉ€ เจฐเฉ‡เจ•: เจธเจฐเจตเจฐ เจ•เฉ‹เจก เจตเจฟเฉฑเจš เจ•เฉเจ เจธเจผเจพเจฎเจฒ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค เจ•เจฟเจธเฉ‡ เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจ‡เจน เจ‡เจธ เจคเฉ‹เจ‚ USB เจกเจฟเจธเจ•เฉเจฐเจฟเจชเจŸเจฐเจพเจ‚ เจฆเฉ€ เจธเฉฐเจ–เจฟเจ† เจจเฉ‚เฉฐ เจจเจนเฉ€เจ‚ เจชเฉœเฉเจนเจฆเจพ เจนเฉˆเฅค เจ…เจคเฉ‡ เจœเจฆเฉ‹เจ‚ เจกเจฟเจตเจพเจˆเจธ เจจเฉ‚เฉฐ เจฒเฉ€เจจเจ•เจธ เจฆเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจ‡เจน เจ–เฉ‡เจคเจฐ เจญเจฐ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจฌเจฆเจ•เจฟเจธเจฎเจคเฉ€ เจจเจพเจฒ, เจฎเฉˆเจ‚ "make && make install" เจชเฉฑเจงเจฐ 'เจคเฉ‡ Linux เจฆเฉ‡ เจ…เจงเฉ€เจจ เจตเจฟเจ•เจพเจธ เจคเฉ‹เจ‚ เจœเจพเจฃเฉ‚ เจนเจพเจ‚เฅค เจ‡เจธ เจฒเจˆ, เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ—เฉฐเจฆเฉ‡ เจนเฉˆเจ• เจจเจพเจฒ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ - /etc/rc.local เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจจเจพ

usbip attach --remote=localhost --busid=1-1
usbip port
usbip detach --port=00

เจญเจพเจ— เจซเจพเจˆเจจเจฒ

เจ•เฉเจ เจซเจฟเฉฑเจ•เฉ‡ เจชเฉˆเจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ. เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจจเจคเฉ€เจœเจพ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ, เจนเฉเจฃ เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจชเฉ€เจธเฉ€ (เจ…เจคเฉ‡ เจ…เจจเจฎเจพเจŠเจ‚เจŸ, เจฌเฉ‡เจธเจผเฉฑเจ•, เจตเฉ€) 'เจคเฉ‡ เจฎเจพเจŠเจ‚เจŸ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจชเฉเจฐเจธเจพเจฐเจฃ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจนเจฟเฉฑเจธเฉ‡ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจนเจจเฅค เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจธเจผเฉˆเฉฑเจฒ เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹. เจ•เฉ€ เจตเจงเฉ€เจ† เจนเฉˆ - เจ…เจจเฉฐเจฆ เจฌเจฟเจฒเจ•เฉเจฒ เจฎเฉเจซเจค เจนเฉˆ.
เจฎเฉˆเจจเฉ‚เฉฐ เจ‰เจฎเฉ€เจฆ เจนเฉˆ เจ•เจฟ เจฎเฉ‡เจฐเจพ เจคเจœเจฐเจฌเจพ เจฎเฉ‡เจฐเฉ‡ เจฎเฉฑเจฅเฉ‡ 'เจคเฉ‡ เจ›เจพเจชเฉ‡ เจ—เจ เจฐเฉ‡เจ• เจฆเฉ‡ เจ†เจฒเฉ‡-เจฆเฉเจ†เจฒเฉ‡ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจนเฉˆเจฌเจฐเจพเจœเจผเจฟเจŸเจฒเฉ€ เจฆเฉ€ เจฎเจฆเจฆ เจ•เจฐเฉ‡เจ—เจพ. เจคเฉเจนเจพเจกเฉ‡ เจงเจฟเจ†เจจ เจฒเจˆ เจงเฉฐเจจเจตเจพเจฆ!

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹