From 9d54bcf0bb3cc975bae12be9b369801b95f9277d Mon Sep 17 00:00:00 2001 From: Ing Date: Fri, 28 Jun 2024 00:23:35 +0800 Subject: [PATCH] fix something --- files/initrd/opt/rr/include/functions.sh | 69 ++++++++---------------- files/initrd/opt/rr/init.sh | 2 +- files/initrd/opt/rr/patch/modulelist | 3 ++ 3 files changed, 26 insertions(+), 48 deletions(-) diff --git a/files/initrd/opt/rr/include/functions.sh b/files/initrd/opt/rr/include/functions.sh index 75512c31..f6c15ca7 100755 --- a/files/initrd/opt/rr/include/functions.sh +++ b/files/initrd/opt/rr/include/functions.sh @@ -218,60 +218,35 @@ function _sort_netif() { BUS="$(ethtool -i ${ETH} 2>/dev/null | grep bus-info | cut -d' ' -f2)" ETHLIST="${ETHLIST}${BUS} ${MAC} ${ETH}\n" done - + ETHLISTTMPM="" + ETHLISTTMPB="$(echo -e "${ETHLIST}" | sort)" if [ -n "${1}" ]; then MACS="$(echo "${1}" | sed 's/://g' | tr '[:upper:]' '[:lower:]' | tr ',' ' ')" - ETHLISTTMPC="" - ETHLISTTMPF="" - for MACX in ${MACS}; do - ETHLISTTMPC="${ETHLISTTMPC}$(echo -e "${ETHLIST}" | grep "${MACX}")\n" + ETHLISTTMPM="${ETHLISTTMPM}$(echo -e "${ETHLISTTMPB}" | grep "${MACX}")\n" + ETHLISTTMPB="$(echo -e "${ETHLISTTMPB}" | grep -v "${MACX}")\n" done - - while read -r BUS MAC ETH; do - [ -z "${MAC}" ] && continue - if echo "${MACS}" | grep -q "${MAC}"; then continue; fi - ETHLISTTMPF="${ETHLISTTMPF}${BUS} ${MAC} ${ETH}\n" - done <${TMP_PATH}/ethlist - # cat ${TMP_PATH}/ethlist + ETHLIST="$(echo -e "${ETHLISTTMPM}${ETHLISTTMPB}" | grep -v '^$')" + ETHSEQ="$(echo -e "${ETHLIST}" | awk '{print $3}' | sed 's/eth//g')" + ETHNUM="$(echo -e "${ETHLIST}" | wc -l)" + # echo "${ETHSEQ}" # sort - IDX=0 - while true; do - # cat ${TMP_PATH}/ethlist - [ ${IDX} -ge $(wc -l <${TMP_PATH}/ethlist) ] && break - ETH="$(cat ${TMP_PATH}/ethlist | sed -n "$((${IDX} + 1))p" | cut -d' ' -f3)" - # echo "ETH: ${ETH}" - if [ -n "${ETH}" ] && [ ! "${ETH}" = "eth${IDX}" ]; then - # echo "change ${ETH} <=> eth${IDX}" - ip link set dev eth${IDX} down - ip link set dev ${ETH} down - sleep 1 - ip link set dev eth${IDX} name ethN - ip link set dev ${ETH} name eth${IDX} - ip link set dev ethN name ${ETH} - sleep 1 - ip link set dev eth${IDX} up - ip link set dev ${ETH} up - sleep 1 - sed -i "s/eth${IDX}/ethN/" ${TMP_PATH}/ethlist - sed -i "s/${ETH}/eth${IDX}/" ${TMP_PATH}/ethlist - sed -i "s/ethN/${ETH}/" ${TMP_PATH}/ethlist - sleep 1 - fi - IDX=$((${IDX} + 1)) - done - - rm -f ${TMP_PATH}/ethlist + if [ ! "${ETHSEQ}" = "$(seq 0 $((${ETHNUM:0} - 1)))" ]; then + /etc/init.d/S41dhcpcd stop >/dev/null 2>&1 + /etc/init.d/S40network stop >/dev/null 2>&1 + for i in $(seq 0 $((${ETHNUM:0} - 1))); do + ip link set dev eth${i} name tmp${i} + done + I=0 + for i in ${ETHSEQ}; do + ip link set dev tmp${i} name eth${I} + I=$((${I} + 1)) + done + /etc/init.d/S40network start >/dev/null 2>&1 + /etc/init.d/S41dhcpcd start >/dev/null 2>&1 + fi return 0 } diff --git a/files/initrd/opt/rr/init.sh b/files/initrd/opt/rr/init.sh index e699a41c..be17ed51 100755 --- a/files/initrd/opt/rr/init.sh +++ b/files/initrd/opt/rr/init.sh @@ -77,9 +77,9 @@ if [ -f "${PART2_PATH}/GRUB_VER" ]; then fi if [ ! "LOCALBUILD" = "${LOADER_DISK}" ]; then + [ ! -f /var/run/dhcpcd/pid ] && /etc/init.d/S41dhcpcd restart >/dev/null 2>&1 || true if arrayExistItem "sortnetif:" $(readConfigMap "addons" "${USER_CONFIG_FILE}"); then _sort_netif "$(readConfigKey "addons.sortnetif" "${USER_CONFIG_FILE}")" - /etc/init.d/S41dhcpcd restart fi for ETH in ${ETHX}; do [ "${ETH::4}" = "wlan" ] && connectwlanif "${ETH}" && sleep 1 diff --git a/files/initrd/opt/rr/patch/modulelist b/files/initrd/opt/rr/patch/modulelist index b845b7db..ef3b807c 100644 --- a/files/initrd/opt/rr/patch/modulelist +++ b/files/initrd/opt/rr/patch/modulelist @@ -12,6 +12,9 @@ N kvm-intel.ko N kvm-amd.ko N kvm.ko +# acpi +N acpi_call.ko + # sensors N coretemp.ko N k10temp.ko