Silent data corruption can creep into long-lived storage without an obvious disk error, turning a healthy-looking file into a future incident. Enabling GlusterFS bitrot detection adds an integrity signal so corruption can be flagged early and handled before a file is trusted by applications.
Bitrot detection runs a bitd signer and a scrubber process for a volume, maintaining checksums and periodically verifying stored data against those signatures. Detected mismatches are marked as corrupted and reported in scrub status output, with details written to /var/log/glusterfs/bitd.log and /var/log/glusterfs/scrub.log.
Bitrot detection is enabled per volume and is disabled by default, allowing selective rollout across a cluster. Scrubbing consumes background CPU and I/O, so enabling during a low-traffic window reduces impact; detection identifies corruption but does not automatically repair files, so recovery and replacement procedures should exist before relying on results.
$ sudo gluster volume list volume1
Replace volume1 with the volume to protect.
$ sudo gluster volume info volume1 Volume Name: volume1 Status: Started ##### snipped #####
$ sudo gluster volume bitrot volume1 enable
Scrubbing adds background I/O and CPU load; enable during a maintenance window for latency-sensitive workloads.
$ sudo gluster volume get volume1 features.bitrot Option: features.bitrot Value: on
$ sudo gluster volume bitrot volume1 scrub status Volume name: volume1 State of scrub: Active (Idle) Scrub impact: lazy Scrub frequency: biweekly Bitrot error log location: /var/log/glusterfs/bitd.log Scrubber error log location: /var/log/glusterfs/scrub.log Error count: 0 Corrupted objects: None
Scrub frequency and throttle depend on the GlusterFS release and cluster policy; tune defaults via the related scrub configuration page when needed.