I have been able to run a script at startup that enables 2.5g on the Intel X550. Here's how :
Create the script that will run at startup
nano /usr/local/bin/x550.shContent of x550.sh :
#!/usr/bin/bash sleep 1m ethtool -s eth1 advertise 0x1800000001028 echo `date +%F" "%T` "Startup script worked" >> /root/x550.logMake the script executable :
chmod +x /usr/local/bin/x550.shCreate the service that runs the script at startup
nano /etc/systemd/system/x550.serviceContent of x550.service :
[Unit] Description=Runs /usr/local/bin/x550.sh [Service] ExecStart=/usr/local/bin/x550.sh [Install] WantedBy=multi-user.targetEnable the service
systemctl enable x550Reboot and run this command to see if the link speed is 2.5g
ethtool ethX (replace X with yours)It should show this result :
Supported ports: [ TP ] Supported link modes: 100baseT/Full 1000baseT/Full 10000baseT/Full 2500baseT/Full 5000baseT/Full Supported pause frame use: Symmetric Supports auto-negotiation: Yes Supported FEC modes: Not reported Advertised link modes: 100baseT/Full 1000baseT/Full 10000baseT/Full 2500baseT/Full 5000baseT/Full Advertised pause frame use: Symmetric Advertised auto-negotiation: Yes Advertised FEC modes: Not reported Speed: 2500Mb/s Duplex: Full Port: Twisted Pair PHYAD: 0 Transceiver: internal Auto-negotiation: on MDI-X: Unknown Supports Wake-on: d Wake-on: d Current message level: 0x00000007 (7) drv probe link Link detected: yesYou can check the log file of your script located at /root/x550.log
I used this article to create everything :
https://www.redhat.com/sysadmin/replacing-rclocal-systemd