]>
Commit | Line | Data |
---|---|---|
d1017fec JT |
1 | #!/bin/sh |
2 | # postinst script for ifupdown2 | |
3 | # | |
4 | # see: dh_installdeb(1) | |
5 | ||
a6f80f0e | 6 | set -e |
7 | ||
d1017fec JT |
8 | # summary of how this script can be called: |
9 | # * <postinst> `configure' <most-recently-configured-version> | |
10 | # * <old-postinst> `abort-upgrade' <new version> | |
11 | # * <conflictor's-postinst> `abort-remove' `in-favour' <package> | |
12 | # <new-version> | |
13 | # * <postinst> `abort-remove' | |
14 | # * <deconfigured's-postinst> `abort-deconfigure' `in-favour' | |
15 | # <failed-install-package> <version> `removing' | |
16 | # <conflicting-package> <version> | |
17 | # for details, see http://www.debian.org/doc/debian-policy/ or | |
18 | # the debian-policy package | |
19 | ||
458b49fa RP |
20 | process_udev() |
21 | { | |
22 | # override default udev bridge and hotplug rules because they interfere with | |
23 | # networking init script | |
24 | udev_user_rulesdir=/etc/udev/rules.d/ | |
25 | udev_sys_rulesdir=/lib/udev/rules.d/ | |
26 | if [ -e $udev_user_rulesdir ]; then | |
27 | udev_ifupdown2_overrides="80-networking.rules | |
28 | 60-bridge-network-interface.rules" | |
29 | for u in ${udev_ifupdown2_overrides} | |
30 | do | |
31 | if [ -e ${udev_sys_rulesdir}/$u -a ! -e ${udev_user_rulesdir}/$u ]; then | |
32 | (cd ${udev_user_rulesdir} && ln -sf /dev/null $u) | |
33 | fi | |
34 | done | |
35 | fi | |
36 | } | |
37 | ||
a6f80f0e | 38 | MYNAME="${0##*/}" |
39 | ||
40 | report() { echo "${MYNAME}: $*" ; } | |
41 | report_warn() { report "Warning: $*" >&2 ; } | |
42 | report_err() { report "Error: $*" >&2 ; } | |
43 | ||
44 | case "$1" in | |
45 | configure) | |
a6f80f0e | 46 | |
47 | # Generic stuff done on all configurations | |
48 | if [ -f /etc/network/interfaces ] ; then | |
a6f80f0e | 49 | if ! grep -q "^[[:space:]]*iface[[:space:]]\+lo0\?[[:space:]]\+inet[[:space:]]\+loopback\>" /etc/network/interfaces ; then |
50 | report_warn "No 'iface lo' definition found in /etc/network/interfaces" | |
51 | fi | |
52 | ||
53 | if ! grep -q "^[[:space:]]*\(allow-\|\)auto[[:space:]]\+\(.*[[:space:]]\+\|\)lo0\?\([[:space:]]\+\|$\)" /etc/network/interfaces ; then | |
54 | report_warn "No 'auto lo' statement found in /etc/network/interfaces" | |
55 | fi | |
56 | else # ! -f /etc/network/interfaces | |
57 | if [ -z "$2" ]; then | |
58 | echo "Creating /etc/network/interfaces." | |
59 | echo "# interfaces(5) file used by ifup(8) and ifdown(8)" > /etc/network/interfaces | |
60 | echo "auto lo" >> /etc/network/interfaces | |
61 | echo "iface lo inet loopback" >> /etc/network/interfaces | |
62 | else | |
63 | report_warn "/etc/network/interfaces does not exist" | |
64 | fi | |
65 | fi | |
66 | ||
458b49fa | 67 | process_udev |
a6f80f0e | 68 | ;; |
69 | ||
59dad2ca RP |
70 | purge) |
71 | ;; | |
a6f80f0e | 72 | esac |
73 | ||
a6f80f0e | 74 | #DEBHELPER# |
ef7b7c04 JT |
75 | |
76 | exit 0 |