Fog image choice with USB
-
It’s for a school project, the task comes from my teacher, he wants that I find a way to boot or deploy an image on the server with an USB boot
I may have found a way. I put syslinux on my USB key, and I copied the /tftpboot/fog repertory to the root of the key. I put the file pxelinux.cfg/default to the USB key root and I rename it syslinux.cfg. Then i can boot a file on the key but, I can’t boot a file on the fog server yet, here is an example of my default file on the USB key:
[CODE]DEFAULT fog.memtest
LABEL fog.memtest
kernel fog/kernel/memdisk
append iso initrd=memtest/memtest.iso ip=dhcp dns=10.7.112.15 ftp=10.7.112.55 storage=10.7.112.55:/images/ web=10.7.112.55/fog/
[/CODE]How can I boot a file on the server with the menu on my USB key
-
You’ll have to manually set this up.
What I mean is you’ll need to, probably, create a script on the key to setup the storage, type,
Maybe follow a similar process for the Menu so you can just make a choice of upload/download etc… The FOG GUI will not be of help here, so you’ll always have to boot to a specific menu option. The GUI will only be useful in the creation of the Task so this works properly. It will also only be useful for the management of the images.
Something along the lines of:
[code]
LABEL fog.upload
kernel fog/kernel/bzImage
APPEND initrd=fog/images/init.gz root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=10.10.10.1 mac=00:1e:ec:e3:dd:1b ftp=10.0.7.1 storage=10.0.7.1:/data/fogstorage/images/dev/ storageip=10.0.7.1 web=10.0.7.1/fog/ osid=5 loglevel=4 consoleblank=0 irqpoll chkdsk=0 img=win7activatedsysprepgen imgType=n imgid=6 PIGZ_COMP=-9 hostname=testname pct=5 ignorepg=1 type=up
MENU LABEL Image Upload
TEXT HELP
Upload Image to server.
ENDTEXT
LABEL fog.download
kernel fog/kernel/bzImage
APPEND initrd=fog/images/init.gz root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=10.10.10.1 mac=00:1e:ec:e3:dd:1b ftp=10.0.7.1 storage=10.0.7.1:/data/fogstorage/images/dev/ storageip=10.0.7.1 web=10.0.7.1/fog/ osid=5 loglevel=4 consoleblank=0 irqpoll chkdsk=0 img=win7activatedsysprepgen imgType=n imgid=6 PIGZ_COMP=-9 hostname=testname pct=5 ignorepg=1 type=down
MENU LABEL Image Download
TEXT HELP
Download image from Server to host.
ENDTEXT
[/code]Change all the IP’s to there respective values:
dns
ftp
storage
storageip
webChange the hostname to what you want the hostname to be.
Change the imageName to what you want it to be.
Change the imgType to:
n = single disk resizable
mps = multipart single disk non-resizable
mpa = multipart all disk non-resizable
dd = raw.Make sure the imgid matches that of a valid image.
Make sure the img matches the name of a valid image.Change the MAC address to that of your client to be imaged.
It’s not pretty, but it is doable.
-
Thank you it works :D, but how can I do for an iso file ?
-
You’ll have to have the ISO file available on the usb key.
To work it properly you could create a menu entry like:
[code]DEFAULT fog.memtest
LABEL fog.win7
kernel fog/kernel/memdisk
append iso initrd=win7.iso raw
MENU LABEL Windows 7
TEXT HELP
Boot the Windows 7 ISO from this menu. Needs lots of RAM and time behind to wait for Please Press any key to boot from…
ENDTEXT
[/code]Of course add as many entries as needed and change the files as needed. the initrd will need the actual location. Just like the kernel is calling. So if you place the ISO in fog/win7.iso your initrd command will be: initrd=fog/win7.iso
-
This post is deleted! -
Does it works only on the usb key ? Is it possible to put a network path to the initrd ?
-
[quote=“Valden, post: 22694, member: 21858”]Does it works only on the usb key ? Is it possible to put a network path to the initrd ?[/quote]
only one way to find out!
It depends on your network, if it is ANYTHING like my network (I work in education), it will be troublesome. We make every user authenticate, if you do not authenticate you only get public rights. So you need to understand your network environment.
From what I gather you are a student correct? I do not allow my students open space to store files and information on my server… you will need to check with your local IT department to find a place to put your files for access, possibly even create a special user and password.
THAT BEING SAID. I have written scripts in the past to authenticate to a network storage drive on windows, so the task is possible, it’s just a matter of learning to write a script that can authenticate itself to a user, whose home directory is the storage space of the iso image.
I would use something like
[code]
append iso initrd=10.x.x.x/path/to/FILENAME.iso
[/code]where 10.x.x.x is the IP address of the server, you may have to syntax it another way to get it to see the server too, this is only an example, and not a working one.
-
It’s just for a school research project, I don’t use the university servers. I’ve made a virtual machine for my fog server and I have a phisical computer for the USB boot. I had already set up a fog server, but that was without that USB system as my teacher wants.
And for the kernel line ? Is there differents kinds of kernel ? because I saw memdisk vmlinuz …Sorry for my english, I’m french
-
vmlinuz is just an “executable” of the linux kernel, for lack of a better way to describe it.
In that case, give it a go! Since you aren’t needing anything specific from the IT department, and everything is housed on machines you manage, set up a shared space, save your image there and find the right syntax to get it to load via the “USB FOG Server”.
-
Thanks you very much for the help !
For the OS deployment the the problem is solved. But for iso file, my path /tftboot/ has already all permissions, Should I configure a samba shared space?
But I don’t understand one thing, I can deploy OS without problemes, therefore I wonder why I can’t do the same with iso files ? I think I miss something…
-
I’m glad we could be of some help but I would think it would work better to boot the ISO off of the USB as during the initial load you don’t have access to the network so loading items from the network would be impossible. I don’t even think pxe can load the ISO from a network location.
-
The reason fog works is it’s already loaded the networking and is its own system before fog loads. During initial load though, it’s loading directly off of the USB.
-
Do you think, that is possible to download the usb image directly into the ram with tftp ?
-
[quote=“Valden, post: 22881, member: 21858”]Do you think, that is possible to download the usb image directly into the ram with tftp ?[/quote]
It may be possible to load with tftp, but you have to make sure that enough ram is available for the image though…
FOG isn’t designed to handle ISO image files.