কীভাবে কোনও ফাইলে লগিন করা যায়?


18

আমি স্ক্র্যাচ থেকে তৈরি একটি লিনাক্স ওএস চালাচ্ছি। আমি একটি ফাইলের মধ্যে কার্নেল বার্তা বাফার (dmesg) সংরক্ষণ করতে চাই যা পুনরায় বুটের মধ্যে স্থির থাকবে।

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

অবিচ্ছিন্ন লগ ফাইলে কার্নেল বার্তা বাফারকে কীভাবে সংরক্ষণ করা যায়?


আপনি কোন সিসলগড চালাচ্ছেন: সাইক্লগড, ব্যস্তবক্স, ইনটুটিলস, সিস্টেমড, আরএসল্লগ, অন্যান্য?
গিলস 'অশুভ হওয়া বন্ধ করুন'

উত্তর:


16

আপনি উভয় /etc/rsyslog.confবা তাকান প্রয়োজন /etc/syslog.conf। আপনার যদি প্রথম দিকে লাইন থাকে তবে:

*.*                -/var/log/syslog

Dmesg থেকে স্টাফ সহ সমস্ত কিছু সেই ফাইলটিতে যাওয়া উচিত। এটি আরও ভাল লক্ষ্য করতে:

kernel.*           -/var/log/dmesg

যদি এটি কোনও কারণে ব্যর্থ হয় তবে আপনি পর্যায়ক্রমে (যেমন ক্রোনের মাধ্যমে):

dmesg > /var/log/dmesg

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

আপনি যদি কোনও ফাইলটিতে অবিচ্ছিন্নভাবে ডেমস্যাগ আউটপুট লিখতে চান তবে -w (--ফলো) পতাকাটি ব্যবহার করুন।

dmesg --follow > mydmesg.log

4
+1 সম্ভবত এটি উল্লেখযোগ্য যে dmesg একটি রিং বাফার ব্যবহার করে যাতে এটি আবদ্ধ না হয়ে বৃদ্ধি পায় না এবং কার্নেলের মধ্যে রাখা হয় যাতে ফাইল সিস্টেমের মতো হওয়ার আগে বার্তাগুলি লগ করা যায়।
এমএসডব্লিউ

3

আপনি যদি ব্যবহার করেন systemdতবে systemdজার্নালটি ব্যবহার করে সমস্ত তথ্য পেতে পারেন journalctl -ksyslogএবং rsyslogযদি আপনি systemd ব্যবহার করেন তবে এটি প্রয়োজনীয় নয়।


0

পপসিকল এটি করে যা আমি পুরানো এমএসডোস পুনর্নির্দেশকে ব্যবহার করি এবং এটি একটি .csv ফাইলে আবার অঙ্কিত হয় যা টার্মিনালে লিবারঅফিস ক্যালক দ্বারা একটি স্প্রেড শীটে খোলা হয় এর মতো কিছু চেষ্টা করুন try

dmesg > /path to where you want the file written/File-Name.csv 
dmesg > /media/joe/Data/Z-Back/Script-Files/Dmesg-Output.csv 

echo "Dmesg-to-CSV.sh"" the script file"

#!/bin/bash
echo "This is a shell script"  
SOMEVAR='I am done running dmesg and redirecting to /media/joe/Data/B-Back/Script-Files/Dmesg-Output.csv'  
echo "$SOMEVAR"  
dmesg > /media/joe/Data/Z-Back/Script-Files/Dmesg-Output.csv 

echo "Dmesg-CSV.desktop"" the icon file"

[Desktop Entry]
Encoding=UTF-8
Name=Dmesg-to-CSV.sh
Comment=Launch DirSyncPro
Exec=gnome-terminal -e /media/joe/Data/Z-Back/Script-Files/Dmesg-to-CSV.sh
Icon=utilities-terminal
Type=Application
Name[en_US]=Dmesg-CSV.desktop

echo "both the .sh file and .desktop file are stored in the same directory as the .csv output file"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.