cmc*_*nty 6 hard-drive idle spindown low-power
当我的系统上没有用户时,我希望硬盘降速到低功耗状态。我意识到这可能无法 100% 连续 24 小时实现,但系统在不使用时可以保持空闲几个小时似乎是合理的。
我的系统是无头的,运行的服务数量有限。主要服务有:exim4、mythtv-backend、nfs、samba、cups、apt-cacher-ng
假设驱动器已启用进入待机模式。此外,增加回写超时是不可接受的,因为我的系统不在 UPS 上。
hdparm可让您设置驱动器的减速时间(磁盘进入待机模式前不活动的时间长度)或将其置于待机或睡眠状态。
# set spindown time for sda drive to 1 min
sudo hdparm -S 12 /dev/sda
# set sdb drive to standby mode
sudo hdparm -y /dev/sdb
# put sdc drive to sleep
sudo hdparm -Y /dev/sdc
# check drive state (active/standby/sleeping)
sudo hdpam -C /dev/sdc
Run Code Online (Sandbox Code Playgroud)
/etc/hdparm.conf包含在启动时自动运行的 hdparm 命令。这是我的一个片段:
/dev/sda {
# apm 127: Highest performance that allows spindown
apm = 127
# spindown 120 = 10 min
spindown_time = 120
}
Run Code Online (Sandbox Code Playgroud)
并非所有命令都适用于所有硬盘驱动器型号,您需要进行试验。
笔记本电脑模式也适用于非笔记本电脑,它旨在让磁盘尽可能多地休眠。
PowerTOP是用于跟踪不必要的后台活动的实用程序。
lesswatts.org有许多关于硬盘减速的技巧。
回写超时:据我所知,如果不 a) 增加回写超时和 b) 禁用系统日志同步,就不可能让主磁盘空闲。
解决方法可能是将 SSD 作为根磁盘,因为它们的功率相当低?
跟踪活动:可以根据膝上型模式常见问题解答调试磁盘访问来自何处- 请参阅 5 Spinup Debugging。
引用:
我的磁盘一直在旋转,我不知道是什么原因造成的。我可以调试这个吗?
是的你可以。但首先,请检查您是否已将 syslog.conf 修改为不同步,如上一节的最后一个问题所述。要调试磁盘活动,您可以执行以下操作:
回声 1 > /proc/sys/vm/block_dump
(警告:您必须在执行此操作之前禁用 syslogd,或者您必须确保未记录内核输出。如果您忘记了这一点,您的系统可能会进入一个反馈循环,其中 syslogd 会导致磁盘活动,这会导致内核输出,并且这会导致 syslogd 做更多的磁盘活动,等等!)
这将启用内核中的文件/磁盘活动调试。您可以使用 dmesg 读取输出。完成后,使用禁用块转储
回声 0 > /proc/sys/vm/block_dump
禁用 syslogd 同步:笔记本模式常见问题解答和 lesswatts.org 参考/etc/syslog.conf
。
在最近的 Ubuntu 中,此文件不存在,而是查找/etc/rsyslog.d/*.conf
.
语法是相同的 - 在每个日志文件前面加上一个破折号,如下所示:
kern.* -/var/log/kern.log
Run Code Online (Sandbox Code Playgroud)
这将关闭 syslog 守护进程的同步,这意味着日志将dirty_writeback_centisecs
每隔一段时间(默认情况下每 5 秒)而不是每次有新的日志条目时写入磁盘。
归档时间: |
|
查看次数: |
2170 次 |
最近记录: |