当前位置:Linux教程 - Linux资讯 - CVS 管理脚本

CVS 管理脚本

  、用法    1. 准备工作  下载脚本地址  http://www.kdeopen.com  解开cvs.tar.gz  tar zxvf cvs.tar.gz    2. 安装CVS服务器  #cd cvs  #./install    3. 添加用户  #./cvsadduser [cvs用户] [系统用户] [密码]    4. 删除用户  #./cvsuserdel [cvs用户]    5. 修改密码  #./cvspasswd [cvs用户] [新密码]    二、脚本源码    1. 安装程序源码    [root@Linux cvs]# cat install    #!/bin/sh    echo "adduser cvs"    adduser cvs    echo -n "Seting passWord for cvs :"    read cvspass    echo cvs:$cvspasschpasswd    echo "adduser cvsroot"    adduser cvsroot -g cvs    echo -n "Seting password for cvsroot :"    read cvsrootpass    lpasswd cvsroot -P $cvsrootpass    if [ -f /etc/xinetd.d/cvspserver ]; then    echo "file cvspserver exists !"    exit 0    else    mkdir -m 755 /cvsroot    chown -R cvsroot /cvsroot    chgrp -R cvs /cvsroot    cp cvspserver /etc/xinetd.d    /etc/init.d/xinetd restart    echo "eXPort CVSROOT=server:cvsroot@"`hostname`":/cvsroot">>/home/cvsroot/.bash_profile    su - cvsroot -c "cvs -d /cvsroot init"    fi    [root@linux cvs]#    2. 添加用户程序源码    [root@linux cvs]# cat cvsadduser    #!/bin/sh    ##############################################################    # Script to cvs adduser    # File:/root/admintool    ##############################################################    # Setup environment for script execution    ENVS="`pwd`"/envs    if [ -f $ENVS ]; then    . $ENVS    else    CVSROOT=/cvsroot/CVSROOT    CVSUSER=$1    SYSUSER=$2    CVSPASS=$3    # echo "The file exist."    # exit 0    fi    if ! [ -f $CVSROOT/passwd ]; then    toUCh $CVSROOT/passwd    fi    cvsadduser() {    adduser $CVSUSER -g cvs -s /dev/null -d /tmp    echo "$CVSUSER:$CVSPASS"chpasswd    grep "$CVSUSER\>" /etc/shadowgawk -F: '{print $1":"$2":'$SYSUSER'"}'>>$CVSROOT/passwd    userdel $CVSUSER    }    if [ -z $1 ]; then    echo "Usage: $0 [cvsuser] [system user] [password]"    echo " $0 chen cvs 123456"    exit 0    else    # echo $CVSUSER , $SYSUSER , $CVSPASS    isExists=`grep -c "$CVSUSER\>" $CVSROOT/passwd`    # echo $isExists    if [ "$isExists" = "0" ]; then    cvsadduser    else    echo "$0 : user $1 exists"    exit 0    fi    fi    [root@linux cvs]#    3. 删除用户程序源码    [root@linux cvs]# cat cvsuserdel    #!/bin/sh    ##############################################################    # Script to cvs passwd    # File:/root/admintool    ##############################################################    # Setup environment for script execution    ENVS="`pwd`"/envs    if [ -f $ENVS ]; then    . $ENVS    else    CVSROOT=/cvsroot/CVSROOT    CVSUSER=$1    # echo "The file exist."    # exit 0    fi    cvsuserdel() {    isExists=`gawk -F: '$1=="'$CVSUSER'"{print $1}' $CVSROOT/passwd`    if [ "$CVSUSER" = "$isExists" ]; then    DLINE=`grep -n "$CVSUSER\>" $CVSROOT/passwdgawk -F: '{print $1}'`    mv -f $CVSROOT/passwd $CVSROOT/passwd.old    sed $DLINE'd' $CVSROOT/passwd.old>>$CVSROOT/passwd    else    echo "$0 : user $CVSUSER does not exist"    fi    }    if [ -z $1 ]; then    echo "Usage: $0 [cvsuser] [newpassword] "    echo " $0 chen 123456"    exit 0    else    cvsuserdel    exit 1    fi    [root@linux cvs]#    4. 修改密码程序源码    [root@linux cvs]# cat cvspasswd    #!/bin/sh    ##############################################################    # Script to cvs passwd    # File:/root/admintool    ##############################################################    # Setup environment for script execution    ENVS="`pwd`"/envs    if [ -f $ENVS ]; then    . $ENVS    else    CVSROOT=/cvsroot/CVSROOT    CVSUSER=$1    CVSPASS=$2    # echo "The file exist."    # exit 0    fi    cvspasswd() {    isExists=`gawk -F: '$1=="'$CVSUSER'"{print $1}' $CVSROOT/passwd`    # echo $isExists    if [ "$CVSUSER" = "$isExists" ]; then    # echo "true"    adduser $CVSUSER -g nobody -s /dev/null -d /tmp    echo "$CVSUSER:$CVSPASS"chpasswd    SDPASS=`gawk -F: '$1=="'$CVSUSER'"{print $2}' /etc/shadow`    DLINE=`grep -n "$CVSUSER\>" $CVSROOT/passwdgawk -F: '{print $1}'`    SYSUSER=`grep "$CVSUSER\>" $CVSROOT/passwdgawk -F: '{print $3}'`    mv -f $CVSROOT/passwd $CVSROOT/passwd.old    sed $DLINE'd' $CVSROOT/passwd.old>>$CVSROOT/passwd    echo $CVSUSER:$SDPASS:$SYSUSER>>$CVSROOT/passwd    userdel $CVSUSER    # echo $SDPASS,$DLINE,$SYSUSER    else    echo "$0 : user $1 does not exist"    fi    }    if [ -z $1 ]; then    echo "Usage: $0 [cvsuser] [newpassword] "    echo " $0 chen 123456"    exit 0    else    cvspasswd    exit 1    fi    exit 1    [root@linux cvs]#    三、xinetd.d启动文件  [root@linux cvs]# cat cvspserver    service cvspserver    {    socket_type = stream    protocol = tcp    wait = no    user = root    server = /usr/bin/cvs    server_args = -f --allow-root=/cvsroot pserver    log_on_suceess +=USERID    log_on_failure +=USERID    }    [root@linux cvs]#    作者:Netkiller(陈景峰)    2002年1月30日星期三 第一版《Linux CVS Server与jCVS Client进行分布式开发》  2002年7月22日星期一 第二版 《Linux CVS Server + jCVS-5.3.2 Client进行分布式开发》    2002年9月8日星期日 《CVS管理脚本》    如有问题:    OICQ:13721218    ICQ:101888222    E-Mail: [email protected]
[1] [2] 下一页 

(出处:http://www.sheup.com)


上一页 [1] [2]