การทำแผ่นดีวีดี linux mint ฉบับติดตั้งโปรแกรมเพิ่มแล้ว

ผมแจกฟรีแผ่น DVD linux mint 17 ฉบับติดตั้งโปรแกรมเพิ่ม ที่ห้องโถงอาคารศูนย์คอมพิวเตอร์ ผมก็คิดว่าน่าจะนำความรู้มาเผยแพร่ไว้ตรงนี้ด้วย ลองอ่านดูนะครับ เริ่มต้น ผมก็ไปเอาไฟล์ linuxmint-17-mate-dvd-32bit.iso จากเว็บไซต์ https://licensing.psu.ac.th/linux-mint-17-qiana-released/ ซึ่งไฟล์ที่วางไว้ในเว็บไซต์นี้ก็ไป download มาจากของแท้ที่เมืองนอกนะครับ นำมาติดตั้งเป็น Virtual Machine ในโปรแกรม Oracle VM VirtualBox โดยสร้าง username คือ mint password คือ mint และตั้งให้ auto login จากนั้นก็ปรับแต่งการอัปเดตเวอร์ชั่นให้อัปเดตจากเซิร์ฟเวอร์ในมหาวิทยาลัย (ในเมืองไทย) โดยการแก้ไขที่ไฟล์ official-package-repositories.list ด้วยคำสั่งดังนี้ sudo vi /etc/apt/sources.list.d/official-package-repositories.list โดยเปลี่ยน 2 แห่ง คือ 1.เปลี่ยนจาก archive.ubuntu.com เป็น th.archive.ubuntu.com 2.เปลี่ยนจาก packages.linumint.com เป็น mirrors.psu.ac.th/linuxmint-packages ต่อไปก็ตั้งค่า time zone ดังนี้ Menu > Administration > Time and Date > Click to make changes Time zone: Asia/Bangkok ต้องการให้ผู้ได้รับแผ่นดีวีดีนี้ไปใช้งานได้สะดวก จึงเพิ่มคำสั่งนี้เพื่อให้ไม่ต้องถาม password ทุกครั้งที่จะเพิ่มโปรแกรม sudo sh -c “echo ‘mint ALL=NOPASSWD: ALL’ >> /etc/sudoers” ผู้ใช้งานส่วนใหญ่จะใช้ฟอนต์ภาษาไทย TH SarabanPSK ผมก็ช่วยลงให้ซะเลย sudo wget ftp://ftp.psu.ac.th/pub/thaifonts/sipa-fonts/*ttf -P /usr/share/fonts/truetype/thai ติดตั้งโปรแกรมต่างๆเพิ่มดังนี้ สำหรับแสดงรายชื่อ hardware sudo apt-get install lshw-gtk สำหรับตรวจเช็คสถานะ LAN card sudo apt-get install ethtool สำหรับดึงข้อมูลเว็บเพจมาดำเนินการ sudo apt-get install curl สำหรับใช้งานเบราว์เซอร์ google chrome sudo touch /etc/default/google-chrome แล้วไป download จากเว็บไซต์ของ google อาจทำด้วยคำสั่งข้างล่างนี้ wget -q -O – https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add – sudo sh -c ‘echo “deb http://dl.google.com/linux/chrome/deb/ stable main” >> /etc/apt/sources.list.d/google.list’ sudo apt-get update sudo apt-get install google-chrome-stable ติดตั้งโปรแกรมต่างๆ ผ่านทาง Menu > Software Sources 1. Tuxmath  : เกมส์คิดเลขเร็ว 2. Tuxpaint  : เด็กหัดใช้เมาส์วาดภาพและตัวปั้มหมึก 3. Shutter  : screen capture tool 4. RecordMyDesktop and gtk-recordmydesktop  : บันทึกหน้าจอเป็นวิดีโอ 5. winff  : แปลงชนิดไฟล์ของไฟล์เสียง 6. audacity  : ตัดหรือต่อไฟล์เสียง 7. gparted  : สร้างหรือเปลี่ยนแปลง disk partition 8. openshot  : ตัดหรือต่อวิดีโอ ไฟล์เสียง เพื่อทำเป็นวิดีโอ 9. libavcodec-extra-54 

