การทำแผ่นดีวีดี 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 »

การทดสอบประสิทธิภาพ Web Server ประเภท Static Page : Apache2 vs Lighttpd บนเครื่อง Ubuntu 14.04 LTS

เครื่องมือในการทดสอบ Web Server OS : Ubuntu 14.04 LTS Client OS : Windows 8.1 Software : Apache Jmeter 2.11 Environment : Web Server Ubuntu Server (Oracle VM VirtualBox) Intel Haswell 1.6GHz (2.30GHz) 4 core RAM 512G Client Windows 8.1 (Physical Notebook) Intel Haswell 1.6GHz (2.30GHz) Intel Haswell 4 core RAM 8G – รันอยู่บนเครื่องเดียวกัน – ใช้ค่า Default ไม่มีการ Tuning เพิ่มเติม วิธีการทดสอบ 1. ทำการตั้งค่า Apache ให้อยู่คนละ Port กับ Lighttpd 2. ทำการสร้าง Static Page โดยมีตำแหน่ง และ HTML Code (index.html) ดังนี้ Apache : /var/www/html/index.html สำหรับ Apache ให้ rename ไฟล์เดิมก่อนเนื่องจากมีไฟล์อยู่แล้วด้วยคำสั่งดังนี้ sudo mv /var/www/html/index.html /var/www/html/index.html_bak Lighttpd : /var/www/index.html <!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN”> <html> <head> <title>Webserver test</title> </head> <body> This is a webserver test page. </body> </html> 3. เปิดโปรแกรม Jmeter ทำการ Add Thread Group, HTTP Request, View Results Tree และ Graph Results 4. ทำการทดสอบโดยชี้ไปที่ Web Site ของ Web Server ที่ต้องการ โดยมีตัวอย่างดังรูป (จะสังเกตุว่ามีการตั้งค่า Timeout = 1500 ms เพื่อป้องกันโปรแกรมค้าง เนื่องจาก Web Server ไม่ยอมตอบ) *หมายเหตุ ระหว่างรัน Test สามารถตรวจสอบการทำงานของเครื่อง Web Server โดยติดตั้งโปรแกรมชื่อ htop ดังนี้ sudo apt-get install -y htop พิมพ์คำสั่ง htop จะปรากฎหน้าจอดังรูป การตั้งค่าทดสอบ Number of Threads (users) : 500,1000,2000,2500,3000 Ramp-Up Period (in seconds) : 1 Loop Count : 1 ตัวอย่างการทดสอบ จำนวน Users ที่เปิด Page ไม่สำเร็จ Number of Threads (users) 500 1000 2000 2500 3000 Apache2 0 28 424 2232 Jmeter Hang

Read More »

การติดตั้งโปรแกรมตรวจสอบประสิทธิภาพ Server : Apache Jmeter บนเครื่อง Windows

โปรแกรม Jmeter เป็นโปรแกรมสารพัดประโยชน์ใช้สำหรับทดสอบประสิทธิภาพการรองรับโหลดจำนวนมาก โดยในเบื้องต้นผมยังจะไม่อธิบายรายละเอียดโปรแกรมมากนะครับ จะนำเสนอแค่วิธีติดตั้ง และการ Test ในส่วนที่เป็น Web Server แบบไม่มี Script อะไรพิเศษเป็นหลัก แล้ววันหลังค่อยมาเปล่าในส่วนอื่น ๆ เช่นการ Test Load Database, LDAP, FTP, WebService ฯลฯ ถ้ามีโอกาสครับ ความต้องการพื้นฐานสำหรับโปรแกรม Jmeter 1. Java 6 ขึ้นไป 2. OS ซึ่งรองรับทั้ง Unix, Windows วิธีการติดตั้งบน Windows  Test OS : Windows 8.1 1. ติดตั้ง JAVA สามารถทำการ Download และติดตั้งได้จาก http://www.java.com/en/download/index.jsp 2. ดาวน์โหลดโปรแกรม Jmeter ได้จาก http://jmeter.apache.org/download_jmeter.cgi 3. Save file .zip ดังรูป 4. ทำการแตกไฟล์ออกมา และทำการรันไฟล์ ApacheMeter.jar ดังรูป (จะปรากฎเป็น icon java สามารถ double click รันได้เลย) ตัวอย่างการสร้าง Test Plan เพื่อทดสอบ Web Server 1. ทำการสร้าง Thread Group ภายใต้ Test Plan ดังรูป 2. หลังจากนั้นจะปรากฎหน้าต่างให้ตั้งค่าได้ดังนี้ Number of Threads (users) : จำนวนผู้ใช้งานที่ต้องการ ณ เวลานั้น ๆ (concurrent users) Ramp-up Period (in seconds) : เวลาหน่วงในการเพิ่มผู้ใช้งานจนถึงจำนวน Number of Threads ที่ตั้งไว้ เช่น Number of Threads = 300, Ramp-up Period = 60 แสดงว่า ภายใน 60 วินาทีจะมี จำนวนผู้ใช้เข้าสู่ระบบรวม 300 คน (ค่อย ๆ เพิ่มเข้าไปจนครบ 300 ใน 60 วินาที) Loop Count : คือจำนวนรอบที่ทำ ถ้าติด Forever ก็แสดงว่าทำตลอดไป *หมายเหตุ ระวังอย่างตั้งค่าเว่อร์จนเกินไป เครื่องผู้ที่สั่ง Test อาจจะทำงานไม่ไหว Hang ได้ 3. จากนั้นทำการสร้าง Sampler ที่เป็น HTTP Request เพื่อกำหนดค่า config เบื้องต้นที่จำเป็นในการทดสอบ ดังรูป 4. จะปรากฎให้ตั้งค่า หลัก ๆ ถ้าต้องการยิงทดสอบธรรมดา ๆ ให้ใส่เฉพาะ Server Name หรือ IP และ Path เช่น /regist.php ถ้าต้องการยิงหน้าแรกก็ใส่ / เฉย ๆ ดังรูป 5. หลังจากนั้นทำการเพิ่มในส่วนของรายงานผล โดยแนะนำ 2 ตัวคือ View Results Tree และ Graph Results 6. ตัวอย่างผลลัพธ์จาก Results Tree (วิธีการรัน Test ให้กดที่ปุ่ม Play สีเขียว และปุ่ม Stop สีแดงเพื่อหยุด) 7. ตัวอย่างผลลัพธ์ในรูปแบบ Graph

