doc:appunti:hardware:raspberrypi_nas_smart_hard_disk
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:appunti:hardware:raspberrypi_nas_smart_hard_disk [2021/03/11 10:39] – [smartctl] niccolo | doc:appunti:hardware:raspberrypi_nas_smart_hard_disk [2025/10/10 11:24] (current) – [udisks2.service] niccolo | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Raspberry Pi NAS: Hard disk management ====== | ====== Raspberry Pi NAS: Hard disk management ====== | ||
| + | |||
| + | This page is about configuring the **hard disk power management** on a Raspberry Pi, to be used as NAS and mediacenter. The hard disk is connected via a **[[raspberrypi_nas_x835_sata_board|SupTronics X835 shield]]**. See the main index at **[[raspberrypi_nas]]**. The operating system is **RaspiOS** based on **Debian 11 Bullseye**. | ||
| There are two tools to manage SATA disks in GNU/Linux. **smartctl** is designed to interact with the **[[wp> | There are two tools to manage SATA disks in GNU/Linux. **smartctl** is designed to interact with the **[[wp> | ||
| Line 18: | Line 20: | ||
| # Disable DEVICESCAN, which does not work in our environment. | # Disable DEVICESCAN, which does not work in our environment. | ||
| #DEVICESCAN -d removable -n standby -m root -M exec / | #DEVICESCAN -d removable -n standby -m root -M exec / | ||
| - | |||
| - | # Send an email test to < | ||
| - | /dev/sda -d sat -m root@localhost -M test | ||
| # Use the suggedested subset of checks, instead of the ' | # Use the suggedested subset of checks, instead of the ' | ||
| + | # NOTICE: We are running smartd with option --interval=3600 instead of the | ||
| + | # 1800 default, i.e. device polling occurs every 1 our instead of 30 minutes. | ||
| + | # The number of skipped checks (option -n) must be multipled by that value | ||
| + | # to obtain the maximum time that checks will be skipped: | ||
| + | # 336 * 3600 seconds = 14 days. | ||
| /dev/sda -d sat \ | /dev/sda -d sat \ | ||
| -H \ # Check the health with the SMART RETURN STATUS command | -H \ # Check the health with the SMART RETURN STATUS command | ||
| Line 31: | Line 35: | ||
| -W 0,50,60 \ # Temperature (SMART att. 194): WARN=50 (log), CRIT=60 (mail) | -W 0,50,60 \ # Temperature (SMART att. 194): WARN=50 (log), CRIT=60 (mail) | ||
| -s S/ | -s S/ | ||
| + | -s O/ | ||
| -m root@localhost \ # Send a warning email on failures and errors | -m root@localhost \ # Send a warning email on failures and errors | ||
| -M daily \ # Repeat email warnings daily | -M daily \ # Repeat email warnings daily | ||
| Line 65: | Line 70: | ||
| * **Long Self-Test**: | * **Long Self-Test**: | ||
| * **Conveyance Test** (ATA only): a few minutes to check for damages incurred during transporting of the device. It requires a few minutes to complete. | * **Conveyance Test** (ATA only): a few minutes to check for damages incurred during transporting of the device. It requires a few minutes to complete. | ||
| - | * **Offline Immediate | + | * **Offline Immediate |
| If you want to display the log e.g. of self-test executed, run: | If you want to display the log e.g. of self-test executed, run: | ||
| Line 88: | Line 93: | ||
| ===== hdparm ===== | ===== hdparm ===== | ||
| - | To set the **Advanced Power Management** level use the **%%-B%%** option, | + | To set the **Advanced Power Management** level use the **%%-B%%** option. A low value means aggressive power management, an high value means better performance. The maximum performance level which **permits spin-down** of the drive is 127: |
| < | < | ||
| Line 94: | Line 99: | ||
| </ | </ | ||
| - | Regardless of the APM level, we can set the hard disk **Standby timer** (spindown) after 30 minutes of inactivity. See **man hdparm** for explanation of the number following the **%%-S%%** option (it seems that there is not way to know the timeout once you have set it): | + | Regardless of the APM level, we can set the hard disk **Standby timer** (spindown) after 30 minutes of inactivity. See **man hdparm** for explanation of the number following the **%%-S%%** option (the granularity of the timer up to 20 minutes is 5 seconds, above that threshold |
| < | < | ||
| Line 108: | Line 113: | ||
| </ | </ | ||
| - | Debian provides the file **/ | + | Debian provides the file **/ |
| < | < | ||
| Line 114: | Line 119: | ||
| # It is advisable to disable write cache in this case. | # It is advisable to disable write cache in this case. | ||
| # See man hdparm(8), -S and -W options. | # See man hdparm(8), -S and -W options. | ||
| + | # The granularity of the spindown_time up to 20 minutes is 5 | ||
| + | # seconds, above that threshold it is 30 minutes. | ||
| /dev/sda { | /dev/sda { | ||
| write_cache = off | write_cache = off | ||
| Line 153: | Line 160: | ||
| * **updatedb** - Execute by the **/ | * **updatedb** - Execute by the **/ | ||
| - | * **smartctl** - Reading SMART attributes (e.g. disk temperature, | + | * **smartctl** - Reading SMART attributes (e.g. disk temperature, |
| + | |||
| + | ===== udisks2.service ===== | ||
| + | |||
| + | It seems that the **udisks2.service** may interfere with the hard disk spin-down feature. The '' | ||
| + | |||
| + | It is likely that the hdparm options set by **udev** on system start are overridden by udisks2. In a [[..: | ||
| + | |||
| + | Some useful udisks2 commands: | ||
| + | |||
| + | < | ||
| + | udisksctl info -b /dev/sda3 | ||
| + | </ | ||
| ===== Web References ===== | ===== Web References ===== | ||
| * **[[https:// | * **[[https:// | ||
| + | * **[[https:// | ||
| + | * **[[https:// | ||
| + | * **[[https:// | ||
doc/appunti/hardware/raspberrypi_nas_smart_hard_disk.1615455557.txt.gz · Last modified: by niccolo
