为适配singbox修改部分变量名及文本
This commit is contained in:
@@ -116,12 +116,12 @@ ckstatus(){
|
|||||||
echo -e " 3 Clash.Meta内核"
|
echo -e " 3 Clash.Meta内核"
|
||||||
read -p "请手动确定该内核类型 > " num
|
read -p "请手动确定该内核类型 > " num
|
||||||
case "$num" in
|
case "$num" in
|
||||||
2) clashcore=clashpre ;;
|
2) crashcore=clashpre ;;
|
||||||
3) clashcore=meta ;;
|
3) crashcore=meta ;;
|
||||||
*) clashcore=clash ;;
|
*) crashcore=clash ;;
|
||||||
esac
|
esac
|
||||||
mv -f $file $bindir/clash && echo -e "\033[32m内核加载完成!\033[0m " && sleep 1
|
mv -f $file $bindir/clash && echo -e "\033[32m内核加载完成!\033[0m " && sleep 1
|
||||||
setconfig clashcore $clashcore
|
setconfig crashcore $crashcore
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
echo -e "\033[33m检测到不可用的内核文件!可能是文件受损或CPU架构不匹配!\033[0m"
|
echo -e "\033[33m检测到不可用的内核文件!可能是文件受损或CPU架构不匹配!\033[0m"
|
||||||
@@ -1095,10 +1095,10 @@ clashcfg(){
|
|||||||
set_redir_config(){
|
set_redir_config(){
|
||||||
setconfig redir_mod $redir_mod
|
setconfig redir_mod $redir_mod
|
||||||
setconfig dns_mod $dns_mod
|
setconfig dns_mod $dns_mod
|
||||||
if [ "$redir_mod" = "混合模式" -o "$redir_mod" = "Tun模式" ] && [ "$clashcore" = "clash" ];then
|
if [ "$redir_mod" = "混合模式" -o "$redir_mod" = "Tun模式" ] && [ "$crashcore" = "clash" ];then
|
||||||
rm -rf $bindir/clash
|
rm -rf $bindir/clash
|
||||||
rm -rf $CRASHDIR/clash
|
rm -rf $CRASHDIR/clash
|
||||||
setconfig clashcore meta
|
setconfig crashcore meta
|
||||||
fi
|
fi
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e "\033[36m已设为 $redir_mod !!\033[0m"
|
echo -e "\033[36m已设为 $redir_mod !!\033[0m"
|
||||||
@@ -1107,7 +1107,7 @@ clashcfg(){
|
|||||||
[ -n "$(lsmod | grep '^tun')" ] || ip tuntap &>/dev/null && sup_tun=1
|
[ -n "$(lsmod | grep '^tun')" ] || ip tuntap &>/dev/null && sup_tun=1
|
||||||
ckcmd nft && sup_nft=1
|
ckcmd nft && sup_nft=1
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e "当前代理模式为:\033[47;30m $redir_mod \033[0m;Clash核心为:\033[47;30m $clashcore \033[0m"
|
echo -e "当前代理模式为:\033[47;30m $redir_mod \033[0m;Clash核心为:\033[47;30m $crashcore \033[0m"
|
||||||
echo -e "\033[33m切换模式后需要手动重启服务以生效!\033[0m"
|
echo -e "\033[33m切换模式后需要手动重启服务以生效!\033[0m"
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e " 1 \033[32mRedir模式\033[0m: Redir转发TCP,不转发UDP"
|
echo -e " 1 \033[32mRedir模式\033[0m: Redir转发TCP,不转发UDP"
|
||||||
@@ -1421,7 +1421,7 @@ clashadv(){
|
|||||||
[ -z "$tproxy_mod" ] && tproxy_mod=未开启
|
[ -z "$tproxy_mod" ] && tproxy_mod=未开启
|
||||||
[ -z "$public_support" ] && public_support=未开启
|
[ -z "$public_support" ] && public_support=未开启
|
||||||
[ -z "$sniffer" ] && sniffer=未启用
|
[ -z "$sniffer" ] && sniffer=未启用
|
||||||
[ "$clashcore" = "clashpre" ] && [ "$dns_mod" = "redir_host" ] && sniffer=已启用
|
[ "$crashcore" = "clashpre" ] && [ "$dns_mod" = "redir_host" ] && sniffer=已启用
|
||||||
[ "$bindir" = "/tmp/clash_$USER" ] && mini_clash=已开启 || mini_clash=未开启
|
[ "$bindir" = "/tmp/clash_$USER" ] && mini_clash=已开启 || mini_clash=未开启
|
||||||
#
|
#
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
@@ -1457,14 +1457,14 @@ clashadv(){
|
|||||||
4)
|
4)
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
if [ "$sniffer" = "未启用" ];then
|
if [ "$sniffer" = "未启用" ];then
|
||||||
if [ "$clashcore" = "clash" ];then
|
if [ "$crashcore" = "clash" ];then
|
||||||
rm -rf $bindir/clash
|
rm -rf $bindir/clash
|
||||||
clashcore=meta
|
crashcore=meta
|
||||||
setconfig clashcore $clashcore
|
setconfig crashcore $crashcore
|
||||||
echo "已将clash内核切换为Meta内核!域名嗅探依赖Meta或者高版本clashpre内核!"
|
echo "已将clash内核切换为Meta内核!域名嗅探依赖Meta或者高版本clashpre内核!"
|
||||||
fi
|
fi
|
||||||
sniffer=已启用
|
sniffer=已启用
|
||||||
elif [ "$clashcore" = "clashpre" -a "$dns_mod" = "redir_host" ];then
|
elif [ "$crashcore" = "clashpre" -a "$dns_mod" = "redir_host" ];then
|
||||||
echo -e "\033[31m使用clashpre内核且开启redir-host模式时无法关闭!\033[0m"
|
echo -e "\033[31m使用clashpre内核且开启redir-host模式时无法关闭!\033[0m"
|
||||||
else
|
else
|
||||||
sniffer=未启用
|
sniffer=未启用
|
||||||
|
|||||||
@@ -808,31 +808,35 @@ setcpucore(){
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
getcore(){
|
getcore(){
|
||||||
[ -z "$clashcore" ] && clashcore=clashpre
|
[ -z "$crashcore" ] && crashcore=clashpre
|
||||||
[ -z "$cpucore" ] && getcpucore
|
[ -z "$cpucore" ] && getcpucore
|
||||||
#生成链接
|
#生成链接
|
||||||
[ -z "$custcorelink" ] && corelink="$update_url/bin/$clashcore/clash-linux-$cpucore" || corelink="$custcorelink"
|
[ -z "$custcorelink" ] && corelink="$update_url/bin/$crashcore/clash-linux-$cpucore" || corelink="$custcorelink"
|
||||||
#获取在线clash核心文件
|
#获取在线内核文件
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo 正在在线获取clash核心文件……
|
echo 正在在线获取$crashcore核心文件……
|
||||||
$CRASHDIR/start.sh webget $TMPDIR/clash.new $corelink
|
$CRASHDIR/start.sh webget $TMPDIR/core.new $corelink
|
||||||
if [ "$?" = "1" ];then
|
if [ "$?" = "1" ];then
|
||||||
echo -e "\033[31m核心文件下载失败!\033[0m"
|
echo -e "\033[31m核心文件下载失败!\033[0m"
|
||||||
rm -rf $TMPDIR/clash.new
|
rm -rf $TMPDIR/core.new
|
||||||
[ -z "$custcorelink" ] && error_down
|
[ -z "$custcorelink" ] && error_down
|
||||||
else
|
else
|
||||||
chmod +x $TMPDIR/clash.new
|
chmod +x $TMPDIR/core.new
|
||||||
$CRASHDIR/start.sh stop
|
$CRASHDIR/start.sh stop
|
||||||
clashv=$($TMPDIR/clash.new -v 2>/dev/null | sed 's/ linux.*//;s/.* //')
|
if [ "$crashcore" = singbox ];then
|
||||||
if [ -z "$clashv" ];then
|
core_v=$($TMPDIR/core.new version 2>/dev/null | grep version | awk '{print $3}')
|
||||||
|
else
|
||||||
|
core_v=$($TMPDIR/core.new -v 2>/dev/null | sed 's/ linux.*//;s/.* //')
|
||||||
|
fi
|
||||||
|
if [ -z "$core_v" ];then
|
||||||
echo -e "\033[31m核心文件下载成功但校验失败!请尝试手动指定CPU版本\033[0m"
|
echo -e "\033[31m核心文件下载成功但校验失败!请尝试手动指定CPU版本\033[0m"
|
||||||
rm -rf $TMPDIR/clash.new
|
rm -rf $TMPDIR/core.new
|
||||||
setcpucore
|
setcpucore
|
||||||
else
|
else
|
||||||
echo -e "\033[32m$clashcore核心下载成功!\033[0m"
|
echo -e "\033[32m$crashcore核心下载成功!\033[0m"
|
||||||
mv -f $TMPDIR/clash.new $bindir/clash
|
mv -f $TMPDIR/core.new $bindir/CrashCore
|
||||||
chmod +x $bindir/clash
|
chmod +x $bindir/CrashCore
|
||||||
setconfig clashcore $clashcore
|
setconfig crashcore $crashcore
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -840,7 +844,7 @@ setcustcore(){
|
|||||||
[ -z "$cpucore" ] && getcpucore
|
[ -z "$cpucore" ] && getcpucore
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e "\033[36m自定义内核均未经过适配,可能存在部分功能不兼容的问题!\033[0m"
|
echo -e "\033[36m自定义内核均未经过适配,可能存在部分功能不兼容的问题!\033[0m"
|
||||||
echo -e "\033[36m如你不熟悉clash的运行机制,请使用脚本已经适配过的内核!\033[0m"
|
echo -e "\033[36m如你不熟悉相关内核的运行机制,请使用脚本已经适配过的内核!\033[0m"
|
||||||
echo -e "\033[36m自定义内核不兼容小闪存模式,且下载可能依赖服务!\033[0m"
|
echo -e "\033[36m自定义内核不兼容小闪存模式,且下载可能依赖服务!\033[0m"
|
||||||
echo -e "\033[33m继续后如出现任何问题,请务必自行解决,一切提问恕不受理!\033[0m"
|
echo -e "\033[33m继续后如出现任何问题,请务必自行解决,一切提问恕不受理!\033[0m"
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
@@ -850,23 +854,29 @@ setcustcore(){
|
|||||||
echo -e "\033[33m请选择需要使用的核心!\033[0m"
|
echo -e "\033[33m请选择需要使用的核心!\033[0m"
|
||||||
echo -e "1 \033[32m 测试版ClashPre内核 \033[0m"
|
echo -e "1 \033[32m 测试版ClashPre内核 \033[0m"
|
||||||
echo -e "2 \033[32m 最新Meta.Alpha内核 \033[0m"
|
echo -e "2 \033[32m 最新Meta.Alpha内核 \033[0m"
|
||||||
echo -e "3 \033[33m 自定义内核链接 \033[0m"
|
echo -e "3 \033[32m Sing-Box官方内核 \033[0m"
|
||||||
|
echo -e "4 \033[33m 自定义内核链接 \033[0m"
|
||||||
read -p "请输入对应数字 > " num
|
read -p "请输入对应数字 > " num
|
||||||
case "$num" in
|
case "$num" in
|
||||||
1)
|
1)
|
||||||
clashcore=clashpre
|
crashcore=clashpre
|
||||||
custcorelink=https://github.com/juewuy/ShellCrash/releases/download/clash.premium.latest/clash-linux-$cpucore
|
custcorelink=https://github.com/juewuy/ShellCrash/releases/download/clash.premium.latest/clash-linux-$cpucore
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
clashcore=meta
|
crashcore=meta
|
||||||
custcorelink=https://github.com/juewuy/ShellCrash/releases/download/clash.meta.alpha/clash-linux-$cpucore
|
custcorelink=https://github.com/juewuy/ShellCrash/releases/download/clash.meta.alpha/clash-linux-$cpucore
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
|
crashcore=singbox
|
||||||
|
custcorelink=https://github.com/juewuy/ShellCrash/releases/download/singbox_core/singbox-linux-$cpucore
|
||||||
|
getcore
|
||||||
|
;;
|
||||||
|
4)
|
||||||
read -p "请输入自定义内核的链接地址(必须是二进制文件) > " link
|
read -p "请输入自定义内核的链接地址(必须是二进制文件) > " link
|
||||||
[ -n "$link" ] && custcorelink="$link"
|
[ -n "$link" ] && custcorelink="$link"
|
||||||
clashcore=meta
|
crashcore=meta
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@@ -877,11 +887,11 @@ setcustcore(){
|
|||||||
}
|
}
|
||||||
setcore(){
|
setcore(){
|
||||||
#获取核心及版本信息
|
#获取核心及版本信息
|
||||||
[ ! -f $CRASHDIR/clash ] && clashcore="未安装核心"
|
[ ! -f $CRASHDIR/CrashCore ] && crashcore="未安装核心"
|
||||||
###
|
###
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
[ -z "$cpucore" ] && getcpucore
|
[ -z "$cpucore" ] && getcpucore
|
||||||
echo -e "当前clash核心:\033[42;30m $clashcore \033[47;30m$clashv\033[0m"
|
echo -e "当前clash核心:\033[42;30m $crashcore \033[47;30m$clashv\033[0m"
|
||||||
echo -e "当前系统处理器架构:\033[32m $cpucore \033[0m"
|
echo -e "当前系统处理器架构:\033[32m $cpucore \033[0m"
|
||||||
echo -e "\033[33m请选择需要使用的核心版本!\033[0m"
|
echo -e "\033[33m请选择需要使用的核心版本!\033[0m"
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
@@ -905,17 +915,17 @@ setcore(){
|
|||||||
read -p "请输入对应数字 > " num
|
read -p "请输入对应数字 > " num
|
||||||
case "$num" in
|
case "$num" in
|
||||||
1)
|
1)
|
||||||
clashcore=clash
|
crashcore=clash
|
||||||
custcorelink=''
|
custcorelink=''
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
clashcore=clashpre
|
crashcore=clashpre
|
||||||
custcorelink=''
|
custcorelink=''
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
clashcore=meta
|
crashcore=meta
|
||||||
custcorelink=''
|
custcorelink=''
|
||||||
getcore
|
getcore
|
||||||
;;
|
;;
|
||||||
@@ -1002,7 +1012,7 @@ setgeo(){
|
|||||||
fi
|
fi
|
||||||
setgeo
|
setgeo
|
||||||
elif [ "$num" = '5' ]; then
|
elif [ "$num" = '5' ]; then
|
||||||
if [ "$clashcore" = "meta" ]; then
|
if [ "$crashcore" = "meta" ]; then
|
||||||
geotype=geosite.dat
|
geotype=geosite.dat
|
||||||
geoname=GeoSite.dat
|
geoname=GeoSite.dat
|
||||||
getgeo
|
getgeo
|
||||||
@@ -1298,9 +1308,9 @@ update(){
|
|||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -ne "\033[32m正在检查更新!\033[0m\r"
|
echo -ne "\033[32m正在检查更新!\033[0m\r"
|
||||||
checkupdate
|
checkupdate
|
||||||
clash_v=$($bindir/clash -v 2>/dev/null | head -n 1 | sed 's/ linux.*//;s/.* //')
|
core_v=$($bindir/clash -v 2>/dev/null | head -n 1 | sed 's/ linux.*//;s/.* //')
|
||||||
[ -z "$clash_v" ] && clash_v=$clashv
|
[ -z "$core_v" ] && core_v=$clashv
|
||||||
clash_v_new=$(eval echo \$${clashcore}_v)
|
core_v_new=$(eval echo \$${crashcore}_v)
|
||||||
echo -e "\033[30;47m欢迎使用更新功能:\033[0m"
|
echo -e "\033[30;47m欢迎使用更新功能:\033[0m"
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e "当前目录(\033[32m$CRASHDIR\033[0m)剩余空间:\033[36m$(dir_avail $CRASHDIR -h)\033[0m"
|
echo -e "当前目录(\033[32m$CRASHDIR\033[0m)剩余空间:\033[36m$(dir_avail $CRASHDIR -h)\033[0m"
|
||||||
@@ -1310,7 +1320,7 @@ update(){
|
|||||||
}
|
}
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e " 1 更新\033[36m管理脚本 \033[33m$versionsh_l\033[0m > \033[32m$versionsh$release_type\033[0m"
|
echo -e " 1 更新\033[36m管理脚本 \033[33m$versionsh_l\033[0m > \033[32m$versionsh$release_type\033[0m"
|
||||||
echo -e " 2 切换\033[33mclash核心 \033[33m$clash_v\033[0m > \033[32m$clash_v_new\033[0m"
|
echo -e " 2 切换\033[33m内核文件 \033[33m$core_v\033[0m > \033[32m$core_v_new\033[0m"
|
||||||
echo -e " 3 更新\033[32m数据库文件\033[0m"
|
echo -e " 3 更新\033[32m数据库文件\033[0m"
|
||||||
echo -e " 4 安装本地\033[35mDashboard\033[0m面板"
|
echo -e " 4 安装本地\033[35mDashboard\033[0m面板"
|
||||||
echo -e " 5 安装/更新本地\033[33m根证书文件\033[0m"
|
echo -e " 5 安装/更新本地\033[33m根证书文件\033[0m"
|
||||||
@@ -1431,7 +1441,7 @@ userguide(){
|
|||||||
fi
|
fi
|
||||||
elif [ "$num" = 2 ];then
|
elif [ "$num" = 2 ];then
|
||||||
setconfig redir_mod "纯净模式"
|
setconfig redir_mod "纯净模式"
|
||||||
setconfig clashcore "clash"
|
setconfig crashcore "clash"
|
||||||
setconfig common_ports "未开启"
|
setconfig common_ports "未开启"
|
||||||
echo -----------------------------------------------
|
echo -----------------------------------------------
|
||||||
echo -e "\033[36m请选择设置本机代理的方式\033[0m"
|
echo -e "\033[36m请选择设置本机代理的方式\033[0m"
|
||||||
|
|||||||
@@ -247,6 +247,8 @@ done
|
|||||||
#配置文件改名
|
#配置文件改名
|
||||||
mv -f $CRASHDIR/mark $CRASHDIR/configs/ShellCrash.cfg 2>/dev/null
|
mv -f $CRASHDIR/mark $CRASHDIR/configs/ShellCrash.cfg 2>/dev/null
|
||||||
mv -f $CRASHDIR/configs/ShellClash.cfg $CRASHDIR/configs/ShellCrash.cfg 2>/dev/null
|
mv -f $CRASHDIR/configs/ShellClash.cfg $CRASHDIR/configs/ShellCrash.cfg 2>/dev/null
|
||||||
|
#内核改名
|
||||||
|
mv -f $CRASHDIR/clash $CRASHDIR/CrashCore 2>/dev/null
|
||||||
for file in dropbear_rsa_host_key authorized_keys tun.ko ShellDDNS.sh;do
|
for file in dropbear_rsa_host_key authorized_keys tun.ko ShellDDNS.sh;do
|
||||||
mv -f $CRASHDIR/$file $CRASHDIR/tools/$file 2>/dev/null
|
mv -f $CRASHDIR/$file $CRASHDIR/tools/$file 2>/dev/null
|
||||||
done
|
done
|
||||||
@@ -257,6 +259,7 @@ chmod 755 $CRASHDIR/task/task.sh
|
|||||||
for file in log clash.service mark? mark.bak;do
|
for file in log clash.service mark? mark.bak;do
|
||||||
rm -rf $CRASHDIR/$file
|
rm -rf $CRASHDIR/$file
|
||||||
done
|
done
|
||||||
|
|
||||||
#旧版任务清理
|
#旧版任务清理
|
||||||
$CRASHDIR/start.sh cronset "clash服务" 2>/dev/null
|
$CRASHDIR/start.sh cronset "clash服务" 2>/dev/null
|
||||||
$CRASHDIR/start.sh cronset "订阅链接" 2>/dev/null
|
$CRASHDIR/start.sh cronset "订阅链接" 2>/dev/null
|
||||||
|
|||||||
@@ -25,14 +25,14 @@ check_update(){ #检查更新工具
|
|||||||
update_core(){ #自动更新内核
|
update_core(){ #自动更新内核
|
||||||
#检查版本
|
#检查版本
|
||||||
check_update
|
check_update
|
||||||
clash_v_new=$(eval echo \$${clashcore}_v)
|
clash_v_new=$(eval echo \$${crashcore}_v)
|
||||||
clash_v_now=$($bindir/clash -v 2>/dev/null | head -n 1 | sed 's/ linux.*//;s/.* //')
|
clash_v_now=$($bindir/clash -v 2>/dev/null | head -n 1 | sed 's/ linux.*//;s/.* //')
|
||||||
if [ -z "$clash_v_new" -o "$clash_v_new" = "clash_v_now" ];then
|
if [ -z "$clash_v_new" -o "$clash_v_new" = "clash_v_now" ];then
|
||||||
logger "任务【自动更新内核】中止-未检测到版本更新"
|
logger "任务【自动更新内核】中止-未检测到版本更新"
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
#更新内核
|
#更新内核
|
||||||
$CRASHDIR/start.sh webget $TMPDIR/clash.new "$update_url/bin/$clashcore/clash-linux-$cpucore"
|
$CRASHDIR/start.sh webget $TMPDIR/clash.new "$update_url/bin/$crashcore/clash-linux-$cpucore"
|
||||||
if [ "$?" != "0" ];then
|
if [ "$?" != "0" ];then
|
||||||
logger "任务【自动更新内核】出错-下载失败!"
|
logger "任务【自动更新内核】出错-下载失败!"
|
||||||
rm -rf $TMPDIR/clash.new
|
rm -rf $TMPDIR/clash.new
|
||||||
@@ -44,7 +44,7 @@ update_core(){ #自动更新内核
|
|||||||
if [ -z "$clashv" ];then
|
if [ -z "$clashv" ];then
|
||||||
logger "任务【自动更新内核】出错-下载失败!"
|
logger "任务【自动更新内核】出错-下载失败!"
|
||||||
rm -rf $TMPDIR/clash.new
|
rm -rf $TMPDIR/clash.new
|
||||||
[ $clashcore = meta ] && $CRASHDIR/start.sh start
|
[ $crashcore = meta ] && $CRASHDIR/start.sh start
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
mv -f $TMPDIR/clash.new $bindir/clash
|
mv -f $TMPDIR/clash.new $bindir/clash
|
||||||
|
|||||||
Reference in New Issue
Block a user