হঠাৎ করেই আমি কোনও সমস্যায় পড়ছি; আমার সমস্ত অ্যাপ্লিকেশন এবং সার্ভারটি ঠিকঠাক চলছিল এবং হঠাৎ করেই আমি দেখতে পেলাম খোলা ফাইলগুলির সংখ্যা।
আমি এই আদেশ দিয়ে এটি পরীক্ষা করছি:
cat /proc/sys/fs/file-nr
যখন আমি এটি দিয়ে যাচাই করি এটি এটি দেখায় 44544 0 128000
, সুতরাং 44544 হ'ল খোলা ফাইলগুলির সংখ্যা।
তবে আমি যখন এই আদেশটি যাচাই করি - lsof | wc -l
এটি দেখায় - 28384।
তাহলে কোনটি সঠিক?
আমার সর্বাধিক উন্মুক্ত ফাইলের সীমা 65535
ulimit -a
open files (-n) 65535
আমি শীর্ষ 5 প্রক্রিয়াগুলি জানতে চাই যা আরও বেশি ওপেন ফাইল ব্যবহার করছে। আমি এটি থেকে পেতে পারি lsof
তবে এখানে দেখানো গণনা আমি উল্লিখিত অন্যান্য কমান্ডের থেকে খুব আলাদা।
এই আদেশ দ্বারা গণনা করা প্রক্রিয়াগুলির বিবরণ আমি কী পেতে পারি cat /proc/sys/fs/file-nr
?
নীচের উল্লিখিত লিঙ্ক অনুসারে এটি বলেছে যে আমরা কীভাবে ওপেন ফাইল বিবরণী প্রদর্শন করতে পারি তবে lsof কমান্ড ব্যবহার না করে
আমার জন্য কোন কাজ আছে? হঠাৎ হ'ল খালি ফাইলগুলি ব্যবহার করার জন্য কোন প্রক্রিয়াটি শুরু হয়েছিল তা আমাকে খুঁজে বের করতে হবে।
আপডেটের জন্য সমস্যা জন্য ছেলেরা। আমি যে ভুলটি করেছিলাম সেটিকে আমি মূল থেকে lsof | wc -l যাচাই করছিলাম না। এই কারণেই আমি একটি বিশাল পার্থক্য দেখছিলাম।
এখনও ফাইল -nr এবং lsof আউটপুট মধ্যে পার্থক্য আছে wc -l (মূল থেকে) lsof গণনা ফাইল-এনআর কাউন্টের চেয়ে বেশি। এর কারণ হ'ল ফাইল-এনআর কিছু ডিরেক্টরিকে অগ্রাহ্য করে (যেগুলি লসফ দ্বারা ফাইল হিসাবে বিবেচিত হয়) আমি গুগলে নিজেই একটি লিটল গবেষণা করে এই কারণটি পেয়েছি। কোন পথে! সব সাহায্যের জন্য ধন্যবাদ বলছি!
lsof | wc -l
সত্যিই কি নেতিবাচক সংখ্যা দেখাচ্ছে?