I've got problems with hard links when using the kernel-nfsd and
reiserfs. The nfs server gives e.g. the following error messages
Oct 25 08:59:09 hebb kernel: nfsd Security: sbin/init bad export.
Oct 25 08:59:10 hebb kernel: nfsd Security: bin/bash bad export.
and the client is not able to read the file.
This only happens, if the exported files on the server are hard linked
with other files -- so I reckon it has something to do with the hard
links (other potentially interesting details attached below: raid, lvm
..)
Furthermore, I did the same on another system using ext2-fs and
it worked perfectly (but without raid&lvm).
So, it might be the combination of hard links & knfsd & reiserfs, which
has a bug somewhere.
Do you know what to do??
Any help is appreciated!
Gunnar
PS: please CC me your answer.
Details:
I'm running an single CPU (Athlon) server with six disks -- five of
them in a software raid (level 5). On top of the raid runs LVM to
split-up the big partitions (30+30+250Gb). On each of the partitions
is reiserfs 3.6.25 file system (converted from 3.5.x). The server
runs a 2.4.10 kernel (originally a 2.4.5 kernel + reiserfs-quota-knfsd
patches; then patched up to 2.4.10).
The nfs-client runs the same kernel (with nfsroot option switched
on). The Root-fs of the client is on the server (on a
raid/lvm/reiserfs partition). When booting the client, if the server
uses hard links of the exported files, it does not find e.g. sbin/init
and booting the client fails. If there are no hard links everything
works.
I also tried the new 2.4.13 kernel (the original and also the 2.4.10
from before + three patches) on client and server. It worked a little
bit better: now the client comes up, but very soon I get the same
error messages for other essential files (ie. its not usable).
The directory structure of the server:
I have e.g. these directories (one for each client gauss, laplace,
poisson)
$$/gauss/
$$/laplace/
$$/poisson/
in each of them is a copy of a linux system (SuSE 7.1, without /usr
and /opt -- they are exported separately). The server exports
(ro,no_root_squash) each directory above to the particular client
only.
To save disk space I'd like to hard link the files in these
directories to each other. I created a new directory $$/generic,
copied the files to be hard linked and created hard-links from the
files in all other directories to the generic directory. After this
operation the clients do not boot anymore.
$$=/export/clients/7.1/
-- Gunnar R"atsch http://mlg.anu.edu.au/~raetsch Australian National University mailto:Gunnar.Raetsch@anu.edu.au - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/