2000-12-21 19:08:24

by John Covici

[permalink] [raw]
Subject: strange nfs behavior in 2.2.18 and 2.4.0-test12

Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
kernels.

What is happening is that when the machine boots up and exports the
directories for nfs, it complains that

ccs2:/ invalid argument .

The exports entry is

/ ccs2(rw,no_root_squash)

Now in Kernel 2.2.18, if I stop and restart the nfs daemons, all is
OK, the invalid argument goes away, but in 2.4.0 I cannot get this to
work at all and so I cannot mount nfs from a client on the ccs2 box.
I am using the utilities 0.2.1-4 from the Debian distribution if that
makes any difference. I did an strace once on exportfs and it was
having trouble with the call to nfsservctl which returns invalid argument.


Any assistance would be appreciated.

--
John Covici
[email protected]


2000-12-21 19:32:49

by Charles Wilkins

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

I can confirm this problem exists in Mandrake-7.2 as well with kernel
2.2.17-21.

----- Original Message -----
From: "John Covici" <[email protected]>
To: <[email protected]>
Sent: Thursday, December 21, 2000 1:37 PM
Subject: strange nfs behavior in 2.2.18 and 2.4.0-test12


> Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
> kernels.
>
> What is happening is that when the machine boots up and exports the
> directories for nfs, it complains that
>
> ccs2:/ invalid argument .
>
> The exports entry is
>
> / ccs2(rw,no_root_squash)
>
> Now in Kernel 2.2.18, if I stop and restart the nfs daemons, all is
> OK, the invalid argument goes away, but in 2.4.0 I cannot get this to
> work at all and so I cannot mount nfs from a client on the ccs2 box.
> I am using the utilities 0.2.1-4 from the Debian distribution if that
> makes any difference. I did an strace once on exportfs and it was
> having trouble with the call to nfsservctl which returns invalid argument.
>
>
> Any assistance would be appreciated.
>
> --
> John Covici
> [email protected]
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> Please read the FAQ at http://www.tux.org/lkml/
>

2000-12-21 22:45:53

by NeilBrown

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

On Thursday December 21, [email protected] wrote:
> Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
> kernels.
>
> What is happening is that when the machine boots up and exports the
> directories for nfs, it complains that
>
> ccs2:/ invalid argument .
>
> The exports entry is
>
> / ccs2(rw,no_root_squash)

Is there another export entry that exports another part of the same
file system to the same client? If so, that is your problem.
You cannot export two different directories on the same filesystem to
the same client if one is an ancestor of the other (because exporting
a directory is really exporting the directory and all descendants on
that filesystem, and so exporting a directory and a subdirectory is
effectively exporting the subdirectory twice with potentially
different flags).

NeilBrown

>
> Now in Kernel 2.2.18, if I stop and restart the nfs daemons, all is
> OK, the invalid argument goes away, but in 2.4.0 I cannot get this to
> work at all and so I cannot mount nfs from a client on the ccs2 box.
> I am using the utilities 0.2.1-4 from the Debian distribution if that
> makes any difference. I did an strace once on exportfs and it was
> having trouble with the call to nfsservctl which returns invalid argument.
>
>
> Any assistance would be appreciated.
>
> --
> John Covici
> [email protected]
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> Please read the FAQ at http://www.tux.org/lkml/

2000-12-21 23:47:17

by John Covici

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

On Fri, 22 Dec 2000, Neil Brown wrote:

> On Thursday December 21, [email protected] wrote:
> > Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
> > kernels.
> >
> > What is happening is that when the machine boots up and exports the
> > directories for nfs, it complains that
> >
> > ccs2:/ invalid argument .
> >
> > The exports entry is
> >
> > / ccs2(rw,no_root_squash)
>
> Is there another export entry that exports another part of the same
> file system to the same client? If so, that is your problem.

Well I do want to export the mount points under the file system, for
instance I have a partition mounted as /usr and so I have an entry
such as
/usr ccs2(rw,no_root_squash)

in my exports list. Is there any other way to get this behaviour to
work?

> You cannot export two different directories on the same filesystem to
> the same client if one is an ancestor of the other (because exporting
> a directory is really exporting the directory and all descendants on
> that filesystem, and so exporting a directory and a subdirectory is
> effectively exporting the subdirectory twice with potentially
> different flags).
>
> NeilBrown
>
> >
> > Now in Kernel 2.2.18, if I stop and restart the nfs daemons, all is
> > OK, the invalid argument goes away, but in 2.4.0 I cannot get this to
> > work at all and so I cannot mount nfs from a client on the ccs2 box.
> > I am using the utilities 0.2.1-4 from the Debian distribution if that
> > makes any difference. I did an strace once on exportfs and it was
> > having trouble with the call to nfsservctl which returns invalid argument.
> >
> >
> > Any assistance would be appreciated.
> >
> > --
> > John Covici
> > [email protected]
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to [email protected]
> > Please read the FAQ at http://www.tux.org/lkml/
>

