大概结论:
- 文本文件可以启用压缩,加快传输速度
- 采用就简单的加密算法,可以加快速度,最快应该是aes192
文章链接:加速scp传输速度
Linux内核工程导论——linux学习和职业曲线(初学者,中级,高级都可参考)
是一个系列的文章,非常值得看
我们想增加多一个出口,只有特定的内网源IP才从这里出,所以,有了这个测试
# 增加路由表
sudo /bin/cp /etc/iproute2/rt_tables /data/backup/tmp/rt_tables.${RANDOM}
sudo echo '201 adsl' >> /etc/iproute2/rt_tables
# 添加路由策略,此处以联通出口为例
sudo ip route add default via xx.xxx.83.113 dev em1:0 table adsl
# 查看路由策略
ip route show table adsl
# 设置路由规则
sudo ip rule add from 172.16.28.26 lookup adsl
# 查看规则
ip rule show
# 删除路由规则
sudo ip rule del from 172.16.28.26 lookup adsl
过往,大家是root用户,scp/rz文件到远程机器,读写都没有问题,但目前大家都是用个人的普通账号去登录,需要scp/rz更新文件的时候,就比较麻烦:需要先scp/rz到一个临时目录,再通过sudo把文件mv过去
如果客户端是Linux,比较好做,大不了写个脚本,把scp和mv的步骤都写进去,就可以了。
如果客户端是win,想通过rz上传,服务器端就需要先cd到临时目录,上传了,再通过sudo把文件mv过去。
不是好办法
chmod -R 777 xxx
这里再介绍一个方法:setfacl
大家都知道chown只能对一个用户和一个组设置权限,当遇到多组的情况,就处理不了,而setfacl则可以处理多用户,多组
# 先设置开启acl,CentOS系统,默认应该是支持的
# 但我之前遇到某云的系统,defaults挂载参数,却需要再添加acl才可以
mount -o acl /data
# 设置johncan组对test_acl可以读写,这里可以设置任意多个组
cd /data/backup/tmp
setfacl -m g:johncan:rwx -R test_acl/
# 获取权限
getfacl test_acl/
# 以下为输出内容
# file: test_acl/
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
group:johncan:rwx
mask::rwx
other::rwx
Error output could not be translated from the native locale to UTF-8.
这个问题持续了大概有3-4年的时间了,虽然在出错后,可以问问旁边的同事是什么原因,但始终不够直观,我们尝试过以下方法,但都没有解决
export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
AddDefaultCharset UTF-8
我们最终得出的结论是:网上的解决方案只对svn://这种直接用svnserve发布出来的仓库才有效
前天,项目组又问起这个事,就Google了下, 发现Subversion 1.8之后,加了一个新的特性
SVNUseUTF8 On
它的作用就是使得Apache的mod_dav_svn模块,在和pre-commit等钩子通讯的时候,使用utf-8编码,可以参考mod_dav_svn
我们系统是CentOS 6.2,比较简单,有个第三方,走了Subversion 1.8的rpm包,yum即可,主要是更新了2个rpm包
具体升级操作
cat > /etc/yum.repos.d/wandisco-svn.repo <<EOF
[WandiscoSVN]
name=Wandisco SVN Repo
baseurl=http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/\$basearch/
enabled=1
gpgcheck=0
EOF
yum install subversion
修改httpd.conf并重启httpd
<IfModule mod_dav_fs.c>
# Location of the WebDAV lock database.
DAVLockDB /var/lib/dav/lockdb
SVNUseUTF8 On
</IfModule>
/etc/init.d/httpd graceful
需要做些测试,确保升级后不会有问题,测试列表如下
服务器版本是1.8,如果客户端是1.6,则只能checkout,不能update,1.7没有问题,建议客户端至少1.8
WandiscoSVN也提供了5.5上的升级,但无法满足我们的场景的需求,主要是因为CentOS5上提供的openssl是0.9.8版本,不支持SNI,所以需要手动安装
完整的安装脚本,可以参考我们svn上的脚本
install_svn_1.8.sh
# 在svn服务器上执行
sudo svnadmin upgrade svn_repos_dir