লিনাক্সে কীভাবে ওপেন ফাইলের সীমা বাড়ানো যায়


লিনাক্সে, আপনি সর্বাধিক পরিমাণে উন্মুক্ত ফাইল পরিবর্তন করতে পারেন। Ulimit কমান্ড ব্যবহার করে আপনি এই নম্বরটি সংশোধন করতে পারেন। এটি আপনাকে এটির দ্বারা শুরু করা শেল বা প্রক্রিয়াটির জন্য উপলব্ধ সংস্থানগুলি নিয়ন্ত্রণ করার ক্ষমতা দেয়।

এই সংক্ষিপ্ত টিউটোরিয়ালে আমরা আপনাকে দেখাব যে কীভাবে আপনার ওপেন ফাইল এবং ফাইলের বিবরণগুলির বর্তমান সীমা পরীক্ষা করতে হবে, তবে এটি করার জন্য আপনার সিস্টেমে রুট অ্যাক্সেস থাকা দরকার।

প্রথমে আমরা কীভাবে আপনার লিনাক্স সিস্টেমে ফাইলের বিবরণ সর্বাধিক সংখ্যক খুঁজে পেতে পারি তা দেখতে দিন see

লিনাক্স ওপেন ফাইল সীমা সন্ধান করুন

মান এতে সংরক্ষণ করা হয়:

# cat /proc/sys/fs/file-max

818354

আপনি যে নম্বরটি দেখবেন, তাতে ব্যবহারকারী কোনও লগইন সেশনে ফাইল খুলতে পারে তার সংখ্যা দেখায়। আপনার সিস্টেমে ফলাফল পৃথক হতে পারে।

আমার একটি সেন্টোস সার্ভারে উদাহরণস্বরূপ, সীমাটি 818354 নির্ধারণ করা হয়েছিল, তবে উবুন্টু সার্ভারে যে আমি বাড়িতে চালিত করি সেখানে ডিফল্ট সীমাটি 176772 নির্ধারণ করা হয়েছিল।

আপনি যদি শক্ত এবং নরম সীমাটি দেখতে চান তবে নীচের আদেশগুলি ব্যবহার করতে পারেন:

# ulimit -Hn

4096
# ulimit -Sn

1024

বিভিন্ন ব্যবহারকারীর জন্য কঠোর এবং নরম মানগুলি দেখতে, আপনি কেবলমাত্র "su" দিয়ে ব্যবহারকারীকে স্যুইচ করতে পারেন যা আপনাকে পরীক্ষা করতে চান এমন সীমাবদ্ধ করে।

উদাহরণ স্বরূপ:

# su marin
$ ulimit -Sn

1024
$ ulimit -Hn

4096

লিনাক্সে সিস্টেম ওয়াইড ফাইল বর্ণনাকারীর সীমাবদ্ধতা কীভাবে পরীক্ষা করবেন

আপনি যদি কোনও সার্ভার চালাচ্ছেন তবে আপনার কিছু অ্যাপ্লিকেশনগুলিতে খোলা ফাইল বর্ণনাকারীদের জন্য উচ্চতর সীমাবদ্ধতার প্রয়োজন হতে পারে। এগুলির জন্য একটি ভাল উদাহরণ হ'ল মাইএসকিউএল/মারিয়াডিবি পরিষেবা বা অ্যাপাচি ওয়েব সার্ভার।

আপনি লিনাক্সে খোলা ফাইলগুলির সীমাটি কার্নেল নির্দেশিকা fs.file-max সম্পাদনা করে বাড়াতে পারেন। এই উদ্দেশ্যে, আপনি সিসটেল ইউটিলিটি ব্যবহার করতে পারেন।

সিস্টেমে রানটাইলে কার্নেল প্যারামিটারগুলি কনফিগার করতে ব্যবহৃত হয়।

