[Tech] Partimus / PXE unattended install solution

Tai Kedzierski dch.tai at gmail.com
Mon Mar 23 10:38:54 PDT 2015


Hi all,

Some notes of what I've done, and a request for advice, as well as
suggestions for Abigail. Please feel free to disagree and improve!



=== ISO Customization

I had a go at the ISO customization task over the week-end. Unfortunately
the instructions are old, and oscillate between helpful and omissive... My
resulting ISO caused kernal panic before even loading boot, but I think I
know where to look to troubleshoot that...


I've started constructing a bash script to automate as much of it as I can
(it's also a good way to re-verify knowledge ;-)  )

For the technically inclined, you can find that script here
https://github.com/taikedz/handy-scripts/blob/master/in-progress/customiso/autobuild.sh

Sporadic notes start at line 111 , actual steps start at line 167. It is
incomplete.



=== PXE Server / machine boot (help needed?)

I also tried setting up a server to centrally serve ISO images over PXE
with a tftp server. Again, shaky tutorials abound, no end-to-end solution.
I had troubles with (I think) setting up an internal DNS and having my VMs
start there (VirtualBox does not have any "BIOS" settings as far as I've so
far seen)

If I can get this much fixed, I can put together a comprehensive guide on
setting up the PXE component with better documentation and caveat
highlighting.

A lot of it requires manual work so cannot be so easily automated unless I
prepare a template, and even then may depend on the target network
infrastructure.

**Is there anyone who could offer guidance on setting up BIOS / etc so that
a machine can be specifically pointed in BIOS to the PXE server? I am
testing on VirtualBox, but I suspect many real machines also just look for
the network's default DNS server... over which I have little control in
fact, and the teachers may hit a similar problem...

Alternatively, I might need to put together a PXE booting CD which has the
presets loaded into it (similar to what I saw at the Uni but not sure...)
which would be able to allow us to do away with having to even set up a
local DNS server



=== Software requirements

Pulling from Abigail's list, these divide fairly nicely into two categories:

/==
*I am currently running:* (productivity)
Google docs
GIMP *
Blue Fish editor (html)
Firefox
Chrome (which crashes a lot and needs to get removed)

*It would be great to have:* (media production)
3d  modeling software
video editing software
sound editing software
drawing software
==/

Productivity - these can be added as standard to the Lubuntu machine. GIMP
may be a bit heavy for the older machines, and I might suggest moving it
into the media category. If only light image editing needs doing, I can
suggest gPaint which is more like MS Paint in terms of features and
lightness.

Can I suggest adding LibreOffice as well? It follows the goal of FOSS and
works fine offline too. Also uses open document standards. A good habit to
instill in students once they move on to using their own computers.


Media Production - Machines { 8, 19, 12 } from your spreadsheet could house
and handle media production suites, I'd be wary of putting it on the
standard install. Once I get the customization procedure down, it should be
easy enough to produce a second, media-oriented ISO

As my mantra goes, it depends on the workflow and activity goals what we'll
be choosing in terms of specific software. I can suggest Abigail have a
look at the below list and see what meets her or he r tutors' needs.


*3d modelling* - *Blender* seems to be the preferred software for 3d
animation. The Free video "Big Buck Bunny" was created using Blender as a
demo of what it can achieve - plays with the quality of a Pixar short!

For modelling-only, here's some other ones
http://www.techdrivein.com/2011/08/5-open-source-3d-modelling-rendering.html

*Video editing* - funnily enough, *Blender* has also been recommended for
this task on numerous reviews. Otherwise *OpenShot* and *pitivi* suites are
good alternatives, though this is not my area of expertise.

*Sound editing* - for sound /editing/ *Audacity* is a good choice. For
/music production/ a heftier suite is called for. Perhaps *LMMS*?

*"Drawing" software* - What's the use case? There are many categories of
"drawing" software - vector drawing (more suited to graphical design and
logo creation) can be done with *InkScape* (proprietary equivalent is Adobe
Illustrator); digital painting is well served by *Krita* (proprietary
equivalent... none really. Manga Studio perhaps). *GIMP* also can serve
this purpose but is more geared towards photo-manipulation.

My own photographic workflow makes use of digiKam and GIMP (I used to use
Adobe Lightroom and PhotoShop; I'm finding I don't need them anymore and am
now free of Apple!)


For a full creativity set, I could aslo suggest adding *Scribus* to the
standard set for desktop publishing & professional layout preparation
(equivalent proprietary is Adobe InDesign)


*--- A note on creativity/media production distros:*

Whilst Lubuntu will be perfectly fine for most productivity and study
tasks, you may want to consider a different distro for media.

I could suggest Abigail have a look at "*Ubuntu Studio*", a full media
production suite distro. Only customization that would be needed would be
to make it Unattended Install.
http://distrowatch.com/table.php?distribution=ubuntustudio

ArtistX is another distro worth a look. This too is based on Ubuntu, and
again, the same Unattended customization should need doing.
http://distrowatch.com/table.php?distribution=artistx



That's me until next week-end :-)

Tai




===
Tai Kedzierski

IT Services Specialist
http://helpuse.com
+44 (0) 7526 963 612 (portable GB)

  I use www.libreoffice.org

*"Open Source Free Software is a matter of liberty, not price."*
https://bitly.com/1gXkUcc


On 20 March 2015 at 22:01, Christian Einfeldt <einfeldt at gmail.com> wrote:

> Hi,
>
> Bottom posting...
>
> On Fri, Mar 20, 2015 at 2:40 PM, Tai Kedzierski <dch.tai at gmail.com> wrote:
>
>> I'll certainly have a look at Chrome problems once we have the basics in
>> place. If I can replicate the issue I /may/ be able to solve it, otherwise
>> we need to look at what the problems w other browsers are and if the trade
>> off is worth it.
>>
>
> Thx!
>
>> I should mention privately that I am totally willing to set up this
>> system for them and Partimus, as it is learning exp for me too, and I
>> commit to provide the best result to my abilities;
>>
>> However for anything that relates to troubleshooting and tech support
>> outwith the direct project, I am happy to muck in initially, but may have
>> to meet a professional upsell point, or pass the flame... of course, I'll
>> /never/ seek to charge anything without prior agreement - keep this
>> paragraph as testament!
>>
> Thanks, we understand that you need to make a living, and we will never
> expect you to commit to doing volunteer work.  We all are volunteers with
> jobs, which is why we appreciate your help!
>
>
>> I'm signing off now as I have started the Friday evening at a party and
>> want to not send inebriated emails...! So please pardon radio silence ...
>>
> heh, enjoy!
>
>
>> I would be interested in having a quick talk with you over skype or
>> similar, and also with volunteer team on this project - I can set up a
>> Mumble VoIP server if preferable. Twould be evening UTC , morning PST
>>
>
> I can do skype on Tuesday, March 24 at 10 am PST time, which is 5:00 pm
> Edinburgh time.  Does that work for you?  Thanks!
>
>
>> --Tai
>>
>> // Sent from a mobile device; rogue typos may be lurking
>> On 20 Mar 2015 20:50, "Christian Einfeldt" <einfeldt at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I have gotten some feedback from the teacher, Abigail Rudner.  She says
>>> that she has been having trouble with the Chrome browser crashing.  I don't
>>> know what that is all about.  Maybe the conflicts that James Howard
>>> experienced between Firefox and iTalc have been resolved, and maybe we can
>>> remove Chrome as she requests:
>>>
>>>
>>> *I am currently running:*
>>> Google docs
>>> GIMP
>>> Blue Fish editor (html)
>>> Firefox
>>> Chrome (which crashes a lot and needs to get removed)
>>>
>>> *It would be great to have:*
>>> 3d  modeling software
>>> video editing software
>>> sound editing softwaredrawing software
>>>
>>> Thanks!
>>>
>>> On Fri, Mar 20, 2015 at 11:34 AM, Tai Kedzierski <dch.tai at gmail.com>
>>> wrote:
>>>
>>>> Dear Christian, All,
>>>>
>>>> Hello :-)
>>>>
>>>>
>>>> I'd like to get the ball rolling first by outlining what we're actually
>>>> trying to do. I've added my notes to the shared document, and below.
>>>>
>>>> *@Christian,* please let me know if I've gotten carried away. As you
>>>> haven't yet given a wishlist, I have dreamt one up....!
>>>>
>>>>
>>>> At this point in time, the outline points are educated guesses on my
>>>> part - I've looked into PXE and unattended installs in the past, and worked
>>>> with some pre-setup ones in past positions, but not yet had a project goal
>>>> to work to myself - hence I am taking this opportunity :-).
>>>>
>>>> It may be full of holes.
>>>>
>>>> Please do poke those holes and suggest/add any improvements/changes!
>>>>
>>>>
>>>> If anybody has a burning desire to look into any one Task in
>>>> particular, maybe let the group know/put your name next to it so we're not
>>>> doubling effort - and of course, add sub/tasks as you see necessary :-)
>>>>
>>>>
>>>>
>>>> I look forward to working on this with you all!
>>>>
>>>>
>>>>
>>>> Cheers
>>>>
>>>> Tai
>>>>
>>>>
>>>> /============
>>>>
>>>> Following from my earlier notes, I would like to suggest attaining the
>>>> goals outlined below, to wit:
>>>>
>>>> ## Goal workflow for workstation install:
>>>>
>>>>         * teacher inserts CD into machine and reboots it from said CD
>>>>         * teacher needs to only click a couple of times to launch the
>>>> install process
>>>>         ---- this may also involve choosing a network name for the PC
>>>>         * teacher can remove the CD and walk away, whilst the PC does
>>>> its thing on the network
>>>>
>>>>
>>>> ## Server install/maintenance
>>>>
>>>> Installation of the server may need sending someone onsite, or we can
>>>> prepare an image that the teacher can install, with a post-install script
>>>> to finish the job.
>>>>
>>>> The server should be able to just run headless and will probably be in
>>>> command line mode unless specified otherwise (who normally performs
>>>> maintenance?)
>>>>
>>>> System updates may or may not be installed by a remote technician, or
>>>> automatically. From a break-prevention point of view I prefer the former
>>>> (or a technician at the school can be trained); for the school's
>>>> independence, the latter may be more relevant.
>>>>
>>>> At any rate, since the server is to host a master image, I'd like to
>>>> insist that the machine /needs/ keeping up to date and secure from any
>>>> non-authorized users in the school, or super-savvy/curious students :-)
>>>>
>>>>
>>>> ###
>>>>
>>>> I propose the following deliverables:
>>>>
>>>>         * An install image with the required software and
>>>> very-few-questions-asked
>>>>         * PXE server serving the image
>>>>         * Pre-seed file served from PXE server
>>>>         * PXE server install image itself (in case the server needs
>>>> resetting) and/or install procedure
>>>>         * Delivery on DVDs for archival and off-Internet purposes
>>>>         * Hopefully, a full build manual for future maintainers
>>>>
>>>> ###
>>>>
>>>> Tasks to attain this, as far as I can see, are:
>>>>
>>>> * Create custom "ISO" of target desktop setup (rather, dir structure
>>>> for serving over the web) from Ubuntu server
>>>> * Prepare the pre-seed file (which needs to include installation of
>>>> Lubuntu desktop) (this is the workaround I can imagine to get around
>>>> Lubuntu's lack of netboot)
>>>> * Prepare a PXE server setup
>>>> * Prepare an image of the PXE setup (which will include the contents of
>>>> the target ISO)
>>>>
>>>> ===
>>>>
>>>> Resources I've found most relevant so far:
>>>>
>>>>
>>>>    - UnattendedInstall CD :
>>>>    https://help.ubuntu.com/community/Installation/UnattendedCD
>>>>    - Custom CD incl pre-seed :
>>>>    https://help.ubuntu.com/community/InstallCDCustomization
>>>>    - PXE setup : https://help.ubuntu.com/community/PXEInstallServer
>>>>
>>>>
>>>> For Lubuntu, this may require using tasksel to install Lubuntu on top
>>>> of a server base, as the std Lubuntu CD does not have the requisite config
>>>> files ( /netboot )
>>>>
>>>> =============/
>>>>
>>>>
>>>>
>>>>
>>>> ===
>>>> Tai Kedzierski
>>>>
>>>> IT Services Specialist
>>>> http://helpuse.com
>>>> +44 (0) 7526 963 612 (portable GB)
>>>>
>>>>   I use www.libreoffice.org
>>>>
>>>> *"Open Source Free Software is a matter of liberty, not price."*
>>>> https://bitly.com/1gXkUcc
>>>>
>>>>
>>>> On 18 March 2015 at 23:01, Christian Einfeldt <einfeldt at gmail.com>
>>>> wrote:
>>>>
>>>>> Hi everyone,
>>>>>
>>>>> Thanks to everyone for your replies over the past couple of days about
>>>>> moving forward with the Ascend Linux lab, and thanks to each of you for
>>>>> your interest in the project.  I have gotten some good feedback from you
>>>>> all about this project, and I greatly appreciate what I have heard from
>>>>> each of you.  I have introduced each of you in an invitation to the google
>>>>> docs document, so that you hopefully might have an idea as to who everyone
>>>>> is.  To that list I will add Jim Stockford, who runs a tech company called
>>>>> Systemateka.com that provides a wide array of open source computer
>>>>> solutions.  Jim is one of our leading volunteers in our lab projects, and
>>>>> has been a major backbone of our work on our Linux labs in schools.
>>>>>
>>>>> Partimus has always moved forward by relying on preserving the
>>>>> goodwill of the members of the projects we work on and as a board all of
>>>>> our decisions thus far have been unanimous decisions, as far as I can see.
>>>>> I think the fact that our formal votes are unanimous reflects the fact that
>>>>> we value the input of each of our participants, and we want to build
>>>>> consensus and goodwill, rather than focus on short term outcomes.
>>>>>
>>>>> Partimus also tends to be a do-ocracy, meaning that people who have
>>>>> the greatest passion and time for a given project tend to take the reigns
>>>>> of a project, and the others tend to support them.  So if you see something
>>>>> that interests you, please feel free to take the ball and run with it.
>>>>>
>>>>> And so at this time, it appears that Tai Kedzierski, Mike Rojas, and
>>>>> Jim Stockford have the kind of time and expertise needed to bring
>>>>> completion to the PXE bootable .iso project.  It seems that Elizabeth and
>>>>> Grant have the expertise, but are slammed with projects at this time and so
>>>>> might not be among the first responders on this project; Jim Stockford
>>>>> describes himself as interested in the PXE boot project but says that he
>>>>> has not done such an .iso yet, but thinks he can help out; and Eric Burke
>>>>> has said that coding is not his forte but is interested in following the
>>>>> project and is writing a doctoral thesis on open source projects; and I
>>>>> absolutely suck at coding.  Please correct me if I have not correctly
>>>>> stated anyone's interest or availability correctly, and my apologies in
>>>>> advance if I have made a mistake.
>>>>>
>>>>> If anyone would like to have an IRC chat about this project, I am up
>>>>> for that.  Please just remember that Tai is in Scotland.  The rest of us
>>>>> are in the San Francisco Bay Area, at least right now.
>>>>>
>>>>> Eric has found a documentation page that might be helpful for us in
>>>>> starting out the PXE boot project:
>>>>>
>>>>> https://help.ubuntu.com/community/PXEInstallMultiDistro
>>>>>
>>>>> Tai has sent me an email about the Google doc that I circulated.
>>>>> Elizabeth tells me that doc is actually for a specialized manual install
>>>>> .iso, not a PXE-boot .iso, so again my apologies if I have started us down
>>>>> the wrong road, and thanks for that correction, Elizabeth.  Here is a link
>>>>> to that Google doc:
>>>>>
>>>>>
>>>>> https://docs.google.com/document/d/1UEgt_fkGUVdANcnZ1W2S5Rv15Hx3S92Ynn9Mui3xB_E/edit?usp=sharing
>>>>>
>>>>> Eric Burke's link above might be a better starting point, I'm not sure
>>>>>
>>>>> More comments below in response to a recent email from Tai:
>>>>>
>>>>> On Wed, Mar 18, 2015 at 4:21 AM, Tai Kedzierski <dch.tai at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hi Christian
>>>>>>
>>>>>> Thanks - I wasn't expecting the "League of Extraordinary Sysadmins"
>>>>>> gathering!
>>>>>>
>>>>>> Good to know there are others who will be able to provide insight!
>>>>>>
>>>>>> Rather than muck around in the document you provided (which has the
>>>>>> initial vital info!) would it be possible you share a separate empty Google
>>>>>> doc to serve as a collaboration/communication area? I'll dump the following
>>>>>> in it afterwards
>>>>>>
>>>>>
>>>>> Thanks, Tai.  As I said above, I think I might have started us off on
>>>>> the wrong document, and maybe Eric Burke's link would be better?  I don't
>>>>> know.
>>>>>
>>>>> At any rate, the document that I circulated is a copy, it is not the
>>>>> original, so if you would like to add the text below to that document, it
>>>>> doesn't bother me.  If you would like to start another google document,
>>>>> that would be fine as well.
>>>>>
>>>>> More from Tai below:
>>>>>
>>>>>
>>>>>>
>>>>>> ===
>>>>>>
>>>>>>
>>>>>>
>>>>>> I had a quick look at PXE setup yesterday [2015/03/17] and it seems
>>>>>> the straightforward setup simply serves the installation media over the
>>>>>> network instead of reducing steps to install - James's notes seem to align
>>>>>> with this, as in there is customization done but the teacher still has to
>>>>>> manually sit through the initial install screens (select languages, accept
>>>>>> partitions, choose various options etc)?
>>>>>>
>>>>>>
>>>>>> Probably what we are looking for then is an "Unattended install"?
>>>>>>
>>>>>> To that end I wanted to ask what the intended/acceptable workflow was
>>>>>> - when I was at the University of Edinburgh IT desk, our workflow for
>>>>>> installing was:
>>>>>>
>>>>>> * Go to physical machine
>>>>>> * Reboot to special CD
>>>>>> * hit enter
>>>>>> * walk away with CD whilst the PC automatically downloaded from the
>>>>>> network and installed everything
>>>>>>
>>>>>>
>>>>>>
>>>>>> ##
>>>>>> Another issue I encountered was a lack of netboot/pxeboot.cfg files
>>>>>> on the Lubuntu ISO which might need working around (though have not yet had
>>>>>> time to check if there are alternative methods).
>>>>>>
>>>>>> I'm sure there's a straighforward solution however.
>>>>>>
>>>>>> ##
>>>>>> I think Machine #3 (P4 @ 1.8 GHz + 500MB RAM) will be the target
>>>>>> candidate for becoming the server.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ===
>>>>>> Tai Kedzierski
>>>>>>
>>>>>> IT Services Specialist
>>>>>> http://helpuse.com
>>>>>> +44 (0) 7526 963 612 (portable GB)
>>>>>>
>>>>>>   I use www.libreoffice.org
>>>>>>
>>>>>> *"Open Source Free Software is a matter of liberty, not price."*
>>>>>> https://bitly.com/1gXkUcc
>>>>>>
>>>>>>
>>>>>> On 17 March 2015 at 21:12, Christian Einfeldt <einfeldt at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> thanks for your reply, Tai.  Comments in line below....
>>>>>>>
>>>>>>> On Tue, Mar 17, 2015 at 12:33 PM, Tai Kedzierski <dch.tai at gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi Christian
>>>>>>>>
>>>>>>>> I'll see what I can do as fastest for this.
>>>>>>>>
>>>>>>>
>>>>>>> Thanks so much!
>>>>>>>
>>>>>>>> For proper PXE + Customized ISO it would require work to integrate
>>>>>>>> it all;
>>>>>>>>
>>>>>>>> However we can break it into PXE as first goal; and until ISO
>>>>>>>> customization os done, I can certainly envisage a fully automating script
>>>>>>>> for the rest of the installation of custom s.w and settings.
>>>>>>>>
>>>>>>> Hi, thanks for that info.  I have found some of the notes from one
>>>>>>> of our Linux gurus about what he did with regard to making a Lubuntu PXE
>>>>>>> boot disc for another teacher.  I have invited you to the google doc so
>>>>>>> that you can see it and possibly get a little bit of a jump on the
>>>>>>> project.  In the meantime, I am going to try to assemble our gurus for a
>>>>>>> chat about the document, either in IRC or elsewhere, perhaps even in a chat
>>>>>>> in the document itself.  I have invited you to the document, but here is a
>>>>>>> link to it:
>>>>>>>
>>>>>>>
>>>>>>> https://docs.google.com/document/d/1UEgt_fkGUVdANcnZ1W2S5Rv15Hx3S92Ynn9Mui3xB_E/edit?usp=sharing
>>>>>>>
>>>>>>> Here is a link to the summary of the Ascend school's Linux lab:
>>>>>>>
>>>>>>>
>>>>>>> https://docs.google.com/spreadsheets/d/1_s0E7w40zs80yZNrVRqupml6jqADKjD9XoJ3uFkhQMw/edit?usp=sharing
>>>>>>>
>>>>>>>
>>>>>>>> Can you provide them a server to serve as core PXE master, or will
>>>>>>>> we repurpose a desktop PC to this end?
>>>>>>>>
>>>>>>>
>>>>>>> We will be looking for a server, but for now, we will probably
>>>>>>> repurpose a desktop machine.
>>>>>>>
>>>>>>>> How frequently do they need to do installs?
>>>>>>>>
>>>>>>> Initially, they will want to flash all 25 machines.  Then it will be
>>>>>>> a couple times a month as the older machines fail.
>>>>>>>
>>>>>>>
>>>>>>>> Are you mostly installing Ubuntu derivatives?
>>>>>>>>
>>>>>>>
>>>>>>> Yes, that is all that we are doing.  We try to use as few distros as
>>>>>>> possible, and one of our board members, Elizabeth Krumbach Joseph, is a
>>>>>>> Ubuntu Community Council member.  Plus Ubuntu has good documentation, which
>>>>>>> is good for a simple end user like me.
>>>>>>>
>>>>>>> Thanks for your interest!
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Christian Einfeldt
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Christian Einfeldt
>>>
>>
>
>
> --
> Christian Einfeldt
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.partimus.org/pipermail/tech-partimus.org/attachments/20150323/fb0f8684/attachment-0002.htm>


More information about the Tech mailing list