สำหรับผู้ดูแลระบบที่มีความจำเป็นต้องใช้งาน Remote Login ผ่าน OpenSSH Client อยู่เป็นประจำไม่ว่าจะใช้งานบน Linux, *BSD, Mac OS X คงจะเกิดอาการเบื่อไม่น้อยที่ต้องพิมพ์ Password ทุกๆ ครั้งที่ต้องการจะ Login (ไม่นับ Password จำพวก 123456 นะครับ) ทางออกสำหรับผู้ที่ต้องการ Login โดยไม่ต้องพิมพ์ Password แถมยังคงความปลอดภัยตามแบบฉบับของ OpenSSH สามารถทำได้ตามวิธีดังต่อไปนี้ครับ
ระบบที่ทำการทดสอบ
- OpenSSH Client บน Mac OS X 10.5.6
- OpenSSH Server บน Ubuntu 8.04
ขั้นตอนแรก ทำการสร้าง keys สำหรับยืนยันตัวตนระหว่าง Client และ Server (ทำบนเครื่อง Client ในที่นี้คือ Mac OS X)
MacClient:~ UserA$ ssh-keygen -t rsa
MacClient:~ UserA$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/UserA/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/UserA/.ssh/id_rsa.
Your public key has been saved in /Users/UserA/.ssh/id_rsa.pub.
The key fingerprint is:
a4:74:0b:bc:2f:d1:f5:c7:4e:90:51:7f:f4:45:84:a0 UserA@MacClient
(more…)
กรณีที่ผู้ดูแลระบบได้รับมอบหมายให้ดูแล server ที่ตนเองไม่ได้ติดตั้ง คงจะอยากรู้ว่า Linux / Unix server ที่ใช้อยู่เป็น version อะไร …
สามารถตรวจสอบได้จากคำสั่งต่อไปนี้ครับ
ได้ Output ประมาณนี้ครับ
Linux version 2.6.27-9-generic (buildd@rothera) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu11) ) #1 SMP Thu Nov 20 21:57:00 UTC 200
หรือดู version ในไฟล์ /etc/issue
(issue - pre-login message and identification file)
ได้ Output ประมาณนี้ครับ
* ทดสอบบน Ubuntu 8.10
“Mac OS X” หลายๆ คนอาจเข้าใจผิดออกเสียงโอเอสตัวเก่งของ Apple ว่า “โอเอส เอ็ก” ซึ่งความจริงแล้วโอเอสที่ว่านี้ทาง Apple ตั้งใจให้ออกเสียงว่า “โอเอส เท็น” (ผมก็คนนึงละที่เคยเรียกมันว่า “โอเอส เอ็ก”)
ทำไมต้องออกเสียง X ว่า “เท็น” ?
ตัวอักษร “X” หมายถึงเลขสิบในระบบโรมัน และอ่านออกเสียงว่า “เท็น” (Ten, แปลว่า “สิบ” ในภาษาอังกฤษ) และยังแสดงถึงรุ่นที่ต่อมากจากแมคโอเอสตัวก่อนหน้านี้คือ แมคโอเอส 9 นอกจากนี้ตัวอักษร X ยังแสดงถึงความเป็นยูนิกซ์ (UNIX) ในตัวโอเอสด้วย ซึ่งแมคโอเอสเท็นได้ใช้ยูนิกซ์ที่เป็นโอเพนซอร์สที่ชื่อว่า Darwin เป็นแกนกลาง
(more…)
เทคนิคสำหรับเปลี่ยน view source editor ของ IE (Windows Internet Exploper)
Run regedit
HKEY_LOCAL_MACHINE
|- Software
|– Microsoft
|— Internet Explorer
|—- View Source Editor
|—– Editor Name (Default) = C:\Program Files\Vim\vim71\gvim.exe
สร้างไฟล์ใหม่ชื่อ change-defaut-viewer.reg แล้ว copy ในข้อความข้างล่างนี้ไปใช้
1
2
3
4
| Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\View Source Editor\Editor Name]
@="C:\\Program Files\\Vim\\vim71\\gvim.exe" |
สำหรับบรรทัดสุดท้าย ให้เปลี่ยนเป็นที่อยู่ของ editor ที่ต้องการใช้สำหรับ view source
*แล้วพบกลับเทคนิคการใช้งาน VIM ที่นี่ … เร็วๆ นี้ครับ
เพื่อนๆ คงจะเคยประสบปัญหากับ source code หรือ text file ที่เต็มไปด้วย ^M (CTRL-M) โดยที่เราไม่ต้องการจะเห็นมัน
ผมมีวิธีลบ ^M ออกไปจาก file ด้วย VIM (editor เทพ!) มาแนะนำครับ
ตัวอย่าง file ที่เต็มไปด้วย ^M

