centOS7下SVN的安装和使用

转载:du_xian_sheng@CSDN

1. 安装

CentOS通过yum安装subversion。

# yum install subversion

subversion安装在/bin目录,查看目录命令:

# which svnserve
/usr/bin/svnserve

检查一下subversion是否安装成功。不要使用1.8版本

# svnserve --version
svnserve, version 1.7.14 (r1542130)

2. 建立版本库

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。

# vim /etc/sysconfig/svnserve

文件内容 OPTIONS=”-r /var/svn” 可修改

使用svnadmin建立版本库svntest。

# mkdir -p /var/svn/svntest //递归创建多个目录
# svnadmin create /var/svn/svntest
# ll /data/svn/svntest //查看目录中内容
drwxr-xr-x. 2 root root  51 Nov 10 14:42 conf
drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db
-r--r--r--. 1 root root    2 Nov 10 14:42 format
drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks
drwxr-xr-x. 2 root root  39 Nov 10 14:42 locks
-rw-r--r--. 1 root root  229 Nov 10 14:42 README.txt

3. 配置

#cd /var/svn/svntest

a、编辑用户文件passwd,新增两个用户:admin和guest。

# vim conf/passwd
[users]
admin = admin
guest = guest

b、编辑权限文件authz,用户admin设置可读写权限,guest设置只读权限。

# vim conf/authz
[/]
admin = rw
guest = r

c、编辑svnserve.conf:

# vim conf/svnserve.conf
[general]
anon-access = none #控制非鉴权用户访问版本库的权限
auth-access = write #控制鉴权用户访问版本库的权限
password-db = passwd #指定用户名口令文件名
authz-db = authz #指定权限配置文件名
//realm = svntest #指定版本库的认证域,即在登录时提示的认证域名称 //测试不需要

 4. SVN服务

启动SVN服务。

# systemctl start svnserve.service

检查服务是否启动成功。

# ps aux | grep svn
root 16349 0.0 0.1 162180 900 ? Ss 15:01 0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn

通过netstat可以看到SVN打开了3690端口。

# netstat -tnlp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 16349/svnserve

设置成开机启动。

# systemctl enable svnserve.service

5. 更改防火墙设置大坑,注意阿里云要开相应端口3690

# vim /etc/sysconfig/iptables

添加一下两行 vim操作 yy p

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT
-A OUTPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT //不需要

然后退出编辑,重启防火墙

查看 

# iptables -L -n
# service iptables restart //这是centOS6 的命令
# /bin/systemctl restart iptables.service

6. 客户端测试

客户端可以通过TortoriseSVN测试。

Linux下客户端使用SVN

将文件checkout到本地目录svn666

svn checkout svn://127.0.0.1 ./svn666

有修改的时候

# svn add * //添加文件
# svn commit -m '这是注释内容' //提交
# svn update //更新

网段划分例子

将172.17.0.0划分为14个子网(实际是16个),请计算出子网的子网掩码,以及在每个子网中主机IP地址的子网如下:

172.17.0.0/20
有效的地址范围是:172.17.0.1-172.17.15.254
172.17.16.0/20
有效的地址范围是:172.17.16.1-172.17.31.254
172.17.32.0/20
有效的地址范围是:172.17.32.1-172.17.47.254
172.17.48.0/20
有效的地址范围是:172.17.48.1-172.17.63.254
172.17.64.0/20
有效的地址范围是:172.17.64.1-172.17.79.254
172.17.80.0/20
有效的地址范围是:172.17.80.1-172.17.95.254
172.17.96.0/20
有效的地址范围是:172.17.96.1-172.17.111.254
172.17.112.0/20
有效的地址范围是:172.17.112.1-172.17.127.254
172.17.128.0/20
有效的地址范围是:172.17.128.1-172.17.143.254
172.17.144.0/20
有效的地址范围是:172.17.144.1-172.17.159.254
172.17.160.0/20
有效的地址范围是:172.17.160.1-172.17.175.254
172.17.176.0/20
有效的地址范围是:172.17.176.1-172.17.191.254
172.17.192.0/20
有效的地址范围是:172.17.192.1-172.17.207.254
172.17.208.0/20
有效的地址范围是:172.17.208.1-172.17.223.254
172.17.224.0/20
有效的地址范围是:172.17.224.1-172.17.239.254
172.17.240.0/20
有效的地址范围是:172.17.240.1-172.17.255.254

Mac 终端里神秘的 bogon 及解决方法

如题,Mac 下的终端经常有时候前面的计算机名会错误的显示成 bogon. 这是因为终端会先向 DNS 请求查询当前 IP 的反向域名解析的结果,如果查询不到再显示我们设置的计算机名。而由于我们的 DNS 错误地将保留地址反向的 NS 查询结果返回了 bogon. 其中 bogon 本应该用来指虚假的 IP 地址,而非保留 IP 地址。因此就出现了会时不时地打印 bogon 这种奇怪名字作为计算机名的现象了。那么如何让终端只显示我们想要的计算机名而不总是从 DNS 返回结果呢?

解决方案:在终端中执行以下命令即可(需要输入一次管理员密码)

sudo hostname your-desired-host-name
sudo scutil --set LocalHostName $(hostname)
sudo scutil --set HostName $(hostname)

Linux下DNS查询

一般来说linux下查询域名解析有两种选择,nslookup或者dig,而在使用上我觉得dig更加方便顺手。

如果是在debian下的话,只要装上dnsutils这个包就可以使用dig命令了。最基本的使用方式就是

dig www.oolec.com

即查询域名的A记录,查询的dns服务器将采用系统配置的服务器,即/etc/resovle.conf 中的。如果要查询其他类型的记录,比如MX,CNAME,NS,PTR等,只需将类型加在命令后面即可

dig www.oolec.com mx
dig www.oolec.com ns

此外,如果你是一个系统管理员,部署好了一台dns服务器之后想对它进行解析测试,就必须要显式指定待测试的dns服务器地址了,例如

dig @202.106.0.20 www.oolec.com a

默认情况下dig将采用udp协议进行查询,如果要采用tcp方式,可以加上 +tcp参数

dig www.oolec.com a +tcp

另外一个重要的功能是+trace参数,使用这个参数之后将显示从根域逐级查询的过程

dig www.oolec.com a +trace

比如,对域名www.linuxers.cn A记录的trace查询可以看到根域.,顶级域.cn,以及linuxers.cn的域名权威服务器的地址及其各自的返回结果,这样对于追踪dns解析中的问题有很大的帮助。

dig www.linuxers.cn a +trace

datatable实现纵向单元格合并

转载:bird_tp@CSDN

实现效果如下:

在 drawCallback 函数里重画表格,引入以下代码即可

var api = this.api();
var rows = api.rows({ page: 'current' }).nodes();

var idx = 0;    // 第一列进行合并
var last = null;
var tr = null;
var ltd = null;

api.column(idx, { page: 'current' }).data().each(function (group, i) {
    tr = $(rows[i]);
    var td = $("td:eq(" + idx + ")", tr);
    if (last !== group) {
        td.attr("rowspan", 1);
        td.text(group);
        ltd = td;
        last = group;
        td.css("vertical-align", "middle");
    } else {
        ltd.attr("rowspan", parseInt(ltd.attr("rowspan")) + 1);
        td.remove();
    }
});