Date: Sat, 6 Mar 2010 07:28:54 -0600 From: Josh Paetzel <jpaetzel@freebsd.org> To: Garrett Cooper <yanefbsd@gmail.com> Cc: freebsd-hackers@freebsd.org, randi@freebsd.org, David Wolfskill <david@catwhisker.org> Subject: Re: Scripting sysinstall(8) to create & use multiple slices on a disk? Message-ID: <201003060729.01225.jpaetzel@freebsd.org> In-Reply-To: <7d6fde3d1003060041p225e8718n29a8e75a718237a@mail.gmail.com> References: <20100304213329.GJ57205@bunrab.catwhisker.org> <201003051233.42861.jpaetzel@freebsd.org> <7d6fde3d1003060041p225e8718n29a8e75a718237a@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
On Saturday 06 March 2010 02:41:30 Garrett Cooper wrote:
> (Attempts to avoid shoe flying in his direction from randi@ :/),
>
> FWIW, sysinstall(8) is a good starter tool and it has a lot of the
> information that you need in order to complete an install (especially
> if you're doing it from scratch), but the amount of effort for using
> sysinstall(8)'s install.cfg, etc has the greater potential to change
> in the future when compared with a shell scripted method which is less
> likely to change; granted gpart vs fdisk is in transition, but the
> number of steps and the simplicity required to get everything up and
> going is trivial, and I did so in < 100 lines of bourne shell.
>
> I'd be happy to share my custom script if desired as well to provide
> you a general idea of what could be done to solve your problem.
>
> Cheers,
> -Garrett
One of my main issues with using sysinstall comes from an intersection of it's
lack of documentation, and the way it can arbitrarily change over time. For
instance, this week I was working on an install for a number of machines that
had to be imaged with an early 7.x version of FreeBSD, and were specified to
be installed with "distSet${OBFUSICATED}" In order to determine what
distSet${OBFUSICATED} installs on 7.${EARLY} involves either installing a
system via sysinstall and noting what it installs, or reading the source code.
Where this becomes an issue is sysinstall changes over time,
distSet${OBFUSICATED} is not necessarily the same between 7.${EARLY} and say
8.0. Since there is no documentation you either end up tracking the changes
to sysinstall, or sorting it out at upgrade time.
I'd also like to mention John saying you can build a custom mfsroot to use
additional tools during install...I go a different tack on this. I'm a huge
fan of python, and like to use it for installers. Rather than build a custom
mfsroot with python what I prefer to do is build a chroot that the target
machine boots diskless off. Then I chroot into that directory and install
whatever tools I want using ports/packages. I find that getting FreeBSD to
boot diskless is so easy that I've had it accidentally happen more than once
when I wanted something else to happen. Installing ports in a chroot is also
pretty trivial. Building a custom mfsroot has a bit of a learning curve with
a fairly expensive trial and error penalty.
At any rate. There are a lot of compelling reasons to not use sysinstall for
automated installs. And while there are compelling reasons to use sysinstall
for this task, most of them involve things like "I'm a masochist." or "It was
there so I thought I'd use it."
--
Thanks,
Josh Paetzel
FreeBSD -- The power to serve
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)
iQEcBAABAgAGBQJLklidAAoJEKFq1/n1feG2G/gIAJ0DOoOu7xxwLYOYGQfXq3y/
NL01+e25hHayFOUZGyNmE7SJjvIurU7z7fQQ5KliEWzZf0p0h7rW70bpIjLz/T+O
OXpYR1kVzq0V7Wn5fTP+btKJzZWM0KKV9mFLBlWWWfxrJuatCQKCby4IGEA9jQ24
fcZdBN3etoVA3zb2YGsPTzjW+VnUqvpMO/MKysybLTMu0tTiXb4L/23OJVRs9zbf
3zUNhgxhCN9U+Y9S8M0cEuXkUVFw/SpcZHbXQkgXlWxxqRrE2xlSvi4n4pYCH6ls
9FWF+pZ++d3irosE0+vvNl/1V2WHMzJlIRhMU/mt4nu1BxwVafDP5XqxApMQyew=
=U7ys
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003060729.01225.jpaetzel>
