ফিক্সিং ওলিমিট: ফাইল খুলুন: সীমা পরিবর্তন করতে পারে না: অপারেশন অনুমোদিত নয়


13

আমি এটি বিভিন্ন জিএনইউ / লিনাক্স ইনস্টলেশনতে পরীক্ষা করেছি:

perl -e 'while(1){open($a{$b++}, "<" ,"/dev/null") or die $b;print " $b"}'

সিস্টেম এ এবং ডি

আমি যে প্রথম সীমাটি আঘাত করেছি সেটি হ'ল 1024 It এটি সহজেই /etc/security/limits.conf এ স্থাপন করা হয়:

*                hard    nofile          1048576

এবং তারপরে চালান:

ulimit -n 1048576
echo 99999999 | sudo tee /proc/sys/fs/file-max

এখন পরীক্ষাটি 1048576 এ চলেছে।

যাইহোক, দেখে মনে হচ্ছে আমি এটিকে 1048576 এর উপরে তুলতে পারব না 4 যদি আমি 1048577 সীমাবদ্ধ করে রাখি তবে এটি কেবল উপেক্ষা করা হবে।

কি কারণ?

সিস্টেম বি

সিস্টেমে BI এমনকি 1048576 এ যেতে পারে না:

echo 99999999 | sudo tee /proc/sys/fs/file-max

/etc/security/limits.conf:

*                hard    nofile          1048576

আমি এখানে পেয়েছি:

$ ulimit -n 65537
bash: ulimit: open files: cannot modify limit: Operation not permitted
$ ulimit -n 65536
#OK

সেই সীমাটি কোথা থেকে এল?

সিস্টেম সি

এই সিস্টেমের সীমাবদ্ধতাগুলিতে 1048576 সীমা রয়েছে এবং 99/999999 / proc / sys / fs / ফাইল-সর্বাধিক সীমা রয়েছে।

তবে এখানে সীমা 4096:

$ ulimit -n 4097
-bash: ulimit: open files: cannot modify limit: Operation not permitted
$ ulimit -n 4096
# OK

আমি কীভাবে এটি বাড়িয়ে তুলব (কমপক্ষে) 1048576?

(নিজের কাছে নোট: করবেন না echo 18446744073709551616 | sudo tee /proc/sys/fs/file-max:)


1
ব্যাশ: ulimit: ফাইল খুলুন: সীমা সংশোধন করতে পারবেন না: আমি ঠিক একই সমস্যা আছে, সীমা 1048576. মনে করে থাকেন আমি উপর যেতে নিম্নলিখিত ত্রুটি পেতে মনে হয় অপারেশন না অনুমতি
— Abbadon

হাই, আমি একটি খুব অনুরূপ সমস্যা হচ্ছে। আমি মনে করি যে এই বিভিন্ন সিস্টেমগুলি কী তা সম্পর্কে আরও বিশদ সরবরাহ করা খুব সহায়ক হবে।
— 4

উত্তর:


4

/etc/ssh/sshd_configএতে রয়েছে যা পরীক্ষা করুন :

UsePAM=yes

এবং /etc/pam.d/sshdএতে রয়েছে:

session    required   pam_limits.so

1048576 সর্বোচ্চ কেন তার কোনও উত্তর নেই।

1048576 প্রক্রিয়া অনুযায়ী বলে মনে হচ্ছে। তাই একাধিক প্রক্রিয়া চালিয়ে এই সীমাটি অতিক্রম করা যায়।


4
যদি এটি সত্যিই আপনার নিজের সমস্যার সমাধান হত তবে আমি মনে করি সমস্যা এবং উপরের সমাধানের মধ্যে আরও একটি সংযোগ আকর্ষণ করা ভাল d
— জেফ শ্যাচলার

2
Re: 1048576 (= 2 ^ 10 * 2 ^ 10 = 1024 ^ 2, রেফারেন্সের জন্য)। : এই উত্তর এখানে কিছু প্রাসঙ্গিক তথ্য হতে পারে stackoverflow.com/a/1213069/2320823
— saladi

1
এর সাথে এসএসআই কি করতে পেরেছিল?
— লিনাস

আমি @ লিনাসের সাথে একমত দুঃখিত, আমি মনে করি উত্তর এবং প্রশ্নের মধ্যে লিঙ্কটি অস্পষ্ট।
— 4
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.