পরে কীভাবে শাট ডাউন বার্তাগুলি পড়বেন?


18

আমি লুবুন্টু ১১.১০ ব্যবহার করছি। প্রতিবার যখন আমি বন্ধ করি তখনই আমি লাল অক্ষরে FAIL পড়তে পারি, তবে আমি আরও পড়তে পারি না।

সুতরাং, লগ বার্তাটি কীভাবে পড়বেন এবং সমস্যাটি সমাধান করার চেষ্টা করবেন?


এই উত্তরটি একবার জিজ্ঞাসা করুন এটি আপনার সমস্যার সাথে আপনাকে সহায়তা করতে পারে।
solde9

সবকিছু পুনরুদ্ধার করা হয়েছে /var/log/syslogএবং /var/log/messages, সুতরাং আপনার এগুলি পড়তে হবে এবং সমস্যা সমাধান করুন। আপনি যখন ব্যবহার io redirectionকরবেন error redirectionতখন আপনি এটি ব্যবহার করতে পারেনshutdown command
ফার্সিগাল্ফ

উত্তর:


14

কোনও ফাইলটিতে এই ডেটা লগ করার কোনও উপায় নেই বলে মনে হয়। বুট প্রক্রিয়াটির জন্য, এমন bootlogdপ্যাকেজ রয়েছে যা ফাইল তৈরি করে /var/log/boot, তবে শাটডাউন / রিবুট প্রক্রিয়াটির জন্য কিছুই নেই। আমি যতদূর দেখতে পাচ্ছি যে কোনওর সাথে লগ ইন করার কোনও উপায় নেই rsyslog, এবং যদি সেখানেও ছিল তবে সেখানে বার্তা প্রিন্ট rsyslogকরা বন্ধ রয়েছে। আমার শাটডাউন / রিবুট প্রক্রিয়াটির অংশটি হ'ল রুটফগুলি কেবলমাত্র পঠনযোগ্যভাবে পুনরায় গণনা করা এবং অন্য সমস্ত কিছুকে সামঞ্জস্য করা, এরপরের বুটটিতে থাকা এমন কোনও ফাইলে লগ ইন করার পরে কার্যত অসম্ভব।

সবচেয়ে সহজ উপায় আমি বার্তা দেখতে দেখতে পারেন সম্পাদনা করা /etc/init.d/haltএবং / অথবা /etc/init.d/rebootঠিক আগে প্রকৃত বিরাম স্ক্রিপ্ট halt/ reboot। জন্য haltস্ক্রিপ্ট কমান্ডটি প্রয়োগ sudoedit /etc/init.d/halt(অথবা একটি GUI এডিটর ব্যবহার করুন) এবং লাইন যে প্রকৃত স্থগিত করে দেখুন। আমার জন্য এটি লাইন:

halt -d -f $netdown $poweroff $hddown

অন্যথায় এটি do_stopফাংশনের শেষে এবং একমাত্র লাইন হওয়া উচিত যা haltকমান্ডটি কল করে । একবার লাইনটি খুঁজে পাওয়ার পরে, নিম্নলিখিতগুলির সাথে উপরে একটি নতুন লাইন সন্নিবেশ করান:

read -p "Press enter to halt" reply

ফাইল এবং সংরক্ষণ করে প্রস্থান করুন। এখন আপনি যখন শাটডাউন করবেন, আপনি প্রবেশ প্রবেশ না করা (বা সিটিআরএল-সি, সিটিআরএল-ডি, ইত্যাদি) না হওয়া পর্যন্ত সিস্টেমটি বিরতি দেবে। আপনি পর্দায় মুদ্রিত বার্তা পড়তে পারেন। যদি একক স্ক্রিনফুল পাঠ্যের চেয়ে বেশি কিছু থাকে তবে আপনি টিপে টার্মিনাল স্ক্রোলব্যাক দেখতে পারেন Shift+PgUp। যদি এটি এখনও পর্যাপ্ত না হয় তবে স্ক্রোলব্যাক বাফারের আকার বাড়ানোর উপায় রয়েছে (যদিও এটি ভিন্ন একটি প্রশ্ন)।

