Linux下CVS+ACL的权限控制

Linux下CVS+ACL的权限控制

我的CVS服务器端是在linux下,我安装了cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz,利用CVS+ACL来做权限控制。但是现在遇到几个问题:
1. 按照acl网站上的说明,在安装完毕之后做了初始配置,然后设置默认权限:
   执行 cvs -d /opt/cvsroot racl ALL:r -r ALL ALL ,这个是想设置默认所有用户对仓库只读权限;
   然后我执行其他的acl命令,如cvs -d /opt/cvsroot racl -l proj1,系统报错,报错信息如下:
   [root@bogon cvsroot]# cvs -d /opt/cvsroot racl -l proj1
*** glibc detected *** cvs: free(): invalid pointer: 0x098876ca ***
======= Backtrace: =========
/lib/i686/nosegneg/libc.so.6[0x428716]
/lib/i686/nosegneg/libc.so.6(cfree+0x90)[0x42bc80]
cvs[0x804d893]
cvs[0x804dbb2]
cvs[0x804e08f]
cvs[0x804e471]
cvs[0x808f3c0]
cvs[0x806bfbd]
cvs[0x808dff3]
cvs[0x808e789]
cvs[0x804c887]
cvs[0x807c295]
cvs[0x804cc1e]
cvs[0x8079dc3]
/lib/i686/nosegneg/libc.so.6(__libc_start_main+0xdc)[0x3d4dec]
cvs[0x804af41]
======= Memory map: ========
00135000-00136000 r-xp 00135000 00:00 0          [vdso]
003a1000-003bb000 r-xp 00000000 08:0b 558590     /lib/ld-2.5.so
003bb000-003bc000 r--p 00019000 08:0b 558590     /lib/ld-2.5.so
003bc000-003bd000 rw-p 0001a000 08:0b 558590     /lib/ld-2.5.so
003bf000-004ff000 r-xp 00000000 08:0b 558591     /lib/i686/nosegneg/libc-2.5.so
004ff000-00501000 r--p 00140000 08:0b 558591     /lib/i686/nosegneg/libc-2.5.so
00501000-00502000 rw-p 00142000 08:0b 558591     /lib/i686/nosegneg/libc-2.5.so
00502000-00505000 rw-p 00502000 00:00 0
00530000-00532000 r-xp 00000000 08:0b 558592     /lib/libdl-2.5.so
00532000-00533000 r--p 00001000 08:0b 558592     /lib/libdl-2.5.so
00533000-00534000 rw-p 00002000 08:0b 558592     /lib/libdl-2.5.so
0054f000-00561000 r-xp 00000000 08:09 1288812    /usr/lib/libz.so.1.2.3
00561000-00562000 rw-p 00011000 08:09 1288812    /usr/lib/libz.so.1.2.3
00688000-00693000 r-xp 00000000 08:0b 558600     /lib/libgcc_s-4.1.2-20080102.so.1
00693000-00694000 rw-p 0000a000 08:0b 558600     /lib/libgcc_s-4.1.2-20080102.so.1
008f5000-00930000 r-xp 00000000 08:0b 558607     /lib/libsepol.so.1
00930000-00931000 rw-p 0003a000 08:0b 558607     /lib/libsepol.so.1
00931000-0093b000 rw-p 00931000 00:00 0
0093d000-00953000 r-xp 00000000 08:0b 558608     /lib/libselinux.so.1
00953000-00955000 rw-p 00015000 08:0b 558608     /lib/libselinux.so.1
00962000-00975000 r-xp 00000000 08:0b 558604     /lib/libnsl-2.5.so
00975000-00976000 r--p 00012000 08:0b 558604     /lib/libnsl-2.5.so
00976000-00977000 rw-p 00013000 08:0b 558604     /lib/libnsl-2.5.so
00977000-00979000 rw-p 00977000 00:00 0
00a34000-00b51000 r-xp 00000000 08:0b 558610     /lib/libcrypto.so.0.9.8b
00b51000-00b64000 rw-p 0011c000 08:0b 558610     /lib/libcrypto.so.0.9.8b
00b64000-00b67000 rw-p 00b64000 00:00 0
00b69000-00b6b000 r-xp 00000000 08:0b 558605     /lib/libkeyutils-1.2.so
00b6b000-00b6c000 rw-p 00001000 08:0b 558605     /lib/libkeyutils-1.2.so
00baf000-00bb1000 r-xp 00000000 08:0b 558609     /lib/libcom_err.so.2.1
00bb1000-00bb2000 rw-p 00001000 08:0b 558609     /lib/libcom_err.so.2.1
00bb4000-00bc3000 r-xp 00000000 08:0b 558606     /lib/libresolv-2.5.so
00bc3000-00bc4000 r--p 0000e000 08:0b 558606     /lib/libresolv-2.5.so
00bc4000-00bc5000 rw-p 0000f000 08:0b 558606     /lib/libresolv-2.5.so
00bc5000-00bc7000 rw-p 00bc5000 00:00 0
00bc9000-00bd1000 r-xp 00000000 08:09 1282576    /usr/lib/libkrb5support.so.0.1
00bd1000-00bd2000 rw-p 00007000 08:09 1282576    /usr/lib/libkrb5support.so.0.1
00bd4000-00c64000 r-xp 00000000 08:09 1288838    /usr/lib/libkrb5.so.3.3
00c64000-00c67000 rw-p 0008f000 08:09 1288838    /usr/lib/libkrb5.so.3.3
00c69000-00c96000 r-xp 00000000 08:09 1288839    /usr/lib/libgssapi_krb5.so.2.2
00c96000-00c97000 rw-p 0002d000 08:09 1288839    /usr/lib/libgssapi_krb5.so.2.2
00c99000-00cbe000 r-xp 00000000 08:09 1288837    /usr/lib/libk5crypto.so.3.1
00cbe000-00cbf000 rw-p 00025000 08:09 1288837    /usr/lib/libk5crypto.so.3.1
05023000-0502c000 r-xp 00000000 08:0b 557147     /lib/libcrypt-2.5.so
0502c000-0502d000 r--p 00008000 08:0b 557147     /lib/libcrypt-2.5.so
0502d000-0502e000 rw-p 00009000 08:0b 557147     /lib/libcrypt-2.5.so
0502e000-05055000 rw-p 0502e000 00:00 0
08048000-080de000 r-xp 00000000 08:09 1212448    /usr/local/bin/cvs
080de000-080e1000 rw-p 00095000 08:09 1212448    /usr/local/bin/cvs
080e1000-080e2000 rw-p 080e1000 00:00 0
09883000-098a4000 rw-p 09883000 00:00 0
b7e00000-b7e21000 rw-p b7e00000 00:00 0
b7e21000-b7f00000 ---p b7e21000 00:00 0
b7f45000-b7f49000 rw-p b7f45000 00:00 0
b7f5e000-b7f60000 rw-p b7f5e000 00:00 0
bfe83000-bfe98000 rw-p bfe83000 00:00 0          [stack]
cvs [racl aborted]: received abort signal

请问这个是怎么回事?我进入/CVSROOT/access中,将已设置的默认权限取消,则不再报错。另外,针对单独的用户或组设置权限也没有问题,可针对ALL就有问题。

2. 用acl设置某用户对某模块的权限是n(没有任何权限):,然后此用户从客户端取出模块,还是可以取出所有的子文件夹,只是里面的文件看不到。我想让权限是n的用户看不到模块里面所有的内容,应该怎么设置?
   以前没用acl的时候,我用chown和chmod设置权限时,若设置没有权限,则模块里的文件夹和文件都取不出来。我想使用ACL也达到这个效果,而不是可以看到里面的子文件夹。
有人吗????????????????
????????????????????