1 |
On Mon, 06 Jan 2003 21:45:47 -0600 |
2 |
"Kevin N. Carpenter" <kevinc@××××××××.org> wrote: |
3 |
|
4 |
|
5 |
> I'm working on setting up a CPU farm of diskless Gentoo based Linux |
6 |
> nodes. I'm using DHCPD to supply each machine with a unique |
7 |
> root-path, host-name, and fixed-address. |
8 |
> |
9 |
|
10 |
Again, you can try the Adelie Linux for SSI clusters: |
11 |
|
12 |
http://www.cerca.umontreal.ca/hpc/en/projects/adelie/index.html |
13 |
|
14 |
which do have support. |
15 |
|
16 |
> I've done this in the past, using a shared /usr subtree and a small |
17 |
> dedicated root subtree. Previously, all that was needed was a unique |
18 |
> hostname and an entry in /etc/fstab referencing the root drive. |
19 |
> |
20 |
> I'm trying to eliminate the need for those unique entries in the root |
21 |
> space. This will allow me greatly simplified support of the farm, |
22 |
> since Rsync could easily be used to resync all the remote root areas |
23 |
> from a common build area. Without the elimination, editing of |
24 |
> /etc/hostname and /etc/fstab is required after any syncronization with |
25 |
> the master image. |
26 |
> |
27 |
> /etc/hostname seemed easy. The '-H' option specified for dhcpcd in |
28 |
> /etc/conf.d/net is documented to accept the passed host-name from the |
29 |
> DHCP server. I presumed a 'rc-update del hostname boot' would |
30 |
> eliminate that script from at least complaining, and potentially from |
31 |
> overriding dhcpcd's effort to create /etc/hostname. I see that |
32 |
> /etc/runlevels/boot/modules depends on hostname - fortunetly my |
33 |
> diskless |
34 |
> kernel is compiled without modules, so I've eliminated that as well. |
35 |
> |
36 |
|
37 |
Well, we could (or rather your :P) try to get /etc/init.d/hostname to |
38 |
work with dhcpcd in setting the hostname. I am willing to add changes |
39 |
if it will work seamlessly with a non dhcpcd box .... |
40 |
|
41 |
> Root is a differnet issue. I can see from my logs that the diskless |
42 |
> machine mounts its proper root filesystem from the server. After a |
43 |
> diskless boot, a mount command shows root mounted from the right |
44 |
> location, but has it mounted rsize=4096,wsize=4096,ro. The "ro" is a |
45 |
> killer. |
46 |
> |
47 |
> The only solution I've spotted (reading |
48 |
> /usr/src/linux/Doc*/nfsroot.txt) is to specify a nfsroot= parameter on |
49 |
> the kernel command line. Testing with this showed initial promise, as |
50 |
> demonstrated by changing the default rsize and wsize to 8192. |
51 |
> However, the read-only status remains unchange, despite specifing an |
52 |
> "rw" option on the nfsroot= line. |
53 |
> |
54 |
|
55 |
Once again, have a look at how the guys of the Adelie project does it. |
56 |
|
57 |
> The only thing that appears to work is to specify a proper unique |
58 |
> entry in /etc/fstab. That, however, violates my design goal. |
59 |
> |
60 |
> Any suggestions? |
61 |
> |
62 |
> One note that spawned me to write this tomb to the -dev list is |
63 |
> something that doesn't seem quite right to me. /etc/init.d/checkroot |
64 |
> doesn't handle an nfs root file system well. Said script forces a |
65 |
> "fsck -a /", which fails for an nfs mounted root filesystem. I |
66 |
> wouldn't be opposed to simply "rc-update del checkroot boot" to get |
67 |
> around that, but |
68 |
> checkroot does more than just check the root file system. It also |
69 |
> mounts /proc, cleans up /etc/mtab, handles devfs, etc. Seems to me |
70 |
> that functionality should be split into a seperate script. |
71 |
> |
72 |
|
73 |
Not exactly ... It just populate /etc/mtab after / is mounted rw. The |
74 |
actual script that handles devfs, etc, are /sbin/rc ... Once again, |
75 |
I have a limited amount of pc 'resources' and do not use NFS myself. |
76 |
I am however prepared to add a *tested* fix to disable checking |
77 |
for a NFS rootfs. We could get it to also mount it rw if its NFS |
78 |
if you are willing to spent time .... |
79 |
|
80 |
|
81 |
Regards, |
82 |
|
83 |
-- |
84 |
|
85 |
Martin Schlemmer |
86 |
Gentoo Linux Developer, Desktop/System Team Developer |
87 |
Cape Town, South Africa |