See the email below from my sysadmin partner about this problem.
I setup a lookback for the snapshot and now gtar seem to be working. [443][r...@hertz]:~amanda/archive# /usr/sfw/bin/gtar --create --file /dev/null --numeric-owner --no-check-device --directory /zvol/AMANDABKUP/gauss/export/jumpstart --one-file-system --listed-incremental /var/amanda/gnutar-lists/hertz_export_jumpstart_0.new --sparse --ignore-failed-read --totals . Total bytes written: 153600 (150KiB, 296KiB/s) Robert > -----Original Message----- > From: Apache [mailto:apa...@math.purdue.edu] On Behalf Of J Chapman > Flack via RT > Sent: Tuesday, May 04, 2010 10:50 AM > Subject: [math.purdue.edu #25119] gtar failing to find cwd beneath .zfs > > > > > Tue May 04 10:50:27 2010: Request 25119 was acted upon. > Transaction: Ticket created by jfl...@math.purdue.edu > Queue: General > Subject: gtar failing to find cwd beneath .zfs > Owner: Nobody > Requestors: jfl...@math.purdue.edu > Status: open > Ticket <URL: > https://helpdesk.math.purdue.edu/Ticket/Display.html?id=25119 > > > > > Apparently under only some circumstances, gtar tries to use the > old algorithm for finding the cwd. That fails beneath .zfs which is > a sort of magical name that isn't there unless you're looking for it > exactly. > > But it must just be a special combination of options that makes > gtar try to do that, because in simple invocations it doesn't: > > hertz /homes % ls .z* # nobody here but us chickens... > ls: No match. > hertz /homes % cd .zfs # oh, you mean ME? > hertz .zfs % cd snapshot/TODAY/jflack > % gtar --create --file /dev/null bar # works fine > > Aha, it's the --listed-incremental option. This makes gtar want to > create the snar file with names and metadata of files it sees: > > % gtar --create --file /dev/null --listed-incremental=/tmp/snar bar > Segmentation fault > > The funny thing is, if I cd to ~ where it works... > > % cd ~ > % gtar --create --file /dev/null --listed-incremental=/tmp/snar bar > % > > ...and then look in /tmp/snar, it only contains relative paths... > ...so it STILL doesn't explain why gtar even wants to get the cwd in > that case, but it's clear from the truss that's what it's doing. > > One workaround might be to do a loopback mount of the desired > snapshot onto some other path that's not beneath .zfs, and do > the backup from there. > > -Chap > > > [259][ama...@hertz]:~/archive% /usr/sfw/bin/gtar --version > > > tar (GNU tar) 1.23 > > > Copyright (C) 2010 Free Software Foundation, Inc. > > > License GPLv3+: GNU GPL version 3 or later > > > <http://gnu.org/licenses/gpl.html>. > > > This is free software: you are free to change and redistribute it. > > > There is NO WARRANTY, to the extent permitted by law. > > > > > > Written by John Gilmore and Jay Fenlason. > > > > > > Even with the latest gtar version and --n0-check-device inserted I > > > still get the seg fault. > > > > > > > > > [118][r...@hertz]:src/amanda/amanda# truss /usr/sfw/bin/gtar -- > create - > > > -file /dev/null --numeric-owner --no-check-device --directory > > > /zvol/backup/gauss/.zfs/snapshot/BKUPTODAY/export/jumpstart --one- > file- > > > system --listed-incremental /var/amanda/gnutar- > > > lists/hertz_export_jumpstart_0.new --sparse --ignore-failed-read -- > > > totals . > > > execve("/usr/sfw/bin/gtar", 0x08047B0C, 0x08047B4C) argc = 15 > > > mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, > > > MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFF0000 > > > resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12 > > > resolvepath("/usr/sfw/bin/gtar", "/usr/sfw/bin/gtar", 1023) = 17 > > > sysconfig(_CONFIG_PAGESIZE) = 4096 > > > stat64("/usr/sfw/bin/gtar", 0x080478A0) = 0 > > > open("/var/ld/ld.config", O_RDONLY) Err#2 ENOENT > > > stat64("/usr/sfw/lib/librt.so.1", 0x08047140) Err#2 ENOENT > > > stat64("/lib/librt.so.1", 0x08047140) = 0 > > > resolvepath("/lib/librt.so.1", "/lib/librt.so.1", 1023) = 15 > > > open("/lib/librt.so.1", O_RDONLY) = 3 > > > mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, > 3, > > > 0) = 0xFEFB0000 > > > mmap(0x00010000, 94208, PROT_NONE, > > > MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEF90000 > > > mmap(0xFEF90000, 22982, PROT_READ|PROT_EXEC, > > > MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEF90000 > > > mmap(0xFEFA6000, 750, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 24576) = 0xFEFA6000 > > > munmap(0xFEF96000, 65536) = 0 > > > memcntl(0xFEF90000, 8548, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 > > > close(3) = 0 > > > stat64("/usr/sfw/lib/libnsl.so.1", 0x08047140) Err#2 ENOENT > > > stat64("/lib/libnsl.so.1", 0x08047140) = 0 > > > resolvepath("/lib/libnsl.so.1", "/lib/libnsl.so.1", 1023) = 16 > > > open("/lib/libnsl.so.1", O_RDONLY) = 3 > > > mmap(0xFEFB0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, > 3, > > > 0) = 0xFEFB0000 > > > mmap(0x00010000, 647168, PROT_NONE, > > > MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEEF0000 > > > mmap(0xFEEF0000, 525809, PROT_READ|PROT_EXEC, > > > MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEEF0000 > > > mmap(0xFEF81000, 19877, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 528384) = 0xFEF81000 > > > mmap(0xFEF86000, 30040, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEF86000 > > > munmap(0xFEF71000, 65536) = 0 > > > memcntl(0xFEEF0000, 57932, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 > > > close(3) = 0 > > > stat64("/usr/sfw/lib/libc.so.1", 0x08047140) Err#2 ENOENT > > > stat64("/lib/libc.so.1", 0x08047140) = 0 > > > resolvepath("/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14 > > > open("/lib/libc.so.1", O_RDONLY) = 3 > > > mmap(0xFEFB0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, > 3, > > > 0) = 0xFEFB0000 > > > mmap(0x00010000, 1208320, PROT_NONE, > > > MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEDC0000 > > > mmap(0xFEDC0000, 1099621, PROT_READ|PROT_EXEC, > > > MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEDC0000 > > > mmap(0xFEEDD000, 30183, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 1101824) = 0xFEEDD000 > > > mmap(0xFEEE5000, 4240, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEEE5000 > > > munmap(0xFEECD000, 65536) = 0 > > > memcntl(0xFEDC0000, 124080, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 > > > close(3) = 0 > > > stat64("/lib/libaio.so.1", 0x08047140) = 0 > > > resolvepath("/lib/libaio.so.1", "/lib/libaio.so.1", 1023) = 16 > > > open("/lib/libaio.so.1", O_RDONLY) = 3 > > > mmap(0xFEFB0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, > 3, > > > 0) = 0xFEFB0000 > > > mmap(0x00010000, 102400, PROT_NONE, > > > MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEDA0000 > > > mmap(0xFEDA0000, 28425, PROT_READ|PROT_EXEC, > > > MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEDA0000 > > > mmap(0xFEDB7000, 1378, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 28672) = 0xFEDB7000 > > > mmap(0xFEDB8000, 1600, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEDB8000 > > > munmap(0xFEDA7000, 65536) = 0 > > > mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, > > > MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFC0000 > > > memcntl(0xFEDA0000, 5332, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 > > > close(3) = 0 > > > stat64("/lib/libmd.so.1", 0x08047140) = 0 > > > resolvepath("/lib/libmd.so.1", "/lib/libmd.so.1", 1023) = 15 > > > open("/lib/libmd.so.1", O_RDONLY) = 3 > > > mmap(0xFEFB0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, > 3, > > > 0) = 0xFEFB0000 > > > mmap(0x00010000, 126976, PROT_NONE, > > > MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFED80000 > > > mmap(0xFED80000, 56424, PROT_READ|PROT_EXEC, > > > MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFED80000 > > > mmap(0xFED9E000, 552, PROT_READ|PROT_WRITE, > > > MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 57344) = 0xFED9E000 > > > munmap(0xFED8E000, 65536) = 0 > > > memcntl(0xFED80000, 1464, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 > > > close(3) = 0 > > > mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, > > > MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEED0000 > > > munmap(0xFEFB0000, 32768) = 0 > > > getcontext(0x08047710) > > > getrlimit(RLIMIT_STACK, 0x08047708) = 0 > > > getpid() = 29177 [29176] > > > lwp_private(0, 1, 0xFEED2A00) = 0x000001C3 > > > setustack(0xFEED2A60) > > > sysconfig(_CONFIG_SEM_VALUE_MAX) = 2147483647 > > > sigfillset(0xFEEE4DD0) = 0 > > > sysi86(SI86FPSTART, 0xFEEE5740, 0x0000133F, 0x00001F80) = > 0x00000001 > > > fcntl(0, F_GETFD, 0x08047BB4) = 0 > > > fcntl(1, F_GETFD, 0x08047BB4) = 0 > > > fcntl(2, F_GETFD, 0x08047BB4) = 0 > > > brk(0x080ADF00) = 0 > > > brk(0x080AFF00) = 0 > > > schedctl() = 0xFEFBD000 > > > sigaction(SIGPIPE, 0x08047A30, 0x08047AB0) = 0 > > > sigaction(SIGCLD, 0x08047A30, 0x08047AB0) = 0 > > > getprivimplinfo(0x08047270, 2076) = 0 > > > mmap(0x00010000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, > > > MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFED60000 > > > sysconfig(_CONFIG_NGROUPS) = 16 > > > zone_lookup("") = 0 > > > zone_getattr(0, ZONE_ATTR_PRIVSET, 0xFEED0288, 12) = 12 > > > getppriv(PRIV_EFFECTIVE, {ffffffffffffffffffffffff}) = 0 > > > setppriv(PRIV_SET, PRIV_EFFECTIVE, {fffffffffffdffffffffffff}) = 0 > > > brk(0x080AFF00) = 0 > > > brk(0x080B1F00) = 0 > > > sysconfig(_CONFIG_PAGESIZE) = 4096 > > > sysconfig(_CONFIG_PAGESIZE) = 4096 > > > brk(0x080B1F00) = 0 > > > brk(0x080B3F00) = 0 > > > creat64("/dev/null", 0666) = 3 > > > fstat64(3, 0x080AD328) = 0 > > > > lstat64("/zvol/backup/gauss/.zfs/snapshot/BKUPTODAY/export/jumpstart", > > > 0x08047950) = 0 > > > brk(0x080B3F00) = 0 > > > brk(0x080B5F00) = 0 > > > lstat64(".", 0x08047950) = 0 > > > open64("/var/amanda/gnutar-lists/hertz_export_jumpstart_0.new", > > > O_RDWR|O_CREAT, 0666) = 4 > > > fcntl(4, F_GETFD, 0x08047BB4) = 0 > > > open64(".", O_RDONLY) = 5 > > > dup(5) = 6 > > > close(6) = 0 > > > > chdir("/zvol/backup/gauss/.zfs/snapshot/BKUPTODAY/export/jumpstart") = > > > 0 > > > fstat64(4, 0x080478F0) = 0 > > > brk(0x080B5F00) = 0 > > > brk(0x080C5F00) = 0 > > > fstat64(4, 0x08047830) = 0 > > > ioctl(4, TCGETA, 0x080478C4) Err#25 ENOTTY > > > read(4, " G N U t a r - 1 . 2 3".., 69632) = 69237 > > > brk(0x080C5F00) = 0 > > > brk(0x080C7F00) = 0 > > > lstat64(".", 0x08047780) = 0 > > > lstat64("/", 0x08047780) = 0 > > > openat64(-3041965, "..", O_RDONLY) = 6 > > > fstat64(6, 0x08047780) = 0 > > > fcntl(6, F_SETFD, 0x00000001) = 0 > > > fstat64(6, 0x080476D0) = 0 > > > getdents64(6, 0xFEED4000, 8192) = 160 > > > fstatat64(6, "jumpstart", 0x08047780, 0x00001000) = 0 > > > openat64(6, "..", O_RDONLY) = 7 > > > fstat64(7, 0x08047780) = 0 > > > close(6) = 0 > > > fcntl(7, F_SETFD, 0x00000001) = 0 > > > fstat64(7, 0x080476D0) = 0 > > > getdents64(7, 0xFEED4000, 8192) = 136 > > > fstatat64(7, "export", 0x08047780, 0x00001000) = 0 > > > openat64(7, "..", O_RDONLY) = 6 > > > fstat64(6, 0x08047780) = 0 > > > close(7) = 0 > > > fcntl(6, F_SETFD, 0x00000001) = 0 > > > fstat64(6, 0x080476D0) = 0 > > > getdents64(6, 0xFEED4000, 8192) = 720 > > > fstatat64(6, "DAILY-201005020315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004280315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004211815", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004300315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004290315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201005040315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004270315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201005030315", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004201815", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004181815", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "DAILY-201004251830", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "BKUPTODAY", 0x08047780, 0x00001000) = 0 > > > openat64(6, "..", O_RDONLY) = 7 > > > fstat64(7, 0x08047780) = 0 > > > close(6) = 0 > > > fcntl(7, F_SETFD, 0x00000001) = 0 > > > fstat64(7, 0x080476D0) = 0 > > > getdents64(7, 0xFEED4000, 8192) = 80 > > > fstatat64(7, "snapshot", 0x08047780, 0x00001000) = 0 > > > openat64(7, "..", O_RDONLY) = 6 > > > fstat64(6, 0x08047780) = 0 > > > close(7) = 0 > > > fcntl(6, F_SETFD, 0x00000001) = 0 > > > fstat64(6, 0x080476D0) = 0 > > > getdents64(6, 0xFEED4000, 8192) = 136 > > > getdents64(6, 0xFEED4000, 8192) = 0 > > > llseek(6, 0, SEEK_CUR) = 0x1A0F2126 > > > llseek(6, 0, SEEK_SET) = 0 > > > getdents64(6, 0xFEED4000, 8192) = 136 > > > fstatat64(6, "rpoolbackup", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "root", 0x08047780, 0x00001000) = 0 > > > fstatat64(6, "export", 0x08047780, 0x00001000) = 0 > > > getdents64(6, 0xFEED4000, 8192) = 0 > > > close(6) = 0 > > > Incurred fault #6, FLTBOUNDS %pc = 0x0807DDA5 > > > siginfo: SIGSEGV SEGV_MAPERR addr=0x00000000 > > > Received signal #11, SIGSEGV [default] > > > siginfo: SIGSEGV SEGV_MAPERR addr=0x00000000 > > > > > > [119][r...@hertz]:src/amanda/amanda# > > > > >> > > -----Original Message----- > >> > > From: Chris Hoogendyk [mailto:hoogen...@bio.umass.edu] > >> > > Sent: Tuesday, May 04, 2010 9:49 AM > >> > > To: Gunnarsson, Gunnar > >> > > Cc: McGraw, Robert P; 'Dustin J. Mitchell'; 'amanda- > us...@amanda.org' > >> > > Subject: Re: SV: runtar error that I do not understand > >> > > > >> > > > >> > > That all depends on whether you are up on your patches. I went > and > >> > > checked my Solaris 10 system and found: > >> > > > >> > > # /usr/sfw/bin/gtar --version > >> > > > >> > > tar (GNU tar) 1.22 > >> > > Copyright (C) 2009 Free Software Foundation, Inc. > >> > > License GPLv3+: GNU GPL version 3 or later > >> > > <http://gnu.org/licenses/gpl.html>. > >> > > This is free software: you are free to change and > redistribute > > > it. > >> > > There is NO WARRANTY, to the extent permitted by law. > >> > > > >> > > Written by John Gilmore and Jay Fenlason. > >> > > > >> > > That is the gnutar release from 3/09, and the only newer one is > 1.23 > >> > > from 3/10. But, I had done an upgrade late last year (using > > > liveupdate > >> > > and the 5/09 release), and have also applied the latest > recommended > > > and > >> > > security patch bundles within the last few months. So, I have > >> > > > >> > > # more /etc/release > >> > > > >> > > Solaris 10 5/09 s10s_u7wos_08 SPARC > >> > > Copyright 2009 Sun Microsystems, Inc. All Rights > > > Reserved. > >> > > Use is subject to license terms. > >> > > Assembled 30 March 2009 > >> > > > >> > > > >> > > All of which means, check what your system actually has (and > keep it > > > up > >> > > to date). > >> > > > >> > > > >> > > --------------- > >> > > > >> > > Chris Hoogendyk > >> > > > >> > > - > >> > > O__ ---- Systems Administrator > >> > > c/ /'_ --- Biology & Geology Departments > >> > > (*) \(*) -- 140 Morrill Science Center > >> > > ~~~~~~~~~~ - University of Massachusetts, Amherst > >> > > > >> > > <hoogen...@bio.umass.edu> > >> > > > >> > > --------------- > >> > > > >> > > Erdös 4 > >> > > > >> > > > >> > > > >> > > Gunnarsson, Gunnar wrote: > >>> > > > Sun is delivering old versions of GNU tar: > >>> > > > > >>> > > > Written by John Gilmore and Jay Fenlason. > >>> > > > bash-3.00$ /usr/sfw/bin/gtar --version > >>> > > > tar (GNU tar) 1.14 > >>> > > > Copyright (C) 2004 Free Software Foundation, Inc. > >>> > > > This program comes with NO WARRANTY, to the extent permitted > by > > > law. > >>> > > > You may redistribute it under the terms of the GNU General > Public > >> > > License; > >>> > > > see the file named COPYING for details. > >>> > > > Written by John Gilmore and Jay Fenlason. > >>> > > > > >>> > > > You need version with --no-check-device in order to backup > > > snapshot > >> > > in zfs. So get the latest version of SMCtar > >>> > > > and it should work fine. > >>> > > > > >>> > > > bash-3.00$ /usr/local/bin/tar --version > >>> > > > tar (GNU tar) 1.20 > >>> > > > Copyright (C) 2008 Free Software Foundation, Inc. > >>> > > > License GPLv3+: GNU GPL version 3 or later > >> > > <http://gnu.org/licenses/gpl.html> > >>> > > > This is free software: you are free to change and > redistribute it. > >>> > > > There is NO WARRANTY, to the extent permitted by law. > >>> > > > > >>> > > > Best regards GG > >>> > > > > >>>> > > >> Dustin J. Mitchell > >>>> > > >> Sent: Monday, May 03, 2010 5:42 PM > >>>> > > >> To: McGraw, Robert P > >>>> > > >> Cc: amanda-users@amanda.org > >>>> > > >> Subject: Re: runtar error that I do not understand > >>>> > > >> > >>>> > > >> > >>>> > > >> On Mon, May 3, 2010 at 4:31 PM, McGraw, Robert P > >> > > <rmcg...@purdue.edu> > >>>> > > >> wrote: > >>>> > > >> > >>>>> > > >>> If I manually run the following gtar command I get a > segmentation > >>>>> > > >>> > >>>> > > >> fault > >>>> > > >> > >>>>> > > >>> /usr/sfw/bin/gtar --create > >>>>> > > >>> > >>>> > > >> Uh-oh .. time to open a Sun^WOracle support case? It looks > like a > >> > > bug > >>>> > > >> either in ZFS or GNU Tar.. > >>>> > > >> > >>>> > > >> Dustin > >>>> > > >> > >>>> > > >> -- > >>>> > > >> Open Source Storage Engineer > >>>> > > >> http://www.zmanda.com > >>>> > > >> > >>> > > > > >>> > > > [McGraw, Robert P] > >>> > > > > >>> > > > Have you every tried star. I though I would give it a shot > and see > > > if > >> > > it work ok at least until I can get the GNU tar working. > >>> > > > > >>> > > > Thanks > >>> > > > > >>> > > > Robert > >>> > > > > >>> > > > > >>> > > > > >>> > > > > >> > > > >> > > -- > >> > > > >> > > > > >