From 79e1c3bbe4fcf91a31c96b4af6ba8fa372365f59 Mon Sep 17 00:00:00 2001 From: Ing Date: Fri, 14 Feb 2025 13:51:55 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20boot.sh=20=E5=92=8C=20init?= =?UTF-8?q?.sh=EF=BC=8C=E6=B7=BB=E5=8A=A0=20MAC=20=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E5=88=B0=E7=BD=91=E7=BB=9C=E7=8A=B6=E6=80=81=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- files/initrd/opt/rr/boot.sh | 15 ++++++++------- files/initrd/opt/rr/init.sh | 13 +++++++------ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/files/initrd/opt/rr/boot.sh b/files/initrd/opt/rr/boot.sh index 52351be7..75791374 100755 --- a/files/initrd/opt/rr/boot.sh +++ b/files/initrd/opt/rr/boot.sh @@ -339,31 +339,32 @@ else for N in ${ETHX}; do COUNT=0 DRIVER=$(ls -ld /sys/class/net/${N}/device/driver 2>/dev/null | awk -F '/' '{print $NF}') - printf "%s(%s): " "${N}" "${DRIVER}" + MAC=$(cat /sys/class/net/${N}/address 2>/dev/null) + printf "%s(%s): " "${N}" "${MAC}@${DRIVER}" while true; do if [ ! "${N::3}" = "eth" ]; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "IGNORE (Does not support non-wired network card.)")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "IGNORE (Does not support non-wired network card.)")" break fi if [ -z "$(cat /sys/class/net/${N}/carrier 2>/dev/null)" ]; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "DOWN")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "DOWN")" break fi if [ "0" = "$(cat /sys/class/net/${N}/carrier 2>/dev/null)" ]; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "NOT CONNECTED")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "NOT CONNECTED")" break fi if [ ${COUNT} -eq ${BOOTIPWAIT} ]; then # Under normal circumstances, no errors should occur here. - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "TIMEOUT (Please check the IP on the router.)")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "TIMEOUT (Please check the IP on the router.)")" break fi COUNT=$((COUNT + 1)) IP="$(getIP "${N}")" if [ -n "${IP}" ]; then if echo "${IP}" | grep -q "^169\.254\."; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "LINK LOCAL (No DHCP server detected.)")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "LINK LOCAL (No DHCP server detected.)")" else - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(printf "$(TEXT "Access \033[1;34mhttp://%s:5000\033[0m to connect the DSM via web.")" "${IP}")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(printf "$(TEXT "Access \033[1;34mhttp://%s:5000\033[0m to connect the DSM via web.")" "${IP}")" fi break fi diff --git a/files/initrd/opt/rr/init.sh b/files/initrd/opt/rr/init.sh index 07fefd66..2bc62d3b 100755 --- a/files/initrd/opt/rr/init.sh +++ b/files/initrd/opt/rr/init.sh @@ -194,27 +194,28 @@ printf "$(TEXT "Waiting IP.\n")" for N in ${ETHX}; do COUNT=0 DRIVER=$(ls -ld /sys/class/net/${N}/device/driver 2>/dev/null | awk -F '/' '{print $NF}') - printf "%s(%s): " "${N}" "${DRIVER}" + MAC=$(cat /sys/class/net/${N}/address 2>/dev/null) + printf "%s(%s): " "${N}" "${MAC}@${DRIVER}" while true; do if [ -z "$(cat /sys/class/net/${N}/carrier 2>/dev/null)" ]; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "DOWN")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "DOWN")" break fi if [ "0" = "$(cat /sys/class/net/${N}/carrier 2>/dev/null)" ]; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "NOT CONNECTED")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "NOT CONNECTED")" break fi if [ ${COUNT} -eq 15 ]; then # Under normal circumstances, no errors should occur here. - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "TIMEOUT (Please check the IP on the router.)")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "TIMEOUT (Please check the IP on the router.)")" break fi COUNT=$((COUNT + 1)) IP="$(getIP "${N}")" if [ -n "${IP}" ]; then if echo "${IP}" | grep -q "^169\.254\."; then - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "LINK LOCAL (No DHCP server detected.)")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(TEXT "LINK LOCAL (No DHCP server detected.)")" else - printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(printf "$(TEXT "Access \033[1;34mhttp://%s:%d\033[0m to configure the loader via web terminal.")" "${IP}" "${TTYD:-7681}")" + printf "\r%s(%s): %s\n" "${N}" "${MAC}@${DRIVER}" "$(printf "$(TEXT "Access \033[1;34mhttp://%s:%d\033[0m to configure the loader via web terminal.")" "${IP}" "${TTYD:-7681}")" fi break fi