(more…)
เราสามารถเรียกดูไฟล์ใน iso image บน linux ด้วยวิธีการง่ายๆ โดยใช้คำสั่ง mount ตามขั้นตอนต่อไปนี้
แปลงร่างเป็น root
สร้่าง directory สำหรับ mount iso image
mkdir -p /var/www/mirror/centos/5
ทำการ mount iso image ด้วยคำสั่งตามตัวอย่าง
mount -o loop CentOS-5.1-i386-bin-DVD.iso /var/www/mirror/centos/5
ทดสอบเรียกดูรายชื่อไฟล์ที่อยู่ใน iso image
ls /var/www/mirror/centos/5
ในตัวอย่างเป็นการเตรียมไฟล์สำหรับติดตั้ง CentOS ผ่าน Network ซึ่งมีข้อดีดังนี้
1. ลดโลกร้อน
เพราะไม่ต้อง Burn DVD ประหยัด DVD หนึ่งแผ่น
2. ประหยัดพื้นที่ในการเก็บข้อมูลของ Harddisk (เก็บไว้เพียง iso image)
3. ประหยัดเวลาในการ Burn DVD
4. สามารถติดตั้ง CentOS ผ่าน Network ได้พร้อมกันหลายๆ เครื่อง
มาทำความรู้รักกับ PXE กันก่อนครับ
PXE หรือ Preboot eXecution Environment เป็น Open Standard ที่พัฒนาขึ้นโดย Intel ซึ่ง PXE นี้จะยอมให้ Computer ต่างๆ (Server, PC, Laptop, Notebook ที่ BIOS ลองรับ PXE Booting) สามารถ boot ผ่าน network ได้ไม่ต้องง้อ floppy, cd หรือ dvd กันเลยทีเดียว (มันสุดยอดจริงๆ ครับ)
มาลุยกันเลยครับ
Server : CentOS 5.1 + dhcp + tftp-server + httpd + syslinux
Client : Ubuntu 8.04
เอาเป็นว่าทุกๆ ท่านติดตั้ง CentOS ไว้เป็นที่เรียบร้อย ทีนี้ก็เป็นขั้นตอนการติดตั้ง PXE Server ละครับ
แปลงร่างเป็น root
ติดตั้ง dhcp, tftp-server, httpd และ syslinux
yum install dhcp tftp-server httpd syslinux
เตรียม install files (ผมเลือกติดตั้ง Ubuntu 8.04)
>>วิธี mount iso image บน linux
wget http://ftp.science.nus.edu.sg/linux/ubuntu-ISO/8.04/ubuntu-8.04-server-i386.iso
mkdir -p /var/www/html/mirror/ubuntu/8.04
mount -o loop ubuntu-8.04-server-i386.iso /var/www/html/mirror/ubuntu/8.04
cp -fr /var/www/html/mirror/ubuntu/8.04/install/netboot/* /tftpboot
(more…)
จากประสบการณ์ที่ผ่านมา default editor บน linux และ *bsd มักจะเป็น vi ซึ่งตามปกติแล้ว system administrator (sysadmin) จำเป็นต้องใช้ default editor ของ os ในหลายๆ เหตุการณ์ เช่น ใช้ในคำสั่ง crontab เป็นต้น
หลังจากที่ติดตั้ง Ubuntu 8.04 hardy ก็พบว่า default editor ไม่ใช่ vi ที่ผมคุ้นเคย กลับกลายเป็น nano editor หน้าตาเหมือนกับ pine (pine e-mail client) สมัยที่ linux ยังไม่เฟื่องฟู … เพื่อไม่ให้ยืดเยื้อไปกว่านี้ เรามาเปลี่ยน default editor บน ubuntu กันดีกว่าครับ
(more…)
แค่ออกแรงปรับแต่ง ADSL Router (ZyXel P660HW-T1) กับ syslog บน CentOS เพิ่มเติมอีกนิดก็จะสามารถจัดเก็บ Logs ของ ADSL Router ได้แล้วครับ
ขั้นแรกทำการแก้ไข file “/etc/sysconfig/syslog” โดยเพิ่ม -r เข้าไปที่ SYSLOGD_OPTIONS ซึ่งเดิมๆ จะเป็นตามนี้ครับ
หลังจากทำการแก้ไข
SYSLOGD_OPTIONS="-r -m 0"
เพิ่ม -r เข้าไปยัง SYSLOGD_OPTIONS เพื่อจะบอกให้ syslog daemon ยอมรับ logs จากเครื่องหรืออุปกรณ์อื่นๆ
(more…)
หลายๆ คนอาจจะสงสัยว่าทำไมไม่มีไฟล์ /etc/inittab อยู่บน ubuntu 8.04 (ที่จริงมันหายไปตั้งแต่ ubuntu 6.10 แล้วละครับ) บางคนอาจจะคิดว่าติดตั้งผิดหรือเผลอลบไปตอนไหน อันที่จริงแล้ว /etc/inittab ไม่ได้หายไปหรอกครับเพียงแต่ ubuntu เปลี่ยนการใช้งาน /sbin/init daemon (System-V init) ไปเป็น Upstart แทน สำหรับผมแล้วรู่สึกว่าการใช้งาน System-V init มันง่ายกว่ากันเยอะเลย … ผมใช้งาน Upstart คล่องเมื่อไหร่จะมาเขียนให้เพื่อนๆ ได้อ่านกันอีกครั้ง