Cannot mount a nfs share after doing a snapshot
Greg Byshenk
freebsd at byshenk.net
Sun Jan 6 07:04:25 PST 2008
On Sat, Jan 05, 2008 at 11:28:31PM +0100, Jose Garcia Juanino wrote:
> 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 /
Is the problem that you are trying to mount your snapshot on top of the /
directory? I use snapshots, but have never tried to do this, and can
imagine that there might be a problem, since the snapshot is itself a
snapshot of a filesystem (different than the actual root filesystem).
That would explain the error:
> Jan 5 22:47:03 gauss mountd[542]: can't delete exports for /: Cross-device link
What happens if you create a directory and mount your snapshot there:
mkdir /snapshotmount
mount -u -o snapshot /.snap/now /snapshotmount
If this works, then you may need a separate exports line for /snapshotmount.
If this fails, does it work if you use the more roundabout mount? That is
mdconfig -a -t vnode -f /.snapn/now -u 4
mount -r /dev/md4 /snapshotmount
-greg
> 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
--
greg byshenk - gbyshenk at byshenk.net - Leiden, NL
More information about the freebsd-stable
mailing list