วิธีปรับแต่ง Lubuntu เพื่อทำเป็น Kiosk PC สำหรับ Presentation

จาก Wiki Opensource

วิธีปรับแต่ง Lubuntu เพื่อทำเป็น Kiosk PC สำหรับ Presentation

ปรับปรุงล่าสุดเมื่อ 15-12-2558
ปรับปรุงล่าสุดเมื่อ 3-02-2560 เพิ่ม Note วิธีทำ autostart ใน linux mint 18.1 MATE เนื่องจากวิธีเดิมใช้ไม่ได้

ดูแลโดย WIBOON

ทดสอบกับ lubuntu-14.04.3-desktop-i386.iso (URL https://licensing.psu.ac.th/dl/990)
ติดตั้ง Lubuntu ลงใน VM ของ Oracle VM VirtualBox จะสะดวกในการเตรียม
ตัวอย่างนี้ใช้ LibreOffice Impress สร้างไฟล์ Presentation


ขั้นตอน
1. ติดตั้ง Lubuntu
ตั้ง user ชื่อ lubuntu รหัสผ่าน lubuntu ให้ autologin
(จะตั้งชื่อ user เป็นอย่างอื่นก็ได้)

2. ติดตั้งเสร็จแล้ว ให้ login เข้าใช้งาน แล้วอัปเดต ดังนี้
ไปที่ Menu > Accessories > LXTerminal
คำสั่ง
sudo apt-get update และ sudo apt-get dist-upgrade
แล้วให้รีบูตเครื่องใหม่

3. จัดการให้ไม่มีการถาม password เมื่อมีการใช้คำสั่ง sudo สำหรับ username ชื่อ lubuntu
ไปที่ Menu > Accessories > LXTerminal
sudo sh -c "echo 'lubuntu ALL=NOPASSWD: ALL' >> /etc/sudoers.d/lubuntu"
sudo chmod 0440 lubuntu

4. ปรับปรุง grub ให้แสดง text ตอนบูท แก้ไขแฟ้ม /etc/default/grub
ไปที่ Menu > Accessories > LXTerminal
sudo nano /etc/default/grub
แก้ไขค่าตัวแปร GRUB_CMDLINE_LINUX_DEFAULT=""
แล้วทำงานต่อด้วยคำสั่ง sudo update-grub

5. ยกเลิกการตรวจสอบและแจ้งเตือน lubuntu update
ไปที่ Menu > Accessories > LXTerminal
sudo apt-get remove update-notifier
sudo apt-get autoremove

6. ถอนบางโปรแกรมที่ไม่จำเป็นออกเพื่อประหยัดเนื้อที่ ดังนี้
ไปที่ Menu > Accessories > LXTerminal
sudo apt-get purge transmission sylpheed pidgin xchat abiword gnumeric osmo
sudo apt-get autoremove

7. ปิด screen saver ของ desktop ไม่ต้องให้ทำงาน
ไปที่ Menu > Preferences > Power Manager
ไม่ check ที่ Monitor power management control

8. แต่งภาพ wallpaper
เช่น ftp ไฟล์ มาไว้ใน /tmp หรือ แก้ไขไฟล์ภาพโดยเลือกเอาจาก /usr/share/lubuntu/wallpapers ตั้งชื่อไฟล์ my-wallpaper.png
จากนั้นคัดลอกไฟล์ใหม่นั้นไปไว้เพื่อเลือกใช้ต่อไป
sudo cp /tmp/my-wallpaper.png /usr/share/lubuntu/wallpapers
คลิกขวาที่ desktop เลือก Desktop Preferences > Apperance > Background > Wallpaper

9. ติดตั้งโปรแกรม LibreOffice Impress
ไปที่ Menu > Accessories > LXTerminal
sudo apt-get update
sudo apt-get install libreoffice-impress

10. เปิดโปรแกรม LibreOffice แล้วปรับแต่งฟอนต์ที่จะใช้
ไปที่เมนู Tools -> Options... -> Language settings -> Languages
Locale setting = Thai, CTL = Thai

11. เพิ่มฟอนต์ภาษาไทยของ sipa ด้วยคำสั่งว่า
sudo wget ftp://ftp.psu.ac.th/pub/thaifonts/sipa-fonts/*ttf -P /usr/share/fonts/truetype/thai

12. สร้างไฟล์พรีเซ็นเตชั่น (prnews.odp) และนำไปไว้ที่ web server
ในตัวอย่างคือ ftp.psu.ac.th ที่ไดเรกทอรี pub/custom

13. ตั้งให้รันทุกครั้งที่เปิดเครื่องเข้าสู่ desktop โดยสร้างไฟล์ myjob.sh และ myjob.desktop ไว้ใน home directory ของ user นั้น เช่น /home/lubuntu ที่ไดเรกทอรี .config/autostart
ไปที่ Menu > Accessories > LXTerminal

เพิ่มไฟล์ myjob.sh ด้วยคำสั่ง
nano .config/autostart/myjob.sh
ตัวอย่าง myjob.sh (ให้ลองทำตามตัวอย่างไปก่อน)

#!/bin/bash
sleep 3
SOURCE_FILE="prstart.sh"
TEMP1="/tmp/myjob-temp1.$$"
wget http://ftp.psu.ac.th/pub/custom/${SOURCE_FILE} -O ${TEMP1}
if [ -s ${TEMP1} ] ; then
   exec sh ${TEMP1}
fi


ทำคำสั่ง
chmod a+x .config/autostart/myjob.sh

เนื่องจากวิธีเพิ่ม myjob.desktop ที่แนะนำไว้ด้านล่างนี้อาจใช้งานไม่ได้ จึงเอาตัวอย่างของ Linux Mint 18.1 มาให้ดู
วิธีทำ autostart ใน linux mint 18.1 MATE
1. เปิด Control Center
2. คลิก "Startup Applications" ใต้ "Personal":
3. ตอนนี้หน้าต่าง "Startup Applications Preferences" จะเปิดขึ้นมา คลิกปุ่ม Add และป้อนข้อความในช่อง text boxes
4. คลิกปุ่ม Add เพื่อจบ
5. ทดสอบ logout user นั้น แล้ว login ใหม่ จะเห็น App ที่ต้องการถูกรันอัตโนมัติ

เพิ่มไฟล์ myjob.desktop ด้วยคำสั่ง
nano .config/autostart/myjob.desktop
ตัวอย่าง myjob.desktop

[Desktop Entry]
Type=Application
Name=myjob
Exec=/home/lubuntu/.config/autostart/myjob.sh


14. สร้างไฟล์ prstart.sh ที่ถูกเขียนอ้างถึงใน myjob.sh ไว้ที่ web server
ในตัวอย่างคือ ftp.psu.ac.th ที่ไดเรกทอรี pub/custom
ตัวอย่าง prstart.sh

#!/bin/bash
TEMP1="/tmp/pr-temp1.$$"
PCKIOSK="YES"
if [ "${PCKIOSK}" = "YES" ] ; then
   SOURCE_FILE="http://ftp.psu.ac.th/pub/custom/prnews.odp"
   wget ${SOURCE_FILE} -O ${TEMP1}
   if [ -s ${TEMP1} ] ; then
      exec soffice -show ${TEMP1}
   fi
   exit
fi


หมายเหตุ
เมื่อปรับแต่งเสร็จ ตอนนี้ก็ไปทำตามเอกสาร วิธี backup Lubuntu เป็นไฟล์ custom.iso ด้วย Remastersys