| Summary: | Diskless install using PXE boot, unclear about server file layout | ||
|---|---|---|---|
| Product: | [OLD] Docs on www.gentoo.org | Reporter: | Fabian Sturm <f> |
| Component: | Other documents | Assignee: | Docs Team <docs-team> |
| Status: | RESOLVED FIXED | ||
| Severity: | minor | CC: | rockoo |
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| URL: | http://www.gentoo.org/doc/en/diskless-howto.xml | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
|
Description
Fabian Sturm
2005-11-03 04:22:01 UTC
(In reply to comment #0) > Code Listing 5.6: /etc/exports > Why do I have to export /diskless/eta? Shouldn't the files in this directory be > provided by tftp? tftp transfers only kernel image and initrd, root is mounted over NFS. What are you referring to? (supposing "eta" is your machine) > So I would make two different dirctories for clarity, one providing everything > for the tftp boot and one for the gentoo root partition. (maybe > /diskless/eta/gentoo) Why? > 2. reboot? > "You might want to reboot the server with a Gentoo Install CD, " I can't find anything like that in our doc (see $URL). Are we talking about the same file? Ahh damn the link I meant is http://www.gentoo.org/doc/en/altinstall.xml#doc_chap5. And the diskless documentation is the one which is A LOT clearer. You are right, it is not necessary to have seperate directories for tftp and the provided root fs, but from the mentioned doc it is unclear what is part of which process. Maybe an introductory paragraph about the boot process and directory layout would be good. E.g. somthing like this: "The bootprocess starts by the client running the bios built in network boot code. This code first tries to get an ip via dhcp and then loads the image file configured in the dhcpd configuration. In our case this is pxegrub which than is executed and loads the grub boot manager and the grub.lst file also loaded from the tftp server. Finally if you select the boot option in grub a linux kernel image bzImage is loaded over tftp and started. From this point on the Linux kernel will take over the client and tries to mount it's root partition over nfs." "Therefore we have the following file setup on the server: /diskless/eta/ (contains all files necessary for the client to boot, e.g. the linux root file system and the bootmanager in ./boot) /diskless/eta/boot/pxegrub (the grub boot manager) /diskless/eta/boot/grub.lst (the grub menu file)" Since I now provided the correct url you will find the section: "Creating the system on the server" Here it gets confusing, what are the concret options, do i need to reboot? Do I need to copy files from the cd to the /diskless directory? This command: cd /mnt/gentoo/diskless/eta/ e.g. won't work. I have all my files in /diskless/eta not /mnt/gentoo/diskless. Next I am told to chroot and after that I should compile a kernel. This won't work since I didn't extracted a kernel image into my /diskless/eta directory. And an emerge won't work since I didn't extract a portage snapshot there. (which is not necessary anyways just to be able to boot and install the client) Next why do I have a /dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0 in the /etc/fstab file which will be provided to the client, but if the client would have a cdrom then I just could have booted the gentoo cd. Next emerge nfs-utils see above with emerge gentoo-kernel, since I did not extract a snapshot, I don't have a portage dir... Next Code Listing 5.14: Starting services I am never told to leave the chroot environment Next ...and provide you with a login prompt. yes if you get that far everything seems fine, except you can't login since you never set a password for the root user in the chrooted environment. Maybe all these steps missing are meant implicitely in the statement "Then follow the installation manual until kernel configuration". But for a novice user like me it would be better to include the necessary steps and not to refer to just another document. Even though that would mean partial redundancy in the documentation. Finally I want to say that I don't want to be nitpicking about the docu. Every single piece available is really great and took hours of time to create, but I just wanted to point on some things which in my opinioin could be a little bit clearer! Thanks a lot, Fabian (In reply to comment #2) Okay, here's how I see things: I think the doc is clear enough; all the explanatory stuff you mentioned wouldn't do anything but increase reading time. However, you have brought up some things that need to be fixed. > http://www.gentoo.org/doc/en/altinstall.xml#doc_chap5. > > This command: > cd /mnt/gentoo/diskless/eta/ e.g. won't work. I have all my files in > /diskless/eta not /mnt/gentoo/diskless. Yup. It should be /diskless not /mnt/gentoo/diskless. > Next I am told to chroot and after that I should compile a kernel. This won't > work since I didn't extracted a kernel image into my /diskless/eta directory. > And an emerge won't work since I didn't extract a portage snapshot there. > (which is not necessary anyways just to be able to boot and install the client) Yup, neither Portage emerging nor kernel extraction were mentioned. > > Next why do I have a /dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0 in the > /etc/fstab file which will be provided to the client, but if the client would > have a cdrom then I just could have booted the gentoo cd. Because it's possible the client can take CDs if it's running as a thin client (primarily an X server, for example). Not an issue; this part can stay. > Next emerge nfs-utils > see above with emerge gentoo-kernel, since I did not extract a snapshot, I > don't > have a portage dir... Correct, no Portage stuff was setup. Should be fixed. > Next Code Listing 5.14: Starting services > I am never told to leave the chroot environment This is not an issue; we have the sentence "Simply finish the install and restart the server." -- and since we already tell users to just follow the installation handbook, we don't need to duplicate all that information in the altinstall guide. > Next ...and provide you with a login prompt. > yes if you get that far everything seems fine, except you can't login since you > never set a password for the root user in the chrooted environment. This is also tricky; perhaps we *should* explicitly mention creating a root user? Though that would be duplicating information that is *already in the handbook*. To sum up, there are 2 outstanding issues: 1) change /mnt/gentoo/diskless/ to /diskless -- I assume that mounting a top level dir (not one in /mnt/) will work normally. 2) Missing kernel and Portage snapshot extraction steps. (This also affects emerging nfs-utils). (In reply to comment #3) > To sum up, there are 2 outstanding issues: > 1) change /mnt/gentoo/diskless/ to /diskless -- I assume that mounting a top > level dir (not one in /mnt/) will work normally. > 2) Missing kernel and Portage snapshot extraction steps. (This also affects > emerging nfs-utils). Seems to be a dead issue after reviewing the doc for several months. First, /mnt/gentoo/diskless was changed to just /diskless some time ago (I think I made that commit, not sure), and there is no more diskless/eta dir of any kind. Second, the user is never told to chroot to the diskless client, thus the emerge for things like nfs-utils and copying the bzImage takes place on the master's filesystem, so a Portage snapshot isn't necessary, as nfs-utils is installed on the master anyway, since it's going to be setting up the NFS server in the first place. Going to close this one. None of the original "issues" reported are still present or valid. |