内容目录
打包的后发布需要将jenkins打包出来的unity webgl同步到linux服务器上
这就需要 windows cwRsync同步本地文件到linux服务器
目标linux服务器需要启动rsync
先改配置
Linux配置好了rsync服务,从windows同步文件过去之后,发现文件的权限很低,导致在LInux上用低权限的用户访问失败,权限不足。
这是因为使用rsync同步文件会保留文件的权限属性,但是Windows上不是Linux那套权限机制,幸好rsync官方具有配置后用户同步文件会强制把权限改为server端设定值。
在rsyncd.conf中加上一行:
incoming chmod = Du=rwx,Dog=rx,Fu=rwx,Fgo=rx
这样就会强制把同步以后的目录权限改为755.
vim /etc/rsyncd.conf
添加如下内容
test为同步目标路径配置
uid=root port=873 use chroot = no read only = no list = no max connections = 0 #ignore errors #log file = /var/log/rsyncd.log pidfile = /var/run/rsyncd.pid lock file = /var/run/rsync.lock secrets file = /etc/rsync.pass motd file = /etc/rsyncd.motd log format = %t %a %m %f %b incoming chmod = Du=rwx,Dog=rx,Fu=rwx,Fgo=rx syslog facility = local3 #timeout = 300 [test] path = /usr/share/nginx/html/test read only = no list = yes auth users = test #hosts allow = 172.19.62.150/20
然后设置test的密码 以及密码文件的权限为600,不然启动不起来
echo "test:test_password" > /etc/rsync.pass chmod 600 /etc/rsync.pass
然后启动
rsync --daemon -4 --config=/etc/rsyncd.conf
windows机器安装cwrsync
下载地址
https://wws.lanzouy.com/iE66L0e386vi
包含服务端跟客户端,只安装客户端cwRsync_4.1.0_Installer.exe
然后把test的密码test_password写到一个txt文件里,比如我放在了D盘test.txt
注意使用cwRsync写路径的时候E:\svn写为cygdrive/e/svn
cygdrive接盘符再接路径
最后的同步命令写法为
"D:\Program Files (x86)\cwRsync\bin\rsync.exe" -avh --port=873 --no-super --password-file=/cygdrive/d/test.txt /cygdrive/e/svn/park/dev/client/park/Build test@135.21.65.189::test
放到cmd执行或者写成批处理
大功告成
近期评论