Ubuntu 22.04 – Netzwerk – Kabelverbindung zeigt „Kabel nicht eingesteckt“ an

Ubuntu 22.04 – Netzwerk – Kabelverbindung zeigt „Kabel nicht eingesteckt“ an

Ich habe ein Dual-Boot-System mit Windows 10 und Ubuntu 22.04 LTS und kriege die kabelgebundene Verbindung nicht richtig hin. Ich habe Folgendes versucht:

Ich habe ethtool installiert

sudo apt-get install ethtool

und führte einfach einen Befehl aus

sudo ethtool -s ens5f5 autoneg off speed 100 duplex full

wobei ens5f5 meine Ethernet-Schnittstelle ist, die ich zuvor mit ifconfig erhalten habe.

Ich fand das inIch kann mit 18.04 keine Verbindung zu meinem Heim-Ethernet-Netzwerk herstellen - Kabel nicht eingestecktaber wenn ich diese Lösung implementiere und einen Geschwindigkeitstest durchführe, ist es viel langsamer als über die WLAN-Verbindung. Ich habe versucht, die Geschwindigkeit durch 1000 zu ersetzen, aber es wird der Fehler zurückgegeben: Netlink-Fehler: Ungültiges Argument

Mit der WLAN-Geschwindigkeit bin ich zufrieden, frage mich aber, warum die Ethernet-Verbindung offenbar nicht mit einer akzeptablen Geschwindigkeit funktioniert.

Antwort1

Problem gelöst

Nach der Neuinstallation von Ubuntu 22.04 und anschließendem Ausführen von:

sudo ethtool -s ens5f5 autoneg on speed 100 duplex full

Bei einem Geschwindigkeitstest konnte ich eine akzeptable Geschwindigkeit erreichen (eine Downloadgeschwindigkeit von 93,45). Ich habe Autoneg von aus auf an geändert, daher bin ich nicht sicher, ob das geholfen hat oder ob es an der Neuinstallation von Ubuntu lag oder an einer Kombination aus beidem, aber ich nehme es.

Anschließend habe ich ein Skript erstellt, das beim Start ausgeführt wird, sodass ich den Befehl nicht bei jedem Hochfahren des Computers ausführen muss.

Erstellen Sie zunächst eine Systemd-Servicedatei wie im folgenden Beispiel (die von mir erstellte Datei war /etc/systemd/system/start-ethernet.service):

[Unit]
After=network.target

[Service]
ExecStart=/usr/local/bin/start-ethernet.sh

[Install]
WantedBy=default.target

Nachher: ​​Gibt systemd an, wann das Skript ausgeführt werden soll. In unserem Fall wird das Skript nach der Netzwerkverbindung ausgeführt. Ein anderes Beispiel könnte mysql.target usw. sein.

ExecStart: Dieses Feld gibt den vollständigen Pfad zum eigentlichen Skript an, das beim Start ausgeführt werden soll.

WantedBy: In welches Bootziel soll die systemd-Einheit installiert werden?

Erstellen Sie ein Skript, das beim Systemstart von Ubuntu ausgeführt wird. Wie im obigen Schritt 1 angegeben, lauten der Pfad und der Name des neuen Skripts /usr/local/bin/start-ethernet.sh.

Nachfolgend sehen Sie ein Beispiel für ein solches Skript:

#!/bin/bash

ethtool -s ens5f5 autoneg on speed 100 duplex full

Legen Sie die entsprechenden Berechtigungen sowohl für die Systemd-Serviceeinheit als auch für das Skript fest:

$ sudo chmod 744 /usr/local/bin/start-ethernet.sh

$ sudo chmod 664 /etc/systemd/system/start-ethernet.service

Aktivieren Sie als Nächstes die Serviceeinheit:

$ sudo systemctl daemon-reload

$ sudo systemctl enable start-ethernet.service

Jetzt können Sie Ihr System neu starten. Nach dem Neustart sollte die Kabelverbindung aktiv sein.

Die Anweisungen zum Erstellen und Ausführen des Startskripts habe ich hier gefunden:https://linuxconfig.org/how-to-run-script-on-startup-on-ubuntu-22-04-jammy-jellyfish-server-desktopund dann habe ich sie für meinen eigenen Gebrauch angepasst.

verwandte Informationen