X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=btrfsmaint;fp=btrfsmaint;h=6423e26808e5da8a1279472a77962ef841e89284;hb=ce4cacd36c5b5babeea85d0f93771017e6169180;hp=33cae4a36280351c170155f11fc83ba8ca3b2102;hpb=b28eebdf9143aa17733f233b30b96f462008f3b6;p=distro-setup diff --git a/btrfsmaint b/btrfsmaint index 33cae4a..6423e26 100755 --- a/btrfsmaint +++ b/btrfsmaint @@ -102,7 +102,6 @@ main() { fi - tmp=$(mktemp) fnd="findmnt --types btrfs --noheading" for x in $($fnd --output "SOURCE" --nofsroot | sort -u); do mnt=$($fnd --output "TARGET" --first-only --source $x) @@ -113,10 +112,22 @@ main() { # Only run for $check, since it runs in parallel to non-check, avoid # race condition. if $check; then - if ! btrfs dev stats -c $mnt >$tmp; then - if diff -q $mnt/btrfs-dev-stats $tmp; then - diff -u $mnt/btrfs-dev-stats $tmp | mail -s "$HOSTNAME: error: btrfs dev stats -c $mnt" root@localhost - cat $tmp >$mnt/btrfs-dev-stats + tmp=$(mktemp) + # if mnt is /, avoid making a buggy looking path + stats_path=${mnt%/}/btrfs-dev-stats + if [[ ! -e $stats_path ]]; then + btrfs dev stats -c $mnt >$stats_path ||: # populate initial reading + elif ! btrfs dev stats -c $mnt >$tmp; then + if ! diff -q $stats_path $tmp; then + exim -t <$stats_path fi fi rm -f $tmp