之后如何读取关闭消息?

之后如何读取关闭消息?

我正在使用 Lubuntu 11.10。每次我关闭时,我都可以看到红色字体的“FAIL”,但我无法阅读更多内容。

那么,如何读取日志消息并尝试解决问题呢?

答案1

似乎没有办法将此数据记录到文件中。对于启动过程,有bootlogd创建文件的包/var/log/boot,但没有用于关闭/重新启动过程的包。据我所知,两者都无法登录rsyslog,即使有,也会在rsyslog停止后打印消息。我的关闭/重新启动过程的一部分是以只读方式重新挂载 rootfs 并卸载其他所有内容,在此之后记录到下次启动时仍然存在的文件几乎是不可能的。

我可以看到查看消息的最简单方法是编辑/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

保存文件并退出。现在,当您关机时,系统将暂停,直到您按 Enter 键(或 CTRL-C、CTRL-D 等)。您可以阅读屏幕上打印的消息。如果文本超过一屏,您可以通过按 查看终端回滚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

关闭/重新启动过程现在应该在调用haltreboot脚本之前暂停,以便有时间查看消息。还可以通过注释/取消注释 中的启用行轻松禁用/重新启用它/etc/pause_hook.confdpkg通过这种方式升级期间也不会出现配置文件冲突。

答案2

最简单的解决方案可能是尝试拍摄视频而不是照片。您可以稍后逐帧浏览它。

答案3

实时查看日志

我发现在关机期间通常会显示 Ubuntu 徽标和闪烁的灯光,而不是显示关机过程的日志。如果有错误,那么它们会被显示出来,但是很混乱。但是,在关闭时,如果我按 Windows 键和r( Metar),那么我可以看到系统服务发生时的成功和失败。这样我就知道到底是什么坏了。不知道这个键盘快捷键是否特定于我的 Kubuntu 设置还是什么;我没有添加它..我偶然发现的其中之一,不知何故......

重启后查看日志

当系统重新启动时,错误消息应保存到日志文件中。哪个日志文件取决于哪个服务被破坏/配置错误。相关日志几乎肯定位于/var/log/(或其子目录)中。lslessgrepfind是我在日志中查找错误消息所需的唯一程序......

一旦找到错误和导致错误的服务,您就不需要重新启动来测试新配置;只需重新启动服务即可。希望您可以使用以下命令测试固定配置:

sudo service <service name> restart

答案4

对于我的笔记本电脑,sudo halt将执行软件关闭而不是硬件关闭。即屏幕和其他硬件保持运行。屏幕上的最后一条消息将是

系统停止

此时我只需按下电源按钮一切都关闭了。你可以试试这个。您也可以尝试sudo halt --verbose

相关内容