หลังจากที่รอเครื่องคอมไพล์ Package ต่างๆเสร็จโดยระว่างคอมไพล์ก็มี error ใน
บาง Package ซึ่งก็ใช้คำสั่ง emerge –resume –skipfirst ข้ามไป หลังจากนั้น
ก็สั่ง Compile Kernel ใหม่เพราะของเดิมคอมไพล์ด้วย Gcc 3.4.x คำสั่งคอมไพล์
ก็คือ
genkernel –menuconfig all
ซึ่งจะมีเมนูขึ้นมาให้เซ็คคอนฟิกต่างที่ใน Kernel ซึ่งผมใช้วิธีโหลดคอนฟิกที่เคยเซฟไว้
ตอนคอมไพล์เคอร์เนลในครั้งก่อนซึ่งหลังจากคอมไพล์เสร็จผมก็จะแก้ grub แล้วรีสตาร์ต
เครื่องใหม่ ซึ่งคงต้องลุ้นต่อว่าจะรีสตาร์ตแล้วบูตเข้า gentoo ได้สำเร็จหรือเปล่า
และแล้วผมก็คอมไพล์ไฟล์ต่างๆจนเสร็จจึงสั่งรีบูต….แล้วเครื่องผมก็หายเงียบสาปสูญ
ไปจากโลกไซเบอร์เน็ต T_T คืนนี้จะนอนหลับไหมนี่
ถ้าพรุ่งนี้ว่างผมคงต้องไปแก้ที่ IDC แต่ถ้าปัญหามันมากเกินเยียวยา ผมอาจต้องยกเครื่อง
กลับบ้าน แต่ทีนี้คงโดนคนที่ใช้ Free Webhosting บนเครื่องนั้นบ่นด่าแหงๆเลย
คืนนี้ผมคงต้องเอา backup เว็ป CodeSniper.Org ขึ้นโฮสท์นี้ก่อนชั่วคราว(มัง)
สรุปการรีโมทอัพเกรด Gentoo ของผมก็ล้มเหลวจนได้ เฮ้อ T_T
Share This
วันนี้ได้เลิกปุบปับรีโมทเข้าไปแบ็คอัพข้อมูลเว็ปมาเก็บไว้ก่อน จากนั้นก็เิริ่มอัพเกรด
โปรแกรมต่างๆในเครื่องซึ่งเริ่มต้นที่ GCC ก่อนเลย เพราะตัวนี้ตัวสำคัญ
และเป็นตัวที่หลังจากอัพเกรดเสร็จแล้วจำเป็นต้องคอมไพล์โปรแกรมต่างๆในเครื่อง
ใหม่แทบทั้งหมด - -”
๊
Step 1: Upgrade GCC
emerge -uav gcc
ในการสั่ง emerge เพื่ออัพเดท gcc นี้เครื่องผมจะมี package ที่เกี่ยวข้อง 8 ตัวที่
ถูกดึงมาคอมไพล์ และหลังจากรอมันคอมไพล์มาจนถึง package สุดท้่ายซึ่งก็คือ
glibc ก็มี error ออกมาบอกว่าให้เราใส่ USE=’nptl nptlonly’ ด้วย ผมจึงต้อง
สั่ง emerge glibc ใหม่อีกครัง
USE=’nptl nptlonly’ emerge glibc
หลังจากคอมไพล์ glib อยู่นานก็เสร็จ ผมก็ทำการเซ็ตให้ระบบเปลี่ยนไปใช้ gcc 4.1.1
แล้วก็ทำการ fix แก้ไข library ต่างที่ใช้ gcc 3.4.6 และ rebuild libtool ใหม่
Step 2: Change GCC Compiler […]
วันนี้ก็ได้มีโอกาส update portage (emerge –sync) แล้วก็ลองเช็คดูว่ามีอะไร
ที่ต้องอัพเกรดมั่งหรือเปล่า ผลคือเพียบเลย - -” แถมเป็นตัวที่เสี่ยงต่อการอัพเกรดแล้ว
อาจต้องเสียเวลาแก้ไขเป็นวันๆ โปรแกรมที่ major upgrade หลักๆก็มี
gcc 3.4.x -> 4.1.1
glibc 2.3.x -> 2.4
mySQL 4.1.x -> 5.0.x
นอกนั้นเป็นโปรแกรมหรือ library package อีกเกือบร้อย - -” ทีเกือบร้อยก็เพราะ
ตัวหลักๆที่ว่ามาอย่าง gcc เมื่อลงเสร็จจำเป็นต้อง compile โปรแกรมหรือ package อื่นๆ
เพื่อให้ใช้งานได้ไม่มีปัญหา รวมถึง Kernel ซึ่ง kernel เวอร์ชั่นใหม่ผมไม่อยากลงเลย
เพราะเหมือนมันจะมีการเปลี่ยน module เกี่ยวกับ network ซึ่งถ้า compile เสร็จสั่ง
รีบูตแล้วดันมองไม่เห็น Network ได้ซวยตายเลยงานนี้ เพราะจะไม่สามารถ ssh เข้าไป
จัดการได้ต้องถ่อสังขารไปแก้ที่เครื่องโดยตรงถึงตึก กสท. - -”
ตอนนี้เลยยังได้แต่นั่งคิดว่าจะเอายังไงดีจะอัพดีหรือไม่อัพ แต่ใจจริงอยากใช้ […]
30 Oct
Posted by: AnnoMundi in: Drupal, Linux :Howto & Tips
พอดีวันก่อนผมได้ทำการลง mod_security บนเครื่อง Colocated Server ซึ่งใช้ Gentoo
ซึ่งก็คิดว่าคงเรียบร้อย แต่วันนี้เข้าใช้งานเว็ปและต้องโพสท์กระทู้ กลับมีปัญหาคือไม่สามารถ
โพสท์ได้ เลยลองเซ็ค Log ของ apache ดูก็พบ error ตามด้านล่าง
mod_security: Access denied with code 500. Pattern match “multipart/form-data” at HEADER
ผมถึงได้รู้ว่าบาง Rules ของ mod_security เป็นสาเหตุทำให้ไม่สามารถโพสท์หรือแก้ไข content
ซึ่งผมไม่แน่ใจว่าเว็ปอื่นๆบนเครื่องจะมีปัญหาหรือเปล่า อย่างเว็ปที่ใช้ Joomla แต่ผมก็ได้ทำการ
แก้ไข ไฟล์ /etc/apache2/modules.d/99_mod_security.conf โดยแก้ไข rule ตรง
SecFilterForceByteRange เป็นดังด้านล่าง
SecFilterForceByteRange 1 255
และยกเลิก Rule หรือแก้ไขด้านล่างนี้ ถ้ายกเลิก ก็ใส่ # ด้านหน้าบรรทัดซะ
SecFilterSelective “HTTP_CONTENT_TYPE” multipart/form-data
หรือถ้าไม่ยกเลิก็ทำการแก้ไขให้ rule เป็นดังด้านล่างนี้ (ควรเปลี่ยนมากว่ายกเลิก)
[…]
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| « Aug | ||||||
| 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 | 31 |