在 Linux 系统中,有多种方法可以查看硬盘状态是休眠还是活动,以下是一些常见的方法:

使用 hdparm 命令

  • 安装 :在基于 Debian 的系统上,可以使用 sudo apt-get install hdparm 进行安装;在基于 Red Hat 的系统上,使用 sudo yum install hdparm 安装。
  • 查看硬盘电源模式 :使用 sudo hdparm -C /dev/sdX(将 /dev/sdX 替换为实际的硬盘设备,如 /dev/sda)命令,若输出为 “drive state is: active/idle”,则表示硬盘处于活动状态;若输出为 “drive state is: standby”,则表示硬盘处于休眠状态;若输出为 “drive state is: sleep”,则表示硬盘处于深度休眠状态,此时硬盘可能会停止旋转,一些操作需要先将其唤醒才能访问。

查看系统日志

  • 使用 dmesg 命令 :通过 dmesg | grep -i sd 命令,可以查看系统日志中与硬盘相关的消息,检查是否有硬盘进入或退出休眠状态的记录,但这种方法可能需要一定的日志分析能力,并且不能实时动态查看硬盘状态。
  • 使用 journalctl 命令 :在使用 systemd 的系统中,可以使用 journalctl -k -p info | grep -i sd 查看内核日志中与硬盘有关的信息,同样用于查找硬盘状态变化的相关记录。

查看硬盘分区的挂载状态

  • 使用 mount 命令 :执行 mount 命令可以列出当前已挂载的文件系统及其对应的硬盘分区,若某个硬盘分区已挂载并正在被访问,则该硬盘处于活动状态。如果没有挂载,可能处于休眠状态,但也不能完全确定,因为即使未挂载,硬盘也可能处于活动状态但未被访问,例如一些后台进程可能正在扫描硬盘等。

查看硬盘的 I/O 活动

  • 使用 iostat 命令iostat 是一个用于监控系统输入 / 输出设备负载的工具,可以通过 sudo iostat -d /dev/sdX(将 /dev/sdX 替换为实际硬盘设备)命令来查看指定硬盘的 I/O 使用情况,如果显示有读写操作,说明硬盘处于活动状态;如果没有读写操作,可能处于休眠状态。
  • 使用 iotop 命令iotop 是一个类似于 top 的工具,但用于实时查看磁盘 I/O 使用情况,执行 sudo iotop 命令后,可以查看到各个进程对硬盘的读写情况,如果有进程在进行读写操作,说明硬盘处于活动状态。
最后修改:2025 年 07 月 03 日
如果觉得我的文章对你有用,请随意赞赏