--
John Covici
[email protected]

2000-12-21 23:52:19

by NeilBrown

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

On Thursday December 21, [email protected] wrote:
> On Fri, 22 Dec 2000, Neil Brown wrote:
>
> > On Thursday December 21, [email protected] wrote:
> > > Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
> > > kernels.
> > >
> > > What is happening is that when the machine boots up and exports the
> > > directories for nfs, it complains that
> > >
> > > ccs2:/ invalid argument .
> > >
> > > The exports entry is
> > >
> > > / ccs2(rw,no_root_squash)
> >
> > Is there another export entry that exports another part of the same
> > file system to the same client? If so, that is your problem.
>
> Well I do want to export the mount points under the file system, for
> instance I have a partition mounted as /usr and so I have an entry
> such as
> /usr ccs2(rw,no_root_squash)
>
> in my exports list. Is there any other way to get this behaviour to
> work?

Sounds like what you are doing is OK.
If you could send complete /etc/fstab and /etc/exports, that might
help to isolate the problem.

NeilBrown

2000-12-22 00:06:30

by John Covici

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

Here is my /etc/exports

/ ccs2(rw,no_root_squash)
/usr ccs2(rw,no_root_squash)
/usr/src ccs2(rw,no_root_squash)
/home ccs2(rw,no_root_squash)
/hard1 ccs2(rw,no_root_squash)
/hard2 ccs2(rw,no_root_squash)
/hard3 ccs2(rw,no_root_squash)
/hard4 ccs2(rw,no_root_squash)
/usr/bbs ccs2(rw,no_root_squash)
#


Here is the fstab file.

# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/hda2 / ext2 defaults,errors=remount-ro 1 1
/dev/hdc2 none swap sw 0 0
/dev/hdc4 none swap sw 0 0
/dev/hdb7 none swap sw 0 0
proc /proc proc defaults 0 0
/dev/fd0 /floppy auto defaults,user,noauto 0 0
/dev/cdrom /cdrom iso9660 defaults,ro,user,noauto 0 0
/dev/hdc3 /usr ext2 rw 1 2
/dev/hdb6 /usr/bbs ext2 rw 1 2

/dev/hda3 /usr/src ext2 rw 1 2
/dev/hda4 /home ext2 rw 1 3

and here are mounts executed out of /etc/rc.local

mount -t vfat /dev/hdb1 /hard2
mount -t vfat /dev/hdb5 /hard4
mount -t vfat /dev/hdc1 /hard3
mount -t vfat /dev/hda1 /hard1



On Fri, 22 Dec 2000, Neil Brown wrote:

> On Thursday December 21, [email protected] wrote:
> > On Fri, 22 Dec 2000, Neil Brown wrote:
> >
> > > On Thursday December 21, [email protected] wrote:
> > > > Hi. I am having strange nfs problems in both my 2.x and 2.4.0-test12
> > > > kernels.
> > > >
> > > > What is happening is that when the machine boots up and exports the
> > > > directories for nfs, it complains that
> > > >
> > > > ccs2:/ invalid argument .
> > > >
> > > > The exports entry is
> > > >
> > > > / ccs2(rw,no_root_squash)
> > >
> > > Is there another export entry that exports another part of the same
> > > file system to the same client? If so, that is your problem.
> >
> > Well I do want to export the mount points under the file system, for
> > instance I have a partition mounted as /usr and so I have an entry
> > such as
> > /usr ccs2(rw,no_root_squash)
> >
> > in my exports list. Is there any other way to get this behaviour to
> > work?
>
> Sounds like what you are doing is OK.
> If you could send complete /etc/fstab and /etc/exports, that might
> help to isolate the problem.
>
> NeilBrown
>

--
John Covici
[email protected]

2000-12-22 00:46:31

by Andreas Dilger

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

