Andrea Mazzoleni
696ee97754
Log full SMART attributes
2026-02-17 02:02:48 +01:00
Andrea Mazzoleni
2019aa4bb6
Log the normalized, worst and threshold value of SMART attributes
2026-02-17 02:02:48 +01:00
Andrea Mazzoleni
d3f7bf64c1
Differentiate messages in the log files if they are caused by an hardware issue
2026-02-01 20:44:36 +01:00
Andrea Mazzoleni
f134201438
Log more information about the filesystems
2026-01-31 16:30:15 +01:00
Andrea Mazzoleni
9f081f9c22
Log the filesystem type and label
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-01-29 19:34:33 +01:00
Andrea Mazzoleni
5a5668851d
Log the interface of the device
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-01-29 17:06:10 +01:00
Andrea Mazzoleni
3e62e22411
Beautification with unscrustify
2026-01-26 09:42:03 +01:00
Andrea Mazzoleni
c180015fdc
Less confusing names of smartctl flags
2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
ede99cbe80
Added wear level percentage to the SMART report
2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
e99f43c8ca
Log both protocol and medium errors
2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
9f14dd94e5
Add support for ** in the patterns
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2026-01-11 15:48:36 +01:00
Andrea Mazzoleni
13fae39eb3
New pseudo random number generator
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2026-01-06 09:34:29 +01:00
Andrea Mazzoleni
524733a6db
Make the stat tag a disk level
2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
986d7464b4
Add disk usage detection based on access counters
2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
ea53954b41
Rework attributes
2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
efcdfb9118
When logging device attributes, also provide the split information
2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
1f17ceca84
Log disk information info also in probe
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-12-18 18:49:52 +01:00
Andrea Mazzoleni
d452b109bc
More regression tests
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2025-10-28 12:15:50 +01:00
Andrea Mazzoleni
ac986579d7
During cooldown keep spinning down any disk that is spun up
2025-10-26 12:03:31 +01:00
Andrea Mazzoleni
649b3f1f0b
Remove the SMART attribute 193 from the failure probability computation
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-09-29 16:25:49 +02:00
Andrea Mazzoleni
906d215bf5
Add thermal protection options: temp_limit and temp_sleep
...
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Introduce two new configuration directives to protect disks from overheating:
- temp_limit <TEMPERATURE_CELSIUS>
Sets the maximum allowed disk temperature. When any disk exceeds this limit,
SnapRAID stops all operations and spins down the disks.
- temp_sleep <TIME_IN_MINUTES>
Specifies how long disks remain in standby after a temperature event.
Defaults to 15 minutes.
These options allow SnapRAID to automatically pause activity and cool down
disks when a temperature threshold is reached, improving data safety and
hardware longevity.
2025-09-27 16:05:05 +02:00
Andrea Mazzoleni
fedeb99bdc
Add a new probe command
...
Probe the power state of the disks in the system
2025-09-24 11:26:30 +02:00
Andrea Mazzoleni
8cef686d26
Adds a new smartignore option to ignore specific SMART attributes
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2025-09-15 16:57:22 +02:00
Nasado
3c87474aa2
Use volume UUIDs on macOS
2025-02-13 11:21:26 +01:00
Andrea Gelmini
2dacb15516
Fix typos
...
Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2022-07-21 14:48:48 +02:00
Andrea Mazzoleni
53801b407a
Remove the need of the MingW pthread layer on the Windows port
...
Now everything is implemented usign Windows native calls.
2021-05-26 00:21:52 +02:00
Andrea Gelmini
986e9b4131
Fix typos
2020-05-26 12:50:15 +02:00
Andrea Mazzoleni
5bac3d64a6
Fix build errors due new gcc 10 default for -fno-common
2020-05-18 15:28:55 +02:00
Andrea Mazzoleni
37b0064d60
Remove a build warning about major/minor defined in sysmacros.h
...
The new glibc 2.26 shows a warning if the code uses major/minor
from sys/types.h. Unfortunalte the autoconf macro used do not trigger
sysmacros.h inclusion because major/minor are already defined in sys/types.h.
2018-11-12 21:27:34 +01:00
Andrea Mazzoleni
f778fb691f
Apply new hardlink behaviour also to NTFS in nix platforms
...
This is a specific NTFS behaviour, not limited to Windows.
2017-10-29 18:43:53 +01:00
Andrea Mazzoleni
04dfeea107
Tentative fix for major/minor missing
2017-01-04 00:44:20 +01:00
Andrea Mazzoleni
a90f8db3c0
Ingnore the SMART Command Timeout for Seagate SMR disks
2016-10-13 18:57:14 +02:00
Andrea Mazzoleni
00cd931fad
Add partial support for SCSI smart attributes
...
SCSI disks report information in a different way.
2016-10-05 00:12:26 +02:00
Andrea Mazzoleni
20cd1f86f8
Fix typos in comments
...
No functional change.
2016-05-23 22:37:18 +02:00
Andrea Mazzoleni
3c6c5c07c7
More extensive use of data_off_t
...
This avoids the need of some type cast.
2016-05-18 20:58:41 +02:00
Andrea Mazzoleni
8e2cb48ea7
Add alternatives for RtlGenRandom
2016-04-01 22:12:47 +02:00
Andrea Mazzoleni
86eaf8190f
Use the native Windows thread support instead of pthread
2016-02-13 16:05:16 +01:00
Andrea Mazzoleni
29ed19174f
Cleanup pthread usage
...
No functional change.
2016-02-06 15:08:11 +01:00
Andrea Mazzoleni
11a8e301f4
Clear the screen before printing stats
2016-01-27 22:24:59 +01:00
Andrea Mazzoleni
adbf4f25c2
Allow 'smart' without a configuration file
2016-01-18 22:36:06 +01:00
Andrea Mazzoleni
9430106c71
Allow to disable inline assembly from configure
...
This is required for the -fsanitize options that don't
support inline assembly statements.
2016-01-09 11:19:52 +01:00
Andrea Mazzoleni
5249f9cb04
Fix various typos in comments
2016-01-02 16:52:20 +01:00
Andrea Mazzoleni
7ad70c26f8
Remove the need of helgrind/drd suppression
...
Using a mutex for protectign the global memory counter
should not affect performance.
2016-01-01 17:57:04 +01:00
Andrea Mazzoleni
5541f8d5e6
Add UUID reading support using libblkid
...
This fixes the Btrfs case where the root UUIDs are not
present in the /dev/disk/by-uuid directory.
2015-12-10 22:51:19 +01:00
Andrea Mazzoleni
f71ddbb3fd
Add backtrace support for internal errors
2015-12-04 22:02:31 +01:00
Andrea Mazzoleni
452a595067
Adjust verbs in comments
2015-10-07 22:07:20 +02:00
Andrea Mazzoleni
5c5e80a239
Change the return code for 'diff' if a sync is required
2015-04-28 19:15:16 +02:00
Andrea Mazzoleni
214070dc4d
Add support for a new "smartctl" config option
...
This option allows to configure custom smartctl
commands for devices that cannot be autodetected.
2015-04-08 22:56:44 +02:00
Andrea Mazzoleni
9a10c94946
Retry smartctl command in Windows with -d sat if no info
2015-04-07 21:59:09 +02:00
Andrea Mazzoleni
fed3e8be1f
Use shorter fake device names in Windows
2015-02-17 22:27:11 +01:00