GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So aktualisieren Sie einen Linux-Symlink

UNIX- und Linux-Benutzer finden viele Verwendungsmöglichkeiten für Links, insbesondere symbolische Links. Eine Art, wie ich symbolische Links gerne verwende, ist die Verwaltung von Konfigurationssicherungen verschiedener IT-Geräte.

Ich habe eine Verzeichnisstruktur, um alles zu speichern, was mit Dokumentation, Updates und anderen Dateien für die Computer und Geräte in meinem Netzwerk zu tun hat. Zu den Geräten können Router, Zugangspunkte, NAS-Server und Laptops gehören, oft von verschiedenen Marken und Versionen. Die Konfigurationssicherungen selbst können tief im Verzeichnisbaum liegen, z. /home/alan/Documents/network/device/NetgearRL5000/config .

Um den Backup-Prozess zu vereinfachen, habe ich ein Verzeichnis in meinem Home namens Configuration . Ich verwende symbolische Links aus diesem Verzeichnis, um auf das spezifische Geräteverzeichnis zu verweisen:

:~/Configuration/ $ ls -F1
Router@
Accesspoint@
NAS@

Hinweis :Das -F Option des ls Der Befehl fügt jedem Dateinamen Sonderzeichen hinzu, um seinen Typ darzustellen. Wie oben gezeigt, der @ Symbol zeigt an, dass es sich um Links handelt.

Link erstellen

Der symbolische Link Router zeigt auf die config Verzeichnis meines Netgear RL5000. Der Befehl zum Erstellen lautet ln -s:

$ ln -s /home/alan/Documents/network/device/NetgearRL5000/config Router

Dann nachschauen und mit ls -l: bestätigen

:~/Configuration/ $ ls -l
Router -> /home/alan/Documents/network/device/NetgearRL5000/config
NAS -> /home/alan/Documents/network/device/NFSBox/config
...

Der Vorteil ist, dass ich bei Wartungsarbeiten an diesem Gerät einfach zu ~/Configuration/Router navigiere .

Der zweite Vorteil der Verwendung eines symbolischen Links wird offensichtlich, wenn ich mich entscheide, diesen Router durch ein neues Modell zu ersetzen. Ich könnte den alten Router als Zugangspunkt neu beauftragen. Daher wird sein Verzeichnis nicht gelöscht. Stattdessen habe ich ein neues Verzeichnis, das dem neuen Router entspricht, vielleicht ein ASUS DF-3760. Ich erstelle das Verzeichnis und bestätige seine Existenz:

$ mkdir -p ~/Documents/network/device/ASUSDF-3760/config
:~/Documents/network/device/ $ ls
NetgearRL5000
ASUSDF-3760
NFSBox
...

Ein weiteres Beispiel könnte sein, wenn Sie mehrere Access Points in Ihren Büros haben. Sie können symbolische Links verwenden, um jeden logisch mit einem generischen Namen wie ap1 darzustellen , ap2 , und so weiter, oder Sie können beschreibende Wörter wie ap_floor2 verwenden , ap_floor3 , usw. Wenn sich die physischen Geräte im Laufe der Zeit ändern, müssen Sie auf diese Weise nicht ständig Prozesse aktualisieren, die sie möglicherweise verwalten, da sie die Links und nicht die tatsächlichen Geräteverzeichnisse adressieren.

Aktualisieren eines Links

Da sich mein Hauptrouter geändert hat, möchte ich, dass der symbolische Link des Routers auf sein Verzeichnis zeigt. Ich könnte den rm verwenden und ln Befehle zum Entfernen und Erstellen eines neuen symbolischen Links, aber es gibt eine Möglichkeit, dies in einem Schritt zu tun, indem nur ln verwendet wird Befehl mit einigen Optionen:

:~/Configuration/ $ ln -vfns ~/Documents/network/device/ASUSDF-3760/config/ Router
'Router' -> '/home/alan/Documents/network/device/ASUSDF-3760/config/'
:~/Configuration/ $ ls -l
Router -> /home/alan/Documents/network/device/ASUSDF-3760/config
NAS -> /home/alan/Documents/network/device/NFSBox/config

Weitere Linux-Ressourcen

  • Spickzettel für Linux-Befehle
  • Spickzettel für fortgeschrittene Linux-Befehle
  • Kostenloser Online-Kurs:RHEL Technical Overview
  • Spickzettel für Linux-Netzwerke
  • SELinux-Spickzettel
  • Spickzettel für allgemeine Linux-Befehle
  • Was sind Linux-Container?
  • Unsere neuesten Linux-Artikel

Die Optionen laut Manpage lauten wie folgt:

-v, --verbose

Druckname jeder verlinkten Datei

-f, --force

Zieldatei entfernen (notwendig, da bereits ein Link vorhanden)

-n, --no-dereference

LINK_NAME als normale Datei behandeln, wenn es sich um einen symbolischen Link zu einem Verzeichnis handelt

-s, --symbolisch

symbolische Links anstelle von harten Links erstellen

Abschluss

Links sind eine der leistungsstärksten Funktionen von UNIX- und Linux-Dateisystemen. Andere Betriebssysteme haben versucht, diese Fähigkeit nachzuahmen, aber diese funktionierten nie so gut oder waren aufgrund des Fehlens eines grundlegenden Link-Designs in ihren Dateisystemen nie so brauchbar.

Die obige Demonstration ist nur eine von vielen Möglichkeiten, Links für die nahtlose Navigation durch eine sich ständig ändernde Verzeichnisstruktur in einer lebendigen Produktionsumgebung zu nutzen. Links bietet die Flexibilität, die in einer Organisation benötigt wird, die niemals lange statisch ist.


Linux
  1. So benennen Sie ein Verzeichnis unter Linux um

  2. Wie man ein Verzeichnis unter Linux gzippt

  3. So aktualisieren Sie Debian Linux

  4. So erhalten Sie die Verzeichnisgröße in Linux

  5. Wie kann ich eine Datei unter Linux symbolisch verknüpfen?

So führen Sie alle Skripte in einem Verzeichnis unter Linux aus

So richten Sie Chrooted SFTP unter Linux ein

So verknüpfen Sie eine Datei unter Linux per Symlink

So kopieren Sie das Verzeichnis unter Linux

So zählen Sie Dateien im Verzeichnis unter Linux

So finden Sie defekte Symlinks in Linux