Tuesday, January 24, 2006 

การใช้ Patch Manager ในเครื่อง Sun

การอัพเดตแพคเกจในเครื่องซันนั้น นอกจากการดาวน์โหลดไฟล์ชุดใหญ่จากทางเวปไซต์ของซันแล้วนั้น ก็สามารถจัดการแบบออนไลน์ได้ผ่านทางโปรแกรม Patch Manager ซึ่งก็สะดวกพอสมควร โดยหลังจากดาวน์โหลดไฟล์สำหรับ Solaris8 มาแล้ว (Solaris 9 มีมาให้เลยแต่ก็ต้องอัพเดตเวอร์ชันใหม่ ส่วน Solaris 10 จะใช้ Update Manager) ก็แตกไฟล์และติดตั้งด้วยคำสั่ง
# unzip pm2.0_s8_sparc.zip
# cd Patch_Manager_2.0
# ./pmsetup
เมื่อติดตั้งเรียบร้อยก็สามารถเรียกใช้เพื่อติดตั้งแพตช์ได้สองวิธีใหญ่ๆ นั่นคือแบบอัตโนมัติและแบบอัตโนมือ แบบอัตโนมัติจะง่ายเพราะใช้คำสั่งเดียว
# smpatch update

ว ิธีนี้จะมีปัญหาคือแพตช์บางตัวอาจลงไม่ได้ ซึ่งต้องมาลงด้วยแบบอัตโนมือทีหลัง แต่ก็ไม่ยากอะไร เพราะโปรแกรมจะลิสต์แพตช์ตัวที่ลงไม่ได้มาเป็นไฟล์ไว้ ให้สามารถติดตั้งเองได้ภายหลัง สำหรับวิธีอัตโนมือมีขั้นตอนดังนี้
# smpatch analyze > patch.list
# smpatch download -i patch.list
# smpatch add -i patch.list
โดยออพชัน analyze คือการตรวจเช็คว่าเครื่องเราต้องการแพตช์อะไรบ้าง จากนั้นก็ download และ add เป็นลำดับถัดมา ซึ่งเราสามารถ download และ add โดยระบุเป็น Patch ID ได้เช่นกัน เพราะบางครั้งโปรแกรมอาจมีการผิดพลาดไม่ได้ดาวน์โหลด dependencies บางตัวมา ก็ต้องเข้าเวปไปค้นดู (หรือโปรแกรมอาจแจ้งให้ทราบเอง)

References

Wednesday, January 11, 2006 

ลงเครื่อง Sun ใหม่

ตอนแรกตั้งใจจะติดตั้งแค่ Design Kit ของ Europractice version 16.00 ที่ได้มานานแล้ว แต่ยังไม่มีเวลาทำเสียที บนเครื่องซันตัวเล็ก แต่เมื่อลองเช็คเครื่องดู ปรากฏว่าเจอ rootkit ที่เคยเจาะเข้ามาเมื่อปีที่แล้ว ตอนที่อยู่เนเธอร์แลนด์ แล้วเครื่องเกตเวย์เสีย เลยต้องให้ทางนี้เปิดเนตเวิร์คต่อตรงไปพลางๆ ก่อน เลยเจอดีโดน rootkit เข้าจนได้ มันยังตกค้างอยู่ ถึงแม้จะจัดการกำจัดบางส่วนจนมันทำอะไรไม่ได้แล้ว (มั้ง?) แต่เพื่อความไม่ประมาท ลงโปรแกรมใหม่หมดเลยดีกว่า อืม...ไม่ได้จัดการเครื่องซันซะนาน ชักหลงๆ ลืม งั้นจดลำดับขั้นไว้ที่นี่ดีกว่า เผื่อคราวหน้าอาจได้ใช้

ขั้นแรกก็ต้องสำรองข้อมูลสำคัญก่อน พวกข้อมูลของผู้ใช้ และไฟล์คอนฟิคต่างๆ (ได้แก่ passwd, shadow, group, hosts, motd, cshrc) จากนั้นใส่แผ่น Solaris 8 Installation เข้าไป กด Stop+A แล้วสั่ง boot cdrom มันก็จะดำเนินการต่างๆ ถามโน่นนี่ไปเรื่อย พวกข้อมูลเนตเวิร์ค รูทพาสเวิร์ด ที่สำคัญคือตอนแบ่งสไลด์ในฮาร์ดดิสก์ ต้อง preserve ส่วนของผู้ใช้ไว้ ในเครื่องนี้อยู่ที่ /dev/dsk/c0t0d0s7 ซึ่งก็คือ /export/home

