#!/bin/sh
set -eu

for mp in $(lsblk --list --noheadings --output fstype,mountpoint | \
            awk '$1 == "btrfs" {print $2}' | \
            sort -u)
do
    status="$(btrfs scrub status "$mp" | awk '$1 == "Status:" {print $2}')"
    if [ "$status" = 'running' ]
    then
        echo "Scrub already running on $mp, skipping." >&2
        continue
    fi
    btrfs scrub start "$mp"
    echo "Started scrub on $mp." >&2
done
