From owner-freebsd-current@FreeBSD.ORG Fri Jan 23 03:41:58 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7F24E16A4CE for ; Fri, 23 Jan 2004 03:41:58 -0800 (PST) Received: from cs.huji.ac.il (cs.huji.ac.il [132.65.16.30]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0289C43D54 for ; Fri, 23 Jan 2004 03:41:57 -0800 (PST) (envelope-from danny@cs.huji.ac.il) Received: from pampa.cs.huji.ac.il ([132.65.80.32] ident=danny) by cs.huji.ac.il with esmtp id 1Ajzh9-0002d7-Dt; Fri, 23 Jan 2004 13:41:51 +0200 X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: kientzle@acm.org In-reply-to: Your message of Thu, 22 Jan 2004 14:16:00 -0800 . Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 23 Jan 2004 13:41:51 +0200 From: Danny Braniss Message-Id: cc: freebsd-current@freebsd.org Subject: Re: Wish List X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Jan 2004 11:41:58 -0000 this is what i did for -current if using PXE boot. The libstand/bootp.c was modified to imports the dhcp tags into the kernel environment, I then 'invented' rc.conf[0-9], i.e, in the dchpd.conf: option FBSD.conf-path="fs-01:/share/conf"; option FBSD.rc-conf0 "rc.conf"; option FBSD.rc-conf2 "rc.ws-5.2"; ... then i added this code to /etc/rc.d/initdiskless: confpath=`kenv conf-path` if [ "$confpath" ] ; then if [ "`expr $confpath : '\(.*\):'`" ] ; then echo Mounting $confpath on /conf mount_nfs $confpath /conf chkerr $? "mount_nfs $confpath /conf" fi fi eval `kenv -s -c rc.` rm -f /etc/rc.conf /etc/rc.conf.local for fc in $conf0 $conf1 $conf2 $conf3 $conf4 $conf5 $conf6 $conf7 $conf8 $conf9 rc.conf.$hostname do ho=`expr $fc : '\(.*\):'` fl=`expr $fc : '.*/\(.*\)'` if [ "${ho}" != "" ]; then mp=`expr $fc : '\(.*\)/.*'` mount_nfs $mp /mnt > /dev/null 2>&1 if [ -f /mnt/$fl ]; then echo "# from $fc /mnt/$fl" >> /etc/rc.conf cat /mnt/$fl >> /etc/rc.conf fi umount /mnt > /dev/null 2>&1 elif [ -e /conf/$fc ] ; then echo "# from /conf/$fc" >> /etc/rc.conf cat /conf/$fc >> /etc/rc.conf fi done see http://www.freebsd.org/cgi/query-pr.cgi?pr=61239 danny