Cannot mount a nfs share after doing a snapshot

Jose Garcia Juanino jjuanino at gmail.com
Sat Jan 5 14:57:20 PST 2008


Hello

I have a 7.0-PRERELEASE i386 system with a nfs server, with an unique export
line in /etc/exports file:

/ -maproot=root -network 192.168.1.0 -mask 255.255.255.0

After a reboot, I have no problem mounting this nfs share from a nfs client.
But after issuing the following command on the server:

# mount -u -o snapshot /.snap/now /

the syslog shows:

Jan  5 22:47:03 gauss mountd[542]: can't delete exports for /: Cross-device link
Jan  5 22:47:03 gauss mountd[542]: can't export /
Jan  5 22:47:03 gauss mountd[542]: bad exports list line / -maproot

and I cannot mount this nfs share from a client anymore. The client
complains with a "[udp] gauss:/: Permission denied" error message.

Some tips about this weird problem:

1) On a 6.2-RELEASE nfs server does not happen (or I am not been able to
   reproduce it)

2) It looks like it is not platform dependent, as on a 7.0-PRERELEASE
   sparc64 nfs server I get exactly the same result.

3) If I issue the mksnap_ffs command to make the snapshot, I get no error
   messages from syslog and I can mount the nfs share from any nfs client.

4) If the nfs server is a sparc64 the response of the nfs client is
   "[udp] riemann:/: RPCPROG_MNT: RPC: Can't decode result" (after issuing
   the  mount -u -o snapshot /.snap/now / command on the server, of
   course).

I have a custom kernel on the i386 nfs server. The output of

# config -x /boot/kernel/kernel

is:

#############################
options CONFIG_AUTOGENERATED
ident   MK2007Nov01
machine i386
cpu     I686_CPU
options CONSPEED=115200
options ATA_STATIC_ID
options AUDIT
options STOP_NMI
options ADAPTIVE_GIANT
options KBD_INSTALL_CDEV
options _KPOSIX_PRIORITY_SCHEDULING
options SYSVSEM
options SYSVMSG
options SYSVSHM
options KTRACE
options SCSI_DELAY=2000
options COMPAT_FREEBSD6
options COMPAT_FREEBSD5
options COMPAT_FREEBSD4
options COMPAT_43TTY
options GEOM_LABEL
options GEOM_PART_GPT
options PSEUDOFS
options PROCFS
options CD9660
options MSDOSFS
options NFS_ROOT
options NFSSERVER
options NFSCLIENT
options MD_ROOT
options UFS_DIRHASH
options UFS_GJOURNAL
options UFS_ACL
options SOFTUPDATES
options FFS
options INET6
options SCTP
options INET
options PREEMPTION
options SCHED_4BSD
options INCLUDE_CONFIG_FILE
options KSE
options GEOM_MBR
options GEOM_BSD
options ISAPNP
device  isa
device  npx
device  mem
device  io
device  uart_ns8250
device  apic
device  cpufreq
device  pci
device  fdc
device  ata
device  atadisk
device  atapicd
device  atapifd
device  scbus
device  ch
device  da
device  sa
device  cd
device  pass
device  ses
device  atapicam
device  atkbdc
device  atkbd
device  kbdmux
device  psm
device  vga
device  splash
device  sc
device  apm
device  pmtimer
device  uart
device  sio
device  miibus
device  rl
device  loop
device  random
device  ether
device  ppp
device  tun
device  pty
device  firmware
device  md
device  gif
device  faith
device  bpf
device  uhci
device  usb
device  ugen
device  uhid
device  umass
device  smbus
device  viapm
device  smb
device  iicbus
device  iicbb
device  ic
device  iic
device  iicsmb
#############################

The dmesg -a output is:

#############################

