โดยทั่วไปแล้ว daemon เป็นการทำงานในรูปแบบ background process การสั่งให้ deamon ทำงานสามารถทำได้โดยใช้ service command หรือ ใช้ init script การเปิดใช้งาน core dump (ดูรายละเอียดของ core dump ได้ที่ Core dump file) เพื่อใช้งานการ debug ของโปรแกรมหรือตามความต้องการเพื่อตรวจสอบข้อผิดพลาดของโปรแกรม
การ enable core dump สำหรับ daemon หรือ service สามารถทำได้ดังนี้
- แก้ไขไฟล์ /etc/profile ด้วยคำสั่ง vi /etc/profile
- แก้ไขไฟล์ /etc/sysconfig/init ด้วยการเพิ่ม DAEMON_COREFILE_LIMIT=’unlimited’ เข้าไป
- โดยทั่วไปแล้ว core dump ไม่สามารถสร้างโดยโปรแกรมที่รันด้วย setuid เพื่อป้องกันข้อมูลรั่วไหลออกไปยัง user อื่น ดังนั้นเราจึงต้องแก้ไขให้สามารถทำ core dump ใน setuid program ด้วย
- สำหรับ Red Hat Enterprise Linux 5:
echo 2 > /proc/sys/fs/suid_dumpable
- สำหรับ Red Hat Enterprise Linux 4:
- สำหรับ Red Hat Enterprise Linux 3:
- แก้ไขไฟล์ /etc/sysctl.conf เพื่อเพิ่มข้อความด้านล่างลงไป
- Reload settings ด้วยการใช้คำสั่ง sysctl -p
แก้ไขบรรทัด ulimit -S -c 0 > /dev/null 2>&1 แก้ไขเป็น
ulimit -c unlimited >/dev/null 2>&1
echo 2 > /proc/sys/kernel/suid_dumpable
echo 1 > /proc/sys/kernel/core_setuid_ok
fs.suid_dumpable = 2 # RHEL 5 only
kernel.suid_dumpable = 2 # RHEL 4 only
kernel.core_setuid_ok = 1 # RHEL 3 only
kernel.core_pattern = /tmp/core
No comments:
Post a Comment