]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - config/rootfiles/core/76/update.sh
Merge remote-tracking branch 'stevee/core-76-update' into next
[people/teissler/ipfire-2.x.git] / config / rootfiles / core / 76 / update.sh
index 8f0f0fd8effa879bbfe1fe1901b8a5607954b576..1f7bcfa57119ca27d48a84ae7e14e9a0bff4c47d 100644 (file)
@@ -36,7 +36,7 @@ function add_to_backup ()
 #
 # Remove old core updates from pakfire cache to save space...
 core=76
-for (( i=1; i<=$core; i++ ))
+for (( i=1; i<=${core}; i++ ))
 do
        rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
 done
@@ -46,7 +46,7 @@ done
 case $(uname -r) in
        *-ipfire-versatile )
                /usr/bin/logger -p syslog.emerg -t ipfire \
-                       "core-update-$core: ERROR cannot update. versatile support is dropped."
+                       "core-update-${core}: ERROR cannot update. versatile support is dropped."
                # Report no error to pakfire. So it does not try to install it again.
                exit 0
                ;;
@@ -54,7 +54,7 @@ case $(uname -r) in
                BOOTSIZE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f2 | tail -n 1`
                if [ $BOOTSIZE -lt 28000 ]; then
                        /usr/bin/logger -p syslog.emerg -t ipfire \
-                               "core-update-$core: ERROR cannot update because not enough space on boot."
+                               "core-update-${core}: ERROR cannot update because not enough space on boot."
                        exit 2
                fi
                ;;
@@ -63,7 +63,7 @@ case $(uname -r) in
                ;;
        * )
                /usr/bin/logger -p syslog.emerg -t ipfire \
-                       "core-update-$core: ERROR cannot update. No IPFire Kernel."
+                       "core-update-${core}: ERROR cannot update. No IPFire Kernel."
                exit 1
        ;;
 esac
@@ -71,7 +71,7 @@ esac
 
 #
 #
-KVER="3.10.27"
+KVER="3.10.28"
 MOUNT=`grep "kernel" /boot/grub/grub.conf 2>/dev/null | tail -n 1 `
 # Nur den letzten Parameter verwenden
 echo $MOUNT > /dev/null
@@ -82,10 +82,10 @@ fi
 
 #
 # check if we the backup file already exist
-if [ -e /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz ]; then
+if [ -e /var/ipfire/backup/core-upgrade${core}_${KVER}.tar.xz ]; then
     echo Moving backup to backup-old ...
-    mv -f /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz \
-       /var/ipfire/backup/core-upgrade$core_$KVER-old.tar.xz
+    mv -f /var/ipfire/backup/core-upgrade${core}_${KVER}.tar.xz \
+       /var/ipfire/backup/core-upgrade${core}_${KVER}-old.tar.xz
 fi
 echo First we made a backup of all files that was inside of the
 echo update archive. This may take a while ...
@@ -112,7 +112,7 @@ add_to_backup etc/fstab
 add_to_backup usr/share/usb_modeswitch
 
 # Backup the files
-tar cJvf /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz \
+tar cJvf /var/ipfire/backup/core-upgrade${core}_${KVER}.tar.xz \
     -C / -T /opt/pakfire/tmp/ROOTFILES --exclude='#*' --exclude='/var/cache' > /dev/null 2>&1
 
 # Check diskspace on root
@@ -120,7 +120,7 @@ ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
 
 if [ $ROOTSPACE -lt 100000 ]; then
        /usr/bin/logger -p syslog.emerg -t ipfire \
-               "core-update-$core: ERROR cannot update because not enough free space on root."
+               "core-update-${core}: ERROR cannot update because not enough free space on root."
        exit 2
 fi
 
@@ -192,6 +192,10 @@ fi
 
 ln -svf ../run /var/run
 
+# Creating directories for new firewall.
+mkdir -p /var/ipfire/firewall
+mkdir -p /var/ipfire/fwhosts
+
 #
 #Extract files
 tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
@@ -210,7 +214,7 @@ if [ $BOOTSPACE -lt 1000 ]; then
                        ;;
                * )
                        /usr/bin/logger -p syslog.emerg -t ipfire \
-                               "core-update-$core: FATAL-ERROR space run out on boot. System is not bootable..."
+                               "core-update-${core}: FATAL-ERROR space run out on boot. System is not bootable..."
                        /etc/init.d/apache start
                        exit 4
                        ;;
@@ -245,13 +249,29 @@ rm -f /usr/local/bin/outgoingfwctrl
 rm -f /srv/web/ipfire/cgi-bin/{dmzholes,outgoingfw,portfw,xtaccess}.cgi
 
 # Generate chains for new firewall
-/sbin/iptables -N INPUTFW
-/sbin/iptables -N FORWARDFW
-/sbin/iptables -N POLICYFWD
-/sbin/iptables -N POLICYIN
-/sbin/iptables -N POLICYOUT
-/sbin/iptables -t nat -N NAT_SOURCE
-/sbin/iptables -t nat -N NAT_DESTINATION
+/sbin/iptables -N INPUTFW 2>/dev/null
+/sbin/iptables -N FORWARDFW 2>/dev/null
+/sbin/iptables -N POLICYFWD 2>/dev/null
+/sbin/iptables -N POLICYIN 2>/dev/null
+/sbin/iptables -N POLICYOUT 2>/dev/null
+/sbin/iptables -t nat -N NAT_SOURCE 2>/dev/null
+/sbin/iptables -t nat -N NAT_DESTINATION 2>/dev/null
+
+# Create config files for firewall and fix permissions.
+touch /var/ipfire/firewall/config
+touch /var/ipfire/firewall/input
+touch /var/ipfire/firewall/outgoing
+touch /var/ipfire/firewall/p2protocols
+touch /var/ipfire/firewall/settings
+touch /var/ipfire/fwhosts/customhosts
+touch /var/ipfire/fwhosts/customnetworks
+touch /var/ipfire/fwhosts/customgroups
+touch /var/ipfire/fwhosts/customservices
+touch /var/ipfire/fwhosts/customservicegrp
+
+# Fix ownership.
+chown -R nobody:nobody /var/ipfire/firewall
+chown -R nobody:nobody /var/ipfire/fwhosts
 
 # Convert firewall configuration
 /usr/sbin/convert-xtaccess
@@ -267,7 +287,7 @@ sed -i -e "s/tty1 9600$/tty1 9600 --noclear/g" /etc/inittab
 sed -i -e "s/^proc/#proc/g" /etc/fstab
 sed -i -e "s/^sysfs/#sysfs/g" /etc/fstab
 sed -i -e "s/^devpts/#devpts/g" /etc/fstab
-sed -i -e "s|^none\s/var/run|#none     /var/run|/g" /etc/fstab
+sed -i -e "s|^none\s/var/run|#none     /var/run|g" /etc/fstab
 
 # Convert udev persistent network rules
 sed -i -e "s/SYSFS{/ATTR{/g" /etc/udev/rules.d/30-persistent-network.rules
@@ -346,11 +366,14 @@ if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
        BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
        if [ $BOOTSPACE -lt 12000 -o $ROOTSPACE -lt 90000 ]; then
                /usr/bin/logger -p syslog.emerg -t ipfire \
-                       "core-update-$core: WARNING not enough space for pae kernel."
+                       "core-update-${core}: WARNING not enough space for pae kernel."
        else
                echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
                echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
                echo "Release: 0"     >> /opt/pakfire/db/installed/meta-linux-pae
+               echo "Name: linux-pae" > /opt/pakfire/db/meta/meta-linux-pae
+               echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-pae
+               echo "Release: 0"     >> /opt/pakfire/db/meta/meta-linux-pae
        fi
 fi
 
@@ -359,6 +382,9 @@ if [ -e "/opt/pakfire/db/installed/meta-linux-xen" ]; then
        echo "Name: linux-xen" > /opt/pakfire/db/installed/meta-linux-xen
        echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-xen
        echo "Release: 0"     >> /opt/pakfire/db/installed/meta-linux-xen
+       echo "Name: linux-xen" > /opt/pakfire/db/meta/meta-linux-xen
+       echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-xen
+       echo "Release: 0"     >> /opt/pakfire/db/meta/meta-linux-xen
        # Add xvc0 to /etc/securetty
        echo "xvc0" >> /etc/securetty
 fi
@@ -382,6 +408,7 @@ echo '/usr/bin/logger -p syslog.emerg -t ipfire "Check it before reboot !!!"' >>
 echo '/usr/bin/logger -p syslog.emerg -t ipfire " *** Please reboot... *** "' >> /tmp/pak_update
 echo 'touch /var/run/need_reboot ' >> /tmp/pak_update
 #
+killall -KILL pak_update
 chmod +x /tmp/pak_update
 /tmp/pak_update &
 
@@ -394,6 +421,9 @@ sync
        sendprofile
 ) >/dev/null 2>&1 &
 
+# Update Package list for addon installation
+/opt/pakfire/pakfire update -y --force
+
 echo
 echo Please wait until pakfire has ended...
 echo