Copyright (c) 1992-2008 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 7.0-PRERELEASE #0: Sun Dec 30 20:10:53 CET 2007
    root at gauss.sanabria.es:/usr/obj/usr/src/sys/MK2007Nov01
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel Pentium III (1002.28-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x68a  Stepping = 10
  Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  = 1342111744 (1279 MB)
avail memory = 1304973312 (1244 MB)
kbd1 at kbdmux0
cpu0 on motherboard
apm0: <APM BIOS> on motherboard
apm0: found APM BIOS v1.2, connected at v1.2
pcib0: <Host to PCI bridge> pcibus 0 on motherboard
pir0: <PCI Interrupt Routing Table: 8 Entries> on motherboard
pci0: <PCI bus> on pcib0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <VIA 82C596B UDMA66 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xd000-0xd00f at device 7.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci0
ata1: [ITHREAD]
viapropm0: <VIA VT82C596A Power Management Unit> port 0x5000-0x500f at device 7.3 on pci0
smbus0: <System Management Bus> on viapropm0
smb0: <SMBus generic I/O> on smbus0
vgapci0: <VGA-compatible display> mem 0xdc000000-0xdfffffff irq 12 at device 15.0 on pci0
rl0: <RealTek 8139 10/100BaseTX> port 0xd800-0xd8ff mem 0xe1000000-0xe10000ff irq 11 at device 18.0 on pci0
miibus0: <MII bus> on rl0
rlphy0: <RealTek internal media interface> PHY 0 on miibus0
rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl0: Ethernet address: 00:50:fc:f7:70:0a
rl0: [ITHREAD]
pci0: <multimedia, audio> at device 19.0 (no driver attached)
pci0: <input device> at device 19.1 (no driver attached)
pmtimer0 on isa0
orm0: <ISA Option ROM> at iomem 0xc0000-0xc7fff pnpid ORM0000 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
fdc0: <Enhanced floppy controller> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: [FILTER]
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A, console
sio0: [FILTER]
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sio1: [FILTER]
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
unknown: <PNP0303> can't assign resources (port)
unknown: <PNP0c01> can't assign resources (memory)
unknown: <PNP0a03> can't assign resources (port)
unknown: <PNP0501> can't assign resources (port)
unknown: <PNP0700> can't assign resources (port)
unknown: <PNP0501> can't assign resources (port)
WARNING: ZFS is considered to be an experimental feature in FreeBSD.
Timecounters tick every 1.000 msec
ZFS filesystem version 6
ZFS storage ad0: 38166MB <Seagate ST340014A 3.06> at ata0-master UDMA66
pool version 6
ad2: 57241MB <Seagate ST360020A 3.39> at ata1-master UDMA66
acd0: DVDR <HL-DT-ST DVDRAM GSA-4163B/A104> at ata1-slave UDMA33
acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 sks=0x40 0x00 0x01
cd0 at ata1 bus 0 target 1 lun 0
cd0: <HL-DT-ST DVDRAM GSA-4163B A104> Removable CD-ROM SCSI-0 device 
cd0: 33.000MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present
Trying to mount root from ufs:/dev/ad0s1d
Loading configuration files.
Entropy harvesting:
 interrupts
 ethernet
 point_to_point
 kickstart
.
swapon: adding /dev/ad0s1b as swap device
Fast boot: skipping disk checks.
Setting hostuuid: 1e6dbcf7-8aad-11dc-a5e0-0050fcf7700a.
Setting hostid: 0x86fbd995.
Mounting local file systems:
.
Setting hostname: gauss.sanabria.es.
net.inet6.ip6.auto_linklocal: 
1
 -> 
0

kern.geom.debugflags: 
0
 -> 
16

kern.ipc.shmmax: 
33554432
 -> 
67108864

kern.ipc.shmall: 
8192
 -> 
32768

kern.coredump: 
1
 -> 
0

vfs.usermount: 
0
 -> 
1

kern.ipc.shm_allow_removed: 
0
 -> 
1

vfs.nfs.iodmin: 
0
 -> 
4

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 
	inet6 ::1 prefixlen 128 
	inet 127.0.0.1 netmask 0xff000000 
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=8<VLAN_MTU>
	ether 00:50:fc:f7:70:0a
	inet 192.168.1.4 netmask 0xffffff00 broadcast 192.168.1.255
	media: Ethernet autoselect (none)
	status: no carrier
add net default: gateway 192.168.1.1
add net 192.168.57.0: gateway 192.168.1.5
add net 10.0.0.0: gateway 192.168.1.5
Additional routing options:
.
Starting devd.
Additional IP options:
.
Mounting NFS file systems:
.
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat /usr/local/lib/compat/pkg /usr/local/lib/gcc/i386-portbld-freebsd7.0/3.4.6 /usr/local/lib/pth /usr/local/lib/zsh
a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout
Creating and/or trimming log files:
.
Starting syslogd.
Initial i386 initialization:
.
Additional ABI support:
.
Setting date via ntp.
 5 Jan 22:41:49 ntpdate[496]: step time server 212.9.75.245 offset 0.950467 sec
Starting rpcbind.
NFS access cache time=60
Clearing /tmp (X related).
Starting mountd.
Starting nfsd.
Starting statd.
Starting lockd.
Starting xinetd.
Removing stale Samba tdb files: 
.
.
.
.
.
.
.
.
 done
Starting nmbd.
Starting smbd.
Starting local daemons:
.
Updating motd
.
Mounting late file systems:
.
Starting ntpd.
postfix/postfix-script: starting the Postfix mail system
Starting distccd.
Performing sanity check on apache22 configuration:
Syntax OK
Starting apache22.
Starting anacron.
Configuring syscons:
 keymap
 keyrate
 font8x16
 font8x14
 font8x8
 blanktime
.
Starting sshd.
Starting cron.
Local package initialization:
#############################



Also, my /etc/src.conf used to build the world:


#############################
WITHOUT_ACPI=1
WITHOUT_ASSERT_DEBUG=1
WITHOUT_ATM=1
WITHOUT_AUDIT=1
WITHOUT_AUTHPF=1
WITHOUT_BIND_DNSSEC=1
WITHOUT_BIND_ETC=1
WITHOUT_BIND_LIBS_LWRES=1
WITHOUT_BIND_MTREE=1
WITHOUT_BIND_NAMED=1
WITHOUT_BLUETOOTH=1
WITHOUT_I4B=1
WITHOUT_IPFILTER=1
WITHOUT_IPX=1
WITHOUT_KERBEROS=1
WITHOUT_LPR=1
WITHOUT_NIS=1
WITHOUT_PF=1
WITHOUT_PROFILE=1
WITHOUT_SENDMAIL=1
WITHOUT_SHAREDOCS=1
#############################


The /etc/make.conf file:

#############################
CPUTYPE?=pentium3
MODULES_OVERRIDE=   linux if_tap sound/driver/emu10k1  syscons/green \
                    linprocfs linsysfs  smbfs ntfs ext2fs libiconv \
                    libmchain aio if_bridge vesa \
                    cd9660_iconv udf_iconv msdosfs_iconv ntfs_iconv \
                    zfs bridgestp
BOOT_COMCONSOLE_PORT=   0x3F8
BOOT_COMCONSOLE_SPEED=  115200
PERL_VER=5.8.8
PERL_VERSION=5.8.8
#############################



Regards
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20080105/2438b8e4/attachment.pgp


More information about the freebsd-stable mailing list