ZFS Snapshots Not able to be accessed under .zfs/snapshot/name

dweimer dweimer at dweimer.net
Mon Sep 9 13:08:18 UTC 2013


On 08/16/2013 8:49 am, dweimer wrote:
> On 08/15/2013 10:00 am, dweimer wrote:
>> On 08/14/2013 9:43 pm, Shane Ambler wrote:
>>> On 14/08/2013 22:57, dweimer wrote:
>>>> I have a few systems running on ZFS with a backup script that 
>>>> creates
>>>> snapshots, then  backs up the .zfs/snapshot/name directory to make 
>>>> sure
>>>> open files are not missed.  This has been working great but all of 
>>>> the
>>>> sudden one of my systems has stopped working.  It takes the 
>>>> snapshots
>>>> fine, zfs list -t spnapshot shows the snapshots, but if you do an ls
>>>> command, on the .zfs/snapshot/ directory it returns not a directory.
>>>> 
>>>> part of the zfs list output:
>>>> 
>>>> NAME                        USED  AVAIL  REFER  MOUNTPOINT
>>>> zroot                      4.48G  29.7G    31K  none
>>>> zroot/ROOT                 2.92G  29.7G    31K  none
>>>> zroot/ROOT/91p5-20130812   2.92G  29.7G  2.92G  legacy
>>>> zroot/home                  144K  29.7G   122K  /home
>>>> 
>>>> part of the zfs list -t snapshot output:
>>>> 
>>>> NAME                                            USED  AVAIL  REFER
>>>> MOUNTPOINT
>>>> zroot/ROOT/91p5-20130812 at 91p5-20130812--bsnap   340K      -  2.92G  
>>>> -
>>>> zroot/home at home--bsnap                           22K      -   122K  
>>>> -
>>>> 
>>>> ls /.zfs/snapshot/91p5-20130812--bsnap/
>>>> Does work at the right now, since the last reboot, but wasn't always
>>>> working, this is my boot environment.
>>>> 
>>>> if I do ls /home/.zfs/snapshot/, result is:
>>>> ls: /home/.zfs/snapshot/: Not a directory
>>>> 
>>>> if I do ls /home/.zfs, result is:
>>>> ls: snapshot: Bad file descriptor
>>>> shares
>>>> 
>>>> I have tried zpool scrub zroot, no errors were found, if I reboot 
>>>> the
>>>> system I can get one good backup, then I start having problems.  
>>>> Anyone
>>>> else ever ran into this, any suggestions as to a fix?
>>>> 
>>>> System is running FreeBSD 9.1-RELEASE-p5 #1 r253764: Mon Jul 29 
>>>> 15:07:35
>>>> CDT 2013, zpool is running version 28, zfs is running version 5
>>>> 
>>> 
>>> 
>>> I can say I've had this problem. Not certain what fixed it. I do
>>> remember I decided to stop snapshoting if I couldn't access them and
>>> deleted existing snapshots. I later restarted the machine before I
>>> went back for another look and they were working.
>>> 
>>> So my guess is a restart without existing snapshots may be the key.
>>> 
>>> Now if only we could find out what started the issue so we can stop 
>>> it
>>> happening again.
>> 
>> I had actually rebooted it last night, prior to seeing this message, I
>> do know it didn't have any snapshots this time.  As I am booting from
>> ZFS using boot environments I may have had an older boot environment
>> still on the system the last time it was rebooted.  Backups ran great
>> last night after the reboot, and I was able to kick off my pre-backup
>> job and access all the snapshots today.  Hopefully it doesn't come
>> back, but if it does I will see if I can find anything else wrong.
>> 
>> FYI,
>> It didn't shutdown cleanly, so if this helps anyone find the issue,
>> this is from my system logs:
>> Aug 14 22:08:04 cblproxy1 kernel:
>> Aug 14 22:08:04 cblproxy1 kernel: Fatal trap 12: page fault while in 
>> kernel mode
>> Aug 14 22:08:04 cblproxy1 kernel: cpuid = 0; apic id = 00
>> Aug 14 22:08:04 cblproxy1 kernel: fault virtual address = 0xa8
>> Aug 14 22:08:04 cblproxy1 kernel: fault code            = supervisor
>> write data, page not present
>> Aug 14 22:08:04 cblproxy1 kernel: instruction pointer   =
>> 0x20:0xffffffff808b0562
>> Aug 14 22:08:04 cblproxy1 kernel: stack pointer         =
>> 0x28:0xffffff80002238f0
>> Aug 14 22:08:04 cblproxy1 kernel: frame pointer         =
>> 0x28:0xffffff8000223910
>> Aug 14 22:08:04 cblproxy1 kernel: code segment          = base 0x0,
>> limit 0xfffff, type 0x1b
>> Aug 14 22:08:04 cblproxy1 kernel: = DPL 0, pres 1, long 1, def32 0, 
>> gran 1
>> Aug 14 22:08:04 cblproxy1 kernel: processor eflags      = interrupt
>> enabled, resume, IOPL = 0
>> Aug 14 22:08:04 cblproxy1 kernel: current process               = 1 
>> (init)
>> Aug 14 22:08:04 cblproxy1 kernel: trap number           = 12
>> Aug 14 22:08:04 cblproxy1 kernel: panic: page fault
>> Aug 14 22:08:04 cblproxy1 kernel: cpuid = 0
>> Aug 14 22:08:04 cblproxy1 kernel: KDB: stack backtrace:
>> Aug 14 22:08:04 cblproxy1 kernel: #0 0xffffffff808ddaf0 at 
>> kdb_backtrace+0x60
>> Aug 14 22:08:04 cblproxy1 kernel: #1 0xffffffff808a951d at panic+0x1fd
>> Aug 14 22:08:04 cblproxy1 kernel: #2 0xffffffff80b81578 at 
>> trap_fatal+0x388
>> Aug 14 22:08:04 cblproxy1 kernel: #3 0xffffffff80b81836 at 
>> trap_pfault+0x2a6
>> Aug 14 22:08:04 cblproxy1 kernel: #4 0xffffffff80b80ea1 at trap+0x2a1
>> Aug 14 22:08:04 cblproxy1 kernel: #5 0xffffffff80b6c7b3 at 
>> calltrap+0x8
>> Aug 14 22:08:04 cblproxy1 kernel: #6 0xffffffff815276da at
>> zfsctl_umount_snapshots+0x8a
>> Aug 14 22:08:04 cblproxy1 kernel: #7 0xffffffff81536766 at 
>> zfs_umount+0x76
>> Aug 14 22:08:04 cblproxy1 kernel: #8 0xffffffff809340bc at 
>> dounmount+0x3cc
>> Aug 14 22:08:04 cblproxy1 kernel: #9 0xffffffff8093c101 at 
>> vfs_unmountall+0x71
>> Aug 14 22:08:04 cblproxy1 kernel: #10 0xffffffff808a8eae at 
>> kern_reboot+0x4ee
>> Aug 14 22:08:04 cblproxy1 kernel: #11 0xffffffff808a89c0 at 
>> kern_reboot+0
>> Aug 14 22:08:04 cblproxy1 kernel: #12 0xffffffff80b81dab at 
>> amd64_syscall+0x29b
>> Aug 14 22:08:04 cblproxy1 kernel: #13 0xffffffff80b6ca9b at 
>> Xfast_syscall+0xfb
> 
> Well its back, 3 of the 8 file systems I am taking snapshots of failed
> in last nights backups.
> 
> The only thing different on this system from all the 4 others I have
> running is that it has a second disk volume with a UFS file system.
> 
> Setup is 2 Disks, both setup with GPART:
> =>      34  83886013  da0  GPT  (40G)
>         34       256    1  boot0  (128k)
>        290  10485760    2  swap0  (5.0G)
>   10486050  73399997    3  zroot0  (35G)
> 
> =>      34  41942973  da1  GPT  (20G)
>         34  41942973    1  squid1  (20G)
> 
> I didn't want the Squid cache directory on ZFS, system is running on
> an ESX 4.1 server backed by iSCSI SAN.  I have 4 other servers running
> on  the same group of ESX servers and SAN, booting from ZFS without
> this problem.  Two of the other 4 are also running Squid but forward
> to this one so they are running without a local disk cache.

A quick update on this, in case anyone else runs into it, I did finally 
try on the 2nd of this month to delete my UFS volume, and create a new 
ZFS volume to replace it.  I recreated the Squid cache directories and 
let squid start over building up cache.  So far their hasn't been a 
noticeable impact on performance with the switch over, and the snapshot 
problem has not reoccurred since making the change.  Its only a week 
into running this way but the problem before started within 36-48 hours.

-- 
Thanks,
    Dean E. Weimer
    http://www.dweimer.net/


More information about the freebsd-questions mailing list