mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
Fix md0 related operations
This commit is contained in:
parent
6f074c5846
commit
c51285f16d
@ -371,3 +371,22 @@ function connectwlanif() {
|
|||||||
wpa_supplicant -i ${1} -c "${CONF}" -B -P "/var/run/wpa_supplicant.pid.${1}" >/dev/null 2>&1
|
wpa_supplicant -i ${1} -c "${CONF}" -B -P "/var/run/wpa_supplicant.pid.${1}" >/dev/null 2>&1
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Find and mount the DSM root filesystem
|
||||||
|
# (based on pocopico's TCRP code)
|
||||||
|
function findDSMRoot() {
|
||||||
|
local DSMROOTS=""
|
||||||
|
local RAIDS="$(lsblk -pno KNAME,PARTN,FSTYPE,FSVER,LABEL | grep -w " 1" | grep -w "linux_raid_member")"
|
||||||
|
if echo "${RAIDS}" | grep -q "1.2"; then
|
||||||
|
# SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
||||||
|
local LABELS="$(echo "${RAIDS}" | grep "1.2" | awk '{print $5}' | uniq)"
|
||||||
|
for I in ${LABELS}; do
|
||||||
|
[ -L "/dev/md/${I}" ] && DSMROOTS="${DSMROOTS} /dev/md/${I}"
|
||||||
|
done
|
||||||
|
elif echo "${RAIDS}" | grep -q "0.9"; then
|
||||||
|
DSMROOTS="$(echo "${RAIDS}" | grep "0.9" | awk '{print $1}')"
|
||||||
|
fi
|
||||||
|
echo ${DSMROOTS}
|
||||||
|
return 0
|
||||||
|
}
|
1437
files/initrd/opt/rr/lang/ar_SA/LC_MESSAGES/rr.po
Normal file
1437
files/initrd/opt/rr/lang/ar_SA/LC_MESSAGES/rr.po
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1728,14 +1728,15 @@ function formatDisks() {
|
|||||||
function tryRecoveryDSM() {
|
function tryRecoveryDSM() {
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--infobox "$(TEXT "Trying to recovery a installed DSM system ...")" 0 0
|
--infobox "$(TEXT "Trying to recovery a installed DSM system ...")" 0 0
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
mount "$(echo "${DSMROOTS}" | head -n 1 | cut -d' ' -f1)" "${TMP_PATH}/mdX"
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "mount DSM system partition(md0) failed!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "mount DSM system partition(md0) failed!\nPlease insert all disks before continuing.")" 0 0
|
||||||
@ -1904,22 +1905,24 @@ function allowDSMDowngrade() {
|
|||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--yesno "${MSG}" 0 0
|
--yesno "${MSG}" 0 0
|
||||||
[ $? -ne 0 ] && return
|
[ $? -ne 0 ] && return
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
while true; do
|
(
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
[ $? -ne 0 ] && break
|
mount "${I}" "${TMP_PATH}/mdX"
|
||||||
[ -f "${TMP_PATH}/mdX/etc/VERSION" ] && rm -f "${TMP_PATH}/mdX/etc/VERSION"
|
[ $? -ne 0 ] && continue
|
||||||
[ -f "${TMP_PATH}/mdX/etc.defaults/VERSION" ] && rm -f "${TMP_PATH}/mdX/etc.defaults/VERSION"
|
[ -f "${TMP_PATH}/mdX/etc/VERSION" ] && rm -f "${TMP_PATH}/mdX/etc/VERSION"
|
||||||
sync
|
[ -f "${TMP_PATH}/mdX/etc.defaults/VERSION" ] && rm -f "${TMP_PATH}/mdX/etc.defaults/VERSION"
|
||||||
umount "${TMP_PATH}/mdX"
|
sync
|
||||||
|
umount "${TMP_PATH}/mdX"
|
||||||
|
done
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
break
|
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
|
||||||
--progressbox "$(TEXT "Removing ...")" 20 100
|
--progressbox "$(TEXT "Removing ...")" 20 100
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "Remove VERSION file for DSM system partition(md0) completed.")" 0 0
|
--msgbox "$(TEXT "Remove VERSION file for DSM system partition(md0) completed.")" 0 0
|
||||||
@ -1929,16 +1932,17 @@ function allowDSMDowngrade() {
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Reset DSM system password
|
# Reset DSM system password
|
||||||
function resetDSMPassword() {
|
function resetDSMPassword() {
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
rm -f "${TMP_PATH}/menu"
|
rm -f "${TMP_PATH}/menu"
|
||||||
while true; do
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
mount ${I} "${TMP_PATH}/mdX"
|
||||||
[ $? -ne 0 ] && break
|
[ $? -ne 0 ] && continue
|
||||||
if [ -f "${TMP_PATH}/mdX/etc/shadow" ]; then
|
if [ -f "${TMP_PATH}/mdX/etc/shadow" ]; then
|
||||||
while read L; do
|
while read L; do
|
||||||
U=$(echo "${L}" | awk -F ':' '{if ($2 != "*" && $2 != "!!") print $1;}')
|
U=$(echo "${L}" | awk -F ':' '{if ($2 != "*" && $2 != "!!") print $1;}')
|
||||||
@ -1950,9 +1954,9 @@ function resetDSMPassword() {
|
|||||||
done <<<$(cat "${TMP_PATH}/mdX/etc/shadow" 2>/dev/null)
|
done <<<$(cat "${TMP_PATH}/mdX/etc/shadow" 2>/dev/null)
|
||||||
fi
|
fi
|
||||||
umount "${TMP_PATH}/mdX"
|
umount "${TMP_PATH}/mdX"
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
[ -f "${TMP_PATH}/menu" ] && break
|
||||||
break
|
|
||||||
done
|
done
|
||||||
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
if [ ! -f "${TMP_PATH}/menu" ]; then
|
if [ ! -f "${TMP_PATH}/menu" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "All existing users have been disabled. Please try adding new user.")" 0 0
|
--msgbox "$(TEXT "All existing users have been disabled. Please try adding new user.")" 0 0
|
||||||
@ -1975,21 +1979,22 @@ function resetDSMPassword() {
|
|||||||
--msgbox "$(TEXT "Invalid password")" 0 0
|
--msgbox "$(TEXT "Invalid password")" 0 0
|
||||||
done
|
done
|
||||||
NEWPASSWD="$(python -c "from passlib.hash import sha512_crypt;pw=\"${VALUE}\";print(sha512_crypt.using(rounds=5000).hash(pw))")"
|
NEWPASSWD="$(python -c "from passlib.hash import sha512_crypt;pw=\"${VALUE}\";print(sha512_crypt.using(rounds=5000).hash(pw))")"
|
||||||
while true; do
|
(
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
[ $? -ne 0 ] && break
|
mount "${I}" "${TMP_PATH}/mdX"
|
||||||
OLDPASSWD="$(cat "${TMP_PATH}/mdX/etc/shadow" 2>/dev/null | grep "^${USER}:" | awk -F ':' '{print $2}')"
|
[ $? -ne 0 ] && continue
|
||||||
if [ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ]; then
|
OLDPASSWD="$(cat "${TMP_PATH}/mdX/etc/shadow" 2>/dev/null | grep "^${USER}:" | awk -F ':' '{print $2}')"
|
||||||
sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/mdX/etc/shadow"
|
if [ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ]; then
|
||||||
sed -i "/^${USER}:/ s/\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)/\1:\2:\3:\4:\5:\6:\7::\9/" "${TMP_PATH}/mdX/etc/shadow"
|
sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/mdX/etc/shadow"
|
||||||
fi
|
sed -i "/^${USER}:/ s/\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)/\1:\2:\3:\4:\5:\6:\7::\9/" "${TMP_PATH}/mdX/etc/shadow"
|
||||||
sed -i "s|status=on|status=off|g" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
fi
|
||||||
sync
|
sed -i "s|status=on|status=off|g" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
||||||
umount "${TMP_PATH}/mdX"
|
sync
|
||||||
|
umount "${TMP_PATH}/mdX"
|
||||||
|
done
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
break
|
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
|
||||||
--progressbox "$(TEXT "Resetting ...")" 20 100
|
--progressbox "$(TEXT "Resetting ...")" 20 100
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "Password reset completed.")" 0 0
|
--msgbox "$(TEXT "Password reset completed.")" 0 0
|
||||||
@ -1999,7 +2004,8 @@ function resetDSMPassword() {
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Reset DSM system password
|
# Reset DSM system password
|
||||||
function addNewDSMUser() {
|
function addNewDSMUser() {
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
@ -2016,10 +2022,11 @@ function addNewDSMUser() {
|
|||||||
ONBOOTUP="${ONBOOTUP}if synouser --enum local | grep -q ^${username}\$; then synouser --setpw ${username} ${password}; else synouser --add ${username} ${password} rr 0 user@rr.com 1; fi\n"
|
ONBOOTUP="${ONBOOTUP}if synouser --enum local | grep -q ^${username}\$; then synouser --setpw ${username} ${password}; else synouser --add ${username} ${password} rr 0 user@rr.com 1; fi\n"
|
||||||
ONBOOTUP="${ONBOOTUP}synogroup --member administrators ${username}\n"
|
ONBOOTUP="${ONBOOTUP}synogroup --member administrators ${username}\n"
|
||||||
ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR_ADDUSER'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n"
|
ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR_ADDUSER'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n"
|
||||||
while true; do
|
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
[ $? -ne 0 ] && break
|
mount "${I}" "${TMP_PATH}/mdX"
|
||||||
|
[ $? -ne 0 ] && continue
|
||||||
if [ -f "${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then
|
if [ -f "${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then
|
||||||
sqlite3 ${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db <<EOF
|
sqlite3 ${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db <<EOF
|
||||||
DELETE FROM task WHERE task_name LIKE 'RRONBOOTUPRR_ADDUSER';
|
DELETE FROM task WHERE task_name LIKE 'RRONBOOTUPRR_ADDUSER';
|
||||||
@ -2030,9 +2037,8 @@ EOF
|
|||||||
echo "true" >${TMP_PATH}/isEnable
|
echo "true" >${TMP_PATH}/isEnable
|
||||||
fi
|
fi
|
||||||
umount "${TMP_PATH}/mdX"
|
umount "${TMP_PATH}/mdX"
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
|
||||||
break
|
|
||||||
done
|
done
|
||||||
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--progressbox "$(TEXT "Adding ...")" 20 100
|
--progressbox "$(TEXT "Adding ...")" 20 100
|
||||||
[ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "User added successfully.")" || MSG="$(TEXT "User add failed.")"
|
[ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "User added successfully.")" || MSG="$(TEXT "User add failed.")"
|
||||||
@ -2044,7 +2050,8 @@ EOF
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Force enable Telnet&SSH of DSM system
|
# Force enable Telnet&SSH of DSM system
|
||||||
function forceEnableDSMTelnetSSH() {
|
function forceEnableDSMTelnetSSH() {
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
@ -2053,10 +2060,10 @@ function forceEnableDSMTelnetSSH() {
|
|||||||
ONBOOTUP=""
|
ONBOOTUP=""
|
||||||
ONBOOTUP="${ONBOOTUP}synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false\n"
|
ONBOOTUP="${ONBOOTUP}synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false\n"
|
||||||
ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR_SSH'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n"
|
ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR_SSH'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n"
|
||||||
while true; do
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
mount "${I}" "${TMP_PATH}/mdX"
|
||||||
[ $? -ne 0 ] && break
|
[ $? -ne 0 ] && continue
|
||||||
if [ -f "${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then
|
if [ -f "${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then
|
||||||
sqlite3 ${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db <<EOF
|
sqlite3 ${TMP_PATH}/mdX/usr/syno/etc/esynoscheduler/esynoscheduler.db <<EOF
|
||||||
DELETE FROM task WHERE task_name LIKE 'RRONBOOTUPRR_SSH';
|
DELETE FROM task WHERE task_name LIKE 'RRONBOOTUPRR_SSH';
|
||||||
@ -2067,9 +2074,8 @@ EOF
|
|||||||
echo "true" >${TMP_PATH}/isEnable
|
echo "true" >${TMP_PATH}/isEnable
|
||||||
fi
|
fi
|
||||||
umount "${TMP_PATH}/mdX"
|
umount "${TMP_PATH}/mdX"
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
|
||||||
break
|
|
||||||
done
|
done
|
||||||
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--progressbox "$(TEXT "Enabling ...")" 20 100
|
--progressbox "$(TEXT "Enabling ...")" 20 100
|
||||||
[ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "Enabled Telnet&SSH successfully.")" || MSG="$(TEXT "Enabled Telnet&SSH failed.")"
|
[ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "Enabled Telnet&SSH successfully.")" || MSG="$(TEXT "Enabled Telnet&SSH failed.")"
|
||||||
@ -2087,21 +2093,23 @@ function removeBlockIPDB {
|
|||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--yesno "${MSG}" 0 0
|
--yesno "${MSG}" 0 0
|
||||||
[ $? -ne 0 ] && return
|
[ $? -ne 0 ] && return
|
||||||
if [ -z "$(ls /dev/md/*:0 2>/dev/null)" ]; then # SynologyNAS:0, DiskStation:0, SynologyNVR:0, BeeStation:0
|
DSMROOTS="$(findDSMRoot)"
|
||||||
|
if [ -z "${DSMROOTS}" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
--msgbox "$(TEXT "No DSM system partition(md0) found!\nPlease insert all disks before continuing.")" 0 0
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
while true; do
|
(
|
||||||
mkdir -p "${TMP_PATH}/mdX"
|
mkdir -p "${TMP_PATH}/mdX"
|
||||||
mount "$(ls /dev/md/*:0 2>/dev/null | head -n 1)" "${TMP_PATH}/mdX"
|
for I in ${DSMROOTS}; do
|
||||||
[ $? -ne 0 ] && break
|
mount "${I}" "${TMP_PATH}/mdX"
|
||||||
[ -f "${TMP_PATH}/mdX/etc/synoautoblock.db" ] && rm -f "${TMP_PATH}/mdX/etc/synoautoblock.db"
|
[ $? -ne 0 ] && continue
|
||||||
sync
|
[ -f "${TMP_PATH}/mdX/etc/synoautoblock.db" ] && rm -f "${TMP_PATH}/mdX/etc/synoautoblock.db"
|
||||||
umount "${TMP_PATH}/mdX"
|
sync
|
||||||
|
umount "${TMP_PATH}/mdX"
|
||||||
|
done
|
||||||
rm -rf "${TMP_PATH}/mdX"
|
rm -rf "${TMP_PATH}/mdX"
|
||||||
break
|
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
|
||||||
--progressbox "$(TEXT "Removing ...")" 20 100
|
--progressbox "$(TEXT "Removing ...")" 20 100
|
||||||
MSG="$(TEXT "The blocked ip database has been deleted.")"
|
MSG="$(TEXT "The blocked ip database has been deleted.")"
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
@ -2708,7 +2716,7 @@ function downloadExts() {
|
|||||||
if [ ${RET} -ne 0 -o ${STATUS:-0} -ne 200 ]; then
|
if [ ${RET} -ne 0 -o ${STATUS:-0} -ne 200 ]; then
|
||||||
rm -f "${TMP_PATH}/${4}-${TAG}.zip"
|
rm -f "${TMP_PATH}/${4}-${TAG}.zip"
|
||||||
MSG="$(printf "$(TEXT "Error downloading new version.\nError: %d:%d\n(Please via https://curl.se/libcurl/c/libcurl-errors.html check error description.)")" "${RET}" "${STATUS}")"
|
MSG="$(printf "$(TEXT "Error downloading new version.\nError: %d:%d\n(Please via https://curl.se/libcurl/c/libcurl-errors.html check error description.)")" "${RET}" "${STATUS}")"
|
||||||
echo -e "${MSG}" > "${LOG_FILE}"
|
echo -e "${MSG}" >"${LOG_FILE}"
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user