সিস্টেমটি পুনরায় বুট করার সময় একই কাজ করতে আপনাকে /etc/init.d/rebootফাইলটি সম্পাদনা করতে হবে। এখানে ব্যবহৃত কমান্ড অবশ্যই এর rebootবিপরীতে haltরয়েছে এবং do_stopফাংশনের শেষে আবার হওয়া উচিত । আমার জন্য লাইনটি হ'ল:

reboot -d -f -i

আবার উপরের একটি নতুন লাইনে নিম্নলিখিতটি প্রবেশ করান:

read -p "Press enter to reboot" reply

এই ফাইলগুলি initscriptsপ্যাকেজের জন্য কনফিলেস হিসাবে তালিকাভুক্ত রয়েছে তাও নোট করুন । যখন প্যাকেজগুলি আপগ্রেড করা হয় তখন এই সম্পাদনাগুলি ডিফল্টরূপে আঁকড়ে ধরা হবে না, যদিও এগুলি একটি দ্বন্দ্ব সৃষ্টি করবে।


আরও একটি সম্পূর্ণ সমাধান নিম্নলিখিত লিপিটি ব্যবহার করা হবে:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          pause_hook
# Required-Start:
# Required-Stop:     halt reboot
# Default-Start:
# Default-Stop:      0 6
# X-Stop-After:      umountroot
# X-Interactive:     true
# Short-Description: Pause before halt or reboot
# Description:
### END INIT INFO

do_stop () {
    [ -r /etc/pause_hook.conf ] && . /etc/pause_hook.conf

    [ "$PAUSE_HOOK_ENABLED" = true ] && read -p "Press enter to continue" reply
}

case "$1" in
    start)
        # No-op
        ;;
    restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        ;;
    stop)
        do_stop
        ;;
    *)
        echo "Usage: $0 start|stop" >&2
        exit 3
        ;;
esac

এটিতে রাখা উচিত /etc/init.d/pause_hookএবং নিম্নলিখিত কমান্ডটি দিয়ে শাটডাউন / রিবুট চালানোর জন্য সক্ষম হতে হবে:

sudo update-rc.d pause_hook defaults

এরপরে প্রকৃত হুক সক্ষম করতে লাইনযুক্ত ফাইলগুলি তৈরি করুন /etc/pause_hook.conf:

PAUSE_HOOK_ENABLED=true

শাটডাউন / রিবুট প্রক্রিয়া এখন বিরাম উচিত ঠিক আগে haltবা rebootস্ক্রিপ্ট বলা হয়, বার্তা দেখতে সময় প্রদান করে। এটিকে সক্ষম লাইনে মন্তব্য / অসন্তুষ্ট করে সহজেই অক্ষম / পুনরায় সক্ষম করা যায় /etc/pause_hook.confdpkgএইভাবে আপগ্রেড করার সময় কোনও জটিল দ্বন্দ্বও থাকবে না ।


একটি খুব সুন্দর সমাধান, বিশেষত init স্ক্রিপ্ট।
মিখাইল মরফিকভ

4

ফটোগ্রাফের পরিবর্তে কোনও ভিডিও নেওয়ার চেষ্টা করা সবচেয়ে সহজ সমাধান হতে পারে। আপনি এটির মাধ্যমে ফ্রেম-ফ্রেম পরে পদক্ষেপ নিতে পারেন।


2
আমি বিশ্বাস করতে পারি না যে এই বার্তাগুলি রেকর্ড করা কোনও ফাইল নেই !!! আমি ভিডিও দ্বারা রেকর্ড করার চেষ্টা করব।
সিগুর

7
ফাইল সিস্টেমগুলি আনমাউন্ট করার পরে সেই বার্তাগুলির কিছু মুদ্রিত হয়! সুতরাং তারা সব একটি ফাইল শেষ করতে পারে না।
জিম প্যারিস

4

রিয়েল টাইমে লগ দেখে

আমি খুঁজে পেয়েছি যে শাটডাউনের সময় সাধারণত একটি উবুন্টু লোগো এবং ফ্ল্যাশিং লাইট থাকে যা শাটডাউন প্রক্রিয়াটির লগের পরিবর্তে প্রদর্শিত হয়। যদি ত্রুটিগুলি থাকে, তবে সেগুলি এক ধরণের প্রদর্শিত, তবে মেসেটিভ। যাইহোক, বন্ধ হয়ে গেলেও, আমি যদি উইন্ডোজ কী এবং r( Metar) টিপই , তবে আমি সিস্টেম পরিষেবাগুলির সাফল্য এবং ব্যর্থতা দেখতে পাচ্ছি। তাহলে আমি জানি ঠিক কী ভেঙে গেছে। এই কীবোর্ড শর্টকাটটি আমার কুবুন্টু সেটআপের জন্য নির্দিষ্ট কিনা বা কোন ধারণা নেই; আমি এটি যুক্ত করিনি .. দুর্ঘটনাক্রমে আমি তাদের মধ্যে একটি পেয়েছি, একরকম ...

রিবুট করার পরে লগগুলি দেখুন

সিস্টেমটি পুনরায় বুট করা হলে ত্রুটি বার্তাগুলি একটি লগফাইলে সংরক্ষণ করা উচিত। কোন সার্ভিসটি ভাঙ্গা / ভুল কনফিগার করা হয়েছে তার উপর কোন লগফিল নির্ভর করে। প্রাসঙ্গিক লগ প্রায় স্পষ্টভাবে হবে/var/log/ (বা এর একটি উপ-ডিরেক্টরি) থাকবে। ls, less, grepএবং findশুধুমাত্র প্রোগ্রাম আমি লগ ত্রুটি বার্তা খোঁজার জন্য প্রয়োজন থাকেন হয়েছে ...

আপনি যখন ত্রুটিটি এবং পরিষেবাটি সৃষ্টি করেছেন সেগুলি খুঁজে পেয়েছেন, তবে নতুন কনফিগারেশন পরীক্ষা করার জন্য আপনাকে পুনরায় বুট করার দরকার নেই; কেবল পরিষেবাটি পুনঃসূচনা করুন .. আশা করি আপনি একটি কমান্ডের সাহায্যে স্থির কনফিগারেশনটি পরীক্ষা করতে পারবেন:

sudo service <service name> restart


এটি কি আপনি টিপছেন উইন্ডোজ + আর বা অল্ট + আর? ডিফল্ট ম্যাপিংস সুপারের উইন্ডোজ কী এবং Alt এর মেটা কী ম্যাপ করে তাই আপনি কোন কীটি বর্ণনা করছেন তা ঠিক অস্পষ্ট।
কেসি

3

bootlogdলগিংটি আসলে কীভাবে পরিচালিত করে তা খতিয়ে দেখার পরে , দেখা যাচ্ছে যে এটি শাটডাউন / রিবুট প্রক্রিয়াটির পাশাপাশি প্রারম্ভিকালে লগ করতে প্ররোচিত করা যেতে পারে। bootlogdবুট প্রক্রিয়া শুরুতে শুরু হয়। তখনই সঙ্গে কিছু যাদু আছে ttyএবং ptsটার্মিনাল এটি সংযুক্ত করা হয় সব আউটপুট লগ ইন করার ডিভাইস। এটি পরে বুট প্রক্রিয়াতে থামানো হয়, সম্ভবত এটির উপর কাজ করা কোনও ব্যবহারকারী থেকে আউটপুট লগ করা শুরু করার আগে tty

যদি bootlogdশাটডাউন / রিবুট প্রক্রিয়া চলাকালীন আবার গুলি চালানো হয় এবং লগযুক্ত যে কোনও ফাইল সিস্টেম আনমাউন্ট না হওয়ার আগে বন্ধ করে দেওয়া হয়, পরবর্তী বুটটিতে পড়ার জন্য বেশিরভাগ শাটডাউন প্রক্রিয়া রেকর্ড থাকবে।

