pull/109/head
Mr Chen 6 years ago
parent 79cd92992e
commit a3d960cb33
  1. BIN
      plugins/rsyncd/ico.png
  2. 20
      plugins/rsyncd/index.html
  3. 159
      plugins/rsyncd/index.py
  4. 15
      plugins/rsyncd/info.json
  5. 33
      plugins/rsyncd/install.sh
  6. 12
      plugins/rsyncd/js/rsyncd.js

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

@ -0,0 +1,20 @@
<div class="bt-form">
<div class="bt-w-main">
<div class="bt-w-menu">
<p class="bgw" onclick="pluginService('samba');">服务</p>
<p onclick="pluginInitD('samba');">自启动</p>
<p onclick="pluginConfig('samba');">配置修改</p>
<p onclick="pluginLogs('samba','','run_log');">日志</p>
<p onclick="smbRead()">说明</p>
</div>
<div class="bt-w-con pd15">
<div class="soft-man-con"></div>
</div>
</div>
</div>
<script type="text/javascript">
$.getScript( "/plugins/file?name=samba&f=js/samba.js", function() {
pluginService('samba');
});
</script>

@ -0,0 +1,159 @@
# coding: utf-8
import time
import random
import os
import json
import re
import sys
sys.path.append(os.getcwd() + "/class/core")
import public
app_debug = False
if public.isAppleSystem():
app_debug = True
def getPluginName():
return 'rsyncd'
def getPluginDir():
return public.getPluginDir() + '/' + getPluginName()
def getServerDir():
return public.getServerDir() + '/' + getPluginName()
def getInitDFile():
if app_debug:
return '/tmp/' + getPluginName()
return '/etc/init.d/' + getPluginName()
def getArgs():
args = sys.argv[2:]
tmp = {}
args_len = len(args)
if args_len == 1:
t = args[0].strip('{').strip('}')
t = t.split(':')
tmp[t[0]] = t[1]
elif args_len > 1:
for i in range(len(args)):
t = args[i].split(':')
tmp[t[0]] = t[1]
return tmp
def checkArgs(data, ck=[]):
for i in range(len(ck)):
if not ck[i] in data:
return (False, public.returnJson(False, '参数:(' + ck[i] + ')没有!'))
return (True, public.returnJson(True, 'ok'))
def status():
data = public.execShell(
"ps -ef|grep smbd |grep -v grep | grep -v python | awk '{print $2}'")
if data[0] == '':
return 'stop'
return 'start'
def start():
if public.isAppleSystem():
return "Apple Computer does not support"
data = public.execShell('systemctl start smb')
if data[1] == '':
return 'ok'
return 'fail'
def stop():
if public.isAppleSystem():
return "Apple Computer does not support"
data = public.execShell('systemctl stop smb')
if data[1] == '':
return 'ok'
return 'fail'
def restart():
if public.isAppleSystem():
return "Apple Computer does not support"
data = public.execShell('systemctl restart smb')
if data[1] == '':
return 'ok'
return 'fail'
def reload():
if public.isAppleSystem():
return "Apple Computer does not support"
data = public.execShell('systemctl reload smb')
if data[1] == '':
return 'ok'
return 'fail'
def initdStatus():
if public.isAppleSystem():
return "Apple Computer does not support"
initd_bin = getInitDFile()
if os.path.exists(initd_bin):
return 'ok'
return 'fail'
def initdInstall():
if public.isAppleSystem():
return "Apple Computer does not support"
source_bin = initDreplace()
initd_bin = getInitDFile()
shutil.copyfile(source_bin, initd_bin)
public.execShell('chmod +x ' + initd_bin)
return 'ok'
def initdUinstall():
if public.isAppleSystem():
return "Apple Computer does not support"
initd_bin = getInitDFile()
os.remove(initd_bin)
return 'ok'
def smbConf():
return '/etc/samba/smb.conf'
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
print status()
elif func == 'start':
print start()
elif func == 'stop':
print stop()
elif func == 'restart':
print restart()
elif func == 'reload':
print reload()
elif func == 'initd_status':
print initdStatus()
elif func == 'initd_install':
print initdInstall()
elif func == 'initd_uninstall':
print initdUinstall()
elif func == 'conf':
print smbConf()
else:
print 'error'

@ -0,0 +1,15 @@
{
"id":3,
"title":"rsyncd",
"tip":"soft",
"name":"rsyncd",
"type":"软件",
"ps":"rsyncd同步助手",
"versions":"1.0",
"shell":"install.sh",
"checks":"server/rsyncd",
"author":"midoks",
"home":"https://rsync.samba.org/",
"date":"2019-03-05",
"pid":"4"
}

@ -0,0 +1,33 @@
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
curPath=`pwd`
rootPath=$(dirname "$curPath")
rootPath=$(dirname "$rootPath")
serverPath=$(dirname "$rootPath")
sysName=`uname`
install_tmp=${rootPath}/tmp/bt_install.pl
Install_rsyncd()
{
echo '正在安装脚本文件...' > $install_tmp
mkdir -p $serverPath/rsyncd
echo '1.0' > $serverPath/rsyncd/version.pl
echo '安装完成' > $install_tmp
}
Uninstall_rsyncd()
{
rm -rf $serverPath/rsyncd
echo "卸载完成" > $install_tmp
}
action=$1
if [ "${1}" == 'install' ];then
Install_rsyncd
else
Uninstall_rsyncd
fi

@ -0,0 +1,12 @@
function smbRead(){
var readme = '<ul class="help-info-text c7">';
readme += '<li>mac上连接`cmd+k`</li>';
readme += '<li>不产生.DS_Store文件: defaults write com.apple.desktopservices DSDontWriteNetworkStores true</li>';
readme += '<li>windows上连接例子: \\192.168.1.194</li>';
readme += '</ul>';
$('.soft-man-con').html(readme);
}
Loading…
Cancel
Save