Andrea Mazzoleni
16e93e905e
Add support for specifying case-insensitive SMART attribute names in the smartignore option
2026-07-13 11:03:57 +02:00
Andrea Mazzoleni
5f60c5a948
Add support for custom smartctl info options using a [info: ...] tag
2026-07-13 11:03:57 +02:00
Andrea Mazzoleni
5aa1563675
Further conversions from 32 to 64 bits
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
c8cc0be6ad
Delete snapshot links in Windows
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
c79b0c0cc3
Add regression check for Btrfs
...
It requires root privileges as it has to create Btrfs filesystems.
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
69d467e9ef
Track deallocated files in the content file for parity recovery
...
Add a new 'dealloc' list per disk to record files that were removed
or modified during a scan. This list is saved in the content file
(new format version SNAPCNT4) so that past parity contributions of
those files can be imported from previous snapshots.
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
dd0ded0be5
Sync no longer requires clearing the past hash
...
It no longer assumes past hashes are valid if even a single unsynced
block exists, which indicates a previous sync was interrupted.
While this makes syncing slower after an interruption, it preserves the
past hash in the content file, enabling a more reliable fix if a
disk fails following an incomplete sync.
This ensures the --import option remains functional even after an
interrupted sync.
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
e9871d65ff
Add Btrfs snapshot support for atomic sync and recovery consistency
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
447b1fd067
Fix overflow in the TERA/TEBI definition
2026-06-03 18:24:18 +02:00
Andrea Mazzoleni
23b4cc5fa0
Make the devices commands to fail if unsupported in the platform
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
4ba6ee874c
Log the modification time of the content file in probe and other commmands
2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
0d0431a907
Simpler Copyright string
2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236
Use SPDX ( https://spdx.dev/ ) tags to identify the license used for each
...
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
c153898c9a
Log devices mapping
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-03-16 12:43:23 +01:00
Andrea Mazzoleni
189029749e
Configuration is now required also for smart and probe commands
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-03-12 16:19:40 +01:00
Andrea Mazzoleni
60c7b6baa3
New extra config option for additional disks to monitor
2026-03-11 16:05:39 +01:00
Andrea Mazzoleni
e48cdacce5
New option --gui-touch-before
2026-03-10 23:43:21 +01:00
Andrea Mazzoleni
627b7cff50
New gui options to have a better integration
2026-02-10 12:16:50 +01:00
Ralf
966583e6f0
Add a new -W, --force-realloc-tail that operates only on the specified tail
...
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
d5b5a9bcbf
More efficient info bucket management
...
Logged at every state_read() and state_write()
2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
d3c5521d21
Log the new temperature attribute for all devices
2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
025816d151
Speed up the status command
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-02-02 18:00:14 +01:00
Andrea Mazzoleni
60bd71d184
Log new block_unsynced and block_unscrubbed counter
2026-02-02 18:00:14 +01:00
Ralf
c09bdc572e
Add new locate command with --tail option.
...
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-02-02 14:02:16 +01:00
Andrea Mazzoleni
6b79b3157d
Splitted the --gui option in --gui and --gui-verbose to avoid extremely big logs
2026-01-14 10:49:23 +01:00
Andrea Mazzoleni
36cef9ee89
New .snapraidignore feature
2026-01-11 12:07:01 +01:00
Andrea Mazzoleni
e00342557e
Exit with an error code if Ctrl+C is pressed
2025-10-17 10:07:51 +02:00
Andrea Mazzoleni
52ef48655f
Improve and change the order of the user messages
...
The "Everything is OK" is now printed as latest one.
2025-10-13 13:51:18 +02:00
Andrea Mazzoleni
467fb8c1ac
Don't print the "Nothing to do" if the state was updated
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-13 00:26:31 +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
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
Allan Clark
5886923bb1
Add bandwidth limit feature --bw-limit
2025-03-29 19:29:55 +01:00
Andrea Mazzoleni
1d4fbd3f9a
Add the option --test-skip-multi-scan to skip multithreads scan
2022-01-07 21:03:51 +01:00
Andrea Mazzoleni
836fd6b1e0
Add a new undocumented --filter-block-error option
2021-07-08 08:07:03 +02:00
Andrea Gelmini
986e9b4131
Fix typos
2020-05-26 12:50:15 +02:00
Andrea Mazzoleni
b9740e06f4
Print filenames in the stats screen
2017-11-24 22:17:24 +01:00
Andrea Mazzoleni
ba0184c37c
Add a test option to skip the space holder
2016-10-05 00:12:29 +02:00
Andrea Mazzoleni
b1fc75adab
Make -F to not reallocate parity
...
This is now done by the new -R option.
2016-10-01 22:19:29 +02:00
Andrea Mazzoleni
4298a238e9
Add option to skip content write in sync
2016-05-17 23:17:31 +02:00
Andrea Mazzoleni
bec310d50b
Add regression test for multi parity
2016-05-17 19:08:12 +02:00
Andrea Mazzoleni
21241c5078
Preliminary advise support
2016-05-15 14:50:59 +02:00
Andrea Mazzoleni
5b06549ee3
Make the hash size configurable
...
Only at source code level.
2016-04-07 21:39:02 +02:00
Andrea Mazzoleni
4a418e158a
Add time stats also for thread scheduling
2016-01-31 18:08:39 +01:00
Andrea Mazzoleni
895eb6b36c
Add the new --test-io-stats to show graphs, and reformat them
2016-01-27 22:26:25 +01:00
Andrea Mazzoleni
252d613eae
Print stats of the number of cached blocks
2016-01-27 20:37:31 +01:00
Andrea Mazzoleni
5f8fd36b45
Use progress values for the usage graph
2016-01-27 18:19:31 +01:00
Andrea Mazzoleni
846c02e2c1
Preliminary usage graph
2016-01-26 23:47:59 +01:00
Andrea Mazzoleni
6f004d13ce
Allow -d, --disk in 'up' and 'down'
2016-01-23 15:31:30 +01:00
Andrea Mazzoleni
e2c4399e28
More precise disk usage time
...
When we wait, we now count the time for all the waiting disks,
and not only for the first one that finish.
2016-01-20 21:30:00 +01:00
Andrea Mazzoleni
adbf4f25c2
Allow 'smart' without a configuration file
2016-01-18 22:36:06 +01:00