bootlogdদুটি initস্ক্রিপ্ট থাকার মাধ্যমে প্রারম্ভকালে উভয়ই শুরু এবং বন্ধ হয়ে যায় । একটি হ'ল একটি সাধারণ initস্ক্রিপ্ট যা প্রক্রিয়াটি স্বাভাবিক হিসাবে শুরু / থামায়। অন্যটি 'বিপরীতমুখী' initস্ক্রিপ্ট যা এর সাথে ডাকলে startএটি স্টপ সহ প্রথম স্ক্রিপ্টকে কল করে। এই 'কৌশল'sysvinit প্রক্রিয়াটি, এটি প্রদর্শিত হয় যে এটি দুটি পৃথক পরিষেবা শুরু করছে যখন এটি সত্যই একই পরিষেবাটি শুরু এবং বন্ধ হবে। সবকিছু সঠিক ক্রমে ঘটে তা নিশ্চিত করার জন্য এটি প্রয়োজন।

bootlogdশাটডাউন চলাকালীন রান করতে , যা প্রয়োজন তা হল:

  1. bootlogdআপনি ইতিমধ্যে না থাকলে ইনস্টল করুন ।
  2. দুটি init স্ক্রিপ্টগুলি অনুলিপি করুন
  3. 'বিপরীতমুখী' স্ক্রিপ্ট পরিবর্তন শুরু করার পরিবর্তে স্টপ শুরু করুন stop
  4. এলএসবি শিরোনামগুলি পরিবর্তন করুন যাতে উভয় স্ক্রিপ্টগুলি শাটডাউন / পুনরায় বুট করার সময় সঠিক সময়ে চালিত হয়
  5. তাদের সাথে ইনস্টল করুন update-rc.d

অনুলিপি / পেস্ট bashস্ক্রিপ্ট হিসাবে আমার পরিবর্তনগুলি এখানে রয়েছে (আপনি যদি নিজে নিজে পরিবর্তনগুলি করতে চান তবে আমি যে LSB শিরোনাম ব্যবহার করেছি তা প্যাচে রয়েছে):

cd /etc/init.d
cp bootlogd shutdown-bootlogd
cp stop-bootlogd shutdown-start-bootlogd

echo -e 'diff -ur ./shutdown-bootlogd /etc/init.d/shutdown-bootlogd
--- ./shutdown-bootlogd\t2014-02-20 13:59:23.426109512 +0000
+++ /etc/init.d/shutdown-bootlogd\t2014-02-20 11:10:56.238656828 +0000
@@ -1,14 +1,13 @@
 #! /bin/sh
-### BEGIN INIT INFO
-# Provides:          bootlogd
-# Required-Start:    mountdevsubfs
-# X-Start-Before:    hostname keymap keyboard-setup procps pcmcia hwclock hwclockfirst hdparm hibernate-cleanup lvm2
-# Required-Stop:
-# Default-Start:     S
-# Default-Stop:
-# Short-Description: Start or stop bootlogd.
-# Description:       Starts or stops the bootlogd log program
-#                    which logs boot messages.
+### BEGIN INIT INFO 
+# Provides:          shutdown-bootlogd 
+# Required-Start:
+# Required-Stop:     umountroot halt reboot 
+# Default-Start:      
+# Default-Stop:      0 6 
+# X-Stop-After:      umountfs 
+# Short-Description: Stop bootlogd at shutdown. 
+# Description: 
 ### END INIT INFO

 PATH=/sbin:/bin  # No remote fs at start
diff -ur ./shutdown-start-bootlogd /etc/init.d/shutdown-start-bootlogd
--- ./shutdown-start-bootlogd\t2014-02-20 13:59:23.430107513 +0000
+++ /etc/init.d/shutdown-start-bootlogd\t2014-02-20 11:10:56.238656828 +0000
@@ -1,24 +1,24 @@
 #! /bin/sh
 ### BEGIN INIT INFO
-# Provides:          stop-bootlogd
-# Required-Start:    $local_fs $all
-# Required-Stop:
-# Default-Start:     2 3 4 5
-# Default-Stop:
-# Short-Description: Stop bootlogd
-# Description:       See the init.d/bootlogd script
+# Provides:          shutdown-start-bootlogd
+# Required-Start:
+# Required-Stop:     $local_fs $all
+# Default-Start:
+# Default-Stop:      0 6
+# Short-Description: Start or stop bootlogd at shutdown.
+# Description:
 ### END INIT INFO

