"piCore" RAM-based Linux สำหรับ Raspberry Pi

piCore คือ TinyCore ที่ปรับปรุงมาให้ใช้งานกับ Raspberry Pi (ในบทความนี้จะใช้ Raspberry Pi 3 Model B) มีข้อเด่นคือ มี response time ที่สูงขึ้นมาก แต่ก็แลกกับข้อด้อยคือเนื้อที่จัดเก็บจำกัด ดังนั้น piCore ก็น่าจะเหมาะกับงานที่มีความจำเพาะ มีการจัดเก็บข้อมูลบ้างพอให้ทำงานได้

การติดตั้ง 

สร้าง Image Disk

1.  Download  image file จาก  http://tinycorelinux.net/ports.html



2. เขียน image file ลง SD Card ด้วยวิธีที่ถนัดของท่าน ผมเลือกใช้ Etcher


3. Resize partition



ตามภาพจะเห็นว่า piCore มีสอง partition  ส่วนที่เป็น fat32 จะเป็นส่วนจัดเก็บ boot loader, system support files ต่าง ๆ เราไม่ต้องไปแตะต้อง ส่วนที่เป็น ext 4 ซึ่งจะเป็นส่วนของ data file เป็นที่อยู่ของ home directory ตรงนี้เขาให้มา 11 MB ใช้ไปเกือบหมด ดังนั้นเราต้องขยายขนาดออกมา เพื่อเอาไว้ติดตั้งอะไรของเราลงไปได้ เนื้อที่ขยายเพิ่มนี้ต้องคำนึงถึงว่า  piCore จะใช้เนื้อที่ประมาณ 25 % ของ RAM ทั้งหมดเพื่อไปทำ swap file ดังนั้นหากเราใช้งานบน Raspberry Pi ที่มี RAM 1 GB แล้วจะเหลือพื้นที่จริงไม่ถึง 750 MB (นอกจากเราจะไม่ทำ swap file) ผมเลือกที่จะขยายไปที่ 500 MB ก็พอสำหรับผมแล้ว (ขั้นตอนการขยายเนื้อที่ด้วย command line สามารถอ่านได้ที่ http://tinycorelinux.net/9.x/armv6/releases/RPi/README)




4. จากนี้เราก็สามารถนำเอา SD Card ไปเสียบเข้ากับ Raspberry Pi แล้ว boot เช่นเดียวกับ Raspbain  ครับ

โปรดทราบว่า ในการใช้งานครั้งแรก จะยังไม่สามารถใช้ WiFi ได้เราต้องเชื่อม Raspberry Pi เข้ากับ Network ผ่าน Ethernet Port เท่านั้น


ติดตั้ง WiFi

1. ในครั้งแรกต้องเชื่อมต่อกับ Internet ผ่าน Ethernet port  ให้ได้ก่อน
2. ติดตั้ง firmware

$ tce-load -wi firmware-rpi3-wireless.tcz

3. Install wifi module

$ tce-load -wi wifi.tcz

รอจนเสร็จการติดตั้ง ควรจะเห็นข้อความ wifi.txz: OK

4. reboot (sudo reboot)

5. ใช้คำสั่ง

$ sudo wifi.sh

จะพบว่ามีการแสดงรายการ WiFi Station ขึ้นมาบนหน้าจอ พิมพ์หมายเลขลำดับที่ ESSID ที่ต้องการ แล้วตอบคำถามตามที่ระบบสอบถาม  ทดสอบด้วยคำสั่ง ifconfig wlan0 ท่านควรจะเห็นข้อมูลการเชื่อมต่อกับ WiFi Station ที่ท่านเลือกไว้ และจะเห็นว่ามีไฟล์ชื่อ wifi.db  ใน home directory ด้วย (/home/tc) ซึ่งบันทึกข้อมูลการเข้าถึง Wifi Station ไว้ข้างใน

6. Auto connect  หากท่านทำการ reboot ทันทีหลังจากจบในข้อ 5 แล้ว ข้อมูลการต่อกับ WiFi จะหายไปสิ้น (เพราะเขาทำงานบน RAM) เราต้องการทำการบันทึกข้อมูลนี้ลงบน SD-Card ก่อนเพื่อให้ระบบได้ใช้งานในครั้งต่อไปด้วย
       6.1 สร้างไฟล์ wifi.db ไว้ใน home directory (หากมีอยู่แล้ว ก็ทำการ แก้ไขให้เหมาะสม)

$ vi /home/tc/wifi.sh

โดยบันทึกข้อมูล [essid] [password] [type] เช่น ILOVEU 1234567 WPA แล้วบันทึก

       6.2  แก้ไข /opt/bootlocal.sh โดยเติมข้อความข้างล่างนี้ในท้ายไฟล์

wifi.sh -a -w 2>&1 > /tmp/wifi.log

       6.3 บันทึกการเปลี่ยนแปลงด้วยคำสั่ง

$ filetool.sh -b

        6.4  reboot ด้วยคำสั่ง sudo reboot ลองทดสอบด้วยคำสั่ง ifconfig


 ส่งท้ายด้วยการติดตั้ง Application กัน ใน TinyCore หรือ piCore จะใช้ คำสั่ง tce ในการติดตั้งซอฟต์แวร์ครับ (เหมือนกับ apt-get install บน Raspbian) ในการค้นหาว่า มี Software อะไรบ้างจะใช้คำสั่ง "tce" แล้วบนหน้าจอจะขึ้นเมนูขึ้นมา พิมพ์ S (ตัวพิมพ์ใหญ่) แล้วพิมพ์อักษรบางตัวที่เป็นชื่อของ software ที่ต้องการ เช่น ผมพิมพ์ nano เข้าไป ก็จะพบรายการ 3 รายการแสดงออกมาคือ
1.  nano-doc.tcz
2.  nano-locale.tcz
3.  nano.tcz

เลือก 3 เพราะผมต้องการ nano text editor ระบบจะแสดงข้อมูล overview บนหน้าจอ พิมพ์ q  ก็จะเห็นเมนู คำสั่งแสดงด้านล่างของจอ พิมพ์ I (ตัวพิมพ์ใหญ่) เพื่อติดตั้ง รอจนติดตั้งเสร็จ พิมพ์ q เพื่อออกจากระบบ ทดสอบด้วยคำสั่ง nano ก็เป็นเสร็จพิธี

มาถึงตรงนี้เราก็มี piCore ที่เป็น RAM-based Linux ทำงานบน Raspberry Pi พร้อมด้วยการติดต่อ Network ผ่าน WiFi และการติดตั้ง application แล้วนะครับ

ปล. piCore รุ่นล่าสุด (9.03) จะ enable ssh มาแล้ว เราสามารถเชื่อมต่อแบบ headless เข้าไปได้ด้วย
username : tc และ password : piCore
Previous
Next Post »