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) 2014 IPFire-Team <info@ipfire.org>. #
22 ############################################################################
24 .
/opt
/pakfire
/lib
/functions.sh
25 /usr
/local
/bin
/backupctrl exclude
>/dev
/null
2>&1
28 function find_root_device
() {
29 while read -r dev mountpoint fs options
; do
30 # Skip generic entries
31 [ "${dev}" = "rootfs" ] && continue
33 if [ "${mountpoint}" = "/" ]; then
40 # Remove old core updates from pakfire cache to save space...
42 for (( i
=1; i
<=$core; i
++ ))
44 rm -f /var
/cache
/pakfire
/core-upgrade-
*-$i.ipfire
56 # Update Language cache
57 perl
-e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
60 root_device
="$(find_root_device)"
61 if ! grub-install
"${root_device}"; then
62 if ! grub-install
--force "${root_device}"; then
63 echo "Could not update the bootloader!"
69 # This update need a reboot...
70 touch /var
/run
/need_reboot
73 /etc
/init.d
/fireinfo start
76 # Don't report the exitcode last command