উবুন্টু 18.04 এ সর্বাধিক উন্মুক্ত ফাইলের সীমা কীভাবে বাড়ানো যায়?


16

আমি চালিয়েছি ulimit -n 65536, নিম্নলিখিত লাইনগুলিতে যুক্ত করেছি /etc/security/limits.conf:

*    soft nofile 65536
*    hard nofile 65536
alix soft nofile 65536
alix hard nofile 65536
root soft nofile 65536
root hard nofile 65536

এবং session required pam_limits.soউভয় যোগ :

  • /etc/pam.d/common-session
  • /etc/pam.d/common-session-noninteractive

আর fs.file-max = 65536করার /etc/sysctl.d/60-file-max.conf

তবুও, ulimit -nআমার সেশনটি পুনরায় চালু এবং চালানোর পরে , আমি কেবল 4096 পাই (আগে এটি ছিল 1024)।

আমি কী মিস করছি?

উত্তর:


12

ম্যানুয়াল থেকে:

 -n     The maximum number of open file descriptors (most
        systems do not allow this value to be set)

systemd এর জন্য একটি বিকল্প রয়েছে:

$ more /etc/systemd/system.conf | grep NOFILE
#DefaultLimitNOFILE=

তবে এটি কেবল গ্রাফিকাল ব্যবহারকারীর সেটিংসের জন্যও। সরান #এবং আপনি এটি 65536 এ সেট করতে পারেন।

ড্যানিয়েল ফার্নান্দেজের মন্তব্য :

DefaultLimitNOFILE=65536 

এছাড়াও প্রয়োজন হতে পারে

/etc/systemd/user.conf 

1
উল্লেখ করতে ভুলে গেছি, আমি তাও করেছি।
অ্যালিক্স অ্যাক্সেল

1
@ অ্যালেক্সএক্সেল: এই উত্তরটি আমার পক্ষে কাজ করেছিল, এছাড়াও * - nofile 16384(আমি কেবল 16384 চেষ্টা করছিলাম) /etc/security/limits.conf
ডগ স্মিথিস

65k একটি অনুমান এবং এটি প্রত্যাশিত হবে যে অনুমতি দেওয়া আছে তার উপরের অংশে কঠোর কোডেড সীমা রয়েছে। ডগ ইঙ্গিত হিসাবে আপনি কম শুরু করতে চাইতে পারেন;)
রিনজউইন্ড

"তবে এটি কেবল গ্রাফিকাল ব্যবহারকারীর সেটিংসের জন্যই" বলতে কী বোঝায়?
সিনান

1
নোট সেটিংয়ের প্রয়োজনও DefaultLimitNOFILE=65536হতে পারে/etc/systemd/user.conf
ড্যানিয়েল ফার্নান্দেজ

2

উবুন্টু 18.04 ধাপে ধাপে

আশা করি এগুলি বেশ দীর্ঘ সাহায্য করে তবে এটি কার্যকর হয় (প্রমাণ সহ)

আমি এই থ্রেডটি জুড়ে এসেছিলাম উবুন্টু 18.04 এ মঙ্গোডিবি ইনস্টল করার সময়

https://posidev.com/blog/2009/06/04/set-ulimit-parameters-on-ubuntu/

আপনি দেখতে পাচ্ছেন এটি বেশ পুরানো তবে এটি আমার পক্ষে কার্যকর।

এখানে আমি কি করেছি।

  1. মঙ্গোডিবি প্রস্তাবিত সেটিংস ( https://docs.mongodb.com/manual/references/ulimit/#review-and-set-resource-limits )

    • -ফ (ফাইলের আকার): সীমাহীন
    • -t (সিপিইউ সময়): সীমাহীন
    • -v (ভার্চুয়াল মেমরি): সীমাহীন [1]
    • -l (লক-ইন-মেমরির আকার): সীমাহীন
    • -n (ফাইলগুলি খুলুন): 64000
    • -মি (স্মৃতি আকার): সীমাহীন [1] [2]
    • -উ (প্রক্রিয়া / থ্রেড): 64000
  2. আমার বর্তমান সীমা পরীক্ষা করুন

উবুন্টু @ আইএসডিবি-পর্যায়: lim limমলিট -এ
মূল ফাইলের আকার (ব্লক, -সি) 0
ডেটা সেগ আকার (কেবিটস, -ডি) সীমাহীন
নির্ধারিত অগ্রাধিকার (-e) 0
ফাইলের আকার (ব্লক, -ফ) সীমাহীন
মুলতুবি সংকেত (-i) 7873
সর্বাধিক লক মেমরি (কেবিটস, -২) 16384
সর্বাধিক মেমরি আকার (কেবিটস, -ম) সীমাহীন
ফাইল খুলুন (-n) 1024
পাইপের আকার (512 বাইট, -পি) 8
পসিক্স বার্তার সারি (বাইটস, -কিউ) 819200
রিয়েল-টাইম অগ্রাধিকার (-আর) 0
স্ট্যাকের আকার (কেবিটস, -এস) 8192
সিপিইউ সময় (সেকেন্ড, -t) সীমাহীন
সর্বোচ্চ ব্যবহারকারী প্রক্রিয়া (-u) 7873
ভার্চুয়াল মেমরি (কেবিটস, -ভি) সীমাহীন
ফাইল লকস (-x) সীমাহীন
  1. কি পরিবর্তন প্রয়োজন তা একটি নোট তৈরি করুন

    • লক-ইন-মেমরি আকার , সীমাহীনতে সেট করা দরকার needs
    • ফাইলগুলি খুলুন , 64৪০০০ সেট করা দরকার
    • প্রক্রিয়া / থ্রেড * , 64৪০০০ সেট করা দরকার
  2. উবুন্টু কীভাবে এই সীমা পরিবর্তন করতে পারে?

limits ম্যান সীমাবদ্ধতা

NAME এর
   حدী.কম - পাম_লিমিট মডিউলের জন্য কনফিগারেশন ফাইল

বর্ণনা
   Pam_limits.so মডিউলটি ইউলিমিট সীমা, চমৎকার অগ্রাধিকার এবং একসাথে লগইন সেশনের সংখ্যা ব্যবহারকারীর লগইন সেশনে সীমাবদ্ধ করে। কনফিগারেশন ফাইল সিনট্যাক্সের এই বিবরণটি প্রযোজ্য

       /etc/security/limits.conf ফাইল এবং * .conf ফাইলগুলিতে 
       /etc/security/limits.d ডিরেক্টরি।
  1. যথেষ্ট পরিষ্কার মনে হচ্ছে, /etc/security/limits.conf ফাইলটি সম্পাদনা করুন। ঠিক আছে এটি বের করার জন্য ...

এখানে সেই ফাইলটির শুরু, এবং দেখুন এটির অবশ্যই নির্দেশাবলীর মধ্যে রয়েছে, মনে রাখবেন এটি ভাল লোকদের দ্বারা লিখিত উন্মুক্ত উত্স ! :)

    vi /etc/security/limits.conf

    # /etc/security/limits.conf 
    # প্রতিটি লাইন ফর্মটিতে ব্যবহারকারীর জন্য একটি সীমা বর্ণনা করে:                                                                   
    #                                                                                
    #কোথায়:                                                               
    # হতে পারে:
    # - একটি ব্যবহারকারীর নাম

