Guest User

cat ./snapshot+systemupdate.sh

a guest
Nov 30th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. #!/bin/bash
  2. # Snapshot + System Update
  3. # ---------------------------
  4. # Snapshot - Rollback - Btrfs
  5. # ---------------------------
  6.  
  7. BTRFS=/usr/bin/btrfs
  8. CP=/usr/bin/cp
  9. ECHO=/usr/bin/echo
  10. GREP=/usr/bin/grep
  11. MOUNT=/usr/bin/mount
  12. MV=/usr/bin/mv
  13. PIKAUR=/usr/bin/pikaur
  14. PACMAN=/usr/bin/pacman
  15. REFLECTOR=/usr/bin/reflector
  16. SED=/usr/bin/sed
  17. SUDO=/usr/bin/sudo
  18. CHECKUPDATES=/usr/bin/checkupdates
  19.  
  20. # ---------------------------
  21. # Snapshot System
  22. # ---------------------------
  23. #if $CHECKUPDATES >/dev/nul 2>/dev/null ; then
  24. if true ; then
  25. bootstate=`$MOUNT | $GREP "on / type btrfs" | $GREP "subvol=/@snapshots/TESTING"`
  26. if [ -z $"{bootstate}" ]
  27. then
  28. $ECHO ""
  29. $ECHO $bootstate
  30. $ECHO ""
  31. $ECHO "System ist nicht mit TESTING hochgefahren !"
  32. $ECHO "ENDE !"
  33. exit
  34. else
  35. # -------- make new OLDSTABLE --------
  36. $SUDO $BTRFS subvolume delete /.snapshots/OLDSTABLE
  37. $SUDO $MV /.snapshots/STABLE /.snapshots/OLDSTABLE
  38. $SUDO $SED -i 's/STABLE/OLDSTABLE/g' /.snapshots/OLDSTABLE/etc/fstab
  39. $SUDO $CP /boot/vmlinuz-linux-stable /boot/vmlinuz-linux-oldstable
  40. $SUDO $CP /boot/initramfs-linux-stable.img /boot/initramfs-linux-oldstable.img
  41.  
  42. # --------- make new STABLE ----------
  43. $SUDO $BTRFS subvolume snapshot / /.snapshots/STABLE
  44. $SUDO $SED -i 's/TESTING/STABLE/g' /.snapshots/STABLE/etc/fstab
  45. $SUDO $CP /boot/vmlinuz-linux /boot/vmlinuz-linux-stable
  46. $SUDO $CP /boot/initramfs-linux.img /boot/initramfs-linux-stable.img
  47.  
  48. # ---------------------------
  49. # Update System
  50. # ---------------------------
  51. $SUDO $REFLECTOR --verbose -l 10 -p https --sort rate --save /etc/pacman.d/mirrorlist
  52. $SUDO $PACMAN -Syu
  53. # $PIKAUR -Syu # aktualisiert AUR gleich mit :-)
  54.  
  55. # ---------------------------
  56. # Balance Filesystem
  57. # --------------------------
  58. $SUDO $BTRFS balance start -dusage=5 /btrfs
  59. fi
  60. else
  61. echo "Keine Updates vorhanden - ENDE !"
  62. sleep 2
  63. fi
Add Comment
Please, Sign In to add comment