Debian Stretch Ethernet을 10MBit로 강제하는 방법은 무엇입니까?

Debian Stretch Ethernet을 10MBit로 강제하는 방법은 무엇입니까?

ARM 및 Stretch가 포함된 헤드리스 임베디드 보드가 있는데 이더넷은 100Mbit에서는 제대로 작동하지 않지만 10Mbit에서는 제대로 작동합니다.

10Mbit를 강제로 적용하고 싶지만 dhclient가 시작되기 전에 이 작업을 수행해야 합니다. 그렇지 않으면 IP 주소를 얻을 수 없습니다.

지금까지 나는 다음에서 이 작업을 수행했습니다 rc.local.

echo SETTING eth0 to 10Mbit
/sbin/ethtool -s eth0 speed 10 duplex half autoneg off 
if [ -n "`pgrep dhclient`" ] then
   dhclient -r
   dhclient
fi

그러나 이로 인해 2개의 dhclient 인스턴스가 남게 되며 이것이 올바른 접근 방식인지 확실하지 않습니다.

~ ps auxf | grep dhc
root       917  0.0  1.6   6692  1972 ?        Ss   Jul31   0:00 /sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid -l
root     16783  0.0  1.4   4336  1772 pts/1    S+   07:07   0:00          \_ grep dhc
root      1571  0.0  1.5   6692  1892 ?        Ss   Jul31   0:00 dhclient

어떤 제안이 있으십니까? 감사해요!

답변1

NetworkManager를 사용하는 경우 다음 명령을 실행하여 이를 <connection_name>NetworkManager 연결 구성의 실제 이름으로 바꿉니다.

nmcli connection modify <connection_name> 802-3-ethernet.speed 10 802-3-ethernet.duplex half 802-3-ethernet.auto-negotiate no

NetworkManager 를 사용하지 않는 경우 아마도 이미 옵션에 명령을 입력 하십시오 iface eth0 inet dhcp./etc/network/interfacesethtoolpre-up

iface eth0 inet dhcp
    pre-up /sbin/ethtool -s eth0 speed 10 duplex half autoneg off

위의 내용은 일반적인 Debian Stretch를 가정합니다. Raspbian은 여기서 다를 수 있습니다.

관련 정보