আমি ক্র্যাশ হওয়া সমস্ত কিছুর একটি কোর ডাম্প তৈরির জন্য আমার পরিবেশ সেটআপ করি, তবে আমি যখন এক্সিকিউটিভ ব্যবহারকারীর চেয়ে আলাদা ব্যবহারকারীর উপর এসইউডি সেট সেট করি তবে এটি কোনও कोर ডাম্প তৈরি করে না। কোন ধারনা কেন এই হতে পারে? আমি ওয়েবে এটি কোথাও খুঁজে পাইনি, আমার মনে হয় এটি কোনও ধরণের সুরক্ষা বৈশিষ্ট্য তবে আমি এটি অক্ষম করতে চাই ...
সমস্যা:
$ cd /tmp
$ cat /etc/security/limits.conf | grep core
* - core unlimited
root - core unlimited
$ ls -l ohai
-rwsr-sr-x 1 root root 578988 2011-06-23 23:29 ohai
$ ./ohai
...
Floating point exception
$ sudo -i
# ./ohai
...
Floating point exception (core dumped)
# chmod -s ohai
# exit
$ ./ohai
...
Floating point exception (core dumped)
সম্পাদনা করুন: এটি যথাসম্ভব সুরক্ষিতভাবে কাজ করতে পরিবেশের সেটআপ করার জন্য আমার কাছে এখন নিম্নলিখিত স্ক্রিপ্ট রয়েছে:
mkdir -p /var/coredumps/
chown root:adm /var/coredumps/
chmod 772 /var/coredumps/
echo "kernel.core_pattern = /var/coredumps/core.%u.%e.%p" >> /etc/sysctrl.conf
echo "fs.suid_dumpable = 2" >> /etc/sysctl.conf
echo -e "*\t-\tcore\tunlimited" >> /etc/security/limits.conf
echo -e "root\t-\tcore\tunlimited" >> /etc/security/limits.conf
এখন যা করা দরকার তা হ'ল এসিএলকে / ভার / করডাম্পগুলিতে যুক্ত করা যাতে ব্যবহারকারীরা কেবল ফাইল যুক্ত করতে পারেন এবং এগুলি আর কখনও পরিবর্তন করতে বা পড়তে পারেন না। একমাত্র ডাউনসাইজটি হ'ল chroot'ed অ্যাপ্লিকেশনগুলির সাথে আমার এখনও সমস্যা আছে যার জন্য এর bind mount
মতো একটি বা অন্য কিছু প্রয়োজন ।