Category: ลีนุกซ์ โอเพนซอร์ส


บันทึกกันลืมอันเนื่องมาจากงานชิ้นนี้โหดร้ายพอดู จริงๆก็เป็นการอัพเกรดเคอเนลจาก 2.4 ไปเป็น 2.6 ของลีนุกซ์ debian3.1r3 ธรรมดาๆ แต่ที่มันไม่ธรรมดาคือต้องทำผ่านเน็ตเวิร์คเลย หนักกว่านั้นคือ จากที่บ้าน รีโมทตรงๆไปที่เครื่องไม่ได้ ต้องผ่านออฟฟิศเก่าผมก่อน(โชคดีที่ vpn ยังใช้งานได้) เข้าไปพักที่เครื่อง enigma ก่อนทั้ง ssh และ scp (โชคดีที่สองที่พวกเด็กแว้นเวรวันหยุดเขาไม่โหลดบิทกันไม่งั้นจุก) ที่ลำบากอีกอย่างคือเครื่องทั้งสามตัวออกเน็ตไม่ได้ ไอ้จะ apt-get ง่ายๆก็ต้องอด

เดิมระบบลงไว้แบบสุดประหยัึด(เพราะตัวทั้งตัวเป็นลีนุกซ์ที่รันบนคอมแพคแฟลชขนาด2GB) สเปกเครื่องเป็น CPU = Celeron 400Mhz, RAM = 512MB

เริ่มจาก

1 ดาวน์โหลดไฟล์เหล่านี้จากอินเตอร์เน็ตที่ http://www.debian.org/distrib/packages

fakeroot_1.2.10_i386.deb
bzip2_1.0.2-7_i386.deb
patch_2.5.9-2_i386.deb
make_3.80-9_i386.deb
binutils_2.15-6_i386.deb
dpkg-dev_1.10.28_all.deb
kernel-kbuild-2.6-3_2.6.8-2_i386.deb
kernel-headers-2.6.8-3_2.6.8-16sarge6_i386.deb
procps_3.2.1-2_i386.deb
linux-kernel-headers_2.6.18-7_i386.deb
libc6_2.3.6.ds1-13etch5_i386.deb
libc6-dev_2.3.6.ds1-13etch5_i386.deb
cpp-3.3_3.3.5-13_i386.deb
gcc-3.3_3.3.5-13_i386.deb
cpp_3.3.5-3_i386.deb
gcc_3.3.5-3_i386.deb
kernel-package_8.135_all.deb
libncurses5-dev_5.5-5_i386.deb
module-init-tools_3.2-pre1-2_i386.deb
initrd-tools_0.1.81.1_i386.deb

อ้อ.. ลืมไป มี
View full article »

ข่าวนี้อยากจะได้ยินเหลือเกิน Elephants Dream เป็นหนังที่เกิดจาก องค์ประกอบของ open source ต่างๆมารวมกัน สรรค์สร้างงานหนัง computer graphic ออกมาได้อย่างยอดเยี่ยม ทำให้หลายๆคนได้เห็นแล้วว่า open source ทำอะไรได้บ้าง ผมไปเจอ
Elephants Dream จากblogของคุณmkเลยเอามาเล่าต่อ อย่างดีใจ ที่ขีดจำกัดของ open source เริ่มสั้นลงทุกที ดูภาพกันไปก่อน

อ้อผมลืมบอกไปใครสนใจอยากได้หนังเรื่องนี้มาดูไปดาวน์โหลดมาได้ครับ ที่ http://www.elephantsdream.org/
หรือ http://public.www.planetmirror.com/pub/blender/ED

View full article »

เมื่อวันที่ 21 เมษายน ที่ผ่านมา Ubuntu ได้ออกเวอร์ชันใหม่มาแล้วคือ Ubuntu 8.04 (Hardy Heron) วันนี้เลยว่าจะอัพเกรดเจ้าเครื่อง osiris.wutthiphan.com ที่เป็นเว็บเซอร์เวอร์ของ wutthipan.com ซะหน่อย การอัพเกรดก็วิธีเดิมๆ ดูจากลิ้งค์นี้ คือสั่งคำสั่งสอง-สามคำสั่ง แต่ก็ต้องใช้เวลาในการรอนานหน่อย เพราะมีข้อมูลที่ต้องอัพเกรดอยู่ราวๆ 200 – 300 MB. แนะนำว่าไม่ควรทำการอัพเกรดผ่านระบบเน็ตเวิร์ค เพราะเกิดเน็ตหลุดหรือมีปัญหาในการอัพเกรดจะลำบาก (แต่ผมก็เลือกวิธีนี้ :-o ) คำสั่งง่ายๆในการอัพเกรดตามข้างล่างครับ…

เดิมๆเวอร์ชัน 7.10 เป็นอย่างนี้อยู่

