Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
07-09-2013, 04:19 PM
|
#16
|
Moderator
Registered: Mar 2008
Posts: 22,280
|
I too agree that this image you have is the problem. The /etc/profile could be causing the kernel panic. The link I posted has some ideas on kernel panic.
I'd consider testing first with some known image or pxe just to start off with some working situation. Just to help rule out any issue.
Any other test like trying this on a VM (and that may have it's own issues) or using gpxe or other ideas like memdisk to test.
I'd consider building this again on the client just to rule out any hardware issues. I think that was some like I posted or looked at.
|
|
|
07-09-2013, 05:23 PM
|
#17
|
Member
Registered: Oct 2012
Location: Tucson, AZ
Distribution: Debian/CentOS
Posts: 124
Original Poster
Rep:
|
Thanks to both of you for your ideas! I have CentOS6 up and running today on the client machine and will try and re-roll the kernel later tonight. Hopefully I will have some success. I plan to pretty much take the whole thing back to the drawing board, removing the installed programs & directories and starting from scratch...
My apologies on being new to this, but thanks much for helping me to hit that steep learning curve! One problem I am a bit stuck on in resolving this is my lack of understanding on how this works and, as such, I don't understand how to modify it in the ways you are stating. Is there any links you may know of that will help to further my knowledge of the process itself?
Again, thanks for all the help!
|
|
|
07-10-2013, 07:13 AM
|
#18
|
Senior Member
Registered: Oct 2004
Distribution: Debian Squeeze x86_64
Posts: 1,748
|
I have one nice link at home. Will post later. But maybe this one is intresting: http://etherboot.org/wiki/start, http://www.syslinux.org/wiki/index.php/PXELINUX.
I guess you are looking for a tut how to create the ramdisk or equevilant? I see if I can find some. Else the TLDP from boot-to-bash is always a nice read.
Edit: Heres the other link http://ipxe.org/docs. But guess it won't help that much. I thought it contained a tut how to make a whole system and have that going into RAM. Maybe i can find something about this.
Last edited by zhjim; 07-10-2013 at 12:33 PM.
|
|
|
07-10-2013, 02:52 PM
|
#19
|
Member
Registered: Oct 2012
Location: Tucson, AZ
Distribution: Debian/CentOS
Posts: 124
Original Poster
Rep:
|
Thanks for the reply, zhjim! No, you're correct in the first instance: I've been reading alot on the process of what exactly is necessary to boot a "diskless client". Even just one success will allow me to be able to play around with configs and see what works and what doesn't.
I read all the pages on the syslinux website (including the PXELinux link) about it. I think I'm going to start from scratch today. I loaded CentOS6 on the client machine and I think I will try and make this super simple to begin with (as jefro had suggested). It is my understanding that all I really need (based on the PXELinux page) is pxelinux.0, the client's /boot/initramfs* and /boot/vmlinuz*, and a folder called pxelinux.cfg with a file named "default" that has:
DEFAULT vmlinuz*
APPEND initrd=initramfs* rw ip=192.168.1.201:192.168.1.5:192.168.1.1:255.255.255.0:rambox:eth0  ff shell
... does this sound right to you? I'm getting about desparate for a success at this point! Even the simplest success would make me happy today!
Anyways, thanks again for all your help: you guys are awesome!
|
|
|
07-10-2013, 03:31 PM
|
#20
|
Moderator
Registered: Mar 2008
Posts: 22,280
|
Not even sure you need to assign the ip address.
I have an old ms box that I used to use to play with pxe maybe 5 years ago. I'll try to see if that data is on there as to what I did. I played with all sorts of pxe and gpxe booted os's to various machines. Couldn't get management to try any new ideas so I just left it.
Last edited by jefro; 07-10-2013 at 03:33 PM.
|
|
|
07-10-2013, 04:31 PM
|
#21
|
Member
Registered: Oct 2012
Location: Tucson, AZ
Distribution: Debian/CentOS
Posts: 124
Original Poster
Rep:
|
Thanks for the reply, jefro! I am currently trying to do as you suggested and keep it simple, but you probably already saw that from my last post. I installed Centos6 on the target machine, copied over the initramfs and vmlinuz, modified the dhcp script, and modified the /pxelinux.cfg/default file to point to to the new kernel & initramfs.
Is it still a success if it at least errors out at a different point? Anyways, here is the new error message stating dracut can't find an argument for "root=" which I don't understand how to define. I have posted the error below.
Again, thanks for all you help! Your help has been invaluable! Thanks much!
- Steve
|
|
|
07-10-2013, 04:40 PM
|
#22
|
Member
Registered: Oct 2012
Location: Tucson, AZ
Distribution: Debian/CentOS
Posts: 124
Original Poster
Rep:
|
From what I can tell, the /pxelinux.cfg/default file needs a line specifying "root=" and a path to /root. Does this sound correct? I found the info here:
http://www.robotics.net/2012/03/07/dracutpxeboot/
Assuming this is correct, do I need to copy over the contents of /root from the client to the server and then add a root= and the path to the copied over root directory?
|
|
|
07-10-2013, 04:59 PM
|
#23
|
Member
Registered: Oct 2012
Location: Tucson, AZ
Distribution: Debian/CentOS
Posts: 124
Original Poster
Rep:
|
after copying over the contents of /root from the target machine to /var/lib/tftpboot/root on the server and adding:
APPEND root=root/
(I also tried the full path root=/var/lib/tftpboot/root/)
to the /pxelinux.cfg/default file I got this new error. Here is what I have followed from http://people.redhat.com/harald/dracut.html.
Specifying the root Device
This is the only option dracut really needs to boot from your root partition. Because your root partition can live in various environments, there are a lot of formats for the root= option. The most basic one is root=<path to device node>:
root=/dev/sda2
Because device node names can change, dependent on the drive ordering, you are encouraged to use the filesystem identifier (UUID) or filesystem label (LABEL) to specify your root partition:
root=UUID=19e9dda3-5a38-484d-a9b0-fa6b067d0331
or
root=LABEL=myrootpartitionlabel
To see all UUIDs or LABELs on your system, do:
# ls -l /dev/disk/by-uuid
or
# ls -l /dev/disk/by-label
If your root partition is on the network see the section called “Network Boot”.
Last edited by RootMason; 07-10-2013 at 05:07 PM.
|
|
|
07-10-2013, 09:25 PM
|
#24
|
Moderator
Registered: Mar 2008
Posts: 22,280
|
Not sure you need root but you need to assign some few parts. This is an example from clonezilla. Pretty much follows what I have done before. Pretty much all of the append line is not needed to get it to boot. I put this here as one of the few thousand ways.
"label Clonezilla-live
MENU LABEL Clonezilla Live (Ramdisk)
KERNEL vmlinuz
APPEND initrd=initrd.img boot=live config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" keyboard-layouts="" ocs_live_batch="no" locales="" vga=788 nosplash noprompt fetch=tftp://$serverIP/filesystem.squashfs
-----------
//NOTE//:
Replace $serverIP with your IP address of tftp (DRBL) server.
Remember to check kernel, initrd file names and boot parameters in syslinux/syslinux.cfg from the zip file, copy them to here. It might be different from here, say vmlinuz path maybe different.
For more info about pxelinux, you can refere to here.
Here we do not put "ip=frommedia" in the boot parameters because the /etc/resolv.conf get in live-initramfs won't exist in the system after initramfs is done.
"fetch" also supports http or ftp, if you want to use http or ftp instead of tftp, you have to put the file filesystem.squashfs in your http or ftp server and the corresponding path.
If you want to do unattended clone, you can assign clonezilla live parameters (ocs_live_run, ocs_live_extra_param, ocs_live_keymap, ocs_live_batch and ocs_lang) in kernel parameters. For example, you can use:
------------------------------------------------------
append initrd=initrd.img boot=live union=aufs noswap noprompt vga=788 keyboard-layouts=NONE locales=en_US.UTF-8 fetch=tftp://$serverIP/filesystem.squashfs
------------------------------------------------------
in the above example to assign your PXE client to use default keymap (US) and English environment. For more info about those parameters, you can refer to this
|
|
|
All times are GMT -5. The time now is 07:33 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|