]>
git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - config/rootfiles/oldcore/177/update.sh
2 ############################################################################
4 # This file is part of the IPFire Firewall. #
6 # IPFire is free software; you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation; either version 3 of the License, or #
9 # (at your option) any later version. #
11 # IPFire is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
16 # You should have received a copy of the GNU General Public License #
17 # along with IPFire; if not, write to the Free Software #
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
20 # Copyright (C) 2023 IPFire-Team <info@ipfire.org>. #
22 ############################################################################
24 .
/opt
/pakfire
/lib
/functions.sh
25 /usr
/local
/bin
/backupctrl exclude
>/dev
/null
2>&1
30 # Set last succesfull installed core.
31 echo $
(($core-1)) > /opt
/pakfire
/db
/core
/mine
32 # force fsck at next boot, this may fix free space on xfs
34 # don't start pakfire again at error
35 killall
-KILL pak_update
36 /usr
/bin
/logger
-p syslog.emerg
-t ipfire \
37 "core-update-${core}: $1"
42 # Remove old core updates from pakfire cache to save space...
43 for (( i
=1; i
<=$core; i
++ )); do
44 rm -f /var
/cache
/pakfire
/core-upgrade-
*-$i.ipfire
48 /etc
/rc.d
/init.d
/squid stop
52 # Backup uEnv.txt if exist
53 if [ -e /boot
/uEnv.txt
]; then
54 cp -vf /boot
/uEnv.txt
/boot
/uEnv.txt.org
57 # Do some sanity checks prior to the kernel update
63 exit_with_error
"ERROR cannot update. No IPFire Kernel." 1
67 # Check diskspace on root
68 ROOTSPACE
=$
( df
/ -Pk |
sed "s| * | |g" | cut
-d" " -f4 |
tail -n 1 )
70 if [ $ROOTSPACE -lt 100000 ]; then
71 exit_with_error
"ERROR cannot update because not enough free space on root." 2
75 # Remove the old kernel
88 # Remove dropped squidclamav add-on, if installed
89 if [ -e "/opt/pakfire/db/installed/meta-squidclamav" ]; then
90 stop_service
"squidclamav"
91 for i
in $
(</opt
/pakfire
/db
/rootfiles
/squidclamav
); do
96 /opt
/pakfire
/db
/installed
/meta-squidclamav \
97 /opt
/pakfire
/db
/meta
/meta-squidclamav \
98 /opt
/pakfire
/db
/rootfiles
/squidclamav
100 # remove old rngd if the addon is not installed
101 if [ ! -e "/opt/pakfire/db/installed/meta-rng-tools" ]; then
102 rm -fv /usr
/bin
/randstat \
105 /etc
/rc.d
/init.d
/rngd \
106 /etc
/rc.d
/rc?.d
/*rngd
114 /lib
/firmware
/cxgb
4/t4fw-1.27
.1* \
115 /lib
/firmware
/cxgb
4/t5fw-1.27
.1* \
116 /lib
/firmware
/cxgb
4/t6fw-1.27
.1* \
117 /lib
/firmware
/intel
/ice
/ddp-comms
/ice_comms-1.3
.3* \
118 /lib
/firmware
/intel
/ice
/ddp-wireless_edge
/ice_wireless_edge-1.3
.7* \
119 /usr
/lib
/engines-1
* \
120 /usr
/lib
/libcrypto.so
.1* \
121 /usr
/lib
/libssl.so
.1*
123 # update linker config
126 # Update Language cache
127 /usr
/local
/bin
/update-lang-cache
130 /usr
/local
/bin
/filesystem-cleanup
133 /etc
/init.d
/sshd restart
134 /etc
/init.d
/unbound reload
135 /etc
/init.d
/ntp restart
136 if [ -f /var
/ipfire
/proxy
/enable ]; then
137 /etc
/init.d
/squid start
140 # Rebuild initial ramdisks
141 dracut
--regenerate-all --force
143 case "$(uname -m)" in
145 mkimage
-A arm64
-T ramdisk
-C lzma
-d /boot
/initramfs-
${KVER}-ipfire.img
/boot
/uInit-
${KVER}-ipfire
146 # dont remove initramfs because grub need this to boot.
150 # remove lm_sensor config after collectd was started
151 # to re-search sensors at next boot with updated kernel
152 rm -f /etc
/sysconfig
/lm_sensors
154 # Upadate Kernel version in uEnv.txt
155 if [ -e /boot
/uEnv.txt
]; then
156 sed -i -e "s/KVER=.*/KVER=${KVER}/g" /boot
/uEnv.txt
159 # Call user update script (needed for some ARM boards)
160 if [ -e /boot
/pakfire-kernel-update
]; then
161 /boot
/pakfire-kernel-update
${KVER}
164 # This update needs a reboot...
165 touch /var
/run
/need_reboot
168 /etc
/init.d
/fireinfo start
171 # Update grub config to display new core version
172 if [ -e /boot
/grub
/grub.cfg
]; then
173 grub-mkconfig
-o /boot
/grub
/grub.cfg
178 # Don't report the exitcode last command