wutthiphan@osiris:~$ uname -a
Linux osiris 2.6.22-14-server #1 SMP Tue Dec 18 08:31:40 UTC 2007 i686 GNU/Linux

จากนั้นสั่ง

wutthiphan@osiris:~$ sudo apt-get update

แล้วก็ตามด้วย (หากเครื่องยังไม่มีโปรแกรม update-manager-core)

wutthiphan@osiris:~$ sudo apt-get install update-manager-core

สั่งอัพเกรดโลด

wutthiphan@osiris:~$ sudo do-release-upgrade

จากนั้นก็หากาแฟ มานั่งจิบๆรอได้เลย (กำลังจิบรอ…) ในเวลาต่อมา (สองชั่วโมงกว่าๆ) หลังจากตอบคำถามต่างๆไปเรื่อยๆ
ก็ถึงตอนที่ต้องรีบูทเพื่อเริ่มระบบใหม่ และหลังจากให้ระบบรีบูทอยู่ ก็รอลุ้นอยู่เหมือนกันว่ามันจะบูทขึ้นหรือเปล่า (ใช้วิธี ping ทิ้งไว้) อ้าาา… บูทขึ้นมาแล้ว ลองเช็คดู kernel ก่อนเลย

wutthiphan@osiris:~$ uname -a
Linux osiris 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux

อันนี้ก็เป็นเวอร์ชันใหม่แล้วครับ การอัพเกรดหลักๆที่เจอคือ
mysql-server 5.0.45-1ubuntu3.1 ไปเป็น mysql-server_5.0.51a-3ubuntu5
apache2-mpm-prefork 2.2.4-3build1 ไปเป็น apache2-mpm-prefork_2.2.8-1
php5 5.2.3-1ubuntu6.3 ไปเป็น php5_5.2.4-2ubuntu5
postfix 2.4.5-3ubuntu1 ไปเป็น postfix_2.5.1-2ubuntu1

เช็คว่าระบบทำงานได้ปกติแล้ว ก็ออกไปตากแอร์แถวๆเซ็นทรัลพระรามสองอีกดีกว่า  :mrgreen:

โปรแกรม motion ที่ผมใช้งานอยู่นั้นเมื่อจะเอาภาพออกมาแสดงจะเป็นการ stremming ผ่านทาง TCP port เช่น 8001, 8002, 8003 เป็นต้น ซึ่งในการใช้งานก็เป็นอุปสรรคพอสมควร ถ้าหากปลายทางที่จะเรียกเข้ามาใช้งาน และที่ปลายทางแห่งนั้นมีการติดตั้งไฟร์วอลล์ ก็อาจจะไม่สามารถใช้งานได้ เพราะจากถูกปิดพอร์ท แรกๆนั้นผมใช้วีธีเขียนกำกับไว้ว่า “ถ้าหากไม่เห็นภาพเคลื่อนไหว อาจจเป็นไปได้ว่าคุณนั้นอยู่ภายใต้ไฟร์วอลล์” แน่นอนมันไม่ได้ช่วยให้เห็นภาพวีดีโอจากโปรแกรม motion เลย – -” ก็ได้ปล่อยปะละเลยมาเป็นปีๆ ไม่เคยจะแก้ไขปรับปรุงอะไร จนวันนี้มีงานชิ้นนึงทำให้ผมได้ใช้งานโมดูลของ apache ตัวหนึ่งชื่อว่า “mod_proxy” เลยคิดเอามาประยุคใช้กับโปรแกรม motion ของผมด้วยเลย

มาเริ่มต้นกันจากapache ที่ผมใช้งานเป็น apache2 (V.2.24) เริ่มโดยการโหลดโมดูล mod_proxy โดยการคัดลอกไฟล์ proxy.conf, proxy.load และ proxy_http.load จากพาร์ท mods-available มาไว้ที่พาร์ท mods-enabled จากนั้นทำการแก้ไขไฟล์ proxy.conf โดยตัวอย่างการใช้งานของผม โปรแกรม motion ทำงานอยู่บนเครื่องเดียวกันกับ apache2 ไฟล์ proxy.conf จึงได้ตามนี้

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<ifmodule mod_proxy.c>
 
        ProxyRequests Off
 
        <proxy *>
                AddDefaultCharset off
                Order deny,allow
                #Deny from all
                Allow from all
        </proxy>
 
        ProxyTimeout 30
        ProxyVia On
        ProxyPass /webcam/live/1 http://localhost:8001
        ProxyPass /webcam/config/1 http://localhost:8000/1/config/list
 
        ProxyPass /webcam/live/2 http://localhost:8002
        ProxyPass /webcam/config/2 http://localhost:8000/2/config/list
 
        ProxyPass /webcam/live/3 http://localhost:8003
        ProxyPass /webcam/config/3 http://localhost:8000/3/config/list
 
        ProxyPass /webcam/live/4 http://localhost:8004
        ProxyPass /webcam/config/4 http://localhost:8000/4/config/list
 
