วันอาทิตย์ที่ 5 มกราคม พ.ศ. 2557

ติดต่อกับ RPi ผ่านทาง SSH โดยเครื่อง PC Linux

    หลังจากที่เราได้ติดตั้ง Raspbian ลงใน RPi เรียบร้อยแล้ว สิ่งที่ต้องทำต่อไปคือการติดต่อ RPi ผ่าน LAN
    เพราะว่าในการเขียนโปรแกรมขึ้นมาใหม่ ถ้าเป็นโปรแกรมเล็กๆ เราสามารถเขียนโปรแกรมบนตัว RPi แล้ว compile ได้เลย แต่ถ้าเป็นโปรแกรมขนาดใหญ่ขึ้นมาหน่อย การเขียนโปรแกรมบน RPi ก็ทำได้ แต่ว่าเวลา compile ค่อนข้างเสียเวลานาน เนื่องจากความเร็วของ CPU เร็วไม่เท่าเครื่องคอมฯทั่วไป

    ดังนั้นเวลาที่เราเขียนโปรแกรมขนาดใหญ่ เพื่อเป็นการประหยัดเวลา ต้องเขียนบนเครื่อง PC ก่อน แล้ว compile เมื่อได้โปรแกรมออกมาแล้ว จึงติดต่อกับบอร์ด Rpi ผ่าน LAN เพื่อที่จะวาง file ที่เรา compile เสร็จแล้ว ลงไปที่บอร์ด RPi อีกทีหนึ่ง

    เราเรียกวิธีที่ compile บนเครื่อง PC ไม่ว่าจะเป็น windows หรือ Linux แล้วให้โปรแกรมสามารถ run บน Rpi ได้ ว่า "cross compile"

    ส่วนวิธีที่เราติดต่อกับบอร์ด Rpi ผ่าน LAN เรียกว่า "Remote"
    วิธีการ Remote มีหลายวิธี เช่น telnet, secure shell(ssh), vsftpd, remote desktop เป็นต้น แต่วิธีที่เราจะใช้เป็นประจำก็คือ ssh และ vsftpd

    สิ่งที่เราต้องเตรียม มีดังต่อไปนี้
1. Router ที่ติดต่อโลกภายนอกได้(Internet) และมี port สำหรับเสียบสาย LAN
2. บอร์ด RPi เสียบสาย power, สาย LAN ที่มาจาก Router
3. เครื่อง PC พร้อมเสียบสาย LAN เรียบร้อย ในที่นี้ผมใช้ Linux Ubuntu

    เมื่อเราเตรียมอุปกรณ์ตามที่กล่าวแล้ว ทีนี้เราก็เริ่มติดต่อกับ RPi ได้เลย เริ่มจาก
- เราต้องทราบ IP Address ของบอร์ด RPi ก่อน ทำได้ 2 วิธี
  วิธีที่ 1. ที่บอร์ด RPi ต่อจอ TV , keyboard, mouse แล้วเปิด Terminal ขึ้นมา (หน้าต่างดำๆ) พิมพ์คำว่า "ip addr" ในหน้าต่าง Terminal จะแสดงหมายเลย ip address ออกมา

  วิธีที่ 2. หา IP address ของ RPi โดยใช้โปรแกรม nmap
  - ที่เครื่อง PC Linux ของเรา สามารถหา ip address ของเจ้าบอร์ด RPi ได้โดยการใช้โปรแกรม scan port เพื่อหาเครื่องที่เปิด port 22 ไว้ ซึ่งเป็น port ที่เปิดไว้สำหรับการ Remote SSH
  - วิธีติดตั้งโปรแกรม nmap ให้พิมพ์ "apt-get install nmap"
  - เมื่อติดตั้งเสร็จแล้ว เริ่มทำการ scan ด้วยคำสั่ง "nmap -sV -p 22 192.168.0.2-50" เป็นการ scan port 22 โดยเริ่มจาก IP 192.168.0.2 ไปจนถึง 192.168.0.50

    เมื่อเรารู้ IP address ของ RPi แล้ว ก็เริ่มติดต่อกับบอร์ดนี้ได้
    ที่เครื่อง Linux PC ให้เราเปิด Terminal แล้วพิมพ์ "ssh user@ip-addr" ซึ่งในที่นี้จะได้ว่า"ssh pi@192.168.0.5" เมื่อกด Enter แล้ว จะเห็นคำถามให้ใส่ password เราก็ใส่ "raspberry" ไป หรือว่าหากเพื่อนๆแก้ password เป็นอย่างอื่นไปแล้ว ก็ให้ใส่ตามที่ได้แก้ไป

    ทีนี้เราก็เหมือนกับนั่งอยู่ที่หน้าจอของเจ้าบอร์ด RPi นี้แล้ว
    ตอนต่อไปจะกล่าวถึงเรื่อง การ transfer file ไปวางที่บอร์ด RPi กัน

    ที่มา
http://raspberry-pi-th.blogspot.com/2012/09/raspberry-pi-ssh-setup-ssh-and.html
แสดงความคิดเห็น