เคล็ดไม่ลับกับอูบุนตู

การขยาย virtual memory.
บางท่านอาจประสบปัญหา, เมื่อมีการเพิ่มแรม แล้ว ต้องการขยายขนาดของ swap partition หรือ virtual memory ให้สอดคล้องกับขนาดของแรมที่เพิ่มขึ้นไม่ได้,
เนื่องจากได้แบ่ง partition ไว้เต็มหมดแล้ว, ไม่มีที่ว่างให้สร้าง partition ใหม่ หรือ ขยาย swap partition ได้อีก.
ปัญหานี้มีทางออกได้ โดยการสร้าง swap file ไว้บน file system ที่มีอยู่แล้ว.
เช่น คุณอาจสร้าง swap file ขนาด 256MiB ไว้บน /home,
 $ sudo dd if=/dev/zero bs=1M count=256 of=/home/linux.swap
 $ sudo mkswap /home/linux.swap
 $ sudo swapon /home/linux.swap
เพิ่มบรรทัดต่อไปนี้ ลงใน /etc/fstab เพื่อให้ใช้ swap file นี้ทุกครั้งที่ boot,
 /home/linux.swap none swap sw 0 0
อย่าลืมปิด permission ของ swap file ให้ secure ที่สุด.
 $ sudo chmod 000 /home/linux.swap
การเปิดหนัง DVD ลิขสิทธิ์ ด้วย อูบุนตู.
จากการใช้โปรแกรม xine บน ubuntu 4.10 (warty) เพื่อ เปิดดู dvd หนังลิขสิทธิ์ บางเรื่อง ที่ ได้มีการเข้ารหัส ป้องกัน การ copy ไว้,
พบว่า ไม่สามารถ เปิดดูได้, ถึงแม้ว่า ตัวหนังกับตัวเครื่องเล่น dvd จะมีโซนตรงกันแล้ว ก็ตาม. โดย จะมีการแสดงข้อความ ดังนี้,
 $ xine
This is xine (X11 gui) - a free video player v0.99.1.
(c) 2000-2003 The xine Team.
libdvdnav: Using dvdnav version 1-rc5 from http://xine.sf.net
libdvdread: Encrypted DVD support unavailable.
libdvdnav: DVD Title: TROY
libdvdnav: DVD Serial Number: 31116899
libdvdnav: DVD Title (Alternative): TROY
libdvdnav: Unable to find map file '/home/sysadmin/.dvdnav/TROY.map'
libdvdnav: DVD disk reports itself with Region mask 0x00fb0000. Regions: 3
พร้อม กัน นั้น ก็ จะ มี message box pop up ขึ้น มา, มี ข้อความ ว่า,
 (Media stream scrambled/encrypted)
นี้ เป็น เพราะ dvd เรื่อง นั้น ได้ มี การ เข้ารหัส ที่ เรียก ว่า CSS  เอา ไว้.
ปัญหา นี้ สามารถ แก้ไข ได้ โดย การ หา โปรแกรม ถอดรหัส ที่ ชื่อ มา ลง เพิ่ม.
สังเกตข้อความว่า,
 libdvdread: Encrypted DVD support unavailable.
การจะถอดรหัสนี้น่าจะเกี่ยวข้องกับ libdvdread.
จาก ที่ อ่าน ใน /usr/share/doc/libdvdread3/README.Debian,
จะ มี คำแนะนำ บอก ไว้ ว่า ให้ รัน script
/usr/share/doc/libdvdread3/examples/install-css.sh เพื่อ download และ ติดตั้ง โปรแกรม ที่ จะ มา ใช้ ถอดรหัส CSS นี้.
จาก ที่ ไล่ ดู ใน script, พบ ว่า script นี้ จะ ไป load package โปรแกรม มา จาก http://www.dtek.chalmers.se/groups/dvd/deb/, ต่อ จาก นั้น script ก็ จะ ใช้ คำสั่ง dpkg เพื่อ ติดตั้ง package เป็น อัน จบ.
ใน ที่นี้ จะ download package มา และ ติดตั้ง เอง ดังนี้ (สำหรับ cpu ตระกูล intel 386),
 $ wget -c http://www.dtek.chalmers.se/groups/dvd/deb/libdvdcss2_1.2.5-1_i386.deb
 $ sudo dpkg -i libdvdcss2_1.2.5-1_i386.deb