John Covici writes:
> Here is my /etc/exports
>
> / ccs2(rw,no_root_squash)
> /usr ccs2(rw,no_root_squash)
> /usr/src ccs2(rw,no_root_squash)
> /home ccs2(rw,no_root_squash)
> /hard1 ccs2(rw,no_root_squash)
> /hard2 ccs2(rw,no_root_squash)
> /hard3 ccs2(rw,no_root_squash)
> /hard4 ccs2(rw,no_root_squash)
> /usr/bbs ccs2(rw,no_root_squash)

According to your fstab, these are all separate devices, so they should
export OK. You trust this "ccs2" machine a lot, however... Exporting
root with no_root_squash is a big security hole.

> # /etc/fstab: static file system information.
> #
> # <file system> <mount point> <type> <options> <dump> <pass>
> /dev/hda2 / ext2 defaults,errors=remount-ro 1 1
> /dev/hdc2 none swap sw 0 0
> /dev/hdc4 none swap sw 0 0

Having two swaps configured like this on the same disk is a net performance
loss. If anything, you should set one of them to have a lower priority
(via pri=), so that it will only be used if the first one is full.

> /dev/hdb7 none swap sw 0 0
> proc /proc proc defaults 0 0
> /dev/fd0 /floppy auto defaults,user,noauto 0 0
> /dev/cdrom /cdrom iso9660 defaults,ro,user,noauto 0 0
> /dev/hdc3 /usr ext2 rw 1 2
> /dev/hdb6 /usr/bbs ext2 rw 1 2
> /dev/hda3 /usr/src ext2 rw 1 2
> /dev/hda4 /home ext2 rw 1 3
>
> and here are mounts executed out of /etc/rc.local
>
> mount -t vfat /dev/hdb1 /hard2
> mount -t vfat /dev/hdb5 /hard4
> mount -t vfat /dev/hdc1 /hard3
> mount -t vfat /dev/hda1 /hard1

Out of curiosity, why not just put them into /etc/fstab?

Cheers, Andreas
--
Andreas Dilger \ "If a man ate a pound of pasta and a pound of antipasto,
\ would they cancel out, leaving him still hungry?"
http://www-mddsp.enel.ucalgary.ca/People/adilger/ -- Dogbert

2000-12-22 01:14:14

by John Covici

[permalink] [raw]
Subject: Re: strange nfs behavior in 2.2.18 and 2.4.0-test12

On Thu, 21 Dec 2000, Andreas Dilger wrote:

> John Covici writes:
> > Here is my /etc/exports
> >
> > / ccs2(rw,no_root_squash)
> > /usr ccs2(rw,no_root_squash)
> > /usr/src ccs2(rw,no_root_squash)
> > /home ccs2(rw,no_root_squash)
> > /hard1 ccs2(rw,no_root_squash)
> > /hard2 ccs2(rw,no_root_squash)
> > /hard3 ccs2(rw,no_root_squash)
> > /hard4 ccs2(rw,no_root_squash)
> > /usr/bbs ccs2(rw,no_root_squash)
>
> According to your fstab, these are all separate devices, so they should
> export OK. You trust this "ccs2" machine a lot, however... Exporting
> root with no_root_squash is a big security hole.

Yup, I do.

>
> > # /etc/fstab: static file system information.
> > #
> > # <file system> <mount point> <type> <options> <dump> <pass>
> > /dev/hda2 / ext2 defaults,errors=remount-ro 1 1
> > /dev/hdc2 none swap sw 0 0
> > /dev/hdc4 none swap sw 0 0
>
> Having two swaps configured like this on the same disk is a net performance
> loss. If anything, you should set one of them to have a lower priority
> (via pri=), so that it will only be used if the first one is full.

Thanks, I'll check it out.

>
> > /dev/hdb7 none swap sw 0 0
> > proc /proc proc defaults 0 0
> > /dev/fd0 /floppy auto defaults,user,noauto 0 0
> > /dev/cdrom /cdrom iso9660 defaults,ro,user,noauto 0 0
> > /dev/hdc3 /usr ext2 rw 1 2
> > /dev/hdb6 /usr/bbs ext2 rw 1 2
> > /dev/hda3 /usr/src ext2 rw 1 2
> > /dev/hda4 /home ext2 rw 1 3
> >
> > and here are mounts executed out of /etc/rc.local
> >
> > mount -t vfat /dev/hdb1 /hard2
> > mount -t vfat /dev/hdb5 /hard4
> > mount -t vfat /dev/hdc1 /hard3
> > mount -t vfat /dev/hda1 /hard1
>
> Out of curiosity, why not just put them into /etc/fstab?

I tried this and I can't remember, but for somereason it didn't work.


--
John Covici
[email protected]