-NAME=stop-bootlogd
+NAME=shutdown-start-bootlogd
 DAEMON=/sbin/bootlogd

 [ -x "$DAEMON" ] || exit 0

 case "$1" in
-  start)
-\t/etc/init.d/bootlogd stop
+  stop)
+\t/etc/init.d/bootlogd start
 \t;;
-  stop|restart|force-reload)
+  start|restart|force-reload)
 \t# No-op
 \t;;
   status)
' | patch

update-rc.d shutdown-bootlogd defaults
update-rc.d shutdown-start-bootlogd defaults

সকল বার্তা প্রদর্শিত সামনে bootlogdবন্ধ থাকে সংরক্ষণ করা হবে /var/log/bootbootlogdপাঠ্য স্ট্রিম থেকে পালানোর অক্ষর সরিয়ে দেয়। নীচের ( bash) কমান্ডটি লগ ইন রঙটি প্রদর্শন করবে যেমন শাটডাউন করার সময় প্রদর্শিত হবে:

sed $'s/\^\[/\E/g;s/\[1G\[/\[27G\[/' /var/log/boot | less -r

এ সম্পর্কে আরও তথ্যের জন্য এই প্রশ্নটি দেখুন - /programming/10757823/display-file-with-escaped-color-codes-boot-messages-from-bootlog-daemon/19011140

স্ক্রিপ্টগুলি আরও সম্পাদনা করে লগের অবস্থান পরিবর্তন করা যেতে পারে। দুর্ভাগ্যবশত ফাইল প্রতিটি চেহারা পরিবর্তন করা আবশ্যক (এছাড়াও, প্রতিস্থাপন /ver/log/bootযথেষ্ট নয় স্ক্রিপ্ট একটি করে হিসাবে cdথেকে /var/logএক পর্যায়ে)।

/var/logউপরেরগুলি কেবলমাত্র রুটফেসে থাকলে কাজ করবে । যদি নির্ভর না হয় তবে পুনরায় umountfsকাজ করা দরকার যাতে এটি bootlogdকরা বন্ধ হয়ে যায়। অথবা অন্যথায় rootfs এ একটি ফাইল লগ ইন করুন।


1

