[22:42] Hello! I am trying to setup an automated install on 12.04 using preseeding and it just won't not crash on me right before installing the bootloader [22:46] legogris_: what kind of crash? [22:47] CarlFK: syslog: http://pastebin.com/4STvrjjR [22:47] CarlFK: It tells me that the installer crashed and the it proceeds with crafting an error report to submit [22:48] I have no prior experience here, but looking at the end of the syslog I think it looks like something's up with installation of language packs [22:48] oh.. is this installing from the live cd? [22:50] I am using Black lab imager if you are familiar with it... It's what became of remastersys [22:53] sorry, no help. I have been doing preseeded net installs [22:54] Ah, thanks anyway! === superm1__ is now known as superm1 [22:54] CarlFK: I went with this way because it seemed like a good idea.. But do you have any ideas of better approaches of automating desktop installs? [22:55] Going to have identical edubuntu installs on a couple of hundred computers that need shredding beforehand and custom packages :P [22:56] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/README.txt [22:58] CarlFK: Thanks, but sadly network does not seem lika an option for us [22:58] do exactly that first. it is easy. boot a box, at post hit F12 or whatever to get it to pxe boot. let it do the install (about 30 min) make sure it actually works as is [22:58] oh. [22:58] why not? [23:01] Because we only have a 100/100 switch and we figured it will just take way too much time compared to using USB sticks [23:03] I seem to remember 100 being faster than installing from a CD [23:04] and I suspect most of the time is decompressing and configuring (or whatever is going on after the .deb has landed ) [23:04] Hmm, maybe it's worth a try. So what tool should I use to prepare the installation? [23:05] 1. start with a vanallia Ubuntu box. [23:05] any flavor from the last 5 years. [23:05] that just hosts the dhcp and pxe server [23:05] er.. pxe server = tftp and squid [23:06] I only run that script once a year, maybe twice [23:08] You should have the first full install in 30 - 45 min, and most of that time will be watching the "installing packages" progress bar [23:08] Oh, so it will make clones of the system running the server? [23:10] no. [23:11] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/shaz/var/www/d-i/oneiric/preseed_local.cfg [23:11] that should look familiar ;) [23:11] indeed! [23:13] btw, setup the server on a throw away box. [23:13] not your current production server [23:13] of course :) [23:15] sudo ./install.sh [23:15] that will install/config the server. [23:16] hmm [23:16] hows your networking skills? [23:17] I guess it's a similar approach to this but with a different setup and using puppet here? http://www.colinmcnamara.com/setting-up-cobbler-pxe-auto-deployment-for-ubuntu-server-12-04-precise/ [23:17] 6. disconnect from primary lan ... that's not completely true. it needs to be a gateway/router to the internet [23:17] Ah, we don't have internet [23:18] Which makes it a bit of a hassle because no packages can be fetched from internet [23:18] bummer [23:20] so.. something I have done a total of 2 times: setup the server where you do have net, install one node (target box) and then drop this in squid.conf: [23:20] "offline_mode" : http://www.squid-cache.org/Doc/config/offline_mode/ [23:20] hmm [23:21] er, offline_mode=on I guess [23:21] anyway, it won't call out looking to see if there are updates, it will just use what is in the cache [23:22] but we are getting kinda thin now [23:24] so i setup one node where i have net access and then the server will cache the stuff needed? Sounds doable ^^ [23:24] that's the plan [23:24] but.. [23:25] you are going to want to do a few test installs [23:25] like I am guessing you want saucy or trusty [23:25] Nah, we'll go for LTS [23:25] isn't trusty lts? [23:26] Oh, you're right :) [23:27] But anyway, 12.04 is what we've been rolling with so far so I think that's what will happen [23:27] Most of them won't see internet for years, if ever, anyway [23:27] is that presice ? [23:27] Yes [23:28] good. you get that out of the box :D [23:28] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/install.sh#L95 [23:28] shaz/root/bin/getu.sh precise amd64 [23:29] that gets the precise installer [23:30] when you pxe boot a node, you will get a menu, very much like grub's [23:30] this drives that menu: [23:30] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/shaz/var/lib/tftpboot/pxelinux.cfg/default#L16 [23:30] default ubuntu-oneiric-amd64-handsoff [23:31] append initrd=ubuntu/precise/amd64/initrd.gz root=/dev/rd/0 rw auto=true netcfg/wireless_wep= interface=auto hostname= DEBCONF_DEBUG=5 url=shaz -- [23:31] Ah [23:31] So I basically clone the repo and replace the preseed file with what I want? [23:32] url=shaz is what tells the installer to go look for https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/shaz/var/www/d-i/oneiric/preseed.cfg [23:32] no - shaz/root/bin/getu.sh precise amd64 just wgets these 2 files: [23:34] http://archive.ubuntu.com/ubuntu/dists/precise/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/ [23:34] linux and initrd.gz [23:36] pxe boot a node, those two files get served over tftp to the node, and the kernel gets booted with the above parameters [23:37] I'm actually still quite not sure how I should customize my installation. I've never even successfully remastered an iso yet [23:38] lol [23:38] That was my problem when I joined the channel, remember :D [23:38] I tried to do an iso. I am not sure I ever got something close to working [23:39] So much outdated an contraducting info everywhere online.. If I ever get this working, first thing I'm doing is a blog post about it :P [23:39] for a long time I would extract the .deb files from the iso onto the file server and use it like a repo [23:39] well.. long time .. make that a long time ago when I first got started with automated installs [23:40] I love what I have now. the pxe/preseed is pretty standard and supported [23:41] and the late_command hook that calls a honken shell script that can do whatever is needed (assuming I can figure out how to script it) [23:41] lucky for you I advise throwing out my late.sh script. write your own from scratch if you need to. [23:42] hehe :) [23:42] Thanks for all the advice! I hope I can wrap my head around it and get it working [23:43] let me give you a quick run though: [23:43] oh yeah.. getting a node to pxe boot can be a task [23:43] often you need to go into the bios to enable the network card (chips) boot rom [23:44] which means figuring out how to get into bios. on random boxes... that can take 10 min of boot/hit random keys [23:44] anyway... one you get it to say "pxe... waiting for dhcp.. " [23:46] that is the nic's boot rom which has a full dhcp client and IP stack. it sends a dhcp request to the lan, the dhcp server responds with an IP/netmask/gatewy (nothing new) and "server=1.2.3.4, filename=something" [23:47] bootrom code has a tftp client (t=trivial=small = fits in a little rom I guess) [23:47] it does a connect 1.2.3.4 GET someting; and executes it. [23:47] that is kinda like "bios loads boot sector from first hard disk and executes it" [23:48] with you so far :) [23:48] something can be about anything you would expect to boot from boot media. like grub, or memtest.. [23:48] or something that turns around a gets a menu of more boot options [23:49] also, if you have a dhcp server, here is all you need to do to it: [23:49] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/shaz/etc/dhcp/dhcpd-pxe.conf [23:49] filename "pxelinux.0" ; [23:50] next-server pc8 ; [23:50] where pc8 is where the boot rom will ftp to, and everything else can be on that box, so you don't need to clutter up your production dhcp server [23:50] and everyting can be on one lan. [23:50] anyway... [23:51] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/install.sh#L33 [23:52] apt-get --force-yes --assume-yes install ... syslinux [23:52] that installs /usr/lib/syslinux/pxelinux.0 [23:53] and hhttps://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/install.sh#L77 moves it into place so the tftp server can serve it up [23:55] hmm.. I am making a guess now.. I guess it is hardcoded to go back to the server and get [23:55] https://github.com/CarlFK/veyepar/blob/master/setup/nodes/pxe/shaz/var/lib/tftpboot/pxelinux.cfg/default [23:56] reading the comments, I guess the normal behavior is to sit at a boot: prompt [23:56] but I tell it to time out after 1.5 seconds and... [23:57] # label to use if the user hits Enter ... UI menu [23:58] label menu kernel syslinux/menu.c32 [23:58] wow, I thought I cleaned out all those boot options :p [23:58] hehe [23:59] syslinux/menu.c32 gets loaded, which makes a nice menu out of all the options .. so you can arrow up and down and hit Tab to edit kernel params