]>
Commit | Line | Data |
---|---|---|
a0e747da AF |
1 | #!/bin/bash |
2 | ############################################################################ | |
3 | # # | |
4 | # This file is part of the IPFire Firewall. # | |
5 | # # | |
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. # | |
10 | # # | |
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. # | |
15 | # # | |
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 # | |
19 | # # | |
20 | # Copyright (C) 2014 IPFire-Team <info@ipfire.org>. # | |
21 | # # | |
22 | ############################################################################ | |
23 | # | |
24 | . /opt/pakfire/lib/functions.sh | |
25 | /usr/local/bin/backupctrl exclude >/dev/null 2>&1 | |
26 | ||
27 | # Remove old core updates from pakfire cache to save space... | |
28 | core=80 | |
29 | for (( i=1; i<=$core; i++ )) | |
30 | do | |
31 | rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire | |
32 | done | |
33 | ||
34 | # Stop services | |
35 | /etc/init.d/ipsec stop | |
36 | ||
37 | # Remove old strongswan files | |
38 | rm -f \ | |
39 | /etc/strongswan.d/charon/unity.conf \ | |
40 | /usr/lib/ipsec/plugins/libstrongswan-unity.so \ | |
41 | /usr/share/strongswan/templates/config/plugins/unity.conf | |
42 | ||
43 | rm -f /usr/local/bin/setddns.pl | |
44 | ||
45 | # Extract files | |
46 | extract_files | |
47 | ||
48 | # Start services | |
49 | /etc/init.d/dnsmasq restart | |
50 | if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then | |
51 | /etc/init.d/ipsec start | |
52 | fi | |
53 | ||
54 | ||
55 | # Update Language cache | |
56 | perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang" | |
57 | ||
58 | # Uninstall the libgpg-error package. | |
59 | rm -f \ | |
60 | /opt/pakfire/db/installed/meta-libgpg-error \ | |
61 | /opt/pakfire/db/rootfiles/libgpg-error | |
62 | ||
63 | # Fix broken proxy configuration permissions | |
64 | chown -R nobody.nobody \ | |
65 | /var/ipfire/proxy/advanced \ | |
66 | /var/ipfire/proxy/acl-1.4 \ | |
67 | /var/ipfire/proxy/enable \ | |
68 | /var/ipfire/proxy/settings \ | |
69 | /var/ipfire/proxy/squid.conf \ | |
70 | /var/ipfire/proxy/transparent | |
71 | ||
72 | # Regenerate squid configuration file | |
73 | sudo -u nobody /srv/web/ipfire/cgi-bin/proxy.cgi | |
74 | ||
75 | # Generate ddns configuration file | |
76 | sudo -u nobody /srv/web/ipfire/cgi-bin/ddns.cgi | |
77 | ||
78 | # Update crontab | |
79 | sed -i /var/spool/cron/root.orig -e "/setddns.pl/d" | |
80 | ||
81 | grep -q /usr/bin/ddns /var/spool/cron/root.orig || cat <<EOF >> /var/spool/cron/root.orig | |
82 | ||
83 | # Update dynamic DNS records every five minutes. | |
84 | # Force an update once a month | |
85 | */5 * * * * [ -f "/var/ipfire/red/active" ] && /usr/bin/ddns update-all | |
86 | 3 2 1 * * [ -f "/var/ipfire/red/active" ] && /usr/bin/ddns update-all --force | |
87 | EOF | |
88 | ||
89 | fcrontab -z &>/dev/null | |
90 | ||
91 | sync | |
92 | ||
93 | # This update need a reboot... | |
94 | #touch /var/run/need_reboot | |
95 | ||
96 | # Finish | |
97 | /etc/init.d/fireinfo start | |
98 | sendprofile | |
99 | ||
100 | # Don't report the exitcode last command | |
101 | exit 0 |