mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
更新 menu.sh,修复 changePorts
This commit is contained in:
parent
74e0af058e
commit
a0d47860d3
@ -2661,74 +2661,76 @@ function changePorts() {
|
|||||||
HTTP=$(grep -i '^HTTP_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
HTTP=$(grep -i '^HTTP_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
||||||
DUFS=$(grep -i '^DUFS_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
DUFS=$(grep -i '^DUFS_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
||||||
TTYD=$(grep -i '^TTYD_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
TTYD=$(grep -i '^TTYD_PORT=' /etc/rrorg.conf 2>/dev/null | cut -d'=' -f2)
|
||||||
DIALOG --title "$(TEXT "Settings")" \
|
while true; do
|
||||||
--form "${MSG}" 11 70 3 "HTTP" 1 1 "${HTTP:-7080}" 1 10 55 0 "DUFS" 2 1 "${DUFS:-7304}" 2 10 55 0 "TTYD" 3 1 "${TTYD:-7681}" 3 10 55 0 \
|
DIALOG --title "$(TEXT "Settings")" \
|
||||||
2>"${TMP_PATH}/resp"
|
--form "${MSG}" 11 70 3 "HTTP" 1 1 "${HTTP:-7080}" 1 10 55 0 "DUFS" 2 1 "${DUFS:-7304}" 2 10 55 0 "TTYD" 3 1 "${TTYD:-7681}" 3 10 55 0 \
|
||||||
RET=$?
|
2>"${TMP_PATH}/resp"
|
||||||
case ${RET} in
|
RET=$?
|
||||||
0) # ok-button
|
case ${RET} in
|
||||||
function check_port() {
|
0) # ok-button
|
||||||
if [ -z "${1}" ]; then
|
function check_port() {
|
||||||
return 0
|
if [ -z "${1}" ]; then
|
||||||
else
|
|
||||||
if [[ "${1}" =~ ^[0-9]+$ ]] && [ "${1}" -ge 0 ] && [ "${1}" -le 65535 ]; then
|
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
return 1
|
if [[ "${1}" =~ ^[0-9]+$ ]] && [ "${1}" -ge 0 ] && [ "${1}" -le 65535 ]; then
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
}
|
||||||
|
HTTP=$(sed -n '1p' "${TMP_PATH}/resp")
|
||||||
|
DUFS=$(sed -n '2p' "${TMP_PATH}/resp")
|
||||||
|
TTYD=$(sed -n '3p' "${TMP_PATH}/resp")
|
||||||
|
EP=""
|
||||||
|
for P in "${HTTP}" "${DUFS}" "${TTYD}"; do check_port "${P}" || EP="${EP} ${P}"; done
|
||||||
|
if [ -n "${EP}" ]; then
|
||||||
|
DIALOG --title "$(TEXT "Settings")" \
|
||||||
|
--yesno "$(printf "$(TEXT "Invalid %s port number, retry?")" "${EP}")" 0 0
|
||||||
|
[ $? -eq 0 ] && continue || break
|
||||||
fi
|
fi
|
||||||
}
|
# save to rrorg.conf
|
||||||
HTTP=$(sed -n '1p' "${TMP_PATH}/resp")
|
rm -f "/etc/rrorg.conf"
|
||||||
DUFS=$(sed -n '2p' "${TMP_PATH}/resp")
|
[ ! "${HTTP:-7080}" = "7080" ] && echo "HTTP_PORT=${HTTP}" >>"/etc/rrorg.conf" && /etc/init.d/S90thttpd restart >/dev/null 2>&1
|
||||||
TTYD=$(sed -n '3p' "${TMP_PATH}/resp")
|
[ ! "${DUFS:-7304}" = "7304" ] && echo "DUFS_PORT=${DUFS}" >>"/etc/rrorg.conf" && /etc/init.d/S99dufs restart >/dev/null 2>&1
|
||||||
EP=""
|
[ ! "${TTYD:-7681}" = "7681" ] && echo "TTYD_PORT=${TTYD}" >>"/etc/rrorg.conf" && /etc/init.d/S99ttyd restart >/dev/null 2>&1
|
||||||
for P in "${HTTP}" "${DUFS}" "${TTYD}"; do check_port "${P}" || EP="${EP} ${P}"; done
|
# save to rru
|
||||||
if [ -n "${EP}" ]; then
|
RDXZ_PATH="${TMP_PATH}/rdxz_tmp"
|
||||||
DIALOG --title "$(TEXT "Settings")" \
|
rm -rf "${RDXZ_PATH}"
|
||||||
--yesno "$(printf "$(TEXT "Invalid %s port number, retry?")" "${EP}")" 0 0
|
mkdir -p "${RDXZ_PATH}"
|
||||||
[ $? -eq 0 ] && continue || break
|
[ -f "${RR_RAMUSER_FILE}" ] && (
|
||||||
fi
|
|
||||||
# save to rrorg.conf
|
|
||||||
rm -f "/etc/rrorg.conf"
|
|
||||||
[ ! "${HTTP:-7080}" = "7080" ] && echo "HTTP_PORT=${HTTP}" >>"/etc/rrorg.conf" && /etc/init.d/S90thttpd restart >/dev/null 2>&1
|
|
||||||
[ ! "${DUFS:-7304}" = "7304" ] && echo "DUFS_PORT=${DUFS}" >>"/etc/rrorg.conf" && /etc/init.d/S99dufs restart >/dev/null 2>&1
|
|
||||||
[ ! "${TTYD:-7681}" = "7681" ] && echo "TTYD_PORT=${TTYD}" >>"/etc/rrorg.conf" && /etc/init.d/S99ttyd restart >/dev/null 2>&1
|
|
||||||
# save to rru
|
|
||||||
RDXZ_PATH="${TMP_PATH}/rdxz_tmp"
|
|
||||||
rm -rf "${RDXZ_PATH}"
|
|
||||||
mkdir -p "${RDXZ_PATH}"
|
|
||||||
[ -f "${RR_RAMUSER_FILE}" ] && (
|
|
||||||
cd "${RDXZ_PATH}"
|
|
||||||
xz -dc <"${RR_RAMUSER_FILE}" | cpio -idm
|
|
||||||
) >/dev/null 2>&1 || true
|
|
||||||
if [ ! -f "/etc/rrorg.conf" ]; then
|
|
||||||
rm -f "${RDXZ_PATH}/etc/rrorg.conf" 2>/dev/null
|
|
||||||
else
|
|
||||||
mkdir -p "${RDXZ_PATH}/etc"
|
|
||||||
cp -p /etc/rrorg.conf ${RDXZ_PATH}/etc
|
|
||||||
fi
|
|
||||||
if [ -n "$(ls -A "${RDXZ_PATH}" 2>/dev/null)" ] && [ -n "$(ls -A "${RDXZ_PATH}/etc" 2>/dev/null)" ]; then
|
|
||||||
(
|
|
||||||
cd "${RDXZ_PATH}"
|
cd "${RDXZ_PATH}"
|
||||||
RDSIZE=$(du -sb ${RDXZ_PATH} 2>/dev/null | awk '{print $1}')
|
xz -dc <"${RR_RAMUSER_FILE}" | cpio -idm
|
||||||
find . 2>/dev/null | cpio -o -H newc -R root:root | pv -n -s ${RDSIZE:-1} | xz -9 --check=crc32 >"${RR_RAMUSER_FILE}"
|
) >/dev/null 2>&1 || true
|
||||||
) 2>&1 | DIALOG --title "$(TEXT "Settings")"
|
if [ ! -f "/etc/rrorg.conf" ]; then
|
||||||
else
|
rm -f "${RDXZ_PATH}/etc/rrorg.conf" 2>/dev/null
|
||||||
rm -f "${RR_RAMUSER_FILE}"
|
else
|
||||||
fi
|
mkdir -p "${RDXZ_PATH}/etc"
|
||||||
rm -rf "${RDXZ_PATH}"
|
cp -p /etc/rrorg.conf ${RDXZ_PATH}/etc
|
||||||
[ ! -f "/etc/rrorg.conf" ] && MSG="$(TEXT "Ports for TTYD/DUFS/HTTP restored.")" || MSG="$(TEXT "Ports for TTYD/DUFS/HTTP changed.")"
|
fi
|
||||||
DIALOG --title "$(TEXT "Settings")" \
|
if [ -n "$(ls -A "${RDXZ_PATH}" 2>/dev/null)" ] && [ -n "$(ls -A "${RDXZ_PATH}/etc" 2>/dev/null)" ]; then
|
||||||
--msgbox "${MSG}" 0 0
|
(
|
||||||
break
|
cd "${RDXZ_PATH}"
|
||||||
;;
|
RDSIZE=$(du -sb ${RDXZ_PATH} 2>/dev/null | awk '{print $1}')
|
||||||
1) # cancel-button
|
find . 2>/dev/null | cpio -o -H newc -R root:root | pv -n -s ${RDSIZE:-1} | xz -9 --check=crc32 >"${RR_RAMUSER_FILE}"
|
||||||
break
|
) 2>&1 | DIALOG --title "$(TEXT "Settings")"
|
||||||
;;
|
else
|
||||||
255) # ESC
|
rm -f "${RR_RAMUSER_FILE}"
|
||||||
break
|
fi
|
||||||
;;
|
rm -rf "${RDXZ_PATH}"
|
||||||
esac
|
[ ! -f "/etc/rrorg.conf" ] && MSG="$(TEXT "Ports for TTYD/DUFS/HTTP restored.")" || MSG="$(TEXT "Ports for TTYD/DUFS/HTTP changed.")"
|
||||||
|
DIALOG --title "$(TEXT "Settings")" \
|
||||||
|
--msgbox "${MSG}" 0 0
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
1) # cancel-button
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
255) # ESC
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user