zoukankan      html  css  js  c++  java
  • Linux 笔记 —— SVN和FTP的安装

    时隔3年,重新在虚拟机上装了个Linux,开始研究,每次写Blog都会感叹一下时间如梭啊,就像小敏,时不时晚上要对我说:我现在心情不好。S:为啥?M:又老了一天。


    Ok,这次主要抱怨下Linux下的SVN和FTP的部署,说错了,是记录下。


    Linux给我最大的感觉就是太不人性化了,这么多年了,M$,烂苹果都意识到了用户体验的重要性,可是Linux就是不学乖,跟IBM一个德行,也许是为了提升整个系统的运行效率而放弃了图形化的界面(啥?Linux的图形界面?鸡肋,食之无味,弃之可惜),也许是故意提高Linux系统的管理门槛,以便催生类似“牛B的Linux系统管理员”这样称号的职业,谁知道呢,反正Linux可以用一句话来总结一下,就是,谁用谁蛋疼。PS:更有人用Linux来做为日常使用的电脑,办办公,上上网,这就是蛋疼菊紧了,然后还要来论坛秀一下下限,看我用Linux,多NB!这里就要表扬下Win8了,当初也只是为了装B,装了个WDP版本,结果发现M$这次厚道啊,虽说是WDP,但是稳定性,兼容性都相当的好,甚至在资源占用,资源管理等方面都比Win7还好,在我笔记本上测试了下游戏性能,WOW的运行效率比在Win7上还高,小小的期待下Win8的正式版。(啥?Metro才是重头?鸡肋)。好了,徐庶说的言多必失,回归正题。


    SVN的安装:
    Subversion,Apache的源代码管理工具,本来是不想用SVN的,其实Windows下的TFS蛮好用的,集成了源代码管理和项目管理(包括了Bug Track)。但是TFS太臃肿了,而且安全性太好了,上次Windows崩溃,我把TFS进行了一次备份,费了九牛九虎之力在另外一台电脑上恢复了,结果客户端使用同样一个用户名,都不能继续使用原来的工作空间,导致没有签入的源代码都要被覆盖,只有用很苯的办法来保证不丢失源代码,太坑爹了。SVN就Light多了,要迁移环境啥的,方便的多。


    安装很简单,官方网站有说明,三句命令搞定(SLES11,下同):
    zypper addrepo http://download.opensuse.org/repositories/devel:tools:scm:svn/SLE_11/devel:tools:scm:svn.repo
    zypper refresh
    zypper install subversion



    添加源,刷新,安装,这步骤好眼熟,越狱的IOS么?


    SVN配置:
    也不复杂,先建立一个目录:
    mkdir /home/svn/efreda
    这个目录做为SVN的根据地。


    然后建立SVN相关配置文件:
    svnadmin create /home/svn/efreda
    运行之后,可以导航到该目录,生成了几个相关配置文件。


    对svnserve.conf进行配置,用经典的VI(还记得4年前,李老教我们用Linux下的VI,我一直不怎么理解什么叫末行模式,哈哈)打开。
    几个地方都需要修改:
    anon-access = none # 设置是否允许匿名访问,内部的话,就不允许匿名了
    auth-access = write # 设置登录用户的权限,可写


    passwd-db = passwd # 这个可配可不配,由于我们采用的是加密的认证方式,所以这个不配置,保持屏蔽
    authz-db = authz # 如果需要按目录按组分权限,这个就需要进行配置,网上说明一大堆


    realm = Efreda Repository # 为仓库取一个唯一的名字,后面的加密认证需要用到


    use-sasl = true # 是否使用SASL加密认证,这个启用,要不登录保存的是明文,SLES11下这个是默认可以使用的,相关依赖项都安装完毕了。


    min-encryption = 128 # 加密的配置,分别设置成0,1,>1有不同的意思,网上也是说明一大堆
    max-encryption =256
    改完保存。


    配置SASL:
    导航到 /etc/sasl2,还是使用VI新建一个svn.conf文件,内容如下:
    pwcheck_method: auxprop
    auxprop_plugin: sasldb
    sasldb_path: /home/svn/efreda/sasldb
    mech_list: DIGEST-MD5



    然后新建SVN用户:
    saslpasswd2 -c -f /home/svn/efreda/sasldb -u "Efreda Repository" sweet -p
    接着输入密码就行了。


    删除用户就是把-c 改成 -d。


    另外还有一个命令:sasldblistusers2 -f [path] 列出所有用户


    启动SVN:
    svnserve -d -r /home/svn/efreda
    停止SVN:
    killall svnserve


    建立FTP:
    实际上SLES11在安装完成后,FTP服务器已经安装好了,pure-ftpd,在YaST中启动它即可,图形配置没啥要改的,就是拒绝匿名用户,然后把目录改一下。


    主要的配置改动还是在文件当中,导航到:/etc/pure-ftpd/pure-ftpd.conf (VI),
    主要的改动如下:
    PureDB 把这个的注视去掉,以便允许虚拟帐户访问FTP。
    Umask 127:027 #原本是 177:077,这个是权限掩码,不改的话,通过管理员帐户创建的文件,默认情况下,其他正常用户无法下载,今天配置的时候,我就卡在这里了,搞了半天,我上传的东西,别人都不能下载。
    AutoRename no
    CreateHomeDir no # 如果只是为了共享资源,没必要创建个人目录
    NoRename no # 这个必须改,否则管理员帐户登录都无法修改文件名


    其他默认即可。


    然后创建1个分组,2个Linxu帐户,分组取名:ftpgrp,两个帐户分别为:ftpuser,ftpadmin。然后对ftpadmin赋予FTP目录的拥有权限,我用的目录是 /home/ftp 用命令:chown ftpadmin:ftpgrp /home/ftp 即可。


    之后创建虚拟帐户:
    pure-pw useradd sweet -u ftpadmin -d /home/ftp # 这里我把自己加为管理员,即拥有RW权限。


    pure-pw useradd fred -u ftpuser -d /home/ftp # 普通权限,只能下载。


    最后记得使用命令 pure-pw mkdb 以便虚拟帐户生效。


    还有些命令 pure-pw show sweet 显示用户信息,pure-pw passwd sweet -m 修改密码,pure-pw userdel sweet -m 删除用户。PS:后面的-m是让虚拟帐户信息立即生效,相当于使用了pure-pw mkdb.


    最后重新启动FTP:rcpure-ftpd restart。


    完毕!
  • 相关阅读:
    软件开发流程(转载)
    SQL_sql的简单查询
    session销毁
    静态数据成员和函数
    word插入图片显示不完整的解决的方法
    【Hibernate步步为营】--复合主键映射具体解释
    android studio 在线更新android sdk,遇到无法Fetching https://dl-ssl.google.com/...的解决方式
    Cisco笔试——2014年
    全局钩子具体解释
    rackup工具
  • 原文地址:https://www.cnblogs.com/sweetwxh/p/2221785.html
Copyright © 2011-2022 走看看