From a71f4e89da49e0c4a844ac8ff354e8a81122fcbf Mon Sep 17 00:00:00 2001 From: Ing Date: Thu, 14 Nov 2024 13:56:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20menu.sh=EF=BC=8C=E7=AE=80?= =?UTF-8?q?=E5=8C=96=E9=87=8D=E7=BD=AE=20DSM=20=E5=AF=86=E7=A0=81=E7=9A=84?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E6=8F=90=E5=8D=87=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=8F=AF=E8=AF=BB=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- files/initrd/opt/rr/menu.sh | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/files/initrd/opt/rr/menu.sh b/files/initrd/opt/rr/menu.sh index e4740a78..2a17b2b4 100755 --- a/files/initrd/opt/rr/menu.sh +++ b/files/initrd/opt/rr/menu.sh @@ -1779,11 +1779,8 @@ function resetDSMPassword() { for I in ${DSMROOTS}; do mount -t ext4 "${I}" "${TMP_PATH}/mdX" [ $? -ne 0 ] && continue - OLDPASSWD="$(cat "${TMP_PATH}/mdX/etc/shadow" 2>/dev/null | grep "^${USER}:" | awk -F ':' '{print $2}')" - if [ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ]; then - sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/mdX/etc/shadow" - sed -i "/^${USER}:/ s/\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)/\1:\2:\3:\4:\5:\6:\7::\9/" "${TMP_PATH}/mdX/etc/shadow" - fi + sed -i "s|^${USER}:[^:]*|${USER}:${NEWPASSWD}|" "${TMP_PATH}/mdX/etc/shadow" + sed -i "/^${USER}:/ s/^\(${USER}:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*:/\1:/" "${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 sync umount "${TMP_PATH}/mdX"