Advertisement
Guest User

snapshot+systemupdate.sh

a guest
Nov 16th, 2019
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.11 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.  
  19. # ---------------------------
  20. #      Snapshot System
  21. # ---------------------------
  22. bootstate=`$MOUNT | $GREP "on / type btrfs" | $GREP "subvol=/@snapshots/TESTING"`
  23. if [ -z $"{bootstate}" ]
  24.     then
  25.         $ECHO ""
  26.         $ECHO $bootstate
  27.         $ECHO ""
  28.         $ECHO "System ist nicht mit TESTING hochgefahren !"
  29.         $ECHO "ENDE !"
  30.         exit
  31.     else
  32.         # -------- make new OLDSTABLE --------
  33.         $SUDO $BTRFS subvolume delete /.snapshots/OLDSTABLE
  34.         $SUDO $MV /.snapshots/STABLE /.snapshots/OLDSTABLE
  35.         $SUDO $SED -i 's/STABLE/OLDSTABLE/g' /.snapshots/OLDSTABLE/etc/fstab
  36.         $SUDO $CP /boot/vmlinuz-linux-stable /boot/vmlinuz-linux-oldstable
  37.         $SUDO $CP /boot/initramfs-linux-stable.img /boot/initramfs-linux-oldstable.img
  38.         $SUDO $CP /boot/vmlinuz-linux-lts-stable /boot/vmlinuz-linux-lts-oldstable
  39.         $SUDO $CP /boot/initramfs-linux-lts-stable.img /boot/initramfs-linux-lts-oldstable.img
  40.        
  41.         # --------- make new STABLE ----------
  42.         $SUDO $BTRFS subvolume snapshot / /.snapshots/STABLE
  43.         $SUDO $SED -i 's/TESTING/STABLE/g' /.snapshots/STABLE/etc/fstab
  44.         $SUDO $CP /boot/vmlinuz-linux /boot/vmlinuz-linux-stable
  45.         $SUDO $CP /boot/initramfs-linux.img /boot/initramfs-linux-stable.img
  46.         $SUDO $CP /boot/vmlinuz-linux-lts /boot/vmlinuz-linux-lts-stable
  47.         $SUDO $CP /boot/initramfs-linux-lts.img /boot/initramfs-linux-lts-stable.img
  48.        
  49.         # ---------------------------
  50.         #      Update System
  51.         # ---------------------------
  52.         $SUDO $REFLECTOR --verbose -l 10 -p https --sort rate
  53.         $SUDO $REFLECTOR --verbose -l 10 -p https --sort rate --save /etc/pacman.d/mirrorlist
  54.         # $SUDO $PACMAN -Syu
  55.         $PIKAUR -Syu # aktualisiert AUR gleich mit :-)
  56.        
  57.         # ---------------------------
  58.         #    Balance Filesystem
  59.         # --------------------------
  60.         $SUDO $BTRFS balance start -dusage=5 /btrfs
  61. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement