socsvn commit: r278258 - in soc2014/kczekirda/pxe-fai-head: head/usr.sbin/bsdinstall/scripts tools/mfsbsd/customfiles/usr/libexec/bsdinstall
kczekirda at FreeBSD.org
kczekirda at FreeBSD.org
Thu Mar 12 13:39:40 UTC 2015
Author: kczekirda
Date: Thu Mar 12 13:39:39 2015
New Revision: 278258
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=278258
Log:
configuration after reboot
Modified:
soc2014/kczekirda/pxe-fai-head/head/usr.sbin/bsdinstall/scripts/script
soc2014/kczekirda/pxe-fai-head/tools/mfsbsd/customfiles/usr/libexec/bsdinstall/script
Modified: soc2014/kczekirda/pxe-fai-head/head/usr.sbin/bsdinstall/scripts/script
==============================================================================
--- soc2014/kczekirda/pxe-fai-head/head/usr.sbin/bsdinstall/scripts/script Thu Mar 12 13:39:23 2015 (r278257)
+++ soc2014/kczekirda/pxe-fai-head/head/usr.sbin/bsdinstall/scripts/script Thu Mar 12 13:39:39 2015 (r278258)
@@ -62,9 +62,6 @@
# DOMAIN
# DNS1
# DNS2
-
-# TODO: network, users,
-# VARIABLES:
# IPV6 (default: NO)
: ${IPV6:=NO}
# SLAAC (default: YES)
@@ -75,7 +72,6 @@
# GWV6
# DNS3
# DNS4
-
# ROOTPWHASH
# USERSCONFIG
@@ -171,31 +167,45 @@
bsdinstall distfetch
# Unpack distributions
-bsdinstall checksum
+#bsdinstall checksum
bsdinstall distextract
############################################################ CONFIGURATION
# Hostname
if [ -n "$HOSTNAME" ]; then
- echo "hostname=\"$HOSTNAME\"" > $BSDINSTALL_TMPETC/rc.conf.hostname
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo hostname=\\\"$HOSTNAME\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Keymap
if [ -n "$KEYMAP" ]; then
- echo "keymap=\"$KEYMAP\"" > $BSDINSTALL_TMPETC/rc.conf.keymap
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo keymap=\\\"$KEYMAP\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Services
havedump=
+
+if [ -n "$DAEMONS" ]; then
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+fi
+
for daemon in $DAEMONS; do
[ "$daemon" = "dumpdev" ] && havedump=1 continue
- echo ${daemon}_enable=\"YES\" >> $BSDINSTALL_TMPETC/rc.conf.services
+ echo "echo ${daemon}_enable=\\\"YES\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
done
+
if [ "$havedump" ]; then
- echo dumpdev=\"AUTO\" >> $BSDINSTALL_TMPETC/rc.conf.services
+ echo "echo dumpdev=\\\"AUTO\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
else
- echo dumpdev=\"NO\" >> $BSDINSTALL_TMPETC/rc.conf.services
+ echo "echo dumpdev=\\\"NO\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Time zone
@@ -232,63 +242,83 @@
# Network
if [ -n "$INTERFACE" ] && [ "$IPV4" = "YES" ]; then
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
if [ "$DHCP" = "YES" ]; then
- echo "ifconfig_${INTERFACE}=\"DHCP\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo ifconfig_${INTERFACE}=\\\"DHCP\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DHCP" = "NO" ]; then
- echo "ifconfig_${INTERFACE}=\"inet $ADDRESSV4 netmask $NETMASK\"" >> $BSDINSTALL_TMPETC/rc.conf.network
- echo "defaultrouter=\"$GWV4\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo \"ifconfig_${INTERFACE}=\\\"inet $ADDRESSV4 netmask $NETMASK\\\"\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
+ echo "echo defaultrouter=\\\"$GWV4\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
fi
if [ -n "$INTERFACE" ] && [ "$IPV6" = "YES" ]; then
- echo "ipv6_enable=\"YES\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo ipv6_enable=\\\"YES\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
if [ "$SLAAC" = "YES" ]; then
- echo "ifconfig_${INTERFACE}_ipv6=\"inet6 accept_rtadv\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo \"ifconfig_${INTERFACE}_ipv6=\\\"inet6 accept_rtadv\"\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$SLAAC" = "NO" ]; then
- echo "ifconfig_${INTERFACE}_ipv6=\"ineti6 $ADDRESSV6\"" >> $BSDINSTALL_TMPETC/rc.conf.network
- echo "ipv6_defaultrouter=\"$GWV6\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo ifconfig_${INTERFACE}_ipv6=\"ineti6 $ADDRESSV6\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
+ echo "echo ipv6_defaultrouter=\"$GWV6\" >> $BSDINSTALL_TMPETC/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
fi
# Resolver
if [ "$DOMAIN" ]; then
- echo "domain $DOMAIN" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo domain $DOMAIN >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS1" ]; then
- echo "nameserver $DNS1" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS1 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS2" ]; then
- echo "nameserver $DNS2" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS2 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS3" ]; then
- echo "nameserver $DNS3" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS3 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS4" ]; then
- echo "nameserver $DNS4" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo \"nameserver $DNS4\" >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Finalize install
-bsdinstall config
+cat $BSDINSTALL_TMPETC/rc.conf.* >> $BSDINSTALL_TMPETC/rc.conf
+rm $BSDINSTALL_TMPETC/rc.conf.*
+
+cp $BSDINSTALL_TMPETC/* $BSDINSTALL_CHROOT/etc
+
+cat $BSDINSTALL_TMPBOOT/loader.conf.* >> $BSDINSTALL_TMPBOOT/loader.conf
+rm $BSDINSTALL_TMPBOOT/loader.conf.*
+df -t zfs $BSDINSTALL_CHROOT > /dev/null && echo "zfs_load=\"YES\"" >> $BSDINSTALL_TMPBOOT/loader.conf
+
+cp $BSDINSTALL_TMPBOOT/* $BSDINSTALL_CHROOT/boot
+
+[ "${debugFile#+}" ] && cp "${debugFile#+}" $BSDINSTALL_CHROOT/var/log/
+
+echo "/usr/bin/newaliases" >> /tmp/bsdinstall-installscript-ab
# Run post-install script
if [ -f /tmp/bsdinstall-installscript-ab ]; then
- cp /tmp/bsdinstall-installscript-ab $BSDINSTALL_CHROOT/tmp/installscript
- chmod a+x $BSDINSTALL_CHROOT/tmp/installscript
- mount -t devfs devfs "$BSDINSTALL_CHROOT/dev"
- chroot $BSDINSTALL_CHROOT /tmp/installscript $@ 2>&1
- umount "$BSDINSTALL_CHROOT/dev"
- rm $BSDINSTALL_CHROOT/tmp/installscript
+ echo "rm /etc/rc.local" >> /tmp/bsdinstall-installscript-ab
+ echo "reboot" >> /tmp/bsdinstall-installscript-ab
+ cp /tmp/bsdinstall-installscript-ab $BSDINSTALL_CHROOT/etc/rc.local
+ chmod a+x $BSDINSTALL_CHROOT/etc/rc.local
+ rm /tmp/bsdinstall-installscript-ab
fi
+############################################################ CONFIGURATION END
+
bsdinstall entropy
[ -z "$ZFSBOOT" ] && bsdinstall umount
Modified: soc2014/kczekirda/pxe-fai-head/tools/mfsbsd/customfiles/usr/libexec/bsdinstall/script
==============================================================================
--- soc2014/kczekirda/pxe-fai-head/tools/mfsbsd/customfiles/usr/libexec/bsdinstall/script Thu Mar 12 13:39:23 2015 (r278257)
+++ soc2014/kczekirda/pxe-fai-head/tools/mfsbsd/customfiles/usr/libexec/bsdinstall/script Thu Mar 12 13:39:39 2015 (r278258)
@@ -2,6 +2,7 @@
#-
# Copyright (c) 2013 Nathan Whitehorn
# Copyright (c) 2013 Devin Teske
+# Copyright (c) 2014 Kamil Czekirda
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -44,13 +45,11 @@
# BSDINSTALL_DISTDIR
# MIRROR default:
: ${MIRROR:=ftp://ftp.freebsd.org}
-# RELDIR default:
-: ${RELDIR:=releases}
# RELEASE default:
-: ${RELEASE:=10.0-RELEASE}
+: ${RELEASE:=10.1}
# HOSTNAME to TMPETC if not exist, don't set
# KEYMAP to TMPETC if not exist, don't set
-# DAEMONS to TMPETC if not exist, set only sshd
+# DAEMONS to TMPETC if not exist, don't set
# TIMEZONE to /tmp/bsdinstall-installscript-ab
# INTERFACE (em0, bge0)
# IPV4 (default: YES)
@@ -63,9 +62,6 @@
# DOMAIN
# DNS1
# DNS2
-
-# TODO: network, users,
-# VARIABLES:
# IPV6 (default: NO)
: ${IPV6:=NO}
# SLAAC (default: YES)
@@ -76,7 +72,6 @@
# GWV6
# DNS3
# DNS4
-
# ROOTPWHASH
# USERSCONFIG
@@ -130,37 +125,87 @@
f_dprintf "Began Instalation at %s" "$( date )"
fi
+############################################################ DEVICE PREPARING
+
+# Make partitions
+rm -f $PATH_FSTAB
+touch $PATH_FSTAB
+if [ "$ZFSBOOT" = "YES" ]; then
+ bsdinstall zfsboot /tmp/bsdinstall-installscript-aa
+else
+ bsdinstall scriptedpart "$PARTITIONS"
+fi
+
+bsdinstall mount
+
+############################################################ INSTALLATION
+
# Build mirror path
+if [ "$RELEASE" = "11.0" ]; then
+ RELDIR="snapshots"
+ RELEASE="$RELEASE-CURRENT"
+else
+ RELDIR="releases"
+ RELEASE="$RELEASE-RELEASE"
+fi
+
MIRROR=$(echo "$MIRROR" | sed 's/\/$//')
BSDINSTALL_DISTSITE="$MIRROR/pub/FreeBSD/$RELDIR/$UNAME_M/$UNAME_P/$RELEASE"
+
export BSDINSTALL_DISTSITE
+# Fetch distributions
+
+BSDINSTALL_FETCHDEST="$BSDINSTALL_CHROOT/usr/freebsd-dist"
+export BSDINSTALL_DISTDIR="$BSDINSTALL_FETCHDEST"
+echo "$BSDINSTALL_FETCHDEST"
+mkdir -p "$BSDINSTALL_FETCHDEST"
+
+export FTP_PASSIVE_MODE=YES
+bsdinstall distfetch
+
+# Unpack distributions
+#bsdinstall checksum
+bsdinstall distextract
+
+############################################################ CONFIGURATION
+
# Hostname
if [ -n "$HOSTNAME" ]; then
- echo "hostname=\"$HOSTNAME\"" > $BSDINSTALL_TMPETC/rc.conf.hostname
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo hostname=\\\"$HOSTNAME\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Keymap
if [ -n "$KEYMAP" ]; then
- echo "keymap=\"$KEYMAP\"" > $BSDINSTALL_TMPETC/rc.conf.keymap
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo keymap=\\\"$KEYMAP\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Services
+havedump=
+
if [ -n "$DAEMONS" ]; then
- havedump=
- for daemon in $DAEMONS; do
- [ "$daemon" = "dumpdev" ] && havedump=1 continue
- echo ${daemon}_enable=\"YES\" >> $BSDINSTALL_TMPETC/rc.conf.services
- done
- if [ "$havedump" ]; then
- echo dumpdev=\"AUTO\" >> $BSDINSTALL_TMPETC/rc.conf.services
- else
- echo dumpdev=\"NO\" >> $BSDINSTALL_TMPETC/rc.conf.services
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
fi
+fi
+
+for daemon in $DAEMONS; do
+ [ "$daemon" = "dumpdev" ] && havedump=1 continue
+ echo "echo ${daemon}_enable=\\\"YES\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
+done
+
+if [ "$havedump" ]; then
+ echo "echo dumpdev=\\\"AUTO\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
else
- echo "sshd_enable=\"YES\"" > $BSDINSTALL_TMPETC/rc.conf.services
+ echo "echo dumpdev=\\\"NO\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
# Time zone
@@ -195,97 +240,85 @@
echo "adduser -f $USERSCONFIG" >> /tmp/bsdinstall-installscript-ab
fi
-# Make partitions
-rm -f $PATH_FSTAB
-touch $PATH_FSTAB
-if [ "$ZFSBOOT" = "YES" ]; then
- bsdinstall zfsboot /tmp/bsdinstall-installscript-aa
-else
- bsdinstall scriptedpart "$PARTITIONS"
-fi
-bsdinstall mount
-
# Network
-
if [ -n "$INTERFACE" ] && [ "$IPV4" = "YES" ]; then
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
if [ "$DHCP" = "YES" ]; then
- echo "ifconfig_${INTERFACE}=\"DHCP\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo ifconfig_${INTERFACE}=\\\"DHCP\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DHCP" = "NO" ]; then
- echo "ifconfig_${INTERFACE}=\"inet $ADDRESSV4 netmask $NETMASK\"" >> $BSDINSTALL_TMPETC/rc.conf.network
- echo "defaultrouter=\"$GWV4\"" >> $BSDINSTALL_TMPETC/rc.conf.networ
+ echo "echo \"ifconfig_${INTERFACE}=\\\"inet $ADDRESSV4 netmask $NETMASK\\\"\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
+ echo "echo defaultrouter=\\\"$GWV4\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
fi
if [ -n "$INTERFACE" ] && [ "$IPV6" = "YES" ]; then
- echo "ipv6_enable=\"YES\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ if [ ! -f /tmp/bsdinstall-installscript-ab ]; then
+ echo "#!/bin/sh" > /tmp/bsdinstall-installscript-ab
+ fi
+ echo "echo ipv6_enable=\\\"YES\\\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
if [ "$SLAAC" = "YES" ]; then
- echo "ifconfig_${INTERFACE}_ipv6=\"inet6 accept_rtadv\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo \"ifconfig_${INTERFACE}_ipv6=\\\"inet6 accept_rtadv\"\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$SLAAC" = "NO" ]; then
- echo "ifconfig_${INTERFACE}_ipv6=\"ineti6 $ADDRESSV6\"" >> $BSDINSTALL_TMPETC/rc.conf.network
- echo "ipv6_defaultrouter=\"$GWV6\"" >> $BSDINSTALL_TMPETC/rc.conf.network
+ echo "echo ifconfig_${INTERFACE}_ipv6=\"ineti6 $ADDRESSV6\" >> /etc/rc.conf" >> /tmp/bsdinstall-installscript-ab
+ echo "echo ipv6_defaultrouter=\"$GWV6\" >> $BSDINSTALL_TMPETC/rc.conf" >> /tmp/bsdinstall-installscript-ab
fi
fi
-# resolver
+# Resolver
-mkdir $BSDINSTALL_CHROOT/etc/
if [ "$DOMAIN" ]; then
- echo "domain $DOMAIN" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo domain $DOMAIN >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS1" ]; then
- echo "nameserver $DNS1" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS1 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS2" ]; then
- echo "nameserver $DNS2" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS2 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS3" ]; then
- echo "nameserver $DNS3" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo nameserver $DNS3 >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
if [ "$DNS4" ]; then
- echo "nameserver $DNS4" >> $BSDINSTALL_CHROOT/etc/resolv.conf
+ echo "echo \"nameserver $DNS4\" >> /etc/resolv.conf" >> /tmp/bsdinstall-installscript-ab
fi
+# Finalize install
+cat $BSDINSTALL_TMPETC/rc.conf.* >> $BSDINSTALL_TMPETC/rc.conf
+rm $BSDINSTALL_TMPETC/rc.conf.*
-# Fetch distributions
+cp $BSDINSTALL_TMPETC/* $BSDINSTALL_CHROOT/etc
-BSDINSTALL_FETCHDEST="$BSDINSTALL_CHROOT/usr/freebsd-dist"
-export BSDINSTALL_DISTDIR="$BSDINSTALL_FETCHDEST"
-echo "$BSDINSTALL_FETCHDEST"
-mkdir -p "$BSDINSTALL_FETCHDEST"
+cat $BSDINSTALL_TMPBOOT/loader.conf.* >> $BSDINSTALL_TMPBOOT/loader.conf
+rm $BSDINSTALL_TMPBOOT/loader.conf.*
+df -t zfs $BSDINSTALL_CHROOT > /dev/null && echo "zfs_load=\"YES\"" >> $BSDINSTALL_TMPBOOT/loader.conf
-export FTP_PASSIVE_MODE=YES
-bsdinstall distfetch
+cp $BSDINSTALL_TMPBOOT/* $BSDINSTALL_CHROOT/boot
-# Unpack distributions
-bsdinstall checksum
-bsdinstall distextract
-
-# Finalize install
-bsdinstall config
+[ "${debugFile#+}" ] && cp "${debugFile#+}" $BSDINSTALL_CHROOT/var/log/
-# Make sure networking is functional, if we can arrange that
-#if [ ! -f $BSDINSTALL_CHROOT/etc/resolv.conf -a -f /etc/resolv.conf ]; then
-# cp /etc/resolv.conf $BSDINSTALL_CHROOT/etc/resolv.conf
-#fi
+echo "/usr/bin/newaliases" >> /tmp/bsdinstall-installscript-ab
# Run post-install script
if [ -f /tmp/bsdinstall-installscript-ab ]; then
- cp /tmp/bsdinstall-installscript-ab $BSDINSTALL_CHROOT/tmp/installscript
- chmod a+x $BSDINSTALL_CHROOT/tmp/installscript
- mount -t devfs devfs "$BSDINSTALL_CHROOT/dev"
- chroot $BSDINSTALL_CHROOT /tmp/installscript $@ 2>&1
- umount "$BSDINSTALL_CHROOT/dev"
- rm $BSDINSTALL_CHROOT/tmp/installscript
+ echo "rm /etc/rc.local" >> /tmp/bsdinstall-installscript-ab
+ echo "reboot" >> /tmp/bsdinstall-installscript-ab
+ cp /tmp/bsdinstall-installscript-ab $BSDINSTALL_CHROOT/etc/rc.local
+ chmod a+x $BSDINSTALL_CHROOT/etc/rc.local
+ rm /tmp/bsdinstall-installscript-ab
fi
+############################################################ CONFIGURATION END
+
bsdinstall entropy
[ -z "$ZFSBOOT" ] && bsdinstall umount
More information about the svn-soc-all
mailing list