Andrea Mazzoleni
5aa1563675
Further conversions from 32 to 64 bits
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
a580273265
Migrate block_off_t to 64-bit with updated CLI parsing, VLQ serialization, and format specifiers
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
a2cec230e9
Portability
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
2ffc1011c6
Secure the popen use
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
cf1508489f
Automatically exclude the snapshot .snapraid directory and content files
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
12ef370ab0
Secure external tools execution
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
a62d078220
Add Windows VirtualShadowCopy support for snapshots
2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
c22b7d6c4a
Add ZFS support
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
b8855aba0d
Rework snapshot interface
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
e242426ded
Add Bcachefs support
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
b1ec61ccb4
Change the BLOCK_HASH_SIZE type to avoid potential overflow
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
d2c07b634d
Target Windows 7 instead of Windows Vista
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
20cdfa7535
Remove the requirement to snapshot content files
...
The new content file format now includes metadata for previous versions
of files. This allows the fix command to access historical file data from
snapshots as needed, ensuring recovery even if the live filesystem has
changed or the file was deleted during a 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
450b826555
New Btrfs support using IOCTLs to get UUID and low level devices
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
81995ccc8d
Use eaccess() instead of access()
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
b32fa703ba
Import incomplete attributes from smartctl
2026-05-14 17:02:16 +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
1a55b23d8f
Fix warning in macOS
2026-03-30 10:07:11 +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
60c7b6baa3
New extra config option for additional disks to monitor
2026-03-11 16:05:39 +01:00
Andrea Mazzoleni
75ef786e29
Report stats also for low devices
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-03 12:41:16 +01:00
Andrea Mazzoleni
b3879f7f8e
Rework the portable support
2026-03-02 09:56:27 +01:00
Andrea Mazzoleni
ed15ad23a4
Report more NVME SMART attributes
2026-02-26 12:53:55 +01:00
Andrea Mazzoleni
f5c07e07f5
Detect more SMART attributes for SCSI/NVME
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-21 18:46:21 +01:00
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