Linux工具使用配置与管理问题

1. root 无法登录

  1.Ubuntu 系统安装后,默认root 是还没有配置密码,这个时候,你需要先配置一下密码,才能进行登录

    sudo passwd root ; // 在后续配置密码即可

2.ubuntu svn 服务器 的搭建

  1.删除先前的下载的

    sudo apt-get remove --purge subversion

  2.安装

    sudo apt-get install subversion

  3.创建数据库文件夹

    mkdir /opt/data

    chmod -R 770 ./data

    1.文件夹 权限的设置(指定特定的用户 以及读写权限)

      1.ls -al 查看文件夹的权限信息

        drwxrwxrwx   5    root    root  4096  2018-12-11-  hello

        解析: 第一列 : d代表 目录,- 代表文件,  l 代表这是一个链接文件, b 代表这是一个可供存储的块设备,

                c 代表这是一个字符设备,

                接下来三个一组,分别代表 文件所有者的权限 ,同组用户的权限,剩余其他人的权限

            第二列 :代表有多少个文件名连接到文件系统的i-node 节点 ,每个文件名都会把它的权限和属性信息记录到i-node 节点,

                目录名记录着文件名,所以每个目录会记录 着当前文件夹下 文件夹和文件 + . + .. ,总共是当前目录下

                 n个文件 + 2 

            第三列: 文件所有者的账号      第四列:文件所属用户组信息

              第五列 :容量大小

      2.设置文件的所有者和文件的权限

        chown -R username path   // 改变文件的所有者  // 这里文件的所有者必须是在本机真实存在的用户

        chgrp -R groupname path // 更改文件夹拥有的组

        chmod -R mod  path   //改变文件的执行权限    chmod -R +x path  // 这里的+x 会同时对 拥有者,拥有者的用户组,

                                      //其他用户 同时给予权限

        3.如何在系统中添加新的用户

        useradd/userdel -r/userdel  username  // 添加用户/删除用户及其文件夹/删除用户

          passwd username  //设置用户登录的密码

                            usermod -d dirctPath  usrname //指定用户的登录目录

        usermod -g  组名  -G  附属组名   username // 将username 指定组名,同时添加到附属组名中,这样,

                            //username将具所属组和附属组两个组的权限限制

  4.创建版本库

    svnadmin create /opt/data/svndata/uboot

    svnadmin create /opt/data/svndata/linux

  5.配置版本库

    1. 为了集中管理,可以将 对应的版本库认证authz 和密码passwd 都放到同一个路径,只需要修改各个

               版本库下对应的认证方式和密码的路径

    2.svn 的配置

      这里主要讲解authz 的配置

  

      [aliases]
      # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

      [groups]
      # harry_and_sally = harry,sally   // 这里是用来定义一个组所拥有的成员,harry_and_sally 这个组的成员

                      有harry 和sally 两个,对这两人的配置,可以通过@组名来对其进行配置
      # harry_sally_and_joe = harry,sally,&joe

      # [/foo/bar]            // 这个指定版本库下的权限,不是特别建议,我们一般不去这样设置,而是对库,及对应的库的

              // 的子文件夹和文件进行配置
      # harry = rw
      # &joe = r
      # * =

      # [repository:/baz/fuz]     // 这里的repository 代表的是  是用svnadmin create 出来的代码库,/baz/fuz代表的是 

                 //repository 代码库下的baz/fuz 的文件  

                 // 例如 svnadmin create /opt/data/svndata/linux,那么这里应当将 respository 

                  //替换成  linux  即 [linux:/] ;代表 对linux 代码库下的所有文件配置,如果 linux 库

                    //下面还有 Linux-3.2.1 和 Linux-4.0.1 的两个目录要配置,那么配置要写成如下的

                 //[linux:/Linux-3.2.1]   代表对应Linux代码仓库下 的Linux-3.2.1 的路径进行权限配置
      # @harry_and_sally = rw
      # * = r

    3.启动 svn 服务

      sudo svnserve -d -r path ; //建议这个path 不要直接对应某个代码库,这样svn 只能为这个代码库服务

                  // 可以将一个专门用了存放svn 的 文件夹 ,如  /opt/data/svndata/,让svndata

                  //来专门存放 代码库,那么启动的时候,就可以指定

                  //路径为: svnserve -d -r /opt/data/svndata/, svn 会服务 svndata 下存放的

                  //所有代码仓库 ,如这里的linux 和 uboot

            4.可以通过 sudo netstat -antp |grep svnserve  来查看 svn 服务是否开启

           5.验证版本库 :

                svn checkout svn://192.168.42.124/uboot   // 这里的ip 是要通过ifconfig 来查看你自己的ip 地址是多少,

                        // 请不要用 172.0.0.1 这个地址来进行测试,可以用localhost来测试

                       // 即  svn checkout svn://localhost/uboot

          6. 向版本库提交文件  

      1.先讲文件加入

         svn add 文件名/文件夹 //例子 svn add hello.c

 

      2.提交

        svn commit -m " 注释,填写提交的信息,主要是给自己看的"  文件名/文件夹

        eg: svn commit -m "this is a test" hello.c

      3.删除内容

        svn delete文件名/文件夹

        svn commit  文件名或文件夹

    

 

        

     

  

  

  

posted on 2018-12-08 17:33  jike36  阅读(205)  评论(0编辑  收藏  举报

导航