Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 45112 - List of fixes for the diskless-howto.xml
Summary: List of fixes for the diskless-howto.xml
Status: RESOLVED FIXED
Alias: None
Product: [OLD] Docs-user
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Sven Vermeulen (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-19 02:14 UTC by Xavier Neys (RETIRED)
Modified: 2004-03-28 06:53 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Xavier Neys (RETIRED) gentoo-dev 2004-03-19 02:14:03 UTC
Pasted from Ralf Hinze's mail:
First of all, let me say thanks for this great how-to.
To my surprise, I was able to set up a diskless node
within a few hours. I ran into a few problems which
I have documented below. I hope the feedback is useful.

Thanks again and cheers, Ralf

Comments on the how-to
----------------------

- Before you start:
Maybe it's worth mentioning that you have to select LAN booting in the
BIOS (after all, the how-to is aimed at beginners).

- About the slave kernel:
I am not sure why you recommend to compile the slave kernel without
modules. Loading modules works without any problems here. [Of course,
the network driver must be built-in.]

- Code Listing2.13: Creating mount points and directories in the slave's filesystem:
I would add

# chmod a+w /diskless/192.168.1.21/tmp
# mkdir /diskless/192.168.1.21/var/spool

KDE uses "tmp" a lot, "cron" requires "spool".

- Code Listing3.8: Sample /etc/conf.d/dhcp:
DHCPD_OPTS="-d" didn't work for me; dhcpd wouldn't start.

- About PXELINUX:
The guide says that PXELINUX supports *various* kernel options. As far
as I can tell it supports arbitrary options via "append" (including
boot-splash). Maybe it's helpful to show a Grub configuration file and
a corresponding one for PXELINUX, see below.

title=Gentoo
root (hd0,0)
kernel (hd0,0)/boot/bzImage root=/dev/hda3 video=vesa:ywrap,mtrr vga=0x317 splash=silent
initrd=/boot/initrd-1024x768

label Gentoo
  kernel bzImage
  append ip=dhcp root=/dev/nfs nfsroot=192.168.1.1:/diskless/192.168.1.21 video=vesa:ywrap,mtrr vga=0x317 splash=silent initrd=initrd-1024x768

- Code Listing4.4: Files that PXE looks for in pxelinux.cfg/ in sequence:
Interestingly, the hex digits of the slave's MAC address *must* be in
lower case (took me a while to figure this out).

- Code Listing4.5: Sample pxelinux.cfg/default:
Change "DEFAULT /diskless/bzImage" to "DEFAULT bzImage": the files are
specified relative to the root path "/diskless".

- Troubleshooting the network boot process:
No problems here. I just wanted to remark that this section was very
valuable.

- Code Listing5.5: Sample master /etc/exports:
Maybe add "sync" to the options (otherwise "exportfs" will issue a
warning).

- Code Listing5.6: Sample slave fstab:
What is the purpose of the "nolock" option? My understanding is that
this is only required for old NFS servers that don't support locking.

- Code Listing6.1: Creating a slave filesystem:
I used "rsync -avz" instead of "cp" since this also takes care of
symbolic links, owners and permissions.

- Initialization scripts:
The "netmount" script mounts "usr", "opt" and "home". Given the
standard dependencies it is started *after* "consolefont", "keymaps"
etc. However, the latter scripts already need to access the "usr"
directory. Therefore, I added "need netmount" dependencies to
"consolefont" and "keymaps" (and several others). This resolved most
of the booting problems. One glitch remains: on reboot "netmount"
always fails reporting that the device is still busy. BTW, what is the
difference between "netmount" and "nfsmount" (apart from the fact
that "netmount" also takes care of other network filesystems)?

Missing files and directories
-----------------------------

Several services failed at boot time because the standard directories
did not exist. May be it's worth mentioning this potential source of
trouble in the how-to.

- "rc" uses "find" which usually resides in "usr/bin" (I copied "find"
  to "bin")
- "xkb" requires "/var/lib/xkb" (if the directory is not present, X does
  not configure the keyboard correctly; one symptom is that the "ALT Gr"
  key does not work)
- "vixie-cron" requires "/var/spool"
- "postfix" requires "/var/spool/postfix"
- "statd" (used by "nfsmount") requires "/var/lib/nfs"

Maintenance
-----------

Finally, is there a recommended way to keep "bin", "lib", "sbin" and,
in particular, "etc" up to date?
Comment 1 Sven Vermeulen (RETIRED) gentoo-dev 2004-03-28 06:53:09 UTC
Various changes committed (tx to unsolo). See also #45545