#!/usr/local/bin/bash # Copyright (c) 2018-2021, diyIT.org # All rights reserved. # # BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License") # https://diyit.org/license/ # # update_jail () { echo "######## ## JAIL:::: $JAIL ##" ## uncomment below to list and remove snapshots #zfs list -t snapshot -o name | grep ship/iocage/jails/$JAIL | sort #read -p "remove all $JAIL snapshots (y/N)? " RESP #if [ ! -z $RESP ] && [ $RESP == "y" ]; then # zfs list -t snapshot -o name | grep ship/iocage/jails/$JAIL | sort | xargs -n 1 zfs destroy #fi iocage exec $JAIL "freebsd-version" if [[ $1 == "upgrade" ]]; then iocage upgrade -r 12.2-RELEASE $JAIL # pkgp.conf updated to new release after an upgrade iocage exec $JAIL "[ -f /mnt/config/pkgp.conf ] && cp /mnt/config/pkgp.conf /usr/local/etc/pkg/repos/ || cp /mnt/common/pkgp.conf /usr/local/etc/pkg/repos/" iocage exec $JAIL "pkg-static upgrade -f -y" iocage exec $JAIL "pkg update -f" else iocage update $JAIL iocage exec $JAIL "pkg update" fi iocage exec $JAIL "pkg autoremove -y" iocage exec $JAIL "pkg upgrade -y" # iocage exec $JAIL "pkg upgrade -f -y" iocage exec $JAIL "pkg clean -ay" # iocage exec $JAIL "rm -rf /var/tmp/temproot*" # iocage exec $JAIL "mergemaster -a" iocage exec $JAIL "etcupdate -t /mnt/common/current-src.bzip2" iocage exec $JAIL "freebsd-version" echo "######## ####" #read -p "continue, ctrl-c to abort? " RESP } iocage fetch -U -r 12.2-RELEASE etcupdate build current-src.bzip2 mv current-src.bzip2 /root/FreeBSD/jails/configs/common/ read -p "update pkgp packages first (y/N)? " RESP if [ ! -z $RESP ] && [ $RESP == "y" ]; then /root/FreeBSD/jails/jails-update-pkgs.sh pkgp-only fi read -p "update all jails (y/N)? " RESP if [ ! -z $RESP ] && [ $RESP == "y" ]; then # for JAIL in `iocage list -h | cut -f2`; for JAIL in `jls -N | cut -d " " -f 2 | cut -d "-" -f 2- | grep -v JID | sort`; do if [ $JAIL == "test" ] || [ $JAIL == "debian" ]; then continue fi if [[ $1 == "upgrade" ]]; then read -p "upgrade jail $JAIL (Y/n)? " RESP if [ ! -z $RESP ] && [ $RESP == "n" ]; then continue fi fi update_jail $1 done fi echo "update base system by running:" echo "freebsd-update fetch" # echo "freebsd-update upgrade -r 13.0-RELEASE" echo "freebsd-update install" # echo "pkg bootstrap -f ; pkg update ; pkg upgrade" echo "cd /usr/src; svn update; make -j8 buildkernel KERNCONF=diyIT && make -j8 installkernel KERNCONF=diyIT" echo "reboot" echo "pkg-static upgrade -f" #echo "rm -rf /var/tmp/temproot*" #echo "mergemaster -a" echo "etcupdate -t /mnt/common/current-src.bzip2" echo "/root/FreeBSD/scripts/zfs-prune-snapshots -vn -p 'ioc_update' 1d | grep removing"