code.fastix.org

Dateiansicht:

Datei:Projekte -> Ubuntu,btrfs,apt:Löschen alter Snapshots -> delete-apt-snaphots.sh
md5:20e4c01915f14ed3a888fda1577d59a6
sha1:b2c67bb6d356feeeab0ceb3c09d63287e1a4312e
  1. #!/usr/bin/sudo /bin/bash
  2. # (Debian: Ersetzen Sie Zeile 1 mit "#!/bin/bash" und starten Sie das Skript als root)
  3.  
  4. ###
  5. # LastUpdate:   2017-06-08     
  6. # Version:      1.0
  7. # Author:       Jörg Reinholz, fastix WebDesign & Consult Kassel, http://www.fastix.org
  8. # Requirements: Ubuntu 16.04 (Debian, Mint e.t.c.) with btrfs on root-filesstem
  9. # Licence:      https://code.fastix.org/lizenz.php
  10. # Non-Warranty: https://code.fastix.org/haftung.php
  11. ###
  12.  
  13. rootdevice=$(/bin/df / | /usr/bin/tail -n1 | /usr/bin/cut -d " " -f1);
  14. workdir=$(/bin/mktemp -d);
  15. olddir=$(/bin/pwd);
  16.  
  17. /bin/mount -t btrfs "${rootdevice}" "${workdir}";
  18. cd "${workdir}";
  19. echo;
  20. for snapshot in $(/bin/ls -d @apt-snapshot* 2> /dev/null); do
  21.     /bin/echo -n "Lösche ${snapshot} .. ";
  22.     /sbin/btrfs subvolume delete "${snapshot}/@" 1> /dev/null 2> /dev/null;
  23.     /sbin/btrfs subvolume delete "${snapshot}"   1> /dev/null 2> /dev/null;
  24.     /bin/echo " erledigt";
  25. done
  26. /bin/echo;  
  27. cd "${olddir}";
  28. /bin/umount "${workdir}";
  29. /bin/rmdir "${workdir}";