วันพฤหัสบดี, สิงหาคม 16, 2555

แก้ปัญหา Apache ไม่สามารถติดต่อ MySQL ได้

ใช้ RHCL 6 อยู่แล้วมันมีโมดูล PHP ที่ต้องไปคิวรีข้อมูลจากฐานข้อมูล แต่ทำยังไงก็ไม่ได้ค่าสักที จึงได้เปิด debug ถึงเห็นว่ามัน connection refused ทั้งที่ลองเชื่อมต่อผ่าน command line ได้ ก็สงสัยว่าเป็นเพราะ SELinux หรือเปล่า ก็ลองดึงค่าทั้งหมดออกมาดู

getsebool -a | grep httpd
เห็นค่า httpd_can_network_connect เป็น off อยู่ อืม... น่าสนๆ ก็เลยเปิดมันซะ ทำได้โดย
setsebool -P httpd_can_network_connect=1
โดยคำสั่ง setsebool จะเป็นการตั้งค่าของ SELinux และ -P จะทำให้ค่านี้ยังคงอยู่เมื่อเริ่มต้นบูตครั้งต่อไปด้วย พอ restart apache ก็ใช้ฐานข้อมูลได้ละ

วันพุธ, สิงหาคม 15, 2555

แก้ปัญหา IRQ ของการ์ด PCMCIA


จดเก็บไว้นานละ แต่ลืม publish -_"

นานมาแล้ว หลังพยายามปล้ำให้การ์ด PCMCIA to PCI ใำห้ทำงานกับชิปเซ็ต SiS 5597 ก็พบวิธีแก้ไข โดยการเพิ่ม option นี้เข้าไปใน boot parameter ของ grub เป็นอันเสร็จพิธี เพื่อ force ให้มันไปใช้ค่า IRQ จาก BIOS แทน

acpi=on acpi=force lapic pci=usepirqmask pci=biosirq

วันพุธ, เมษายน 18, 2555

Perl Library Path

ในกรณีที่ต้องการติดตั้ง Perl library ในโฮมของเราเอง เพราะต้องการทดสอบหรือเพราะว่าไม่มีสิทธิ์ root ก็ตาม หลังจากติดตั้งโดยใช้

perl Makefile.PL PREFIX=PERL_LIB_PATH
make
make test
make install

ซึ่งเมื่อกำหนดให้ไปไว้ที่ไหนไปมันก็จะเอา lib/perl5/site_perl/PERL_VERSION ไปต่อท้าย เวลาจะอ้างก็ต้องใส่ให้ครบ

จริงๆ นอกจาก PREFIX ก็ยังมี INSTALLBIN, INSTALLPRIVLIB, INSTALLSITELIB, INSTALLSCRIPT, INSTALLMAN1DIR และ INSTALLMAN3DIR อยากปรับละเอียดก็ตามสบาย

แล้วสำหรับสคริปท์เดิม ถ้าไม่ทำอะไรเลยเวลารันมันก็จะด่าเรา วิธีแก้ปัญหามี 3 แบบ แล้วแต่จะชอบแบบไหน


  1. เพิ่ม -I เข้าไปที่ shebang
    #!/usr/bin/perl -I PERL_LIB_PATH
  2. เพิ่ม environment variable PERL5LIB
    export 
    PERL5LIB=PERL_LIB_PATH
    หรือ

    setenv 
    PERL5LIB PERL_LIB_PATH
  3. ใช้โมดูล lib
    use lib 
    PERL_LIB_PATH;