Read More »

การติดตั้ง Lighttpd + PHP5 บนเครื่อง Ubuntu 14.04 LTS

มาเริ่มขั้นตอนการติดตั้งกันเลยครับ วิธีการติดตั้ง Lighttpd Web Server 1. ทำการติดตั้ง Lighttpd ผ่าน apt-get ดังนี้ครับ # sudo apt-get install -y lighttpd 2. ให้ทำการ Restart Lighttpd ด้วยคำสั่ง # sudo service lighttpd restart 3. ทำการทดสอบเข้าใช้งาน HTTP โดยพิมพ์คำสั่ง http://หมายเลขไอพีของเซิร์ฟเวอร์ เช่น http://192.168.99.1 4. ในกรณีที่ต้องการติดตั้ง SSL ให้พิมพ์คำสั่งเพื่อเปิด site ดังนี้ sudo lighttpd-enable-mod ssl 5. หลังจากนั้นทำการ สร้าง key จาก default cer (ถ้ามี key จริงสามารถนำมาแทนได้ในภายหลัง) ในกรณีที่ไม่เคยติดตั้ง apache ให้ติดตั้งโปรแกรม ssl-cert ก่อนดังนี้ sudo apt-get install -y ssl-cert ทำการรวม Key โดยสร้างเป็นไฟล์ใหม่ เก็บไว้ที่ /etc/lighttpd/snakeoil.pem sudo sh -c ‘cat /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/private/ssl-cert-snakeoil.key > /etc/lighttpd/snakeoil.pem’ 6. จากนั้นทำการเข้าไปแก้ไฟล์ระบุ เพื่อระบุตำแหน่ง cer ให้ถูกต้อง sudo nano /etc/lighttpd/conf-enabled/10-ssl.conf 7. ทำการแก้ไขข้อความในไฟล์ดังนี้ ssl.pemfile = “/etc/lighttpd/snakeoil.pem” 8. จากนั้นให้สั่ง Restart Lighttpd  ตามปกติ # sudo service lighttpd restart 9. ทำการทดสอบเข้าใช้งาน HTTPS โดยพิมพ์คำสั่ง https://หมายเลขไอพีของเซิร์ฟเวอร์ เช่น https://192.168.99.1 *หมายเหตุ วิธีการดู IP ให้พิมพ์ดังนี้ ifconfig ให้วิธีการดูให้สังเกตุตามรูปตัวอย่าง – eth0 เป็น ip จาก nat interface – eth1 เป็น ip จาก bridge interface – lo เป็น ip จาก loopback interface วิธีการเปลี่ยน Lighttpd Server Default Port *ยกตัวอย่างการเปลี่ยนจาก port 80->8081 – เปิดไฟล์ /etc/lighttpd/lighttpd.conf sudo nano /etc/lighttpd/lighttpd.conf – แก้ไขข้อความในไฟล์ดังนี้ (วิธีการ save ให้กด Ctrl-X แล้วกด y แล้ว enter) server.port = 8081 วิธีการติดตั้ง PHP5 เพื่อใช้งานกับ Lighttpd Web Server 1. ทำการติดตั้ง PHP5 ดังนี้ sudo apt-get install php5-cgi 2. ทำการเปิดใช้งาน module เพื่อให้สามารถใช้งาน php บน lighttpd ได้ sudo lighty-enable-mod fastcgi sudo lighty-enable-mod fastcgi-php 3. จากนั้นให้สั่ง Restart Lighttpd  ตามปกติ # sudo service lighttpd restart 4. วิธีการสร้างไฟล์ตรวจสอบสามารถทำได้ดังนี้ – เปิดไฟล์ /var/www/info.php sudo sh -c

Read More »