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也达到这个效果,而不是可以看到里面的子文件夹

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3