W AA+ masz eMMC (wlutowana pamiec) zamiast zwyklej karty SD. Na tejze pamieci jest kilka partycji. Systemowa jest zamontowana w trybie read-only, wiec teoretycznie nic nie moze sie popsuc. Z kolei folder dodmowy defaultowgeo usera AA+ (/home/pi) jest podmontowany na inna partycje w trybie read-write. Wiekoszosc funkcjonalnosci AA+ jest oparta o skrypty BASH. Jesli cos, w jakis magiczny sposob sie popsuje, to za pomoca przycisku RESET na obudowie, dajesz urzadzeniu do zrozumienia, ze chcesz naprawic. I dalej tylko domysly, bo juz nie kopalem glebiej: jako, ze update AA+ odbywa sie na zasadzie wrzucenia nowego archiwum tgz z appki na AA+, a potem rozpakowanie do folderu /tmp i uruchomienie kolejnego skryptu aktualizujacego, wnioskuje, ze proces przywracania wyglada podobnie.
findmnt
TARGET SOURCE FSTYPE OPTIONS
/ /dev/mmcblk0p2 ext4 ro,noatime
|-/dev devtmpfs devtmpfs rw,relatime,size=1827472k,nr_inodes=97609,mode=755
| |-/dev/shm tmpfs tmpfs rw,nosuid,nodev
| |-/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000
| `-/dev/mqueue mqueue mqueue rw,relatime
|-/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime
| |-/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime
| |-/sys/fs/cgroup tmpfs tmpfs ro,nosuid,nodev,noexec,mode=755
| | |-/sys/fs/cgroup/unified cgroup2 cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate
| | |-/sys/fs/cgroup/systemd cgroup cgroup rw,nosuid,nodev,noexec,relatime,xattr,name=systemd
| | |-/sys/fs/cgroup/perf_event cgroup cgroup rw,nosuid,nodev,noexec,relatime,perf_event
| | |-/sys/fs/cgroup/freezer cgroup cgroup rw,nosuid,nodev,noexec,relatime,freezer
| | |-/sys/fs/cgroup/pids cgroup cgroup rw,nosuid,nodev,noexec,relatime,pids
| | |-/sys/fs/cgroup/net_cls,net_prio cgroup cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio
| | |-/sys/fs/cgroup/blkio cgroup cgroup rw,nosuid,nodev,noexec,relatime,blkio
| | |-/sys/fs/cgroup/cpu,cpuacct cgroup cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct
| | |-/sys/fs/cgroup/devices cgroup cgroup rw,nosuid,nodev,noexec,relatime,devices
| | `-/sys/fs/cgroup/cpuset cgroup cgroup rw,nosuid,nodev,noexec,relatime,cpuset
| |-/sys/fs/bpf none bpf rw,nosuid,nodev,noexec,relatime,mode=700
| |-/sys/kernel/debug debugfs debugfs rw,relatime
| `-/sys/kernel/config configfs configfs rw,relatime
|-/proc proc proc rw,relatime
| `-/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=40,pgrp=1,timeout=0,minproto=5,maxproto=5,direct
|-/run tmpfs tmpfs rw,nosuid,nodev,mode=755
| |-/run/lock tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k
| |-/run/rpc_pipefs sunrpc rpc_pipefs rw,relatime
| `-/run/user/1001 tmpfs tmpfs rw,nosuid,nodev,relatime,size=391912k,mode=700,uid=1001,gid=1001
|-/var/tmp tmpfs tmpfs rw,nosuid,nodev,relatime
|-/var/log tmpfs tmpfs rw,nosuid,nodev,relatime
|-/tmp tmpfs tmpfs rw,nosuid,nodev,relatime
|-/var/lib/systemd tmpfs tmpfs rw,nosuid,nodev,relatime
|-/boot /dev/mmcblk0p1 vfat ro,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro
| `-/boot/Image /dev/mmcblk0p5 vfat rw,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro
`-/home/pi /dev/mmcblk0p3 ext4 rw,noatime
/home/pi
-rw------- 1 pi pi 308 Apr 12 2022 AP_2.4G.conf
-rw------- 1 pi pi 512 Apr 12 2022 AP_5G.conf
drwxr-xr-x 4 pi pi 4096 Jun 27 2022 ASIAIR
-rwx--x--x 1 pi pi 253 Jan 7 2021 bridgeAP
-rwx--x--x 1 pi pi 1703 Jan 7 2021 cpuinfo
-rwx--x--x 1 pi pi 9515 Jan 7 2021 read-only-fs.sh
drwx------ 6 pi pi 4096 Jan 7 2021 samba
drwxr-xr-x 3 pi pi 4096 Jun 28 2022 svr_log_bk
lrwxrwxrwx 1 pi pi 12 Apr 12 2022 wlan0.conf -> AP_2.4G.conf
-rw-r--r-- 1 root root 177 Apr 12 2022 wpa_supplicant.conf
drwxr-xr-x 3 pi pi 4096 Jan 7 2021 www
/home/pi/ASIAIR
-rwxr-xr-x 1 pi pi 123613 Jun 20 2022 Soft03Cmt.txt
-rwxr-xr-x 1 pi pi 1417 Feb 17 2022 auto_shutdown.sh
-rwxr-xr-x 1 pi pi 3178 May 10 2021 comets.py
-rwxr-xr-x 1 pi pi 3807 Feb 17 2022 common.sh
-rwxr-xr-x 1 pi pi 2918 Mar 9 2021 mount_udisk.sh
-rwxr-xr-x 1 pi pi 9461 Jul 30 2021 network.sh
-rwxr-xr-x 1 pi pi 897 Jun 9 2022 old_log_mv.sh
-rwxr-xr-x 1 pi pi 989 May 10 2021 planet.py
-rwxr-xr-x 1 pi pi 3129 Mar 22 2022 read_power_cm4.sh
-rwxr-xr-x 1 pi pi 724 Jun 6 2022 read_power_mini.sh
-rwxr-xr-x 1 pi pi 1242 Feb 17 2022 read_power_rk.sh
-rwxr-xr-x 1 pi pi 478 Mar 9 2021 run_update_pack.sh
-rwxr-xr-x 1 pi pi 395 Jan 20 2021 set_timezone.sh
-rwxr-xr-x 1 pi pi 1333 Apr 28 2021 start_INDI.sh
-rwxr-xr-x 1 pi pi 1317 Jun 20 2022 zwoair_ap_led.sh
-rwxr-xr-x 1 pi pi 5737 Mar 4 2022 zwoair_daemon.sh
-rwxr-xr-x 1 pi pi 1531416 Jun 22 2022 zwoair_guider
-rwxr-xr-x 1 pi pi 18777436 Jun 22 2022 zwoair_imager
-rwxr-xr-x 1 pi pi 345984 Jun 22 2022 zwoair_updater
run_update_pack.sh
#!/bin/bash
source /home/pi/ASIAIR/config
if [ -z "$update_tmp_path" ];then
update_tmp_path=/home/pi/.ZWO/
fi
if [ $# -lt 1 ];then
echo "too few argument($#), quit"
exit 1
fi
#20191129先清空deb文件夹,防止有pi3和pi4升级包用错
test -d $update_tmp_path"deb" && (echo remove deb;rm -r $update_tmp_path"deb")
tar -jxvf $1 -C $update_tmp_path
chmod +x $update_tmp_path"update_package.sh"
$update_tmp_path"update_package.sh" > $update_tmp_path"update_out" &