Raspberry Pi 3 — Day 1 — Setup Pi

Pattapong J.
NoteWise
Published in
3 min readDec 23, 2016

ทำอะไรบ้าง

  • ติดตั้ง Rasbian ให้พร้อมใช้งาน
  • Set Wifi
  • Set ssh server

สิ่งที่ต้องเตรียม

  • Raspberry Pi 3
  • USB Mouse + Keyboard
  • Monitor with HDMI connection
  • Power Supply for mini usb
  • Micro SD Card
ภาพจาก https://www.raspberrypi.org/learning/quick-start-guide/quickstart/

Setup Raspbian

Download OS file

Download image เพื่อติดตั้ง os ใน rpi
https://www.raspberrypi.org/downloads/

Format Image to SD

วิธีการจะต่างกันไปแต่ละ OS ดูได้จาก https://www.raspberrypi.org/documentation/installation/installing-images/README.md

ยกตัวอย่างสำหรับ Mac เริ่มต้นด้วยการ unmount SD card ก่อนจากนั้นรันคำสั่ง

$ sudo dd bs=1m if=path_of_your_image.img of=/dev/rdiskn

Run Raspbian

หลังจากได้ติดตั้ง raspbian ลงบน sd card เสร็จแล้วจากนั้นทำการใส่ sd card และเสียบสายต่างๆให้เรียบร้อย

ภาพจาก https://www.raspberrypi.org/learning/quick-start-guide/images/plug-in.gif

เสียบสาย power เป็นสายสุดท้ายนะครับ เพราะว่าพอเสียบแล้วมันจะทำการเปิดตัวเองทันทีเลย พอเสียบสาย power เสร็จ ระบบก็จะเริ่ม boot ขึ้นมา ก็รอจนกระทั่งถึงหน้าให้ login

Login and change password

การ login ครั้งแรก จะใช้ user [pi] password [raspberry]
รายละเอียดเพิ่มเติมดูตามนี้นะครับ https://www.raspberrypi.org/documentation/linux/usage/users.md

ตั้งค่า keyboard

ตรงนี้แอบเพิ่มนิดหนึ่งครับ บาง keyboard จะไม่สามารถพิมพ์ “|” ได้ ต้อง set keyboard ใหม่ก่อน เพราะว่า default ของ Raspbian มันจะเป็น keyboard en_GB ทำให้ key อาจจะไม่ตรงกับที่เราใช้ เลยต้องแก้ก่อนโดยใช้คำสั่ง

$ sudo raspi-config

เพื่อทำการตั้งค่า locale ก่อน โดยเลือกที่ข้อ 4. Internationalization Options
จากนั้นเลือก I1 Change Locale ซึ่งโดย Default น่าจะเลือกเป็น en_GB อยู่ ทำให้ keyboard เราพิมพ์ “|” ไม่ได้ ให้กด space bar เพื่อเอา “*” ที่เลือกหัวข้อนี้อยู่ออก ไปเลือก en_US.UTF-8 แทน และเปลี่ยน environment เป็น en_US.UTF-8 เช่นกัน

$ sudo dpkg-reconfigure keyboard-configuration

แล้วเลือก Keyboard รุ่นที่ใช้ อย่างของผมใช้ Generic 105–Key (Intl) PC จากนั้นเลือก layout เป็น thai

เสร็จแล้วลอง reboot ดู

$ sudo reboot

แล้วรันคำสั่งดูว่า locale เป็น en_US.UTF-8 หรือยัง

$ sudo locale

และลองพิม | หรือ # ดูว่าพิมได้หรือยัง

เปลี่ยน password ของ user

เมื่อทำการเปลียน keyboard แล้วค่อยทำการเปลี่ยน password เพื่อความปลอดภัย (ถ้าเปลี่ยน password ก่อน เปลี่ยน keyboard อาจจะมีบางตัวที่เราพิมพ์ไม่ได้ขึ้นมาใน password เช่น € จะอยู่แทน # ถ้ามีการใช้ปุ่มนี้ใน password ก็จะ login ไม่ได้นะ) ด้วยคำสั่ง

$ sudo passwd

และเปลี่ยน password ของ root

$ sudo passwd root

Setup network connection

ถ้าหากใช้สายแลนต่อแบบ DHCP สามารถเช็คดูว่าได้ IP หรือยังด้วยคำสั่ง

$ ifconfig

แต่ว่าถ้าหากต้องการเซ็ตให้เชื่อมต่อกับ wifi สามารถทำได้โดย ทำการ scan ดูว่าตอนนี้มี AP ชื่ออะไรบ้าง ด้วยคำสั่ง

$ sudo iwlist wlan0 scan

แต่ถ้าผลลัพธ์แสดงผลออกมาจำนวนมากเกินไป ทำการแสดงเฉพาะชื่อ AP ด้วยคำสั่ง

$ sudo iwlist wlan0 scan | grep ESSID

พอเจอ ESSID ที่เราต้องการเชื่อมต่อแล้ว ต่อไปจะทำการตั้งค่า config file สำหรับ network ลองเช็คดูไฟล์ interfaces ก่อน

$ cat /etc/network/interfaces
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
iface eth0 inet manualallow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

จะเห็นว่าในส่วนของ wifi (wlan0) ส่วนของ wpa-conf จะมี config อยู่ในไฟล์ /etc/wpa_supplicant/wpa_supplicant.conf เราก็ตามไปแก้ไขไฟล์นั้นเพื่อทำการตั้งค่า ESSID ที่เราจะเชื่อมต่อ ตัวอย่างผมจะเชื่อมต่อ AP ชื่อ PJAP

$ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf
country=TH
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="PJAP"
psk="muRFADsndsecihhSertgK9IaNq3UWznpxaBH8B9ixk"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
auth_alg=OPEN
}

ssid : คือชื่อ AP name
psk : คือ password
proto : RSN (WPA2) หรือ WPA (WPA1).
key_mgmt : WPA-PSK (ในกรณีส่วนมาก)
pairwise : CCMP (WPA2) หรือ TKIP (WPA1)
auth_alg : ทั่วไปตั้ง OPEN น่าจะใช้ได้
รายละเอียดเพิ่มเติมว่าตั้งค่าอะไรได้บ้าง หรือแต่ละค่าที่ตั้งคืออะไร ดูเพิ่มเติมใน https://www.freebsd.org/cgi/man.cgi?query=wpa_supplicant.conf&sektion=5&apropos=0&manpath=NetBSD+6.1.5

หรือถ้าปกติเราไม่ได้ตั้ง AP ท่ายากไว้ ใส่แค่แบบสั้นก็พอ คือใส่แค่ ssid กับ password

$ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf  
country=TH
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="PJAP"
psk="muRFADsndsecihhSertgK9IaNq3UWznpxaBH8B9ixk"
}

ส่วน config นี้ต้องระวังด้วยนะ ตอนหาข้อมูลเจอคนถามเยอะว่าทำอะไรไม่ได้ ส่วนมากปัญหาที่เจอคือ ชอบใส่เป็น network = {..} มีช่องว่างระหว่างเครื่องหมาย = แบบนี้ไม่ได้นะครับ ไม่ต้องสนใจเรื่องความสวยงาม ต้องพิมพ์ติดกันเท่านั้นนะ

ถ้าเราต้องการ IP แบบ DHCP ถึงส่วนนี้สั่ง reboot pi ก็จะได้ IP มาพร้อมใช้งานแล้ว

ตั้งค่า Static IP

หรือในกรณีนี้ผมต้องการตั้งค่า ip เอง การตั้งค่า IP จะทำที่ไฟล์ /etc/dhcpcd.conf

$ sudo nano /etc/dhcpcd.conf

จากนั้น เติมการ config เรื่อง ip ลงไปที่ด้านล่างสุดของไฟล์ (ต่อท้ายบรรทัด nohook lookup-hostname) เช่นจะตั้ง IP เป็น 192.168.1.2

interface wlan0
static ip_address=192.168.1.2/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8 8.8.4.4

เสร็จแล้วลอง reboot ดู

$ sudo reboot

เช็คว่าได้ ip ถูกต้องด้วย

$ ifconfig
$ ping www.google.com

Update raspbian

เมื่อต่อเน็ตได้แล้วทำการอัพเดทระบบด้วยคำสั่ง

$ sudo apt-get update
$ sudo apt-get upgrade

Enable SSH

ตั้งแต่ พฤศจิกายน 2016 เป็นต้นมา Raspbian ตั้งค่า SSH server เป็น disabled มาโดย default เพราะงั้นต้องทำการเปิดก่อนถึงจะสามารถเชื่อมต่อผ่าน ssh ได้

$ sudo raspi-config

เลือก 5. interfacing options แล้วเลือก ssh กด Enter แล้วเลือก Yes เพื่อ Enable ssh server.

ถึงตรงนี้ เราก็จะสามารถใช้งาน และ remote เข้าไปที่เครื่อง Raspberry Pi ของเราได้แล้ว

--

--