ফাইল / ডিরেক্টরি খোলার সময়টি কীভাবে গণনা করবেন?


1

আমি ফাইলটি কতবার খোলা হয়েছে তার সন্ধান করার চেষ্টা করছি (ওএস শুরুর পর থেকে)। আমি স্ট্যাটের মাধ্যমে এটি করার কথা ভাবছি, তবে বেশিরভাগ পতাকাগুলি কেবল এটি খোলার শেষ সময়ের মধ্যে পার্থক্যটি ফিরিয়ে দেয়।


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

উত্তর:


2

এই উত্তরটি কী করা দরকার তা ব্যাখ্যা করে, তবে কীভাবে আপনার বিতরণ, আপনার সেটআপ এবং উদ্দেশ্য এবং আপনি কী কী সরঞ্জামগুলি ডেটা পার্স করতে চান তা নির্ভর করে:

আপনি যা সন্ধান করছেন তা হ'ল লিনাক্সের মধ্যে অডিট ডিমন। নিবন্ধিত ম্যানপেজ থেকে (8) :

অডিটড হ'ল লিনাক্স অডিটিং সিস্টেমের ইউজারস্পেস উপাদান। এটি ডিস্কে অডিট রেকর্ড লেখার জন্য দায়ী। লগগুলি দেখতে আউশার্ক বা আওরপোর্ট ইউটিলিটিগুলির সাহায্যে সম্পন্ন করা হয় । নিরীক্ষার বিধিগুলি কনফিগার করা অডিটেক্টল ইউটিলিটি দিয়ে সম্পন্ন হয় । প্রারম্ভকালীন সময়ে, নিয়মগুলি অডিটেক্টল/etc/audit/audit.rules দ্বারা পড়তে হয় এবং কার্নেলের মধ্যে লোড করা হয়। পরিবর্তিতভাবে, একটি অজেনারলস প্রোগ্রাম রয়েছে যা এর মধ্যে থাকা নিয়মগুলি পড়ে এবং সেগুলি একটি ফাইলে সংকলিত করে । অডিট ডিমন নিজেই কিছু কনফিগারেশন বিকল্প রয়েছে যা অ্যাডমিন কাস্টমাইজ করতে চাইতে পারে। তারা ফাইল পাওয়া যায় ।/etc/audit/rules.d/audit.rulesauditd.conf

অডিটিং আপনার স্পেসিফিকেশন অনুযায়ী নির্দিষ্ট সিস্টেম কল করার সময় লগগুলি তৈরি করতে কার্নেলের মধ্যে নির্মিত ফাংশনগুলি ব্যবহার করে। একবার সেটআপ হয়ে গেলে আপনি /var/log/auditআপনার বিতরণ অনুযায়ী লগ ইন বা অন্য কোথাও অনুরূপ খুঁজে পাবেন ।

কোনও ফাইলে অ্যাক্সেস অডিট করতে, আপনি এর অনুরূপ কিছু ব্যবহার করবেন:

auditctl -w /path/to/interesting/files/ -p rwxa -k myfileaudits

যেখানে -wফাইলগুলির পাথ নির্দিষ্ট করা হয়েছে তা -pসুনির্দিষ্ট করে যে সিস্টেমটি r eads w rites, e x ecums, এবং একটি ttribute or પરવાનગી পরিবর্তনের নিরীক্ষণ করবে। অবশেষে, -kবিকল্পটি আপনাকে এউসার্কের সাহায্যে এই বিধিটি অনুসন্ধান করার সময় ব্যবহারের জন্য একটি স্বেচ্ছাসেবক কী নির্দিষ্ট করতে দেয় ।

দ্রষ্টব্য, যদিও অডিটেড সিস্টেম কলগুলি বন্ধ -p rকরে দেয়, পঠন ফাংশনটি ট্র্যাক করে না , বরং খোলার জন্য যাতে লগগুলি প্রতিটি পঠনের সাথে প্লাবিত না হয় তবে প্রতিবার ফাইল পড়ার জন্য একটি ফাইল খোলার সময় একটি প্রবেশিকা তৈরি করা হয়।

একবার অডিটিংটি চালু হয়ে গেলে এবং লগগুলি তার জায়গায় রাখার পরে, আউশার্ক নির্দিষ্ট ফাইলগুলিতে সমস্ত অ্যাক্সেসের জন্য এই লগগুলি পার্স করতে ব্যবহার করতে পারে এবং লম্বা উত্পন্ন করতে স্ট্যান্ডার্ড পাঠ্য বা পরিসংখ্যান সরঞ্জামগুলি ব্যবহার করা যেতে পারে। এই থেকে বিভিন্ন রকমের হতে পারে grepএবং wc -lলগ এন্ট্রি গণনা, বা স্ক্রিপ্টিং ও কিছু সমন্বয় গনুহ-আর বা gnuplot গ্রাফ এবং রিপোর্ট তৈরি করতে।


অন্য বিকল্প হ'ল এসইএলিনাক্স ব্যবহার করা । যদিও সেলইনাক্স অ্যাক্সেস নিয়ন্ত্রণের জন্য একটি সরঞ্জাম যা সাধারণত অ্যাক্সেস-অস্বীকারগুলিকে লগ করে, সমস্ত অ্যাক্সেস লগ করার জন্য এটি সেটআপ করা যেতে পারে এবং নিরীক্ষণের জন্য অনুরূপ তথ্য সরবরাহ করতে পারে।


সম্পাদনা: যদি প্রথম থেকেই অ্যাক্সেসের রেকর্ডের প্রয়োজন হয় : উদাহরণস্বরূপ, ওএস ইনস্টলেশন চলাকালীন, নিরীক্ষণ শুরুর আগে বুটের সময়, বা নিরীক্ষণ ইনস্টলেশন করার আগে, তারপরে আরও চূড়ান্ত ব্যবস্থা গ্রহণ করা প্রয়োজন। initrd.imgপ্রয়োজনীয় ডিবাগার বা কার্নেল স্তরের ট্রেসিং সরঞ্জামগুলি লোড করতে একটি কাস্টম ইনস্টলার বা কাস্টম বুট ফাইল তৈরি করতে হবে। এই ট্রেসিং সরঞ্জাম অন্তর্ভুক্ত হতে পারে dtrace , জন্য perf , SystemTap দ্বারা , ktap বুট করার সময় এক্সেস ধরতে বা অনুরূপ ডিবাগার স্তর সরঞ্জাম। একটি ভাল রেফারেন্স হ'ল http://www.brendangregg.com/linuxperf.html এবং সিস্টেমের পারফরম্যান্সের জন্য এই জাতীয় বিশ্লেষণের একটি উদাহরণ, অডিট না করে বুটচার্ট

এটি সেট আপ করা আমার অভিজ্ঞতার বাইরে নয় - আশা করি উল্লেখগুলি কার্যকর প্রমাণিত হয়েছে।


+1 - এটি সম্পাদনের জন্য সেট আপ সম্পর্কে এটি দুর্দান্ত উত্তর। ওএস সূচনা থেকে এই তথ্যটি পাওয়ার বিষয়ে প্রশ্ন জিজ্ঞাসা করে, যা প্রত্যাবর্তনমূলকভাবে বোঝায়। আপনি কি সম্বোধনের উত্তরটি প্রসারিত করতে পারবেন এটি সম্ভব কিনা?
ফিক্সার 1234

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

1
প্রশ্নটিতে আমার পড়াটা আসলে অন্যরকম ছিল। আমি ভেবেছিলাম যে এটি জিজ্ঞাসা করছে সত্যের পরে জানার উপায় আছে কিনা? আপনার অতীতের কিছু সময় একটি বিদ্যমান সিস্টেম তৈরি হয়েছে। এই মুহুর্তে আপনি কোনও ফাইলের ব্যবহারের ইতিহাস জানতে চান। প্রতিটি ফাইলের সাথে কি ইতিহাস বা পরামিতি যুক্ত রয়েছে যা ফাইল সিস্টেমের অংশ যা কোনও সালিসী ফাইল খোলার সময়কে নির্দেশ করে। মনে হচ্ছে আপনি উত্তরটি না বলে বলছেন। আপনি যে বিন্দু থেকে ব্যবহার ট্র্যাক করতে সেট আপ করতে পারেন। আপনার যদি এটির প্রয়োজন হয় তবে আপনার এটি আগে থেকেই সেট আপ করা দরকার।
ফিক্সার 1234

সঠিক। এটি অবশ্যই সেটআপ করা উচিত। এক্সট 4 এ একটি ইনোডের কাঠামো দেখুন ... অ্যাক্সেস গণনাগুলির জন্য সেই স্ট্রাক্টে কোনও প্রবেশ নেই, কেবলমাত্র i_*timeবিভিন্ন প্রবেশাধিকারের সময় যেমন : প্রবেশাধিকার, ইনোড পরিবর্তন, ডেটা পরিবর্তন এবং মুছে ফেলার জন্য struct
23 এ গ্ল্যালন

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