1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00
CumulusNetworks-ifupdown2/debian/python-ifupdown2.postinst
roopa d40e96ee4e man page cleanup + cleanup + minor fixes
Ticket: CM-1438
Reviewed By:
Testing Done: Tested ifupdown sanity
2014-04-25 16:09:14 -07:00

75 lines
2.7 KiB
Bash

#!/bin/sh
set -e
MYNAME="${0##*/}"
report() { echo "${MYNAME}: $*" ; }
report_warn() { report "Warning: $*" >&2 ; }
report_err() { report "Error: $*" >&2 ; }
case "$1" in
configure)
# Create /etc/network/run
[ -d /run/network ] || mkdir -p /run/network
# for backward compatibility
if [ ! -f /etc/network/run ]; then
ln -sf /run/network /etc/network/run
fi
[ -d /etc/network/if-pre-up.d ] || mkdir -p /etc/network/if-pre-up.d
[ -d /etc/network/if-up.d ] || mkdir -p /etc/network/if-up.d
[ -d /etc/network/if-post-up.d ] || mkdir -p /etc/network/if-post-up.d
[ -d /etc/network/if-pre-down.d ] || mkdir -p /etc/network/if-pre-down.d
[ -d /etc/network/if-down.d ] || mkdir -p /etc/network/if-down.d
[ -d /etc/network/if-post-down.d ] || mkdir -p /etc/network/if-post-down.d
# Generic stuff done on all configurations
if [ -f /etc/network/interfaces ] ; then
# TODO: This should be handled with debconf and the script
# could introduce the line there directly
if ! grep -q "^[[:space:]]*iface[[:space:]]\+lo0\?[[:space:]]\+inet[[:space:]]\+loopback\>" /etc/network/interfaces ; then
report_warn "No 'iface lo' definition found in /etc/network/interfaces"
fi
if ! grep -q "^[[:space:]]*\(allow-\|\)auto[[:space:]]\+\(.*[[:space:]]\+\|\)lo0\?\([[:space:]]\+\|$\)" /etc/network/interfaces ; then
report_warn "No 'auto lo' statement found in /etc/network/interfaces"
fi
else # ! -f /etc/network/interfaces
if [ -z "$2" ]; then
echo "Creating /etc/network/interfaces."
echo "# interfaces(5) file used by ifup(8) and ifdown(8)" > /etc/network/interfaces
echo "auto lo" >> /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
else
report_warn "/etc/network/interfaces does not exist"
fi
fi
[ -e /sbin/ifup ] || ln -s /sbin/ifupdown /sbin/ifup
[ -e /sbin/ifdown ] || ln -s /sbin/ifupdown /sbin/ifdown
[ -e /sbin/ifquery ] || ln -s /sbin/ifupdown /sbin/ifquery
[ -e /sbin/ifreload ] || ln -s /sbin/ifupdown /sbin/ifreload
(cd /usr/share/man/man8/ && ln -sf /usr/share/man/man8/ifup.8.gz ifdown.8.gz)
mkdir -p /etc/network/interfaces.d/
;;
purge)
# Note: We don't remove /etc/network/interfaces
rm -f /run/network/ifstate
rm -f /sbin/ifquery
rm -f /sbin/ifup
rm -f /sbin/ifdown
;;
esac
if [ -x "/etc/init.d/networking" ]; then
update-rc.d networking start 40 S . start 35 0 6 . >/dev/null || exit $?
fi
#DEBHELPER#