Detaillierte Erläuterung des SCP-Befehls zum direkten Übertragen von Dateien zwischen der virtuellen Linux-Maschine und dem Entwicklungsboard (sowie häufige Fehler, Netzwerkfehler der virtuellen Maschine usw.)

Detaillierte Erläuterung des scp-Befehls

scp [选项] 源文件/目录 目标地址:目标路径
  • scp: Dies ist ein Befehl zum Kopieren von Dateien unter Linux. Er unterstützt die sichere Übertragung von Dateien zwischen dem lokalen System und dem Remote-System über das SSH-Protokoll.

  • Optionen: Je nach Bedarf können verschiedene Optionen verwendet werden. Hier sind einige gängige Optionen:

    • -r: Rekursive Kopie, die zum Kopieren von Verzeichnissen und deren Inhalten verwendet wird.
    • -P:Geben Sie die Portnummer des Remote-SSH-Servers an, zum Beispiel -P 2222.
    • -i:Gibt die für die Authentifizierung verwendete private Schlüsseldatei an.
    • -v: Ausführlicher Modus, gibt detaillierte Übertragungsinformationen aus, die zum Debuggen verwendet werden können.
  • Quelldatei/-verzeichnis: Dies ist der Pfad zu der Datei oder dem Verzeichnis, die Sie übertragen möchten. Abhängig von ihrem Speicherort kann es sich um lokale Dateien/Verzeichnisse oder entfernte Dateien/Verzeichnisse handeln.

  • Zieladresse: Dies ist die Adresse des Remote-Systems, normalerweise eine Kombination aus Benutzername und Hostname oder IP-Adresse, im Format user@hostnameoder user@ip_address.

  • Zielpfad: Der Pfad, in dem die Datei auf dem Remote-System gespeichert ist. Dabei kann es sich um einen absoluten oder relativen Pfad handeln. Normalerweise das Home-Verzeichnis des Zielbenutzers oder ein anderes Verzeichnis.

Beispiel:

  1. Lokale Dateien local_file.txtin das Home-Verzeichnis des Benutzers auf dem Remote-System kopieren:

    scp local_file.txt user@hostname:~
    
  2. Kopieren Sie ein lokales Verzeichnis rekursiv local_directoryin ein angegebenes Verzeichnis auf dem Remote-System:

    scp -r local_directory user@hostname:/path/to/remote/directory
    
  3. Dateien vom Remote-System auf das lokale System kopieren:

    scp user@hostname:/path/to/remote/file local_destination_directory/
    
  4. Stellen Sie über eine andere Portnummer eine Verbindung zum Remote-System her:

    scp -P 2222 local_file.txt user@hostname:/path/to/remote/directory
    
  5. Authentifizieren Sie sich mithilfe einer privaten Schlüsseldatei:

    scp -i private_key.pem local_file.txt user@hostname:/path/to/remote/directory
    

Diese Beispiele decken die allgemeine Verwendung von scp ab und Sie können die Befehle an Ihre Dateiübertragungsanforderungen anpassen. Bitte stellen Sie sicher, dass Sie über die entsprechenden Berechtigungen zum Lesen und Schreiben der Datei sowie über die richtige SSH-Konfiguration verfügen, um scp erfolgreich verwenden zu können.

Betriebsdemonstration

Anforderungsbeschreibung: Ich möchte die unter Linux kompilierten Dateien zur Ausführung auf das Entwicklungsboard übertragen.
Stellen Sie zunächst sicher, dass sich das Entwicklungsboard und der Linux-Host im selben LAN befinden. Sie können ifconfig verwenden, um die IP-Adresse des Computers zu überprüfen und die IP-Adresse des Entwicklungsboards (Bevor Sie die P-Adresse überprüfen, stellen Sie zunächst sicher, dass Ihr Entwicklungsboard mit dem Router verbunden ist. Wenn Ihre virtuelle Maschine die Adresse nicht unter demselben Router wie das Entwicklungsboard erhalten kann, lesen Sie bitte die FAQ unten.) Überprüfen Sie die Adresse der virtuellen Maschine. Überprüfen Sie die Adresse der Entwicklungsplatine. Verwenden Sie
-v ,
Fügen Sie hier eine Bildbeschreibung ein
um

die Datei zu übertragen
Fügen Sie hier eine Bildbeschreibung ein
. Wenn es sich um einen Ordner handelt, denken Sie daran, -r zu verwenden

häufiges Problem

Problem mit der IP-Adresse des DNS-Servers der virtuellen Maschine

Aus Gründen des Campusnetzwerks oder der Netzwerkkonfiguration befinden sich die virtuelle Maschine und das Entwicklungsboard möglicherweise nicht im selben LAN. Die
Lösung besteht darin, den Computer und das Entwicklungsboard mit dem Router-Backend zu verbinden und die virtuelle Maschine zu konfigurieren. Methode 1:
Der Host verwendet Stellen Sie eine kabelgebundene Verbindung her und die virtuelle Maschine verwendet eine drahtlose Netzwerkkarte für die Verbindung.
Fügen Sie hier eine Bildbeschreibung ein
Konfigurieren Sie den Editor für virtuelle Netzwerke.
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Verwenden Sie
Fügen Sie hier eine Bildbeschreibung ein
Methode 2 ,
um die Basisumgebung zu erstellen

Keine Reaktion oder Zeitüberschreitung nach Eingabe des Befehls

Dies ist normalerweise ein IP-Adressfehler und kann mit dem Ping-Befehl getestet werden, bevor versucht wird, eine Verbindung herzustellen.
Fügen Sie hier eine Bildbeschreibung ein

Ich denke du magst

Origin blog.csdn.net/Systemmax20/article/details/132918689
Empfohlen
Rangfolge