Update chr.sh

Signed-off-by: elseif <elseif@live.cn>
This commit is contained in:
elseif 2025-08-26 00:35:49 +08:00 committed by GitHub
parent c2ec6d439c
commit 4987501168
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

26
chr.sh
View file

@ -23,11 +23,6 @@ case $ARCH in
exit 1 exit 1
;; ;;
esac esac
echo "FILE: $(basename $IMG_URL)"
wget --no-check-certificate -O /tmp/chr.img.zip "$IMG_URL"
cd /tmp
unzip -p chr.img.zip > chr.img
STORAGE=$(for d in /sys/block/*; do STORAGE=$(for d in /sys/block/*; do
case $(basename $d) in case $(basename $d) in
loop*|ram*|sr*) continue ;; loop*|ram*|sr*) continue ;;
@ -45,6 +40,19 @@ DNS=$(grep '^nameserver' /etc/resolv.conf | awk '{print $2}' | head -n 1)
[ -z "$DNS" ] && DNS="8.8.8.8" [ -z "$DNS" ] && DNS="8.8.8.8"
echo "DNS: $DNS" echo "DNS: $DNS"
echo "WARNING: All data on /dev/$STORAGE will be lost!"
read -p "Do you want to continue? [Y/n]: " confirm < /dev/tty
confirm=${confirm:-Y}
if [[ "$confirm" =~ ^[Nn]$ ]]; then
echo "Operation aborted."
exit 1
fi
echo "FILE: $(basename $IMG_URL)"
wget --no-check-certificate -O /tmp/chr.img.zip "$IMG_URL"
cd /tmp
unzip -p chr.img.zip > chr.img
if LOOP=$(losetup -Pf --show chr.img 2>/dev/null); then if LOOP=$(losetup -Pf --show chr.img 2>/dev/null); then
sleep 3 sleep 3
MNT=/tmp/chr MNT=/tmp/chr
@ -63,14 +71,6 @@ EOF
losetup -d $LOOP losetup -d $LOOP
fi fi
echo "WARNING: All data on /dev/$STORAGE will be lost!"
read -p "Do you want to continue? [Y/n]: " confirm < /dev/tty
confirm=${confirm:-Y}
if [[ "$confirm" =~ ^[Nn]$ ]]; then
echo "Operation aborted."
exit 1
fi
dd if=chr.img of=/dev/$STORAGE bs=4M conv=fsync dd if=chr.img of=/dev/$STORAGE bs=4M conv=fsync
echo "Ok, rebooting..." echo "Ok, rebooting..."
echo 1 > /proc/sys/kernel/sysrq 2>/dev/null || true echo 1 > /proc/sys/kernel/sysrq 2>/dev/null || true