কার্নেল রিং বাফার আরএসস্লগের সাথে তুলনামূলক কোথায় বসে?


9

rsyslogকার্নেলের রিং বাফারের উপরে কি কেবল একটি বিমূর্ত স্তর রয়েছে? বা কার্নেলের রিংটি তার নিজস্ব সত্তা এবং rsyslogএর ইন্টারঅ্যাকশনটি অন্য কোনও "অ্যাপ্লিকেশন" এর মতো?

logs  syslog  dmesg 

উত্তর:


6

যদিও নথির বিভিন্ন টুকরো (সহ man dmesg) এটিকে "কার্নেল রিং বাফার" হিসাবে উল্লেখ করে, এটি কার্নেল লগ বাফার হিসাবে উল্লেখ করা ভাল কারণ "রিং বাফার" একটি সাধারণ শব্দ এবং আমি বিশ্বাস করি যে কার্নেলটিও রিং ব্যবহার করে বিভিন্ন সম্পূর্ণ সম্পর্কযুক্ত জিনিস জন্য বাফার। কার্নেল স্পেস ফাংশনটি লিখতে ব্যবহৃত হওয়ার পরে "প্রিন্টক বাফার "টিও উপযুক্ত।

যাইহোক, এটি কার্নেল স্পেসে থাকে এবং এর মাধ্যমে একটি রিড ইন্টারফেস সরবরাহ করা হয় /proc/kmsgএবং এর মাধ্যমে একটি পঠন-লিখন ইন্টারফেস সরবরাহ করা হয় /dev/kmsg। সুতরাং যদি আপনি রুট হিসাবে যান:

echo "Hello Kernel!" > /dev/ksmg

আপনি যদি তা দেখতে পান তবে আপনি cat /dev/ksmg(সম্ভবত কোনও লগে এই রূপান্তরটি দেখতে পাবেন না - তবে কোনও সম্ভাব্য কারণের জন্য নীচে ম্যাথিউ ফিল্পসের মন্তব্য দেখুন)। এটি কাঁচা আউটপুট এবং dmesgআপনার লগ ফাইল থেকে বা আপনার লগ ফাইলগুলিতে যে জিনিসটি দেখেন ঠিক তার মতো দেখতে লাগে না । একটা সামান্য ডকুমেন্টেশন বিট কার্নেল সোর্স সাথে উপলব্ধ করা এই সম্পর্কে। (আর) সিস্লোগ চলমান থাকলে এর থেকে পড়ার /proc/kmsg(একই হিসাবে নয় /dev/ksmg) সুপারিশ করা হয়।

Rsyslog হ'ল সাধারণত লিনাক্সে ব্যবহৃত বেশিরভাগ সিসলগ বাস্তবায়নগুলির মধ্যে একটি । এগুলি ব্যবহারকারল্যান্ড অ্যাপ্লিকেশন যা /proc/ksmgসকেটের মাধ্যমে অন্য ব্যবহারকারীল্যান্ড প্রক্রিয়া থেকে কার্নেল বার্তাগুলি এবং বার্তাগুলি উত্স করে /dev/log


2
আমি উল্লেখ করতে পারি যে আরএসএসলগের ডিফল্টরূপে $ কেলগপার্মিটনন কার্নেলফ্যাসিলিটি বন্ধ রয়েছে, এ কারণেই / অপসেস / কেএমএসজি থেকে নন-কার্নেল বার্তাগুলি আরএসব্লগ দ্বারা উপেক্ষা করা হবে যদি না আপনি এই বিকল্পটি চালু করেন না। এটি প্রকৃতপক্ষে বিভ্রান্তি পেতে পারে, যেহেতু আপস্টার্ট, উদাহরণস্বরূপ, নন-কার্নেল সুবিধায় / proc / kmsg এ লগ করে।
ভেনেসা ফিপস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.