Read More »

แก้ปัญหา ubuntu server 14.04 เปลี่ยน eth0 เป็น em1

เรื่องมีอยู่ว่า ผมและวิศิษฐ ช่วยกันทำต้นฉบับ PSU12-Sritrang ใหม่เมื่อมี ubuntu 14.04 ออกมาแล้ว เดิมใช้ ubuntu 12.04 มาโดยตลอด ปัญหานี้เกิดขึ้นตั้งแต่ ubuntu เปลี่ยนเวอร์ชั่นเป็น 13.04 แล้ว คือ เมื่อ clone ไปแล้ว บูต server แล้วจะไม่เห็น eth0 เมื่อตรวจสอบด้วยคำสั่ง dmesg | grep eth0 ก็พบว่าบรรทัดที่มีข้อความว่า renamed eth0 to em1 วิศิษฐ ค้นเจอว่า หากต้องการบังคับให้ใช้แบบเก่า คือ ใช้ eth0 จะต้องแก้ไขไฟล์ /etc/default/grub ทำดังนี้ หากใช้ editor vi คล่อง ก็ใช้คำสั่งนี้ sudo vi /etc/default/grub หากไม่คล่อง ก็ใช้ดังนี้ sudo nano /etc/default/grub ในไฟล์ /etc/default/grub ให้หาบรรทัด GRUB_CMDLINE_LINUX_DEFAULT=”” แก้ไขเป็น GRUB_CMDLINE_LINUX_DEFAULT=”net.ifnames=1 biosdevname=0″ จากนั้นให้สั่งคำสั่งนี้ด้วย sudo update-grub เท่าที่ทดสอบผลกับเครื่องที่มีปัญหา สามารถบังคับให้ใช้ eth0 ได้ครับ ยังไม่พบว่าวิธีการนี้จะใช้ไม่ได้เมื่อมีการ update versions ของ ubuntu ยังคงต้องตรวจสอบในเวอร์ชั่นต่อไป   อัปเดตข้อมูล (17 มี.ค. 2559) ใน ubuntu 16.04 server ผมกลับพบว่า คำสั่งนี้ใช้ไม่ได้ GRUB_CMDLINE_LINUX_DEFAULT=”net.ifnames=1 biosdevname=0″ แต่คำสั่งข้างล่างนี้ใช้ได้ GRUB_CMDLINE_LINUX_DEFAULT=”net.ifnames=0″ ทำให้ใช้ eth0 ได้ ซึ่งการกำหนดค่า net.ifnames=0 นี้นำมาจากเอกสารที่อ้างอิง [1] ข้างล่างนี้ ผมเลือกใช้ option ที่ 3   และมีคำอธิบายในเรื่องความเปลี่ยนแปลงในการใช้ชื่อ network interface name ใน [2]   Reference: [1] http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ [2] https://lists.ubuntu.com/archives/ubuntu-devel/2015-May/038761.html  

Read More »

เรียนรู้ด้วยตนเอง Linux System Administration I และ II