আপনাকে সমস্ত /etc/rc6.d/* ফাইল সম্পাদনা করতে হবে এবং তাদের আউটপুটটি কোনও ফাইলে পুনর্নির্দেশ করতে হবে, যা আপনি পরে পড়তে পারেন।

এই পুনঃনির্দেশ, আপনাকে জানাবে, কোন প্রোগ্রাম failedএবং why

অতিরিক্তভাবে, আপনাকে সেই সমস্ত ফাইলগুলিতে প্যারামিটারটি start-stop-daemonসরিয়ে --quietএবং -vপ্যারামিটার যুক্ত করে সংশোধন করতে হবে।

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


ঠিক আছে. এটি আমার কাছ থেকে অনেক কাজ নেবে। আমি চেষ্টা করবো. ধন্যবাদ।
সিগুর

তারপরে আমাকে ফলাফলটি জানতে দিন
SHW

এতে লিপি সম্পাদনা /etc/init.d( /etc/rc?.dএখানে লিঙ্কযুক্ত সবকিছু ) কিছুই করবে না। আউটপুট সরাসরি নয়, এটি ফাংশন /lib/lsb/init-functionsএবং অন্যান্য ফাইলগুলির মাধ্যমে যা এটি পরিবর্তিত উত্সগুলিতে হয়। আপনি এগুলি সম্পাদনা করতে পারেন, কিছু আপগ্রেড যদিও পরিবর্তনগুলি ক্লোবার করে।
গ্রিম

কেবলমাত্র ফাংশন বা বাইনারি যা প্রাসঙ্গিক তা start-stop-daemonওপিএস পিওভি থেকে। এখন তার উত্তরের জন্য অপেক্ষা করা হচ্ছে
SHW 20'14

@ এসএইচডাব্লু না, স্ক্রিপ্টগুলি দেখুন। বেশিরভাগ আউটপুট স্ক্রিপ্টের অন্যান্য অংশ থেকে আসে। আমি মনে করি না যে start-stop-daemonকোনও আউটপুট উত্পাদন করে, কমপক্ষে সাধারণত না। স্ক্রিপ্টগুলি তার রিটার্ন আউটপুট ব্যবহারের উপর ভিত্তি করে ঠিক / ব্যর্থ আউটপুট উত্পন্ন করে log_end_msg। দেখুন /lib/lsb/init-functions.d/20-left-info-blocks
গ্রামীণ

0

/var/log/messagesআপনার প্রয়োজনীয় তথ্য আপনাকে দেবে। যদি এটি আপনার পক্ষে পর্যাপ্ত না হয় তবে /etc/syslog.confসমস্ত ডেটা লগ করার জন্য পরিবর্তন করুন (আমি কর্নেলের ত্রুটিগুলি লগিং সক্ষম করতে দেখব, ওরফে * কর্ন ) তবে আপনি রিবুট করার পরে এটি পুনরায় দেখুন, অথবা এটি লগগুলির জন্য প্রচুর স্থান খাবে


নেই /etc/syslog.conf। কেবল আছে sysctl.conf sysctl.d/ systemd/
সিগুর

1
/etc/rsyslog.conf চেষ্টা করুন
কাবুম

0

আমার ল্যাপটপের জন্য sudo haltহার্ডওয়্যার নয় সফ্টওয়্যার শাটডাউন করবে। অর্থাৎ পর্দা এবং অন্যান্য হার্ডওয়্যার চলমান রয়েছে। স্ক্রিনে শেষ বার্তাটি হবে

সিস্টেম স্থগিত

এই মুহুর্তে আমি কেবল পাওয়ার বোতামটি এবং সমস্ত কিছু বন্ধ করে দিই । আপনি এটি চেষ্টা করতে পারেন। আপনি চেষ্টা করতে পারেনsudo halt --verbose


সুতরাং আমি অনুমান করি যে এটি সম্পূর্ণ নিরাপদ প্রসেস। হার্ডওয়ারের কোনও ক্ষতি নেই ?!
সিগুর

0

যেমন গ্রায়েম বলেছিল, রো বা বরখাস্ত ফাইল সিস্টেমের সাথে, মেরে গেছে ব্লগড, কোনও ফাইলে এই জাতীয় তথ্য লেখার উপায় নেই। একটি সমাধান বুটবার্গে সংজ্ঞায়িত কনসোল (সিরিয়াল পোর্ট) ব্যবহার করতে পারে। কেবল নাল মডেম কেবল এবং অন্য একটি পিসি (উপযুক্ত অ্যাডাপ্টারের সাথে ট্যাবলেট বা স্মার্টফোন) এবং টার্মিনাল এমুলেটর সংযুক্ত করুন।


-1

ত্রুটি (এবং অন্যান্য) বার্তাগুলি plymouthনান্দনিক কারণে সাধারণত লুকানো থাকে ।

সম্ভবত এটি সহায়তা করে: আপনি যদি শাটডাউন করার সময় ESC তে আঘাত plymouthকরেন, গ্রাফিকাল কনসোলটি দেখায়। এটি কি আপনাকে দরকারী বার্তাগুলি দেখায়?

এগুলি ছাড়াও, মেশিনটি আসলে ক্রাশ হয়ে গেলে আপনি যা করতে পারেন তেমন কিছু নেই কারণ লগ ফাইলটি এটি লিখতে সক্ষম নাও হতে পারে - এটি বাফার হয়েছে কিনা, বা /var/logক্র্যাশ হওয়ার পরে তার উপর নির্ভর করে ইতিমধ্যে কেবল পঠনযোগ্য পুনঃস্থাপন করা হয়েছে কিনা। ls -ltr /var/logআপনার শাটডাউন ডেটের (বা আরও নতুন) মেলে এমন কোনও লগ ফাইল রয়েছে কিনা তা নির্বাহ করে এবং তা দেখে আপনি এই ফাইলগুলি একবার দেখতে পারেন ।

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