(আপনি আরও বিশদ জানতে চাইলে নিজেই ফাইলটি দেখুন)
  1. অবশেষে পরিবর্তনগুলি করুন। মঙ্গোডিবি যেমন মংডোবিবি গ্রুপ এবং ব্যবহারকারী হিসাবে চালায়, ব্যবহারকারীদের কেবল সীমাবদ্ধ করা বাড়াতে ভাল ধারণা হবে। আমি এখানে এবং সেখানে '*' ব্যবহৃত দেখেছি, আমার কাছে এটি সুরক্ষা ঝুঁকিপূর্ণ। এটি সার্ভারে এই সমস্ত সীমাবদ্ধতা সরবরাহ করে এবং এটি আপনার সর্বাধিক সর্বাধিক ব্যবহার করতে পারে to সুতরাং তাদের কেবল মঙ্গডব ব্যবহারকারীর জন্য তৈরি করা যাক।

আমার পরিবর্তনগুলি এখানে:

mongodb নরম মেমলক সীমাহীন
mongodb হার্ড মেমলক সীমাহীন
mongodb সফট নফিল 64000
mongodb হার্ড নফিল 64000
মংডব্ব নরম এনপ্রোক 64000
mongodb হার্ড এনপ্রোক 64000
  1. অবশেষে, অবশেষে, এটিকে পুরুষ সন্নিবেশে মনে রাখবেন।

    حدী.কম - পাম_লিমিট মডিউলের জন্য কনফিগারেশন ফাইল

    আরও নিশ্চিত হয়ে নিন যে পাম_লিমিট মডিউল লোড হয়েছে যাতে এই সমস্ত সীমাবদ্ধ জিনিসগুলি কাজ করে। এটি করতে আপনি /etc/pam.d/common-session সম্পাদনা করুন। অবশ্যই এটি ম্যান পেজেও রয়েছে।

sudo vi /etc/pam.d/common-session

# Pam_limits.so বোঝা হয়েছে তা নিশ্চিত করতে এটি যুক্ত করুন।
অধিবেশন প্রয়োজন pam_limits.so

একটি রিবুট সীমাবদ্ধতা প্রদর্শন করবে (ব্যবহারকারীর মংডোব জন্য) প্রয়োগ করা হয়েছে। পরিবর্তে '*' ব্যবহার করে আপনি যদি এগুলি প্রয়োগ করেন তবে আপনি মংডব ব্যবহারকারীকে স্যুইচ না করে পরীক্ষা করতে পারেন। এই কমান্ডটি কার্যকর করুন।

limমিলিট -এ

মূল ফাইলের আকার (ব্লক, -সি) 0
ডেটা সেগ আকার (কেবিটস, -ডি) সীমাহীন
নির্ধারিত অগ্রাধিকার (-e) 0
ফাইলের আকার (ব্লক, -ফ) সীমাহীন
মুলতুবি সংকেত (-i) 7873
সর্বাধিক লক করা মেমরি (কেবিটস, -লি) সীমাহীন
সর্বাধিক মেমরি আকার (কেবিটস, -ম) সীমাহীন
ফাইলগুলি খুলুন (-n) 64000
পাইপের আকার (512 বাইট, -পি) 8
পসিক্স বার্তার সারি (বাইটস, -কিউ) 819200
রিয়েল-টাইম অগ্রাধিকার (-আর) 0
স্ট্যাকের আকার (কেবিটস, -এস) 8192
সিপিইউ সময় (সেকেন্ড, -t) সীমাহীন
সর্বাধিক ব্যবহারকারী প্রসেস (-u) 64000
ভার্চুয়াল মেমরি (কেবিটস, -ভি) সীমাহীন
ফাইল লকস (-x) সীমাহীন

যেমন আপনি দেখতে পাচ্ছেন, চুপচাপ ঝকঝকেভাবে সমস্ত সীমাবদ্ধতা আমরা চেয়েছিলাম সেট করে।

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