mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
fix netif_num and fix reset passwd
This commit is contained in:
parent
c15fad8ae5
commit
9e8bd1ca02
6
.github/workflows/main.yml
vendored
6
.github/workflows/main.yml
vendored
@ -167,13 +167,13 @@ jobs:
|
||||
zip -9j update.zip update-list.yml update-check.sh
|
||||
while read F; do
|
||||
if [ -d "${F}" ]; then
|
||||
FTGZ="`basename "${F}"`.tgz"
|
||||
FTGZ="$(basename "${F}").tgz"
|
||||
tar -czf "${FTGZ}" -C "${F}" .
|
||||
sha256sum "${FTGZ}" >> sha256sum
|
||||
zip -9j update.zip "${FTGZ}"
|
||||
rm "${FTGZ}"
|
||||
rm -f "${FTGZ}"
|
||||
else
|
||||
(cd `dirname ${F}` && sha256sum `basename ${F}`) >> sha256sum
|
||||
(cd $(dirname "${F}") && sha256sum $(basename "${F}")) >> sha256sum
|
||||
zip -9j update.zip "${F}"
|
||||
fi
|
||||
done < <(yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml)
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -12,3 +12,4 @@ files/initrd/opt/rr/lang/*.mo
|
||||
tests
|
||||
/extractor
|
||||
/br
|
||||
/rdxz_tmp
|
@ -33,7 +33,7 @@ if [ -f ${PART1_PATH}/.build -o "$(sha256sum "${ORI_ZIMAGE_FILE}" | awk '{print$
|
||||
echo -e "\033[1;43m$(TEXT "DSM zImage changed")\033[0m"
|
||||
${WORK_PATH}/zimage-patch.sh
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\033[1;43m$(TEXT "zImage not patched,\nPlease upgrade the bootloader version and try again.\nPatch error:\n")$(<"${LOG_FILE}")\033[0m"
|
||||
echo -e "\033[1;43m$(TEXT "zImage not patched,\nPlease upgrade the bootloader version and try again.\nPatch error:\n")$(<"${LOG_FILE}")\033[0m"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
@ -93,8 +93,6 @@ MAC1="$(readConfigKey "mac1" "${USER_CONFIG_FILE}")"
|
||||
MAC2="$(readConfigKey "mac2" "${USER_CONFIG_FILE}")"
|
||||
KERNELPANIC="$(readConfigKey "kernelpanic" "${USER_CONFIG_FILE}")"
|
||||
|
||||
NETIFNUM=$(ls /sys/class/net/ | grep eth | wc -l); [ ${NETIFNUM} -lt 2 ] && NETIFNUM=2
|
||||
|
||||
declare -A CMDLINE
|
||||
|
||||
# Automatic values
|
||||
@ -104,9 +102,11 @@ CMDLINE['syno_hw_version']="${MODEL}"
|
||||
CMDLINE['vid']="${VID}"
|
||||
CMDLINE['pid']="${PID}"
|
||||
CMDLINE['sn']="${SN}"
|
||||
[ -n "${MAC1}" ] && CMDLINE['mac1']="${MAC1}"
|
||||
[ -n "${MAC2}" ] && CMDLINE['mac2']="${MAC2}"
|
||||
CMDLINE['netif_num']="${NETIFNUM}"
|
||||
|
||||
CMDLINE['netif_num']="0"
|
||||
[ -z "${MAC1}" -a -n "${MAC2}" ] && MAC1=${MAC2} && MAC2="" # Sanity check
|
||||
[ -n "${MAC1}" ] && CMDLINE['mac1']="${MAC1}" && CMDLINE['netif_num']="1"
|
||||
[ -n "${MAC2}" ] && CMDLINE['mac2']="${MAC2}" && CMDLINE['netif_num']="2"
|
||||
|
||||
# set fixed cmdline
|
||||
if grep -q "force_junior" /proc/cmdline; then
|
||||
|
@ -1265,7 +1265,7 @@ function advancedMenu() {
|
||||
[ $? -ne 0 ] && return
|
||||
(
|
||||
mkdir -p "${TMP_PATH}/sdX1"
|
||||
for I in $(ls /dev/sd.*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do
|
||||
for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do
|
||||
mount "${I}" "${TMP_PATH}/sdX1"
|
||||
[ -f "${TMP_PATH}/sdX1/etc/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc/VERSION"
|
||||
[ -f "${TMP_PATH}/sdX1/etc.defaults/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc.defaults/VERSION"
|
||||
@ -1319,7 +1319,7 @@ function advancedMenu() {
|
||||
mount ${I} "${TMP_PATH}/sdX1"
|
||||
if [ -f "${TMP_PATH}/sdX1/etc/shadow" ]; then
|
||||
for U in $(cat "${TMP_PATH}/sdX1/etc/shadow" | awk -F ':' '{if ($2 != "*" && $2 != "!!") {print $1;}}'); do
|
||||
grep -q "status=on" "${TMP_PATH}//usr/syno/etc/packages/SecureSignIn/preference/${U}/method.config" 2>/dev/null
|
||||
grep -q "status=on" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${U}/method.config" 2>/dev/null
|
||||
[ $? -eq 0 ] && SS="SecureSignIn" || SS=" "
|
||||
printf "\"%-36s %-16s\"\n" "${U}" "${SS}" >>"${TMP_PATH}/menu"
|
||||
done
|
||||
@ -1349,21 +1349,20 @@ function advancedMenu() {
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "Invalid password")" 0 0
|
||||
done
|
||||
NEWPASSWD="$(python -c "import crypt,getpass;pw=\"${VALUE}\";print(crypt.crypt(pw))")"
|
||||
NEWPASSWD="$(python -c "from passlib.hash import sha512_crypt;pw=\"${VALUE}\";print(sha512_crypt.using(rounds=5000).hash(pw))")"
|
||||
(
|
||||
mkdir -p "${TMP_PATH}/sdX1"
|
||||
for I in $(ls /dev/sd.*1 2>/dev/null | grep -v ${LOADER_DISK_PART1}); do
|
||||
for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do
|
||||
mount "${I}" "${TMP_PATH}/sdX1"
|
||||
OLDPASSWD="$(cat "${TMP_PATH}/sdX1/etc/shadow" | grep "^${USER}:" | awk -F ':' '{print $2}')"
|
||||
[ -n "${OLDPASSWD}" ] && sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/sdX1/etc/shadow"
|
||||
sed -i "s|status=on|status=off|g" "${TMP_PATH}//usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
||||
[ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ] && sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/sdX1/etc/shadow"
|
||||
sed -i "s|status=on|status=off|g" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
||||
sync
|
||||
umount "${I}"
|
||||
done
|
||||
rm -rf "${TMP_PATH}/sdX1"
|
||||
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||
--progressbox "$(TEXT "Resetting ...")" 20 100
|
||||
[ -f "${SHADOW_FILE}" ] && rm -rf "${SHADOW_FILE}"
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "Password reset completed.")" 0 0
|
||||
;;
|
||||
|
63
img-gen.sh
63
img-gen.sh
@ -15,37 +15,54 @@ LOOPX=$(sudo losetup -f)
|
||||
sudo losetup -P "${LOOPX}" "${IMAGE_FILE}"
|
||||
|
||||
echo "Mounting image file"
|
||||
mkdir -p "/tmp/p1"
|
||||
mkdir -p "/tmp/p3"
|
||||
sudo mount ${LOOPX}p1 "/tmp/p1"
|
||||
sudo mount ${LOOPX}p3 "/tmp/p3"
|
||||
sudo rm -rf "/tmp/files/p1"
|
||||
sudo rm -rf "/tmp/files/p3"
|
||||
sudo mkdir -p "/tmp/files/p1"
|
||||
sudo mkdir -p "/tmp/files/p3"
|
||||
sudo mount ${LOOPX}p1 "/tmp/files/p1"
|
||||
sudo mount ${LOOPX}p3 "/tmp/files/p3"
|
||||
|
||||
echo "Get Buildroot"
|
||||
getBuildroot "2023.02.x" "br"
|
||||
[ ! -f "br/bzImage-rr" -o ! -f "br/initrd-rr" ] && getBuildroot "2023.02.x" "br"
|
||||
[ ! -f "br/bzImage-rr" -o ! -f "br/initrd-rr" ] && return 1
|
||||
|
||||
echo "Repack initrd"
|
||||
cp -f "br/bzImage-rr" "/tmp/p3/bzImage-rr"
|
||||
repackInitrd "br/initrd-rr" "files/initrd" "/tmp/p3/initrd-rr"
|
||||
|
||||
echo "Copying files"
|
||||
sudo cp -Rf "files/p1/"* "/tmp/p1"
|
||||
sudo cp -Rf "files/p3/"* "/tmp/p3"
|
||||
# Get extractor, LKM, addons and Modules
|
||||
getLKMs "/tmp/p3/lkms" true
|
||||
getAddons "/tmp/p3/addons" true
|
||||
getModules "/tmp/p3/modules" true
|
||||
getExtractor "/tmp/p3/extractor"
|
||||
|
||||
read -p "Press enter to continue"
|
||||
|
||||
echo "Repack initrd"
|
||||
sudo cp -f "br/bzImage-rr" "/tmp/files/p3/bzImage-rr"
|
||||
repackInitrd "br/initrd-rr" "files/initrd" "/tmp/files/p3/initrd-rr"
|
||||
|
||||
echo "Copying files"
|
||||
sudo cp -Rf "files/p1/"* "/tmp/files/p1"
|
||||
sudo cp -Rf "files/p3/"* "/tmp/files/p3"
|
||||
# Get extractor, LKM, addons and Modules
|
||||
getLKMs "/tmp/files/p3/lkms" true
|
||||
getAddons "/tmp/files/p3/addons" true
|
||||
getModules "/tmp/files/p3/modules" true
|
||||
getExtractor "/tmp/files/p3/extractor"
|
||||
|
||||
sync
|
||||
|
||||
# update.zip
|
||||
sha256sum update-list.yml update-check.sh >sha256sum
|
||||
zip -9j update.zip update-list.yml update-check.sh
|
||||
while read F; do
|
||||
if [ -d "/tmp/${F}" ]; then
|
||||
FTGZ="$(basename "/tmp/${F}").tgz"
|
||||
tar -czf "${FTGZ}" -C "/tmp/${F}" .
|
||||
sha256sum "${FTGZ}" >>sha256sum
|
||||
zip -9j update.zip "${FTGZ}"
|
||||
sudo rm -f "${FTGZ}"
|
||||
else
|
||||
(cd $(dirname "/tmp/${F}") && sha256sum $(basename "/tmp/${F}")) >>sha256sum
|
||||
zip -9j update.zip "/tmp/${F}"
|
||||
fi
|
||||
done < <(yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml)
|
||||
zip -9j update.zip sha256sum
|
||||
|
||||
|
||||
echo "Unmount image file"
|
||||
sudo umount "/tmp/p1"
|
||||
sudo umount "/tmp/p3"
|
||||
rmdir "/tmp/p1"
|
||||
rmdir "/tmp/p3"
|
||||
sudo umount "/tmp/files/p1"
|
||||
sudo umount "/tmp/files/p3"
|
||||
|
||||
sudo losetup --detach ${LOOPX}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user