为什么我的机器一夜之间就关机了?

为什么我的机器一夜之间就关机了?

过去两天我都开着电脑一整夜,醒来后就去上班了。当我回到家时,Ubuntu 无法唤醒,最后我不得不硬关机,然后重启电脑。

我检查了我的系统日志并查看了每小时的 cron 报告,直到它关闭为止。

昨天:

Oct 19 12:17:01 elite CRON[6507]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

Oct 19 19:43:09 elite rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="772" x-info="http://www.rsyslog.com"] start

今天:

最新的每小时 Cron 报告:

Oct 20 14:17:01 elite CRON[13180]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

然后:

Oct 20 14:18:28 elite dhclient: DHCPREQUEST of 192.168.1.137 on eth0 to 192.168.1.1 port 67 (xid=0x7daedddb)
Oct 20 14:18:28 elite dhclient: DHCPACK of 192.168.1.137 from 192.168.1.1
Oct 20 14:18:28 elite dhclient: bound to 192.168.1.137 -- renewal in 34922 seconds.
Oct 20 14:18:28 elite NetworkManager[886]: <info> (eth0): DHCPv4 state changed reboot -> renew
Oct 20 14:18:28 elite NetworkManager[886]: <info>   address 192.168.1.137
Oct 20 14:18:28 elite NetworkManager[886]: <info>   prefix 24 (255.255.255.0)
Oct 20 14:18:28 elite NetworkManager[886]: <info>   gateway 192.168.1.1
Oct 20 14:18:28 elite NetworkManager[886]: <info>   hostname 'elite'
Oct 20 14:18:28 elite NetworkManager[886]: <info>   nameserver '192.168.1.1'
Oct 20 14:18:28 elite dbus[762]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
Oct 20 14:18:28 elite dbus[762]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'

最新每小时报告:

Oct 20 15:17:01 elite CRON[13649]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

回家后启动:

Oct 20 22:05:15 elite rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="760" x-info="http://www.rsyslog.com"] start

答案1

最明显的答案是你的内存条有问题。尝试在 BIOS 中查找自动关机/开机设置,并确保它们被禁用

从闪存驱动器或 CD 启动 Ubuntu,然后选择内存测试并运行它,查看是否有任何错误,如果有,请更换内存条。

最糟糕的情况是您的 CMOS 电池可能出现故障。

答案2

首先,在开始之前保存所有未保存的工作。

打开终端并输入以下命令:

sudo pm-hibernate

系统应进入休眠状态。现在,重新打开机器,如果机器能够正常重新启动且没有任何问题,则您应该能够启用休眠功能(默认情况下禁用),并且在长时间不活动后不会再出现问题。

以下是启用休眠模式的方法。

打开终端并执行以下命令(您可以在此处使用任何文本编辑器:gedit、leafpad、mousepad、nano、vim 等):

gksu gedit /var/lib/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

并将以下内容复制/粘贴到文件中:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes

保存文件并退出。然后重新启动以使更改生效。

点击这里查看更多信息。

这也可能有帮助。


现在,设置一个脚本以在挂起后自动启用休眠模式。

使用以下命令通过 gedit 打开新文件:

gksu gedit /etc/pm/sleep.d/0000rtchibernate

将以下内容复制并粘贴到文件内容中:

#!/bin/bash
# Script name: /etc/pm/sleep.d/0000rtchibernate
# Purpose: Auto hibernates after a period of sleep
# Edit the "autohibernate" variable below to set the number of seconds to sleep.
curtime=$(date +%s)
autohibernate=3600
echo "$curtime $1" >>/tmp/autohibernate.log
if [ "$1" = "suspend" ]
then
    # Suspending.  Record current time, and set a wake up timer.
    echo "$curtime" >/var/run/pm-utils/locks/rtchibernate.lock
    rtcwake -m no -s $autohibernate
fi

if [ "$1" = "resume" ]
then
    # Coming out of sleep
    sustime=$(cat /var/run/pm-utils/locks/rtchibernate.lock)
    rm /var/run/pm-utils/locks/rtchibernate.lock
    # Did we wake up due to the rtc timer above?
    if [ $(($curtime - $sustime)) -ge $autohibernate ]
    then
        # Then hibernate
        rm /var/run/pm-utils/locks/pm-suspend.lock
        /usr/sbin/pm-hibernate
    else
        # Otherwise cancel the rtc timer and wake up normally.
        rtcwake -m no -s 1
    fi
fi

关闭 gedit 之前保存文件。

接下来,使文件可执行,并使用以下两个命令将副本放入 /usr/lib/pm-utils/sleep.d/ 中:

sudo chmod +x /etc/pm/sleep.d/0000rtchibernate
sudo cp /etc/pm/sleep.d/0000rtchibernate /usr/lib/pm-utils/sleep.d/0000rtchibernate

重新启动以使更改生效。

单击此处获取更多信息并查看来源。

相关内容