ขอแนะนำแหล่งความรู้สำหรับทุกท่านที่ต้องการเรียนรู้ Linux ซึ่งผมและอาจารย์ฉัตรชัย จันทร์พริ้ม ได้รวบรวมเขียนไว้และจัดอบรมไปแล้ว 1 รุ่น ใน Workshop I สอนด้วย Ubuntu 12.04 และใน Workshop II Ubuntu 14.04 ออกมาพอทันให้ได้ใช้กันครับ Workshop Linux System Administration I (http://opensource.cc.psu.ac.th/WS-LSA1) เนื้อหา เป็นการให้ความรู้ในการทำหน้าที่ system administrator เพื่อดูแลระบบปฏิบัติการ Linux โดยจะใช้ Ubuntu ซึ่งปัจจุบันมีผู้ใช้งานกันมาก โดยจัดเนื้อหาเป็น 2 ตอน ในตอนแรกนี้จะเป็นความรู้จำเป็นที่จะเป็นพื้นฐานไปสู่การเป็นมืออาชีพที่สามารถดูแล server ด้วยตนเองต่อไปได้อย่างมั่นใจ โดยใช้เวลา 2 วัน Workshop Linux System Administration II (http://opensource.cc.psu.ac.th/WS-LSA2) เนื้อหา เป็นการให้ความรู้ในการทำหน้าที่ system administrator เพื่อดูแลระบบปฏิบัติการ Linux โดยจะใช้ Ubuntu ในตอนที่ 2 นี้จะเป็นความรู้ในการติดตั้ง server การดูแล server การป้องกันและตรวจสอบความปลอดภัย server และ web application ที่ติดตั้งในเครื่อง โดยใช้เวลา 2 วัน วิธีการเรียนใน workshop ผู้เรียนจะได้ฝึกปฏิบัติด้วย Ubuntu server ที่ติดตั้งใน Oracle VM Virtualbox ซึ่งเป็นโปรแกรมในการจำลองเครื่องเสมือนจริง สำหรับเพื่อนๆที่ไม่ได้เข้า workshop ลองเข้าไปอ่านกันได้นะครับ และเพื่อนๆที่เข้า workshop ก็ทบทวนได้เมื่อต้องการเรียนรู้ด้วยตนเองเกี่ยวกับ Linux System Administration I และ II

Read More »

วิธีตั้งค่า Apache web server 2.4.x แตกต่างจาก 2.2.x

เก็บตกจากวันวานเปิดอบรม Workshop Linux System Administration II (WS-LSA2) ที่ศูนย์คอมฯ 2 วัน ผมเตรียมเอกสาร workshop วิธีตั้งค่าหลายๆเรื่องบน ubuntu 12.04 แต่พอดีกับที่ ubuntu 14.04 ออกมาแล้ว จึงนำ ubuntu 14.04 มาให้ผู้เรียนใช้ติดตั้ง มันก็ไม่มีอะไรแตกต่างไปจาก ubuntu 12.04 ตั้งแต่เริ่มต้น installation จนกระทั่งมาถึงเรื่องที่เราจะตั้งค่าเกี่ยวกับ Apache web server ซึ่งทำให้ต้องแก้ไขเอกสารประกอบการสอนกันสดๆตอนนั้นเลย (ฮา) เพราะว่า Apache Web Server ที่อยู่ในแผ่น ubuntu 14.04 นั้นเป็นเวอร์ชั่น 2.4.7 ซึ่งมี Default Document Root อยู่ที่ /var/www/html ต่างจาก Apache Web Server เวอร์ชั่นก่อนหน้านี้ (2.2.x) ที่มี Default Document Root อยู่ที่ /var/www เป็นต้น พอจะสรุปได้ดังนี้ Apache Web Server 2.2.x ทำแบบนี้ 1.พื้นที่ default ของ Apache Web Server คือไดเรกทอรี /var/www หากจะติดตั้ง Joomla CMS เราจะเตรียมพื้นที่สำหรับติดตั้ง joomla ไว้ที่ไดเรกทอรี /var/www/testjoomla ด้วยคำสั่ง sudo mkdir -p /var/www/testjoomla 2.website config file จะอยู่ที่ไดเรกทอรี /etc/apache2/sites-available จะมีไฟล์ชื่อ default และ default-ssl มาให้ และหากจะสร้าง VirtualHost pma.example.com เราก็สร้าง config file ที่มีชื่อไฟล์อย่างไรก็ได้ เช่น /etc/apache2/sites-available/pma หลังจากนั้นเราก็ enable VirtualHost นี้ จาก config ที่เราสร้างขึ้นใหม่ โดยการใช้คำสั่ง sudo a2ensite pma แล้วก็สั่ง restart apache 3.เมื่อเข้าไปดูในไฟล์ default DocumentRoot จะอยู่ที่ /var/www 4.Apache2 config file จะอยู่ที่ /etc/apache2/conf.d สมมติว่าต้องการเพิ่มการป้องกัน joomla web server ด้วย config file ชื่อ jce จะต้องทำดังนี้ สร้างไฟล์ที่จะมีชื่ออย่างไรก็ได้ เช่น /etc/apache2/conf.d/jce แค่นี้ก็ได้แล้ว แล้วก็สั่ง restart apache และเมื่อจะไม่ใช้ config file jce นี้แล้ว ก็แค่ลบไฟล์นี้ทิ้ง แต่สำหรับ Apache Web Server 2.4.x วิธีการจะแตกต่างไป ดังนี้ 1.พื้นที่ default ของ Apache Web Server คือไดเรกทอรี /var/www/html หากจะติดตั้ง Joomla CMS เราจะต้องเตรียมพื้นที่สำหรับติดตั้ง joomla ไว้ที่ไดเรกทอรี /var/www/html/testjoomla ด้วยคำสั่ง sudo mkdir -p /var/www/html/testjoomla 2.website config file จะอยู่ที่ไดเรกทอรี /etc/apache2/sites-available จะมีไฟล์ชื่อ 000-default และ default-ssl มาให้ (ต่างจาก 2.2.x) และหากจะสร้าง VirtualHost pma.example.com เราก็ต้องสร้าง config file ที่มี

Read More »

Short Note on Workshop “Web Application Development Workflow”

ผมชวนเพื่อนๆ CoP PSU IT ซึ่งเป็นรุ่นน้องชื่อคุณราชศักดิ์ บูรณะพาณิชย์กิจ และพัฒนาวดี ศิวติณฑุโก อยู่ที่คณะวิศวกรรมศาสตร์ มาจัด Workshop ใช้เวลา 1 วัน เรื่อง Web Application Development Workflow วิทยากรเตรียม slide ที่นี้ครับ http://bratchasak.github.io/slide/ คร่าวๆ คือ แนะว่า Web Application Development Workflow คืออะไร อธิบายว่าขั้นตอนของการพัฒนาและเครื่องมือที่ใช้ในการทำงาน ก็คือ Chrome Browser และ Sublime Text และติดตั้งโปรแกรม Git ใช้งานแบบ command line และ github for Windows แบบ GUI และสมัครบริการที่จำเป็นต้องใช้ก็คือ GitHub web เครื่องมือทั้งหมดนี้ก็จะสร้างระบบ Version control สำหรับการพัฒนาด้วย Git ได้แล้ว การเตรียมเครื่องมือสำหรับทำงาน 1.เกี่ยวกับ Chrome Browser (google chrome) ต้องลงชื่อเข้าใช้ google เพื่อทำงานได้ครบทุก Feature เข้าเว็บหน้านี้ https://www.google.com/intl/th/chrome/browser/ จะเห็นตัวอย่างชัดๆในการตรวจสอบด้วย Developper Tools เปิดหน้าต่าง Developper Tool ด้วย Ctrl+Shift+i คลิกเลือกไอคอน แว่นขยาย เพื่อส่องดูโค้ดได้ นอกจากนี้ก็มีแท็บน่าสนใจคือ แท็บ Console สำหรับ debug และ แท็บ Network สำหรับดู latency load time เปิดดูการทำงาน เมนูที่ใช้ใน workshop คือ คลิกปุ่มกำหนดค่าและควบคุม (มุมบนขวา) > เครื่องมือ > ตัวจัดการงาน ติดตั้งส่วนขยาย LiveReload www.google.com > search คำว่า livereload > เลือก Chrome Web Store – LiveReload คลิกปุ่มกำหนดค่าและควบคุม (มุมบนขวา) > เครื่องมือ > ส่วนขยาย > เลือกตัวเลือก อนุญาตให้เข้าถึงไฟล์ URL 2. ติดตั้งโปรแกรม Sublime Text 3 for Windows www.google.com > search คำว่า sublime เลือกเวอร์ชั่นให้ตรงกับ Windows OS ที่ใช้ ตาม slide หน้านี้ http://bratchasak.github.io/slide/#sublimetext_package ติดตั้ง package เพิ่มลงใน Sublime กดแป้น Ctrl+Shift+p > search คำว่า package > เลือก Package Control: Install Package > search คำว่า emmet > คลิกเลือก emmet > search คำว่า livereload > คลิกเลือก LiveReload > search คำว่า syntax คลิกเลือก Syntax Manager ต่อมา วิทยากรอธิบาย Software configuration management ว่ามี 3 model คือ Local data model, Client-server model และ Distributed

Read More »