โชคร้ายที่โปรแกรมส่วนใหญ่อยู่ใน /usr ซึ่งเป็นส่วนที่โดน rootkit เต็มๆ เลยตัดสินใจล้างทิ้งหมด แล้วจัดการแบ่งสไลด์ใหม่ ให้เป็นที่อยู่เฉพาะของโปรแกรมประยุกต์ เผื่อคราวหน้าพลาดพลั้งไปก็ไม่ต้องลงใหม่อีก จากนั้นเลือกลงแพคเกจแบบ End Users ก็พอ เพราะแต่ก่อนบ้าพลัง ลงชุดใหญ่ เสียเวลาลงนาน กินที่เยอะ แถมยังไม่ค่อยได้ใช้ คราวนี้เลยลงน้อยๆ เข้าไว้ พวก document นี่ไม่ต้องลงเลย รอบนี้จึงใช้เวลาลง Solaris 8 สั้นมากอย่างที่ไม่เคยรู้สึกมาก่อน

พอเครื่องรีบูตตัวเองเสร็จสรรพก็จัดการย้ายไฟล์คอนฟิคต่างๆ กลับมา น่าแปลกที่พอเข้าหน้าจอกราฟฟิคของยูสเซอร์ทั่วไปปรากฏว่าตรง terminal ไม่สามารถพิมพ์ได้ คือมันจะนิ่งไปเลย เป็นหมดทุกยูสเซอร์ยกเว้นรูท เช็คไปเช็คมา สิ่งที่ต่างกัน น่าจะเป็นที่ shell ที่ใช้ เพราะยูสเซอร์เป็น C-shell หมด แต่รูทเป็น shell ธรรมดา จึงน่าจะเป็นที่ไฟล์ cshrc เดิมที่มันมีอะไรเยอะแยะไปหมด แต่เครื่องนี้ยังเกลี้ยงเกินไป ถ้าลงโปรแกรมครบแล้วน่าจะหาย

ขั้นต่อไปก็ต้องติดตั้งแพตช์สำคัญๆ โดยสามารถดาวน์โหลดชุดใหญ่ได้จาก Recommended & Security Patches และติดตั้งโปรแกรมจำเป็นต่างๆ จาก Sunfreeware แต่เวลาดาวน์โหลดหาที่ใกล้ๆ เร็วๆ ที่อื่นน่าจะดีกว่า ลองเสิร์ชกูเกิ้ลดูเจอหลายที่ทีเดียว ที่ลองใช้ก็คือที่ Arizina U. ซึ่งก็เร็วดี ทำการแตก zip ของแพตช์แล้วบูตเข้า Single-user เพื่อติดตั้งแพตช์ เข้าไปยังไดเรคทอรี่ที่แตกไว้แล้วสั่ง
# ./install_cluster -nosave

ที่ใส่ออพชัน nosave ก็เพื่อประหยัดเนื้อที่ แต่ก็เสี่ยงว่าถ้่าหากเกิดอัพเดตพลาดก็จะเสียข้อมูลแพตช์เก่าไป เพราะฉะนั้นต้องใช้ออพชันนี้อย่างระมัดระัวัง ตอนลงแพตช์ก็มักจะเจอข้อความว่า
Installation of xxxxxx-xx failed. Return code 2.
...
Installation of xxxxxx-xx failed. Return code 8.
พวกนี้เป็นคำเตือนที่ไม่ร้ายแรง code 2 ก็คือ เตือนว่ากำลังพยายามลงแพตช์ที่มีอยู่แล้ว ส่วน code 8 เตือนว่ากำลังลงแพตช์ให้กับแพคแกจที่ไม่มีในเครื่อง สำหรับความหมายของโค๊ดทั้งหมด ดูได้จาก ที่นี่

Friday, January 06, 2006 

ปัญหาของแคเดนซ์บนเดเบียน Etch

