Sei sulla pagina 1di 4

I was poking around in the Podnutz lounge today, and a couple folks remembered that I was talking about

trying to set up PXE boot yesterday, and when I told them I had met with extreme success they asked me to share my findings. So...here's that post. A little background on me: I don't have any certifications in the IT world, but I am very cocky about my abilities, just like the rest of us. My primary strength is that I am extremely stubborn, and once I set my mind to something, I WILL make it work. I don't have a shop; I operate out of a spare bedroom in my home. My little business largely just provides me with some disposable income to spend on my personal hobbies---tech and the outdoors. My equipment looks like this: My main rig is just an AMD Phenom Black at something like 3.4Ghz with 10gbs of 10666. It used to have more, but Geil sticks seem to like to burn out in this rig. This is the server rig. I used VirtualBox. My router (this is important) is an Asus RT-N16. This is important, because its gigabit AND it supports DDWRT Mega or (my preference) the big build of Tomato. If you're not familiar with either DDWRT or Tomato, I suggest you stop reading now and go learn what you've been missing. Mine sets up QoS, port forwarding for all the server apps, DNSMasq for the PXE server, and keeps my dynamicIP service alive for my one-click-vnc and FTP servers. Having a DDWRT or Tomato based router makes this process about 500x simpler because you won't need a DNS server. (I also suggest setting your static DNS on the router to OpenDNS settings, but that's really personal preference.) My server is an HP N40L that I beefed up to 8gbs of ram. It's got a small ~250Gb internal and a 1.5Tb external attached. I'll add more someday and switch it over to unRaid. It runs Windows Server 2008; and its always-on services are Mumble, TeamSpeak, Newznab+, Sickbeard, Couchpotato, VNC, uTorrent, and a whole bunch of SMB shares. I did not use this server for my PXE server. Just like everyone on the forum, I've got a random assortment of laptops, mobile devices, etc. floating around. My entire home (it's 90 years old) is wired gigabit, making use of one additional gigabit switch. The only wireless devices are the android bits, the laptops, and the roku. The jailbroken ATV2 is wired, as is the WDTV Live.

Why I wanted to PXE boot: My office is small, and I've got several spindles sitting around with various copies of whatever. I've got several usb3 dongles for sata and IDE drives, and several flash drives. Keeping them all together is no fun. Most people use PXE to push preconfigured images straight onto machines to save time. This isn't really my intention at this point, I WANT TO USE ISOS.

History A week or so ago, I started setting up PXE via my server box as per FoolishIT's blog post. That stopped before it started, because I don't (and don't want to) run my network as a domain with active directories because of all the media sharing going on. This method obviates the need for WDS or any windows server functionality. It Begins... So yesterday, in some technibble forum post, someone asked about how to push an image to 19 machines. I suggested the Trinity Rescue Disk, and then someone else recommended PXE-Dust. I don't know about you, but there are SO MANY APPS out right now that I can't begin to keep them straight sometimes. I'd never heard of PXE-Dust. Anyway, they directed the OP to this post by user "smashedbotatos": http://www.technibble.com/forums/showthread.php?t=34477 Now, this is a great tutorial, but it's missing some key components. Specifically, guide link was wrong yesterday. So--here are those links for you. Here is the actual guide itself: http://pxe-dust.com/downloads/guides/PXE%20Boot%20Server%20Guide.doc The other links are correct as of this posting. When you get to CONFIGURING YOUR DHCP SERVER... This is important business. Remember, I have Tomato, not DDWRT, but they're very similar. Thankfully, the "3a." section link supplies what you need for Tomato as well. Now follow the guide until you get to the section titled "INSTALLING PXEDUST INSTALLER SCRIPT". Step 1 contains a bad link. The correct link is: http://pxe-dust.com/downloads/installer/pdinstaller.tar.gz Follow the rest of that section accordingly. I installed some of the included tools as per the guide, but mostly I was interested in FOG. Skip on down to the "F.O.G. Project" Installing FOG is pretty straight forward. Almost all the defaults are right; however you need to make sure you're picking them correctly as you go. As far as I can remember, it autodetected everything for me except for the address of my DNS server (192.168.1.1 for me, whatever your router/gateway is) When it asked me to notify the Fog group about my install, I said yes, and then it froze. I let it sit there for a good 20 minutes. Then I took a risk and rebooted my VM. Thankfully, it was fine.

So now your PXE server is UP and FOG is installed. It would probably be sensible now to see if you can connect to it. I didn't.

Now, if you've logged in to your FOG install, you've played around with it some, but you can't figure out how to add ISOs. Enter this excellent post (I suggest you up it to 720p to see detail): http://fogproject.org/forum/threads/how-to-modify-the-pxe-boot-menu-to-allow-the-booting-of-isofiles.154/ Now, before we go any further, let's talk about users and passwords. You know linux uses usergroups and passwords and ownership and permissions. As PXE-Dust is a unique distribution, and I didn't feel like looking at the onboard users and groups, I was flying by the seat of my pants. It's important to note that your server now has at least TWO USERS. One, the root user, is called "pxeadmin", and you should have set the password to something stupid like "password." Security isn't especially important on this super closed network. The second user is the "fog" user. Or maybe it's "Fog". Whatever. That password is, by default, some big long hash. You don't want this. Before I realized it was changeable in the FOG admin panel, I changed in it the terminal while logged in as pxeadmin: passwd fog password I'm actually not sure this step is necessary. Anyway, whether or not you do this, you have to go change it in Fog too. So log into the panel, go to configuration, then "other information", then "Fog settings", and replace the FOG_TFTP_FTP_PASSWORD and FOG_NFS_FTP_PASSWORD fields to equal whatever you changed it to above. They need to match. This is pretty important. I went ahead and noodled around and edited some other settings inconsequentially and changed anything that said PASSWORD to my simple password "password." (I win the record for most uses of password in one sentence today.) Once that's done, watch the video in the above forum post. Ignore the written instructions, just watch the video. Now here's the pickle: ONLY the FOG user can add folders to the tftpboot folder. Only the PXEADMIN user can edit the menu. Yeah I coulda merged the groups but I trip over syntax sometimes, and I was afraid to CHOWN and break something. So you're gonna upload the isos as "Fog" and edit the menu as "pxeadmin". If you're using a decent FTP program like Filezilla, this is trivial. Use Notepad++ to edit the menu. In fact, use Notepad++ for all your unformatted text editing, because it is the best ever in all of ever, period. One last hint: In LinUx, In cASe yOu don't know, punctuation and capitalization are super important. So as you're doing something like copying over "precise.puppy.5.2.4.iso", rename that betch to something like "puppy.iso". Make your folder names simple too, and stick with a convention like "all lowercase." Mine look like "/kav/kav.iso" "/regen/hddregen.iso", etc. And yes, .ISO is different than .iso, or at least as far as I know. Make it all lowercase now and you'll love it later. Now to test it, keep the VM running and logged in, plug in a laptop or something to your network. (PXE only works on WIRED NETWORKS), go to your boot menu, and choose "network boot." You'll be presented with a screen. Pressing up or down pops up the menu, then right or left chooses more options.

All the FOG menu options are available from UP then RIGHT. Scroll through, pick one, press enter, and wait for it to transfer and load. You're all set. :) The normal PXE-Dust menus are available by scrolling UP or DOWN, picking "advanced" or whatever it says, and then hitting right. I probably won't use much of this, although all the stuff in the original guide is available right there. Oh, and some hints about editing the menu:
LABELDellDiagnostics<THISISARBITRARY,it'sforyourownreferencewhileediting MENUMASTERPASSWDpassword<DONOTCHANGETHIS kernelfog/dell/memdisk<YES,putauniquecopyofmemdiskineachfolder. appendisoinitrd=fog/dell/delldiags.isoraw<onlychange/dell/delldiags.iso MENULABELDellDiagnostics<Thisiswhatshowsupinthemenu TEXTHELP Dell(TM)Diagnosticsoftware<Thisiswhatshowsupbeneaththemenuwhenhighlighted ENDTEXT

I realize this is a quick and dirty write-up and probably contains errors. I do fully intend to create some vanilla images and actually use PXE as it is intended soon, for right now though, it's perfect for me. I do have Windows 7 and XP isos on my server. By default the VM is 40Gb, it can be resized. Fill 'er up, I say! I also recommend you shut down the VM and increase the number of cores it can use, decrease its processor affinity, and dramatically increase the amount of RAM it's allocated. It'll soar. Using a VM means that to FTP to the images, the data was coming from my data storage on my server, through my router, to my desktop, back to my router, and then back to my desktop into the VM with unique IP. This was slowing me down, but once they're transferred, I was golden. I was booting into a Dell Mini 10 with just a single core Atom 1.6. It loaded even the larger images with no problem. Precise Puppy Linux threw a ramdisk error, but I'll troubleshoot that later. Everything else ran great. Here's what I have on there so far: Trinity Rescue Disk, KAV, Falcon4Rescue, Hiren 13, Hiren 15, Win7, WinXP, HDD Rescue, PartedMagic

Currently I'm looking for something to work like Acronis, only from boot, that will let me image a drive over the network, but then peek inside that image to scavenge individual files. This way I don't have to yank drives from laptops w/o easily accessible bays.

Potrebbero piacerti anche