X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=filesystem%2Fetc%2Fcron.weekly%2Fbtrfs-balance-ian;h=3061f3a1b730793a045fa5c86eae10e36bc61cc0;hb=c1380ecb6d9f7206fcb88fc01d584143146c6a1e;hp=7447740303de05bcd0bec0cfcb36bbd02bbd6bc8;hpb=0ca28bac859f99d8555abd3755675dafa2aed8cb;p=distro-setup diff --git a/filesystem/etc/cron.weekly/btrfs-balance-ian b/filesystem/etc/cron.weekly/btrfs-balance-ian index 7447740..3061f3a 100755 --- a/filesystem/etc/cron.weekly/btrfs-balance-ian +++ b/filesystem/etc/cron.weekly/btrfs-balance-ian @@ -12,33 +12,32 @@ trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR dusage="1 5 10 20 30 40 50" musage="1 5 10 20 30" -e() { echo "$*"; "$@"; } +e() { echo "cron: $*"; "$@"; } fnd="findmnt --types btrfs --noheading" for x in $($fnd --output "SOURCE" --nofsroot | sort -u); do mnt=$($fnd --output "TARGET" --first-only --source $x) [[ $mnt ]] || continue - echo "Before balance of $mnt" - e btrfs filesystem df $mnt - df -H $mnt + # for comparing before and after balance. + # the log is already fairly verbose, so commented. + # e btrfs filesystem df $mnt + # e df -H $mnt if btrfs filesystem df $mnt | grep -q "Data+Metadata"; then for usage in $dusage; do - e btrfs balance start -v -dusage=$usage -musage=$usage $mnt + e btrfs balance start -dusage=$usage -musage=$usage $mnt done else e btrfs balance start -dusage=0 $mnt for usage in $dusage; do - e btrfs balance start -v -dusage=$usage $mnt + e btrfs balance start -dusage=$usage $mnt done e btrfs balance start -musage=0 $mnt for usage in $musage; do - e btrfs balance start -v -musage=$usage $mnt + e btrfs balance start -musage=$usage $mnt done fi - echo "After balance of $mnt" - btrfs filesystem df $mnt - df -H $mnt - + # e btrfs filesystem df $mnt + # e df -H $mnt date=$( btrfs scrub status $mnt | \ sed -rn 's/^\s*scrub started at (.*) and finished.*/\1/p' @@ -50,9 +49,9 @@ for x in $($fnd --output "SOURCE" --nofsroot | sort -u); do # it makes the comp lag like shit for a day, # so I'm going with 90 days. if (( $date > `date +%s` - 60*60*24*30 )); then - echo "skiping scrub of $mnt" + echo "cron: skiping scrub of $mnt" continue fi fi - btrfs scrub start -Bd $mnt + e btrfs scrub start -Bd $mnt done