ปกติแล้วแคเดนซ์จะสนับสนุน "เรดแฮท ลินุกซ์" อย่างเป็นทางการเท่านั้น ซึ่งก็ไม่แปลกอะไร เพราะอาจกล่าวได้ว่า เรดแฮท ประสบความสำเร็จที่สุดในการสร้างลินุกซ์ให้คนทั่วไปใช้ หลายคนทีเดียวที่คิดว่า เรดแฮท ก็คือ ลินุกซ์ โดยอาจไม่ได้เฉลียวใจเลยว่า ลินุส ทรอวัลดส์ เป็นใคร แต่โดยจิตวิญญาณของลินุกซ์ (รวมถึง Opensource Software ด้วย) แล้ว "Linux is Free" ไม่ใช่ฟรีที่แปลว่าไม่ต้องเสียตังค์ แต่เป็น Freedom หรือความเป็นอิสระ นั่นคือมีอิสระในการเลือก ในการใช้ โดยไม่ถูกผูกขาดจากใคร หรือบริษัทใดบริษัทหนึ่ง

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

แรกๆ ก็เคยลองลินุกซ์มาหลายดิสโตร จนกระทั่งปิ๊กมันแนะนำให้ลองใช้เดเบียน ก็พบว่าน่าใช้และยังเอื้อให้ได้ศึกษาอะไรหลายๆ อย่าง ก็เลยใช้เดเบียนเรื่อยมา เมื่อลองติดตั้งแคเดนซ์ลงในเดเบียนครั้งแรก ก็พบว่าเรียบร้อยดี ไม่มีปัญหาใดๆ เลย ในขณะที่ดิสโตรอื่น จะมีคนมาแจ้งว่าติดโน่นติดนี่เสมอ เมื่อมาลองคิดๆ ดู คงเป็นเพราะเดเบียนเป็นดิสโตรที่ใหญ่และมีการเปลี่ยนแพคเกจช้า (ยกเว้นใน unstable ที่มักมีการเปลี่ยนแปลงเร็วสุดๆ เร็วกว่าดิสโตรอื่นๆ ที่ต้องคอยออกซีดีอัพเกรด) ทำให้ยังเข้ากันได้กับแคเดนซ์ซึ่งมักยึดลินุกซ์ตัวเก่าๆ อยู่เสมอ

จนกระทั่งวันนี้มาเจอปัญหาตอนที่อยากจะอัพเดตโปรแกรมแคเดนซ์บนเดเบียนเทสติ้งค์ (Etch) ปรากฏตอนทำการอัพเดตมันฟ้อง
/bin/tar: -b1: Not found in archive
/bin/tar: Error exit delayed from previous errors
/bin/tar: -b1: Not found in archive
/bin/tar: Error exit delayed from previous errors
ลองติดตั้งใหม่เลยก็ยังเหมือนเดิม ค้นกูเกิ้ลดูก็ไม่เจอทางแก้ปัญหา แต่คิดเอาเองว่าไม่น่าจะเป็นปัญหาใหญ่ เพราะเมื่อปีที่แล้วยังลงได้ฉลุยอยู่เลย (แต่ตอนนั้นยังเป็น Sarge) คิดไปคิดมาน่าจะเป็นที่โปรแกรม tar มันอาจจะใหม่ไป เพราะปกติขยันอัพเดตแพคเกจอยู่แล้ว ก็เลยลองดาวน์เกรดโปรแกรม tar ด้วยการเพิ่มส่วนนี้ลงในไฟล์ /etc/apt/preferences

Package: tar
Pin: release a=stable
Pin-Priority: 999



จากนั้นไปเพิ่มส่วน stable ในไฟล์ /etc/apt/source.list แล้วสั่ง apt-get update ตามด้วย apt-get upgrade เท่านี้เป็นอันเสร็จ ได้โปรแกรม tar ที่ถอยจากเวอร์ชัน 1.15 มาเป็น 1.14 ตามต้องการ ไม่รอช้าทดลองติดตั้งแคเดนซ์ใหม่ คราวนี้ไม่ผิดหวัง ติดตั้งได้เรียบร้อยจนจบกระบวนการ เฮ้อ... รอดตัวไปอีกคราว

References: APT HOWTO Chapter 3 - Managing packages

เกี่ยวกับฉัน

  • ชื่อ อมร
  • อยู่แถวๆ ลาดกระบัง, กรุงเทพฯ
  • เรียนหนังสือมานาน ยังไม่จบซะที เพราะชีวิตคือการเรียนรู้
My profile

บล็อกเพื่อนๆ

Powered by Blogger
and Blogger Templates