> Ray Clark <webcl...@rochester.rr.com> wrote: > >> Joerg, Thanks. As you (of all people) know, this area is quite a >> quagmire. <snip>
> Be careful! Sun tar creates non standard and thus non portable archives > wich -E > Only star can read them..... > >> My next problem is that I want to do an exhaustive file compare >> afterwards, and diff is not large-file aware. > > This is what star implements > >> I always wonder if or how these applications that run across every OS >> known to man such as star can possibly be able to have the right code to >> work around the idiosyncrasies and exploit the capabilities of all of >> those OS's. Should I consider star for the compare? For the copy? >> (Recognizing that it cannot do the ACLs, but I don't have those). > > Star of course supports ACLs. Star does not yet support ZFS ACLs and this > is just a result of the fact that Sun did implement the same sort of > design bugs > in the first attempt to suport ACLs in ZFS. Future star versions will > support ZFS ACLs as well. > > Jörg I use star a great deal, daily in fact. I have two versions that I am using because one of them seems to mysteriously create ACL's when I perform a copy from one directory to another. The two versions that I have are : # /opt/csw/bin/star --version star: star 1.5 (i386-pc-solaris2.8) Options: acl find remote Copyright (C) 1985, 88-90, 92-96, 98, 99, 2000-2009 J�g Schilling This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # /opt/schily/bin/star --version star: star 1.5a89 (i386-pc-solaris2.8) Options: acl find remote Copyright (C) 1985, 88-90, 92-96, 98, 99, 2000-2008 J�g Schilling This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. One of them is built by you ( 1.5 ) and the other by me ( 1.5a89 ) with smake and Studio 11. Recently I had to copy a large collection of files from one dir to another where the source was on ZFS and the destination was an NFSv4 share. The end result had ACLs in it that should not be there : # ls -lap total 94 drwxr-xr-x 6 16411 csw 6 Sep 29 00:51 ./ drwxr-xr-x 22 16411 csw 38 Sep 25 10:51 ../ drwxr-xr-x 5 16411 csw 12 Sep 29 02:32 gcc-4.3.4-SunOS_5.10-corert/ drwxr-xr-x 5 16411 csw 12 Sep 29 01:20 gcc-4.3.4-SunOS_5.10-g++rt/ drwxr-xr-x+ 5 16411 csw 19 Sep 29 03:50 gcc-4.3.4_SunOS_5.10-pkg/ drwxr-xr-x+ 22 root root 31 Sep 24 20:58 gcc-4.3.4_SunOS_5.10-release/ This seems impossible but this is what I see : # getfacl gcc-4.3.4_SunOS_5.10-pkg File system doesn't support aclent_t style ACL's. See acl(5) for more information on Solaris ACL support. The source dir looked like this : $ ls -ladE gcc-4.3.4_SunOS_5.10-pkg drwxr-xr-x 3 root root 5 2009-09-25 10:49:46.081206911 +0000 gcc-4.3.4_SunOS_5.10-pkg The output at the other end of a copy with star looks like this : # ls -lVdE gcc-4.3.4_SunOS_5.10-pkg drwxr-xr-x+ 5 16411 csw 19 2009-09-29 03:50:03.038056700 +0000 gcc-4.3.4_SunOS_5.10-pkg owner@:-----DaA--cC-s:------:allow owner@:--------------:------:deny group@:------a---c--s:------:allow group@:-----D-A---C--:------:deny everyone@:------a---c--s:------:allow everyone@:-----D-A---C--:------:deny owner@:--------------:------:deny owner@:rwxp---A-W-Co-:------:allow group@:-w-p----------:------:deny group@:r-x-----------:------:allow everyone@:-w-p---A-W-Co-:------:deny everyone@:r-x---a-R-c--s:------:allow Both the source and destination were on ZFS but the destination was a NFS mount on the host that performed the copy. The command was very typical : /opt/csw/bin/star -copy -p -acl -sparse -dump -C src_dir1 . dest_dir I am still baffled by the apparent ACL on a dir entry within a ZFS filesystem when the source never had ACLs at all. What I see is this : $ $HOME/bin/star_1.5a89 --version star: star 1.5a89 (i386-pc-solaris2.8) Options: acl find remote Copyright (C) 1985, 88-90, 92-96, 98, 99, 2000-2008 J�g Schilling This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ $ mkdir /home/dclarke/test/destination $ pwd /build/dclarke $ ls -ladin gcc-4.3.4_SunOS_5.10-release 509336 drwxr-xr-x 22 16411 101 31 Sep 25 11:40 gcc-4.3.4_SunOS_5.10-release $ $HOME/bin/star_1.5a89 -copy -p -acl -sparse -dump -time -fs=96m -fifostats -C /build/dclarke gcc-4.3.4_SunOS_5.10-release /home/dclarke/test/destination gcc-4.3.4_SunOS_5.10-release/configure.lineno is sparse gcc-4.3.4_SunOS_5.10-release/libiberty/hashtab.o is sparse gcc-4.3.4_SunOS_5.10-release/libiberty/strverscmp.o is sparse gcc-4.3.4_SunOS_5.10-release/libiberty/objalloc.o is sparse gcc-4.3.4_SunOS_5.10-release/libiberty/cplus-dem.o is sparse gcc-4.3.4_SunOS_5.10-release/libiberty/cp-demint.o is sparse . . . gcc-4.3.4_SunOS_5.10-release/prev-libiberty/vasprintf.o is sparse /home/dclarke/bin/star_1.5a89: fifo had 57001 puts 55368 gets. /home/dclarke/bin/star_1.5a89: fifo was 2 times empty and 33 times full. /home/dclarke/bin/star_1.5a89: fifo held 100669440 bytes max, size was 100669440 bytes /home/dclarke/bin/star_1.5a89: 0 blocks + 1593968128 bytes (total of 1593968128 bytes = 1556609.50k). /home/dclarke/bin/star_1.5a89: Total time 1735.341sec (897 kBytes/sec) $ I should mention really poor performance also. Look in the output dir and see the ACL indicator ? $ ls -la /home/dclarke/test/destination total 11 drwxr-xr-x 3 dclarke csw 3 Oct 1 08:17 . drwxr-xr-x 3 dclarke csw 5 Oct 1 08:16 .. drwxr-xr-x+ 22 dclarke csw 31 Sep 25 11:40 gcc-4.3.4_SunOS_5.10-release That should not be there. $ cd /home/dclarke/test/destination $ ls -lVdE gcc-4.3.4_SunOS_5.10-release drwxr-xr-x+ 22 dclarke csw 31 2009-09-25 11:40:09.491951000 +0000 gcc-4.3.4_SunOS_5.10-release owner@:-----DaA--cC-s:------:allow owner@:--------------:------:deny group@:------a---c--s:------:allow group@:-----D-A---C--:------:deny everyone@:------a---c--s:------:allow everyone@:-----D-A---C--:------:deny owner@:--------------:------:deny owner@:rwxp---A-W-Co-:------:allow group@:-w-p----------:------:deny group@:r-x-----------:------:allow everyone@:-w-p---A-W-Co-:------:deny everyone@:r-x---a-R-c--s:------:allow If I look down into that dir I see ACL's on all the ddir entries : $ cd gcc-4.3.4_SunOS_5.10-release $ ls -l total 1119 -rw-r--r-- 1 dclarke csw 577976 Sep 24 02:59 Makefile drwxr-xr-x+ 4 dclarke csw 5 Sep 24 03:11 build-i386-pc-solaris2.10 -rw-r--r-- 1 dclarke csw 10 Sep 24 20:58 compare -rw-r--r-- 1 dclarke csw 30323 Sep 24 02:59 config.log -rwxr-xr-x 1 dclarke csw 31724 Sep 24 02:59 config.status -rwxr-xr-x 1 dclarke csw 400174 Sep 24 02:59 configure.lineno drwxr-xr-x+ 2 dclarke csw 20 Sep 24 20:58 fixincludes drwxr-xr-x+ 15 dclarke csw 535 Sep 25 03:55 gcc drwxr-xr-x+ 10 dclarke csw 10 Sep 24 21:23 i386-pc-solaris2.10 drwxr-xr-x+ 2 dclarke csw 32 Sep 25 10:39 intl drwxr-xr-x+ 3 dclarke csw 29 Sep 24 20:44 libcpp drwxr-xr-x+ 2 dclarke csw 15 Sep 24 20:44 libdecnumber drwxr-xr-x+ 4 dclarke csw 72 Sep 24 20:43 libiberty drwxr-xr-x+ 14 dclarke csw 532 Sep 24 20:41 prev-gcc drwxr-xr-x+ 4 dclarke csw 4 Sep 24 20:40 prev-i386-pc-solaris2.10 drwxr-xr-x+ 2 dclarke csw 32 Sep 24 19:56 prev-intl drwxr-xr-x+ 3 dclarke csw 29 Sep 24 19:57 prev-libcpp drwxr-xr-x+ 2 dclarke csw 15 Sep 24 19:58 prev-libdecnumber drwxr-xr-x+ 4 dclarke csw 72 Sep 24 19:56 prev-libiberty -rw-r--r-- 1 dclarke csw 13 Sep 24 02:59 serdep.tmp drwxr-xr-x+ 14 dclarke csw 520 Sep 24 19:53 stage1-gcc drwxr-xr-x+ 4 dclarke csw 4 Sep 24 19:51 stage1-i386-pc-solaris2.10 drwxr-xr-x+ 2 dclarke csw 32 Sep 24 03:09 stage1-intl drwxr-xr-x+ 3 dclarke csw 29 Sep 24 03:15 stage1-libcpp drwxr-xr-x+ 2 dclarke csw 15 Sep 24 03:16 stage1-libdecnumber drwxr-xr-x+ 4 dclarke csw 72 Sep 24 03:08 stage1-libiberty -rw-r--r-- 1 dclarke csw 7 Sep 24 20:58 stage_current -rw-r--r-- 1 dclarke csw 7 Sep 24 03:01 stage_final -rw-r--r-- 1 dclarke csw 7 Sep 24 20:58 stage_last I'll delete this now .. I can't use it with those strange ACL's there. $ cd /home/dclarke/test $ rm -rf destination I'll do some more testing with star 1.5a89 and let you know what I see. -- Dennis Clarke dcla...@opensolaris.ca <- Email related to the open source Solaris dcla...@blastwave.org <- Email related to open source for Solaris _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss