笔记本电脑崩溃了:为什么?

笔记本电脑崩溃了:为什么?

我的 Linux(ubuntu 12.04)笔记本电脑崩溃了,我正在试图找出原因。

# last
sds      pts/4        :0               Tue Sep  4 10:01   still logged in   
sds      pts/3        :0               Tue Sep  4 10:00   still logged in   
reboot   system boot  3.2.0-29-generic Tue Sep  4 09:43 - 11:23  (01:40)    
sds      pts/8        :0               Mon Sep  3 14:23 - crash  (19:19)    

这似乎表明崩溃发生在 09:42 (= 14:23+19:19)。根据另一个问题, 我在看/var/日志

认证日志

Sep  4 09:17:02 t520sds CRON[32744]: pam_unix(cron:session): session closed for user root
Sep  4 09:43:17 t520sds lightdm: pam_unix(lightdm:session): session opened for user lightdm by (uid=0)

消息文件

系统日志

Sep  4 09:24:19 t520sds kernel: [219104.819975] CPU0: Package power limit normal
Sep  4 09:43:16 t520sds kernel: imklog 5.8.6, log source = /proc/kmsg started.

内核日志

Sep  4 09:24:19 t520sds kernel: [219104.819969] CPU1: Package power limit normal
Sep  4 09:24:19 t520sds kernel: [219104.819971] CPU2: Package power limit normal
Sep  4 09:24:19 t520sds kernel: [219104.819974] CPU3: Package power limit normal
Sep  4 09:24:19 t520sds kernel: [219104.819975] CPU0: Package power limit normal
Sep  4 09:43:16 t520sds kernel: imklog 5.8.6, log source = /proc/kmsg started.
Sep  4 09:43:16 t520sds kernel: [    0.000000] Initializing cgroup subsys cpuset
Sep  4 09:43:16 t520sds kernel: [    0.000000] Initializing cgroup subsys cpu

我有一个计算一直运行到 9:24,但是 18 分钟后系统就崩溃了!

内核日志许多页面这些:

Sep  4 09:43:16 t520sds kernel: [    0.000000] total RAM covered: 8086M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 64K         num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 128K        num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 256K        num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 512K        num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 1M  num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 2M  num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 4M  num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 8M  num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 16M         num_reg: 10     lose cover RAM: 38M
Sep  4 09:43:16 t520sds kernel: [    0.000000] *BAD*gran_size: 64K      chunk_size: 32M         num_reg: 10     lose cover RAM: -16M
Sep  4 09:43:16 t520sds kernel: [    0.000000] *BAD*gran_size: 64K      chunk_size: 64M         num_reg: 10     lose cover RAM: -16M
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 128M        num_reg: 10     lose cover RAM: 0G
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 256M        num_reg: 10     lose cover RAM: 0G
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 512M        num_reg: 10     lose cover RAM: 0G
Sep  4 09:43:16 t520sds kernel: [    0.000000]  gran_size: 64K  chunk_size: 1G  num_reg: 10     lose cover RAM: 0G
Sep  4 09:43:16 t520sds kernel: [    0.000000] *BAD*gran_size: 64K      chunk_size: 2G  num_reg: 10     lose cover RAM: -1G

这是否意味着我的 RAM 坏了?!

它还说

Sep  4 09:43:16 t520sds kernel: [    2.944123] EXT4-fs (sda1): INFO: recovery required on readonly filesystem
Sep  4 09:43:16 t520sds kernel: [    2.944126] EXT4-fs (sda1): write access will be enabled during recovery
Sep  4 09:43:16 t520sds kernel: [    3.088001] firewire_core: created device fw0: GUID f0def1ff8fbd7dff, S400
Sep  4 09:43:16 t520sds kernel: [    8.929243] EXT4-fs (sda1): orphan cleanup on readonly fs
Sep  4 09:43:16 t520sds kernel: [    8.929249] EXT4-fs (sda1): ext4_orphan_cleanup: deleting unreferenced inode 658984
...
Sep  4 09:43:16 t520sds kernel: [    9.343266] EXT4-fs (sda1): ext4_orphan_cleanup: deleting unreferenced inode 525343
Sep  4 09:43:16 t520sds kernel: [    9.343270] EXT4-fs (sda1): 56 orphan inodes deleted
Sep  4 09:43:16 t520sds kernel: [    9.343271] EXT4-fs (sda1): recovery complete
Sep  4 09:43:16 t520sds kernel: [    9.645799] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)

这是否意味着我的高清质量不好?

按照硬件故障我尝试了smartctl -l selftest,没有发现任何错误:

smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-30-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Momentus 7200.4
Device Model:     ST9500420AS
Serial Number:    5VJE81YK
LU WWN Device Id: 5 000c50 0440defe3
Firmware Version: 0003LVM1
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 4
Local Time is:    Mon Sep 10 16:40:04 2012 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
See vendor-specific Attribute list for marginal Attributes.

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                                        was completed without error.
                                        Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
Total time to complete Offline 
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x7b) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        Offline surface scan supported.
                                        Self-test supported.
                                        Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine 
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        ( 109) minutes.
Conveyance self-test routine
recommended polling time:        (   2) minutes.
SCT capabilities:              (0x103b) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   117   099   034    Pre-fail  Always       -       162843537
  3 Spin_Up_Time            0x0003   100   100   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       571
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   069   060   030    Pre-fail  Always       -       17210154023
  9 Power_On_Hours          0x0032   095   095   000    Old_age   Always       -       174362787320258
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       571
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       1
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   061   043   045    Old_age   Always   In_the_past 39 (0 11 44 26)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       84
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       20
193 Load_Cycle_Count        0x0032   099   099   000    Old_age   Always       -       2434
194 Temperature_Celsius     0x0022   039   057   000    Old_age   Always       -       39 (0 15 0 0)
195 Hardware_ECC_Recovered  0x001a   041   041   000    Old_age   Always       -       162843537
196 Reallocated_Event_Count 0x000f   095   095   030    Pre-fail  Always       -       4540 (61955, 0)
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
254 Free_Fall_Sensor        0x0032   100   100   000    Old_age   Always       -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%      4545         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

谷歌搜索这些信息没有结果,我甚至不能确定这些信息是常规消息还是灾难性消息。

那么,我现在该做什么?

答案1

我认为这要么是由 RAM 故障、文件系统故障或 HDD 故障造成的。我会按顺序执行以下操作,然后查看每个操作是否会产生影响,然后再继续执行下一个操作。

1) 正如 Tom Brossman 在他的链接中所建议的,我将运行 RAM 测试 (Memtest86+)。它可从任何安装或 LiveCD 的 GRUB 菜单中找到。尽可能彻底地执行(这应该是相当明显的,并且需要在夜间完成)。

2)从 LiveCD 运行 fsck.ext4(不安装驱动器)

sudo fsck.ext4 -cf /dev/sda1

3)这个帖子这表明*BAD*gran_size错误可能是由于未启用 MTRR 清理程序而导致的。编辑/boot/grub/grub.cfg并更改此行:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

更改为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash enable_mtrr_cleanup mtrr_spare_reg_nr=1 mtrr_gran_size=32M mtrr_chunk_size=128M"

保存文件。然后运行

sudo update-grub

然后重新启动。

相关内容