From c653f571d6ed4d10dacc40bb9a09b63aed527db7 Mon Sep 17 00:00:00 2001 From: Michael Prokop Date: Sun, 20 Apr 2014 02:01:18 +0200 Subject: [PATCH 1/1] Provide option --defaultinterfaces to install default /etc/network/interfaces This should complete all combinations that make sense WRT default /etc/network/interfaces handling --- cmdlineopts.clp | 7 +++++-- grml-debootstrap | 12 +++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/cmdlineopts.clp b/cmdlineopts.clp index dd1e933..a89c985 100644 --- a/cmdlineopts.clp +++ b/cmdlineopts.clp @@ -12,7 +12,7 @@ # should be handled in the main script, where it belongs. ################################################################################ -CMDLINE_OPTS=mirror:,iso:,release:,target:,mntpoint:,debopt:,interactive,nodebootstrap,nointerfaces,nokernel,nopackages,filesystem:,config:,confdir:,packages:,chroot-scripts:,scripts:,pre-scripts:,debconf:,vmfile,vmsize:,keep_src_list,hostname:,password:,nopassword,grmlrepos,backportrepos,bootappend:,grub:,arch:,insecure,verbose,help,version,force,debug +CMDLINE_OPTS=mirror:,iso:,release:,target:,mntpoint:,debopt:,defaultinterfaces,interactive,nodebootstrap,nointerfaces,nokernel,nopackages,filesystem:,config:,confdir:,packages:,chroot-scripts:,scripts:,pre-scripts:,debconf:,vmfile,vmsize:,keep_src_list,hostname:,password:,nopassword,grmlrepos,backportrepos,bootappend:,grub:,arch:,insecure,verbose,help,version,force,debug _opt_temp=`getopt --name grml-debootstrap -o +m:i:r:t:p:c:d:vhV --long \ $CMDLINE_OPTS -- "$@"` @@ -107,6 +107,9 @@ while :; do --password) # Use specified password as password for user root shift; _opt_password="$1" ;; + --defaultinterfaces) # Install default /etc/network/interfaces + _opt_defaultinterfaces=T + ;; --nointerfaces) # Skip installation of /etc/network/interfaces _opt_nointerfaces=T ;; @@ -135,7 +138,7 @@ while :; do else _opt_verbose=1; fi ;; --debug) # Execute in debug mode - _opt_debug==T + _opt_debug=T ;; --help|-h) # Print usage information and exit _opt_help=T diff --git a/grml-debootstrap b/grml-debootstrap index 06200d8..e7384f0 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -93,10 +93,12 @@ Configuration options: instead of using /etc/debootstrap/packages. --nopackages Skip installation of packages defined in /etc/debootstrap/packages + --nokernel Skip installation of default kernel images. --nointerfaces Do not copy /etc/network/interfaces from host system to target system. (This option is automatically enabled when using --vmfile.) - --nokernel Skip installation of default kernel images. + --defaultinterfaces Install a default /etc/network/interfaces file (enabling + DHCP for eth0) instead of taking over config from host system. --debconf Pre-seed packages using specified pre-seed db file. --grmlrepos Enable Grml's Debian repository (deb.grml.org). --backportrepos Enable Debian's backports repository (backports.debian.org). @@ -332,6 +334,7 @@ fi [ "$_opt_hostname" ] && HOSTNAME=$_opt_hostname [ "$_opt_password" ] && ROOTPASSWORD=$_opt_password [ "$_opt_nopassword" ] && NOPASSWORD='yes' +[ "$_opt_defaultinterfaces" ] && DEFAULTINTERFACES="true" [ "$_opt_nointerfaces" ] && NOINTERFACES="true" [ "$_opt_nokernel" ] && NOKERNEL="true" [ "$_opt_bootappend" ] && BOOT_APPEND=$_opt_bootappend @@ -1153,7 +1156,6 @@ preparechroot() { [ -n "$MIRROR" ] && echo "MIRROR=\"$MIRROR\"" >> $CHROOT_VARIABLES [ -n "$MKFS" ] && echo "MKFS=\"$MKFS\"" >> $CHROOT_VARIABLES [ -n "$NOPASSWORD" ] && echo "NOPASSWORD=\"true\"" >> $CHROOT_VARIABLES - [ -n "$NOINTERFACES" ] && echo "NOINTERFACES=\"true\"" >> $CHROOT_VARIABLES [ -n "$NOKERNEL" ] && echo "NOKERNEL=\"true\"" >> $CHROOT_VARIABLES [ -n "$PACKAGES" ] && echo "PACKAGES=\"$PACKAGES\"" >> $CHROOT_VARIABLES [ -n "$PRE_SCRIPTS" ] && echo "PRE_SCRIPTS=\"$PRE_SCRIPTS\"" >> $CHROOT_VARIABLES @@ -1247,8 +1249,12 @@ iface eth0 inet dhcp if [ -n "$NOINTERFACES" ] ; then einfo "Not installing /etc/network/interfaces as requested via --nointerfaces option" ; eend 0 + elif [ -n "$DEFAULT_INTERFACES" ] ; then + einfo "Installing default /etc/network/interfaces as requested via --defaultinterfaces options." + echo "$DEFAULT_INTERFACES" > "${MNTPOINT}/etc/network/interfaces" + eend $? elif [ -n "$VIRTUAL" ] ; then - einfo "Installing into Virtual Machine, installing default /etc/network/interfaces" + einfo "Setting up Virtual Machine, installing default /etc/network/interfaces" echo "$DEFAULT_INTERFACES" > "${MNTPOINT}/etc/network/interfaces" eend $? elif [ -r /etc/network/interfaces ] ; then -- 2.1.4