Debian
如何強制 Debian Stretch 乙太網到 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
有什麼建議麼?謝謝!
如果您使用的是 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/interfaces
. 將您的ethtool
命令放在pre-up
選項中:iface eth0 inet dhcp pre-up /sbin/ethtool -s eth0 speed 10 duplex half autoneg off
以上假設是正常的 Debian Stretch。Raspbian 在這裡可能有所不同。