]>
git.proxmox.com Git - mirror_ifupdown2.git/blob - debian/ifupdown2.postinst
2 # postinst script for ifupdown2
4 # see: dh_installdeb(1)
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>
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
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}
31 if [ -e ${udev_sys_rulesdir}/$u -a ! -e ${udev_user_rulesdir}/$u ]; then
32 (cd ${udev_user_rulesdir} && ln -sf /dev
/null
$u)
40 report
() { echo "${MYNAME}: $*" ; }
41 report_warn
() { report
"Warning: $*" >&2 ; }
42 report_err
() { report
"Error: $*" >&2 ; }
47 # work around to rename the existing dhclient6 lease file containing a space
48 for filename
in `find /var/lib/dhcp/ -name "dhclient.*.leases "`
50 if [ -f "$filename " ];
52 interface_name
=`echo $filename | cut -d'.' -f2,3,4,5`
53 mv "$filename " /var
/lib
/dhcp
/dhclient6.
$interface_name
57 # Generic stuff done on all configurations
58 if [ -f /etc
/network
/interfaces
] ; then
59 if ! grep -q -E "^[[:space:]]*iface[[:space:]]+l[o0]([[:space:]]+inet([[:space:]]+loopback)?)?[[:space:]]*$" /etc
/network
/interfaces
; then
60 report_warn
"No 'iface lo' definition found in /etc/network/interfaces"
63 if ! grep -q "^[[:space:]]*\(allow-\|\)auto[[:space:]]\+\(.*[[:space:]]\+\|\)lo0\?\([[:space:]]\+\|$\)" /etc
/network
/interfaces
; then
64 report_warn
"No 'auto lo' statement found in /etc/network/interfaces"
66 else # ! -f /etc/network/interfaces
68 echo "Creating /etc/network/interfaces."
69 echo "# interfaces(5) file used by ifup(8) and ifdown(8)" > /etc
/network
/interfaces
70 echo "auto lo" >> /etc
/network
/interfaces
71 echo "iface lo inet loopback" >> /etc
/network
/interfaces
73 report_warn
"/etc/network/interfaces does not exist"