Update menu.sh

dependabot/github_actions/actions/checkout-3.1.0
fscarmen 3 years ago committed by GitHub
parent 7be761b45e
commit 3c7be0a9a8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 34
      menu.sh

@ -425,7 +425,7 @@ check_operating_system(){
check_dependencies(){
type -p curl >/dev/null 2>&1 || (yellow " ${T[${L}7]} " && ${PACKAGE_INSTALL[int]} curl 2>/dev/null) || (yellow " ${T[${L}8]} " && ${PACKAGE_UPDATE[int]} && ${PACKAGE_INSTALL[int]} curl 2>/dev/null)
! type -p curl >/dev/null 2>&1 && red " ${T[${L}9]} " && exit 1
[[ $SYSTEM = Alpine ]] && ! type -P curl >/dev/null 2>&1 && ${PACKAGE_UPDATE[int]} && ${PACKAGE_INSTALL[int]} curl wget grep
[[ $SYSTEM = Alpine ]] && ! type -p curl >/dev/null 2>&1 && ${PACKAGE_UPDATE[int]} && ${PACKAGE_INSTALL[int]} curl wget grep
}
# 检测 IPv4 IPv6 信息,WARP Ineterface 开启,普通还是 Plus账户 和 IP 信息
@ -459,7 +459,7 @@ ip6_info(){
proxy_info(){
unset PROXYSOCKS5 PROXYPORT PROXYJASON PROXYIP PROXYCOUNTR PROXYASNORG ACCOUNT QUOTA AC PROXYSOCKS52 PROXYPORT2 PROXYJASON2 PROXYIP2 PROXYCOUNTR2 PROXYASNORG2 ACCOUNT2 AC2 TRACE42
if type -P warp-cli >/dev/null 2>&1; then
if type -p warp-cli >/dev/null 2>&1; then
PROXYSOCKS5=$(ss -nltp | grep 'warp' | grep -oP '127.0*\S+')
PROXYPORT=$(echo $PROXYSOCKS5 | cut -d: -f2)
PROXYJASON=$(curl -sx socks5h://localhost:$PROXYPORT https://ip.gs/json)
@ -471,7 +471,7 @@ proxy_info(){
[[ $ACCOUNT =~ 'Limited' ]] && AC='+' && check_quota
fi
if type -P wireproxy >/dev/null 2>&1; then
if type -p wireproxy >/dev/null 2>&1; then
PROXYSOCKS52=$(ss -nltp | grep 'wireproxy' | grep -oP '127.0*\S+')
PROXYPORT2=$(echo $PROXYSOCKS52 | cut -d: -f2)
PROXYJASON2=$(curl -sx socks5h://localhost:$PROXYPORT2 https://ip.gs/json)
@ -509,8 +509,8 @@ plus(){
reading " ${T[${L}50]} " CHOOSEPLUS
case "$CHOOSEPLUS" in
1 ) input
[[ $(type -P git) ]] || ${PACKAGE_INSTALL[int]} git 2>/dev/null
[[ $(type -P python3) ]] || ${PACKAGE_INSTALL[int]} python3 2>/dev/null
[[ $(type -p git) ]] || ${PACKAGE_INSTALL[int]} git 2>/dev/null
[[ $(type -p python3) ]] || ${PACKAGE_INSTALL[int]} python3 2>/dev/null
[[ -d ~/warp-plus-cloudflare ]] || git clone https://github.com/aliilapro/warp-plus-cloudflare.git
echo "$ID" | python3 ~/warp-plus-cloudflare/wp-plus.py;;
2 ) input
@ -672,7 +672,7 @@ change_ip(){
CHANGE_IP3=("" "" "" "" "" "" "" "change_wireproxy")
for ((a=0; a<${#INSTALL_CHECK[@]}; a++)); do
type -P ${INSTALL_CHECK[a]} >/dev/null 2>&1 && INSTALL_RESULT[a]=1 || INSTALL_RESULT[a]=0
type -p ${INSTALL_CHECK[a]} >/dev/null 2>&1 && INSTALL_RESULT[a]=1 || INSTALL_RESULT[a]=0
done
for ((b=0; b<${#CASE_RESAULT[@]}; b++)); do
@ -752,7 +752,7 @@ uninstall(){
UNINSTALL_DO=("uninstall_wgcf" "uninstall_proxy" "uninstall_wireproxy")
UNINSTALL_RESULT=("${T[${L}117]}" "${T[${L}119]}" "${T[${L}98]}")
for ((i=0; i<${#UNINSTALL_CHECK}; i++)); do
type -P ${UNINSTALL_CHECK[i]} >/dev/null 2>&1 && (${UNINSTALL_DO[i]}; green " ${UNINSTALL_RESULT[i]} ")
type -p ${UNINSTALL_CHECK[i]} >/dev/null 2>&1 && (${UNINSTALL_DO[i]}; green " ${UNINSTALL_RESULT[i]} ")
done
# 显示卸载结果
@ -773,7 +773,7 @@ ver(){
# 由于warp bug,有时候获取不了ip地址,加入刷网络脚本手动运行,并在定时任务加设置 VPS 重启后自动运行,i=当前尝试次数,j=要尝试的次数
net(){
unset IP4 IP6 WAN4 WAN6 COUNTRY4 COUNTRY6 ASNORG4 ASNORG6 WARPSTATUS4 WARPSTATUS6
[[ ! $(type -P wg-quick) || ! -e /etc/wireguard/wgcf.conf ]] && red " ${T[${L}10]} " && exit 1
[[ ! $(type -p wg-quick) || ! -e /etc/wireguard/wgcf.conf ]] && red " ${T[${L}10]} " && exit 1
i=1;j=5
yellow " $(eval echo "${T[${L}11]}")\n $(eval echo "${T[${L}12]}") "
[[ $SYSTEM != Alpine ]] && [[ $(systemctl is-active wg-quick@wgcf) != 'active' ]] && wg-quick down wgcf >/dev/null 2>&1
@ -805,13 +805,13 @@ net(){
# WARP 开关,先检查是否已安装,再根据当前状态转向相反状态
onoff(){
! type -P wg-quick >/dev/null 2>&1 && red " ${T[${L}155]} " && exit 1
! type -p wg-quick >/dev/null 2>&1 && red " ${T[${L}155]} " && exit 1
[[ -n $(wg 2>/dev/null) ]] && (wg-quick down wgcf >/dev/null 2>&1; green " ${T[${L}15]} ") || net
}
# Proxy 开关,先检查是否已安装,再根据当前状态转向相反状态
proxy_onoff(){
! type -P warp-cli >/dev/null 2>&1 && red " ${T[${L}93]} " && exit 1
! type -p warp-cli >/dev/null 2>&1 && red " ${T[${L}93]} " && exit 1
if systemctl is-active warp-svc >/dev/null 2>&1; then
[[ ! $(warp-cli --accept-tos settings) =~ WarpProxy ]] && ( ip -4 rule delete from 172.16.0.2/32 lookup 51820; ip -4 rule delete table main suppress_prefixlength 0 )
systemctl stop warp-svc
@ -841,7 +841,7 @@ proxy_onoff(){
# WireProxy 开关,先检查是否已安装,再根据当前状态转向相反状态
wireproxy_onoff(){
! type -P wireproxy >/dev/null 2>&1 && red " ${T[${L}157]} " && exit 1 || OCTEEP=1
! type -p wireproxy >/dev/null 2>&1 && red " ${T[${L}157]} " && exit 1 || OCTEEP=1
if ss -nltp | grep wireproxy >/dev/null 2>&1; then
systemctl stop wireproxy
[[ ! $(ss -nltp) =~ 'wireproxy' ]] && green " ${T[${L}158]} "
@ -965,7 +965,7 @@ EOF
# 判断当前 Linux Client 状态,决定变量 CLIENT,变量 CLIENT 含义:0=未安装 1=已安装未激活 2=状态激活 3=Clinet proxy 已开启 5=Clinet warp 已开启
CLIENT=0
if type -P warp-cli >/dev/null 2>&1; then
if type -p warp-cli >/dev/null 2>&1; then
ACCOUNT=$(warp-cli --accept-tos account 2>/dev/null)
[[ $ACCOUNT =~ 'Limited' ]] && CHECK_TYPE=1 && AC='+' && check_quota
CLIENT=1 && CLIENT_INSTALLED="${T[${L}92]}"
@ -979,7 +979,7 @@ EOF
# 判断当前 WireProxy 状态,决定变量 WIREPROXY,变量 WIREPROXY 含义:0=未安装 1=已安装未激活 2=状态激活 3=Clinet 已开启
WIREPROXY=0
if type -P wireproxy >/dev/null 2>&1; then
if type -p wireproxy >/dev/null 2>&1; then
WIREPROXY=1
[[ $WIREPROXY = 1 ]] && WIREPROXY_INSTALLED="${T[${L}92]}" && [[ $(ss -nltp) =~ 'wireproxy' ]] && WIREPROXY=3 && proxy_info || WIREPROXY=2
fi
@ -1331,10 +1331,10 @@ install(){
${PACKAGE_UPDATE[int]}
# s390x wireguard-tools 安装
[[ $ARCHITECTURE = s390x ]] && ! type -P wg >/etc/null 2>&1 && rpm -i https://mirrors.cloud.tencent.com/epel/8/Everything/s390x/Packages/w/wireguard-tools-1.0.20210914-1.el8.s390x.rpm
[[ $ARCHITECTURE = s390x ]] && ! type -p wg >/etc/null 2>&1 && rpm -i https://mirrors.cloud.tencent.com/epel/8/Everything/s390x/Packages/w/wireguard-tools-1.0.20210914-1.el8.s390x.rpm
# CentOS Stream 9 需要安装 resolvconf
[[ $SYSTEM = CentOS && "$(expr "$SYS" : '.*\s\([0-9]\{1,\}\)\.*')" = 9 ]] && ! type -P resolvconf >/dev/null 2>&1 &&
[[ $SYSTEM = CentOS && "$(expr "$SYS" : '.*\s\([0-9]\{1,\}\)\.*')" = 9 ]] && ! type -p resolvconf >/dev/null 2>&1 &&
wget $CDN -P /usr/sbin https://github.com/fscarmen/warp/releases/download/resolvconf/resolvconf && chmod +x /usr/sbin/resolvconf
}
@ -1470,7 +1470,7 @@ EOF
# 设置开机启动
${SYSTEMCTL_ENABLE[int]}>/dev/null 2>&1
type -P dnsmasq >/dev/null 2>&1 && systemctl restart dnsmasq >/dev/null 2>&1
type -p dnsmasq >/dev/null 2>&1 && systemctl restart dnsmasq >/dev/null 2>&1
# Linux 内核低于5.6的,安装 Wireguard-GO。部分较低内核版本的KVM,即使安装了wireguard-dkms, 仍不能正常工作,兜底使用 wireguard-go
([[ $WG = 1 ]] || [[ $(systemctl is-active wg-quick@wgcf) != active ]] || [[ $(systemctl is-enabled wg-quick@wgcf) != enabled ]]) &&
@ -1792,7 +1792,7 @@ update(){
ACCOUNT3=("" "" "" "" "" "" "" "wireproxy_account")
for ((c=0; c<${#INSTALL_CHECK[@]}; c++)); do
type -P ${INSTALL_CHECK[c]} >/dev/null 2>&1 && INSTALL_RESULT[c]=1 || INSTALL_RESULT[c]=0
type -p ${INSTALL_CHECK[c]} >/dev/null 2>&1 && INSTALL_RESULT[c]=1 || INSTALL_RESULT[c]=0
done
for ((d=0; d<${#CASE_RESAULT[@]}; d++)); do

Loading…
Cancel
Save