Password:
Selecting previously deselected package libdvdcss2.
Unpacking libdvdcss2 (from .../libdvdcss2_1.2.5-1_i386.deb) ...
Setting up libdvdcss2 (1.2.5-1) ...
ทีนี้ ก็ เปิด xine เพื่อ ลอง เล่น dvd ดู อีก ครั้ง,
 $ xine
This is xine (X11 gui) - a free video player v0.99.1.
(c) 2000-2003 The xine Team.
libdvdnav: Using dvdnav version 1-rc5 from http://xine.sf.net
libdvdread: Using libdvdcss version 1.2.5 for DVD access
libdvdnav: DVD Title: TROY
libdvdnav: DVD Serial Number: 31116899
libdvdnav: DVD Title (Alternative): TROY
libdvdnav: Unable to find map file '/home/sysadmin/.dvdnav/TROY.map'
libdvdnav: DVD disk reports itself with Region mask 0x00fb0000. Regions: 3
libdvdread: Attempting to retrieve all CSS keys
libdvdread: This can take a _long_ time, please be patient
libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x00000163
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x0001200b
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_02_1.VOB at 0x0037fce1
libdvdread: Elapsed time 0
libdvdread: Found 2 VTS's
libdvdread: Elapsed time 0
สังเกต เห็น ว่า จะ มี ข้อความ แสดง การ ประมวลผล เพื่อ ถอดรหัส CSS นี้ ออก มา.
ต่อจากนี้ ก็จะสามารถ ดูหนังลิขสิทธิ์ ได้อย่าง สมบูรณ์แบบ.
หมายเหตุ: วิธีการนี้ ไม่ได้เป็นการ ปลดล็อคโซน. กรณีที่มีการ ล็อคโซนหนัง ไว้ที่ตัวเครื่องเล่น dvd, ก็จะสามารถเล่นได้เฉพาะโซนนั้นเท่านั้น.
เกี่ยวกับ boot options.
กล่าวถึง option ที่ส่งผ่านให้ linux kernel ผ่านทาง boot loader,
scp แบบ resume หรือ ต่อไฟล์.
หลายท่านอาจประสบปัญหาใช้ scp copy file ไปแล้ว, มีการหลุด, ทำให้ต้องมาเริ่ม copy ใหม่ ตั้งแต่ต้น.
ปัญหานี้มีทางออกโดยการใช้ rsync ดังนี้,
 $ rsync -e 'ssh -C' -avzP <src> <dest>
โดย รูปแบบของค่า "<src>" และ "<dest>" จะใช้เหมือนกับที่ใช้ใน scp ทุกประการ, และ option "-P" จะเป็น key หลัก ที่สั่งให้ rsync resume ในการ รับ-ส่ง ไฟล์.
จากตัวอย่างนี้, rsync จะใช้คำสั่ง "ssh -C" ในการ รับ-ส่ง ข้อมูลระหว่างเครื่อง.
ทั้งนี้ ถ้าไม่ได้ระบุ option "-e" เอาไว้, โปรแกรม rsync ก็มักจะกำหนดค่า default ไว้เป็น "ssh" อยู่แล้ว.
ในตัวอย่างนี้ จะใส่ "-C" ให้กับ ssh เพื่อให้มีการบีบอัดข้อมูลในการ รับ-ส่ง ไปในตัวด้วย. อย่างไรก็ตาม, การใช้ option "-z" ของ rsync ก็เป็นการสั่งให้มีการบีบอัดข้อมูลอยู่แล้ว, การสั่ง "-C" ใน ssh ก็ไม่จำเป็นอีกต่อไป.
re-read partition table on-the-fly.
บางครั้ง หลังจาก แก้ไข และ save partition table ด้วยคำสั่ง fdisk แล้ว จะพบข้อความเตือนว่า,
จากกรณีดังกล่าว, ถ้าต้องการให้ kernel อ่านค่า partition table ใหม่ แบบ on-the-fly โดยไม่ต้อง reboot หรือ unmount filesystem บน disk ลูกนั้น, ให้ run คำสั่ง .
managing service.
ถ้าต้องการใช้ gui tool เพื่อจัดการ ปิด/เปิด service สามารถใช้โปรแกรมชื่อ rcconf หรือ sysvconfig (ต้องติดตั้ง package ชื่อ rcconf หรือ sysvconfig)