Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Gibt es einen Unterschied zwischen Softlinks und Hardlinks unter Linux?

Gibt es einen Unterschied zwischen Softlinks und Hardlinks unter Linux?

青灯夜游
青灯夜游Original
2021-11-22 18:13:1718070Durchsuche

Unter Linux gibt es einen Unterschied zwischen Softlinks und Hardlinks. Der Unterschied besteht darin, dass 1. Softlinks in Form von Pfaden und Hardlinks in Form von Dateikopien vorliegen. 2. Softlinks können Dateisysteme überqueren. Hardlinks können jedoch nicht. 3. Softlinks Links können auf Verzeichnisse verweisen, Hardlinks jedoch nicht.

Gibt es einen Unterschied zwischen Softlinks und Hardlinks unter Linux?

Die Betriebsumgebung dieses Tutorials: CentOS 6-System, Dell G3-Computer.

ln ist ein weiterer sehr wichtiger Befehl in Linux. Seine Funktion besteht darin, eine synchronisierte Verknüpfung für eine bestimmte Datei an einem anderen Speicherort herzustellen Dasselbe muss in einem erforderlichen Verzeichnis abgelegt werden. Wir müssen die Datei nur in einem festen Verzeichnis ablegen und sie dann mit dem Befehl ln in anderen Verzeichnissen verknüpfen, ohne wiederholt Speicherplatz zu belegen.

1. Befehlsformat:

 ln [参数][源文件或目录][目标文件或目录]

2. Befehlsfunktion:

Im Linux-Dateisystem gibt es einen sogenannten Link, den wir uns als Alias ​​​​für die Datei vorstellen können. Der Link kann in zwei Typen unterteilt werden: Hardlink und symbolischer Link (Link). Ein Hardlink bedeutet, dass eine Datei mehrere Namen haben kann, während ein Softlink eine spezielle Datei generiert, deren Inhalt auf den Speicherort einer anderen Datei verweist. Hardlinks existieren im selben Dateisystem, Softlinks können sich jedoch über verschiedene Dateisysteme erstrecken.

Softlink:

  • Softlink, der in Form eines Pfades vorliegt. Ähnlich wie die Verknüpfungen im Windows-Betriebssystem

  • Softlinks können Dateisysteme überqueren, Hardlinks nicht

  • Softlinks können auf einen nicht existierenden Dateinamen verweisen

  • Softlinks können auf Verzeichnisse verweisen

Hardlink:

  • Hardlink, der als Kopie der Datei existiert. Aber es nimmt keinen tatsächlichen Platz ein. „Das Erstellen von Hardlinks zu Verzeichnissen ist nicht erlaubt.“ Synchronität der Dateien, das heißt, egal wo Sie Änderungen vornehmen, andere Dateien haben die gleichen Änderungen. Zweitens werden LN-Links in Softlinks und Hardlinks unterteilt. Der Softlink ist LN –s Quelldatei-Zieldatei. Es wird nur ein Spiegelbild der Datei an dem von Ihnen ausgewählten Speicherort generiert und kein fester Link zur Zieldatei der Quelldatei belegt. Ohne den Parameter -s wird eine Datei an dem von Ihnen ausgewählten Speicherort generiert die gleiche Größe wie die Quelldatei hat, unabhängig davon, ob es sich um einen Softlink oder einen Hardlink handelt, ändert sich die Datei ständig synchron. Der Befehl

    ln wird zum Verknüpfen von Dateien oder Verzeichnissen verwendet. Wenn zwei oder mehr Dateien oder Verzeichnisse gleichzeitig angegeben werden und das endgültige Ziel ein vorhandenes Verzeichnis ist, werden alle zuvor angegebenen Dateien oder Verzeichnisse in das Verzeichnis kopiert. Wenn mehrere Dateien oder Verzeichnisse gleichzeitig angegeben werden und das endgültige Ziel kein vorhandenes Verzeichnis ist, wird eine Fehlermeldung angezeigt.
  • 3. Befehlsparameter:
  • Erforderliche Parameter:
-b Löschen und überschreiben Sie zuvor erstellte Links.

-d Erlauben Sie Superuser, feste Links zu Verzeichnissen zu erstellen.

-f Erzwingen Sie die Ausführung.

-i Interaktiver Modus, fragen Sie nach der Datei existiert Ob der Benutzer überschreibt

-n symbolische Links als allgemeine Verzeichnisse behandelt

-s Softlinks (symbolische Links) -v zeigt detaillierte Verarbeitung an

Wählen Sie Parameter aus:

-S „-S612c696e28ba3b3295e906509437882b " oder "--suffix=2ecadb8afbdb0af480c1eebe33a8a8bf"

-V "-V23120a9f52b0ed18218697b4763fd39d" oder "--version-control=23120a9f52b0ed18218697b4763fd39d"

--help zeigt Hilfeinformationen an

--version zeigt Versionsinformationen an

4. Anwendungsbeispiele:

Beispiel 1: Softlinks für Dateien erstellen

Um das relative Pfadproblem beim Erstellen von Softlinks näher zu erläutern, erstellen wir zunächst mehrere tiefere Ordner

mkdir -p /app/a{1..3}/b{c..f}

Die ungefähre hierarchische Struktur ist unten zu sehen , das App-Verzeichnis und das etc-Verzeichnis befinden sich beide im Stammverzeichnis

Angenommen, wir erstellen eine Software für app/a1/bc im Stammverzeichnis, die auf den Speicherort von /magedu/ZD/2g/login.bat im verweist Stammverzeichnis-Link, dann sollte der Soft-Link so geschrieben werden

ln -s ../../../magedu/ZD/2g/login.bat /app/a1/bc/softlink1

Viele Schüler sind verwirrt darüber, wie der relative Pfad zum Zielpfad geschrieben werden soll. Der relative Pfad, der auf die Datei oder den Ordner verweist, sollte auf dem Ordner basieren, in dem sich die Soft-Datei befindet Der Link befindet sich relativ zu dieser Datei. Geben Sie einfach den Pfad an, den er zum System nimmt.

In diesem Beispiel ist das Verzeichnis, in dem sich der Softlink befindet, app/a1/bc. Dann ist dieser bc-Ordner der Basisordner. Gehen Sie von hier aus eine Ebene nach oben und kehren Sie zu a1 zurück. /, und gehen Sie dann eine Ebene nach oben zu app. Es gibt ein weiteres ../ im Ordner, da sich Magedu im Stammverzeichnis befindet, also müssen wir eine Ebene zum Stammverzeichnis zurückkehren, also drei ../ Das Stammverzeichnis weiß, wie man es ausdrückt, und dann müssen wir nacheinander die absoluten Werte einfügen, die auf die Quelldateien verweisen. Die Pfadadresse lautet. Wenn Sie wissen, wie man mehrschichtige Verzeichnisse erstellt, müssen Sie nicht über flache Verzeichnisse sprechen.

Wie kann ich überprüfen, ob ein Problem mit dem von Ihnen erstellten Link vorliegt? Gehen Sie in das Softlink-Verzeichnis und führen Sie ls aus, um zu sehen, ob die Datei mit dem Softlink-Namen hellblau ist.

Verwandte Empfehlungen: „Linux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonGibt es einen Unterschied zwischen Softlinks und Hardlinks unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn