একটি প্রক্রিয়া দ্বারা খোলার / অ্যাক্সেস করা ফাইলগুলি ক্রমাগত নিরীক্ষণ


24

lsof -p 12345 প্রক্রিয়া দ্বারা খোলার সমস্ত ফাইল তালিকাভুক্ত করবে যার পিড 12345 তবে কেবলমাত্র নির্দিষ্ট সময়ের জন্য।

পুরো জীবনকালে প্রক্রিয়াটিতে অ্যাক্সেস করা প্রতিটি ফাইলের তালিকা / প্রদর্শন করতে আমরা কীভাবে শুরু থেকে শেষ পর্যন্ত (প্রক্রিয়াটি শেষ না হওয়া পর্যন্ত) একটি প্রক্রিয়া পর্যবেক্ষণ করতে পারি?


উত্তর:


31

দিয়ে চেষ্টা করুন strace -p 12345; এটি আপনি অর্জন করার চেষ্টা করছেন তা করা উচিত।

আউটপুটটি কেবল খোলা ফাইলগুলি প্রদর্শন করতে ফিল্টার করা যেতে পারে ( ড্যান ডি এর মন্তব্য ):

strace -e open -p 12345

দ্রষ্টব্য: আপনি এর সাথে দ্রুত চলমান প্রক্রিয়াগুলিও সনাক্ত করতে পারেন strace -e open <command>।


আউটপুট বন্ধুত্বপূর্ণ এবং অত্যধিক অতিরিক্ত জিনিস নয়।
— এমএ 1

আপনি পাইপ দিয়ে এটি ঠিক করতে পারেন - strace -p {pid} | grep -i "Open" | tee files_opened.log। মূলটি হ'ল grep, যা আপনাকে (যেমন open()) যে সিস্টেম কল করতে চায় তার আউটপুট ফিল্টার করতে দেয় ।

11
@Ninefingers বাস্তবিক straceযে এর চেয়ে ভালো কিছু করতে পারি grepসঙ্গে -e: বিকল্পstrace -e open
— ড্যান ডি

@ ড্যান্ড ওহ হ্যাঁ,

যখন আমি স্ট্রেস কমান্ডটি হত্যা করি, এটি এটি চিহ্নিত করা জিনিসটিকেও হত্যা করে। কেন এটি হচ্ছে (সাইগউইন)?
— সিএমসিডিগ্রাগনকাই

6

নতুন ইউটিলিটি ফ্যাট্রেস এটি করবে: https://launchpad.net/fatrace/

sudo fatrace | grep '(6514)'

-P বিকল্পটি ব্যবহার করবেন না, এর অর্থ lsof বা অন্যান্য ইউটিলিটিগুলিতে যা বোঝায় তার বিপরীত।


3

এটি আপনার কমান্ডটি পুনরায় চালু করবে এবং প্রতিবার স্ক্রিন সাফ করবে:

watch "lsof -p 12345"

সতর্কতা: এটি দ্রুত ফাইল অ্যাক্সেস মিস করবে এবং দীর্ঘ স্থায়ী ফাইলগুলি দেখার জন্য উপযুক্ত


2
এটি অন্যান্য উত্তর ব্যবহারের তুলনায় কিছুটা আনাড়ি strace।
— ডেভিড ফোস্টার 17

1
এটি সঠিক নয় - কোনও প্রক্রিয়াlsof
— ডোর

@ ডোর আপনি lsof এর সময় নির্ধারণ করতে পারবেন সাব 1 সেকেন্ডে এবং এটির নির্ভুলতা বাড়িয়ে তুলতে পারেন। এটি অন্যের তুলনায় আনাড়ি হওয়া সত্ত্বেও, আপনি এটি ভুল যে এটি একটি ভুল সমাধান।
— জর্ডন বেডওয়েল

যদি আপনি দীর্ঘ ফাইল অপারেশনটির দিকে তাকান (যেমন একটি ডাটাবেস ব্যাকআপ) এটি একটি ভাল সহজ বিকল্প হতে পারে।
— jcalfi314
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.