উদাহরণস্বরূপ, মুক্ত ফাইলের সীমা 500000 এ বাড়ানোর জন্য, আপনি নিম্নলিখিত কমান্ডটি রুট হিসাবে ব্যবহার করতে পারেন:

# sysctl -w fs.file-max=500000

আপনি নিম্নলিখিত কমান্ডের সাহায্যে খোলা ফাইলগুলির বর্তমান মানটি পরীক্ষা করতে পারেন:

$ cat /proc/sys/fs/file-max

উপরের কমান্ডের সাহায্যে আপনার করা পরিবর্তনগুলি কেবল পরবর্তী রিবুট হওয়া পর্যন্ত সক্রিয় থাকবে। আপনি যদি এগুলি স্থায়ীভাবে প্রয়োগ করতে চান তবে আপনাকে নীচের ফাইলটি সম্পাদনা করতে হবে:

# vi /etc/sysctl.conf

নিম্নলিখিত লাইন যুক্ত করুন:

fs.file-max=500000

অবশ্যই, আপনি আপনার প্রয়োজন অনুসারে নম্বর পরিবর্তন করতে পারেন। পরিবর্তনগুলি যাচাই করতে আবার ব্যবহার করুন:

# cat /proc/sys/fs/file-max

পরিবর্তনগুলি কার্যকর করতে ব্যবহারকারীদের লগআউট এবং আবার লগইন করতে হবে। আপনি যদি সীমাটি অবিলম্বে প্রয়োগ করতে চান, আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:

# sysctl -p

লিনাক্সে ব্যবহারকারী স্তর ওপেন ফাইল সীমা সেট করুন

উপরের উদাহরণগুলি, বিশ্বব্যাপী সীমাবদ্ধতা কীভাবে সেট করতে হবে তা দেখিয়েছে, তবে আপনি ব্যবহারকারীর ভিত্তিতে সীমা প্রয়োগ করতে পারেন। সেই উদ্দেশ্যে, ব্যবহারকারী রুট হিসাবে আপনাকে নিম্নলিখিত ফাইলটি সম্পাদনা করতে হবে:

# vi /etc/security/limits.conf

আপনি যদি লিনাক্স প্রশাসক হন তবে আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি সেই ফাইলটির সাথে খুব পরিচিত হন এবং আপনি এটিতে কী করতে পারেন। এতে সমস্ত মন্তব্য পড়ুন কারণ এটি বিভিন্ন স্তরের ব্যবহারকারী/গোষ্ঠীগুলিকে সীমাবদ্ধ রেখে সিস্টেমের সংস্থান পরিচালনার ক্ষেত্রে দুর্দান্ত নমনীয়তা সরবরাহ করে provides

আপনার যুক্ত হওয়া লাইনগুলি নিম্নলিখিত পরামিতিগুলি গ্রহণ করবে:

<domain>        <type>  <item>  <value>

এখানে ব্যবহারকারী মারিনের জন্য একটি নরম এবং কঠোর সীমা নির্ধারণের একটি উদাহরণ:

## Example hard limit for max opened files
marin        hard nofile 4096
## Example soft limit for max opened files
marin        soft nofile 1024

সর্বশেষ ভাবনা

এই সংক্ষিপ্ত নিবন্ধটি আপনাকে সর্বাধিক সংখ্যক খোলার ফাইলের জন্য কীভাবে বিশ্বব্যাপী এবং ব্যবহারকারী স্তরের সীমা পরীক্ষা করতে ও কনফিগার করতে পারে তার একটি প্রাথমিক উদাহরণ আপনাকে দেখিয়েছে।

আমরা কেবল পৃষ্ঠটি স্ক্র্যাচ করার সময়, আমি আপনাকে /etc/sysctl.conf এবং /etc/security/limits.conf সম্পর্কিত আরও বিশদ চেহারা এবং পড়তে এবং সেগুলি কীভাবে ব্যবহার করতে হয় তা শিখতে উত্সাহিত করি। তারা আপনার জন্য একদিন খুব সাহায্য করবে।