</ifmodule>

เสร็จขั้นตอนด้านบนแล้ว ก็ลองสั่งให้ apache2 reload ดู ถ้าไม่มีปัญหาลองสั่ง apache2 -M ควรจะเห็น โมดูล proxy_module, proxy_http_module ถูกโหลดขึ้นมา

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Loaded Modules:
 core_module (static)
 log_config_module (static)
 logio_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 actions_module (shared)
 alias_module (shared)
 auth_basic_module (shared)
 authn_file_module (shared)
 authz_default_module (shared)
 authz_groupfile_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 cgi_module (shared)
 dir_module (shared)
 env_module (shared)
 mime_module (shared)
 negotiation_module (shared)
 php5_module (shared)
 proxy_module (shared)
 proxy_http_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 ssl_module (shared)
 status_module (shared)
 userdir_module (shared)
Syntax OK

เอาล่ะเรียบร้อย ก่อนหน้านั้นการเข้ามาดูทำได้โดยเข้ามาที่ URL เช่น http://wutthiphan.com:8001 , http://wutthiphan.com:8002 , http://wutthiphan.com:8003 , http://wutthiphan.com:8004 โดยมากถ้าที่ไหนมีไฟร์วอลล์มักจะโดนบล๊อก หลังจากทำขั้นตอนข้างบนนี้แล้วการเข้ามาดูจะสามารถเข้ามาดูผ่าน URL เช่น http://wutthiphan.com/webcam/live/1 , http://wutthiphan.com/webcam/live/2 , http://wutthiphan.com/webcam/live/3 , http://wutthiphan.com/webcam/live/4

ได้อย่างนี้ อยู่ที่ไหนก็ดูได้แล้วครับ (ขอให้มีอินเตอร์เน็ตนะครับ) ลองเข้าไปดูที่ใช้งานอยู่ได้เลยครับ

กล้องตังที่1 , กล้องตัวที่2 , กล้องตัวที่3 และ กล้องตัวที่4

เครื่อง server ตัวหนึ่งที่ IDC pacific ของผม มีอาการแปลกๆ 3-4 วันเครื่องจะค้างไปเองเฉยๆ เซอเวอร์ตัวนี้ติดตั้ง Ubuntu 7.10 ผมลองไล่ๆดูตาม log ต่างๆเพื่อหาสาเหตุของปัญหา ปัญหานี้ก่อนหน้านี้เคยเจอว่า โดนบอมอีเมล์ครั้งใหญ่ แต่ครั้งนี้ไม่เห็นมีอะไร แต่ก็ไปสะดุดข้อมูลในไฟล์ message ตามด้านล่าง

Dec 24 08:52:01 xx kernel: [   41.392787] ACPI: Core revision 20070126
Dec 24 08:52:01 xx kernel: [   41.395221] ACPI: Looking for DSDT in initramfs... error, file /DSDT.aml not found.
Dec 24 08:52:01 xx kernel: [   41.431967] ACPI: setting ELCR to 0200 (from 0c28)

คุ้นๆว่าตัวเองนี่แหละเป็นคนไปเปิดมัน(ACPI)ตอนติดตั้ง – -” ตอนนี้ไม่ได้อยู่หน้าเครื่องจะปิดก็ลำบาก เลยปิดมันในระดับ kernel เอาตามนี้
แก้ไขไฟล์ /boot/grub/menu.lst เดิม

title           Ubuntu 7.10, kernel 2.6.22-14-server
root            (hd0,0)
kernel         /vmlinuz-2.6.22-14-server root=/dev/md1 ro quiet splash
initrd          /initrd.img-2.6.22-14-server
quiet

เป็น

title           Ubuntu 7.10, kernel 2.6.22-14-server
root            (hd0,0)
kernel          /vmlinuz-2.6.22-14-server root=/dev/md1 ro acpi=off
initrd          /initrd.img-2.6.22-14-server
quiet

เสร็จแล้ว เตรียมตังค์ค่าtaxi (กรณีบูทไม่ขึ้น) แน่ใจว่ามีค่ารถแล้ว ก็สั่งรีบูทเครื่องเลย ถ้าไม่มีอะไร และเครื่องบูทขึ้นมาปกติ ก็เก็บตั้งไว้เหมือนเดิม
ไม่รู้ว่าจะช่วยอะไรได้หรือเปล่า เอาเป็นว่าช่วงหาข้อมูลการแก้ปัญหานี้อยู่ ก็ลองแบบนี้ไปก่อนล่ะกัน

ช่วงนี้ยิ่งนอนไม่ค่อยหลับอยู่ เฮ้อออ…… เซ็งจิต

Creative Commons License Page Rank