কীভাবে স্থায়ীভাবে ইউলিমিট মান সেট করবেন?


19

দেবিয়ান হুইজি অন, ulimit -aদেয়:

open files                      (-n) 1024

আমি এটিকে /etc/security/limits.conf এ যুক্ত করি

*                hard    nofile          64000

তারপরে পুনরায় বুট করুন।

এবং ulimit -aএখনও 1024-এর সর্বাধিক সংখ্যক উন্মুক্ত ফাইল দেয় Anyone যে কেউ এতে কিছুটা আলোকপাত করতে পারে?


এটি কি সম্ভবত ভার্চুয়াল হোস্ট?
ডেনিস নোল্টে

না, এটি একটি মংডোব সার্ভার
Icu

উত্তর:


15

বিকল্প এক: আপনি সফ্টলিমিট উচ্চতর হিসাবে সেট করেন নি।

সম্ভাব্য সমাধান:

ইন /etc/security/limits.conf যোগ করুন

* soft nofile 2048

সঙ্গে পরীক্ষা

ulimit -n 2048 

বিকল্প দুটি: আপনি ব্যবহারকারী হিসাবে লগ ইন এবং কিছু "কনফিগারেশন" ফাইলে (প্রোফাইল, বাশার্ক, এরকম কিছু) নরম সীমাটি একটি নিম্ন মানেরতে সেট করা আছে।

আপনার ইত্যাদি ফোল্ডার এবং / অথবা হোম ফোল্ডারে উলিমিটের জন্য সম্ভাব্য সমাধান ফে গ্রেপ।

সতর্কতা: আপনার যে পরিমাণ ফাইল / ডিরেক্টরি রয়েছে তার উপর নির্ভর করে আপনি কেবলমাত্র নির্দিষ্ট ডিরেক্টরী / ফাইল বিবেচনা করতে পারেন

পিএস: এখানে প্রচুর অনুকরণীয় প্রশ্ন রয়েছে আপনি পড়তে চাইতে পারেন।

বিশেষভাবে হার্ড বনাম নরম সীমাবদ্ধতা

সম্ভাব্য অন্যান্য সমাধানের জন্য এখানে পড়ুন যা বিশদে আরও অনেকগুলি ফাইল খুলুন


প্রকৃতপক্ষে, আমি কেবল হার্ড সীমাটি to৪০০০-এ নির্ধারণ করার চেষ্টা করছিলাম। সুতরাং নরম সীমাটি এখনও ছিল ১০৪৪-এ Now আমি "* - নফিল 64000" চেষ্টা করেও একই ফলাফল পেয়েছি।
আইকু

"অনেকগুলি ফাইল খুলুন" পড়ার পরে, আমি ভেবেছিলাম যে কার্নেল সেটিংটি সীমাবদ্ধতাগুলি কনফিগারেশনকে ছাড়িয়ে যাবে তবে: "fs.file-max = 4933738"
Icu

@ আইসু এই থেকে উত্তরগুলি চেষ্টা করে দেখুন: সার্ভারফল্ট / প্রশ্ন / ৯৩২৩৪/… আপনার শেলের সাথে সম্পর্কিত হতে পারে
ডেনিস নোল্টে

আমি /etc/pam.d/ অন্য এবং সাধারণ সেশনে 'সেশন আবশ্যক pam_limits.so' যুক্ত করেছি তবে এটি কোনও উপকারে আসে না ... বিকল্প হিসাবে, আমি আমার আরআইপি স্ক্রিপ্টে একটি 'ulimit -n' যুক্ত করেছি এবং এটি কাজ করে তবে আমি ভাবছি কেন আমি আমার শেলটিতে সঠিক মানগুলি পাই না।
আইকিউ

20

ডেবিয়ান একটি বাগ আছে। বাড়াতে ulimitআপনাকে এটিকে /etc/pam.d/common-sessionফাইলে যুক্ত করতে হবে:

session required pam_limits.so

এবং /etc/security/limits.confযোগ করা:

*               soft    nofile          65535
*               hard    nofile          65535

তারপরে সিস্টেমটি পুনরায় বুট করুন।


1
আমার /etc/pam.d/common-sessionফাইলটিতে কোনও পরিবর্তন আনার দরকার নেই । এটি কেবল limits.confফাইলটিতে অন্যান্য দুটি লাইন যুক্ত করে কাজ করেছিল :-)
ফ্রান্সেসকো ক্যাসুলা

আপনার পুনরায় বুট করার দরকার নেই।
ডেভিড গুডউইন

এটা নিষ্ঠুর। ডেবিয়ান 7 এ এখন, এবং এটি কাজ করছে না। কী করবেন তা নিশ্চিত নয় :( - আমি একটি নতুন প্রশ্ন খুলতে পারি
NiCk Newman

12
গম্ভীর গর্জন। *ওয়াইল্ডকার্ড কাজ করে না root। আমি এর rootপরিবর্তে যুক্ত করেছি *, এবং এটি কাজ করছে। ধন্যবাদ!
নিকক নিউম্যান

@ ফ্রেঞ্চসকোসুলা - ডিবিয়ান এর কোন সংস্করণ ছিল? এটি সত্যিই
কোনও ত্রুটিযুক্ত

0

আমার উপর ডেবিয়ান 10-তে অ্যাপাচি ক্ষেত্রে এটি কাজ করে নি যদিও উপরেরটি সাহায্য করে নি:

echo "APACHE_ULIMIT_MAX_FILES='ulimit -n 16384'" >> /etc/apache2/envvars
service apache2 restart

আমি চেক করেছিলাম:

cat /proc/$pid/limits

..এখানে $pidঅ্যাপাচি প্রক্রিয়াগুলির একটির প্রক্রিয়া আইডি রয়েছে ID

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.