GNU/Linux >> Linux の 問題 >  >> Linux

Linuxシンボリックリンクを更新する方法

UNIXおよびLinuxユーザーは、リンク、特にシンボリックリンクの多くの用途を見つけます。シンボリックリンクを使用する1つの方法は、さまざまなIT機器の構成バックアップを管理することです。

ネットワーク上のコンピューターとデバイスのドキュメント、更新、およびその他のファイルに関連するすべてのものを保持するためのディレクトリ構造があります。デバイスには、ルーター、アクセスポイント、NASサーバー、ラップトップなどがあり、多くの場合、ブランドやバージョンが異なります。構成のバックアップ自体は、ディレクトリツリーの奥深くにある可能性があります。 /home/alan/Documents/network/device/NetgearRL5000/config

バックアッププロセスを簡素化するために、自宅にConfigurationというディレクトリがあります。 。このディレクトリからのシンボリックリンクを使用して、特定のデバイスディレクトリを指します:

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

-F lsのオプション コマンドは、そのタイプを表すために各ファイル名に特殊文字を追加します。上記のように、@ 記号は、これらがリンクであることを示します。

リンクの作成

シンボリックリンクルーター configを指します NetgearRL5000のディレクトリ。それを作成するコマンドはln -s:です。

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

次に、確認してls -l:で確認します

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

利点は、このデバイスでメンテナンスを実行するときに、~/Configuration/Routerを参照するだけでよいことです。 。

このルーターを新しいモデルに交換することにした場合、シンボリックリンクを使用することの2番目の利点が明らかになります。古いルーターをアクセスポイントとして再タスクする可能性があります。したがって、そのディレクトリは削除されません。代わりに、新しいルーターに対応する新しいディレクトリ、おそらくASUSDF-3760があります。ディレクトリを作成し、その存在を確認します:

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

もう1つの例は、オフィス全体に複数のアクセスポイントがある場合です。シンボリックリンクを使用して、ap1などの一般的な名前でそれぞれを論理的に表すことができます。 、ap2 、など、またはap_floor2などの説明的な単語を使用できます 、ap_floor3 、など。このように、物理デバイスは時間の経過とともに変化するため、実際のデバイスディレクトリではなくリンクをアドレス指定しているため、それらを管理している可能性のあるプロセスを継続的に更新する必要はありません。

リンクの更新

メインルーターが変更されたので、ルーターのシンボリックリンクがそのディレクトリを指すようにします。 rmを使用できます およびln 新しいシンボリックリンクを削除して作成するコマンドですが、lnのみを使用して1つのステップでこれを行う方法があります いくつかのオプションを含むコマンド:

:~/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

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

マニュアルページによると、オプションは次のとおりです。

-v、-verbose

リンクされた各ファイルの名前を印刷する

-f、-force

宛先ファイルを削除します(リンクがすでに存在するため必要です)

-n、-no-dereference

ディレクトリへのシンボリックリンクである場合は、LINK_NAMEを通常のファイルとして扱います

-s、-symbolic

ハードリンクの代わりにシンボリックリンクを作成する

まとめ

リンクは、UNIXおよびLinuxファイルシステムの最も強力な機能の1つです。他のオペレーティングシステムはこの機能を模倣しようとしましたが、ファイルシステムに基本的なリンク設計がないため、それらはうまく機能しなかったか、使用可能でした。

上記のデモンストレーションは、実際の本番環境で絶えず変化するディレクトリ構造をシームレスにナビゲートするためにリンクを利用する多くの可能性の1つにすぎません。リンクは、長い間静的になることのない組織に必要な柔軟性を提供します。


Linux
  1. Linuxでディレクトリの名前を変更する方法

  2. Linuxでディレクトリをgzipで圧縮する方法

  3. Linuxでディレクトリサイズを取得する方法

  1. KaliLinuxをアップデートする方法

  2. DebianLinuxをアップデートする方法

  3. Linuxでファイルをシンボリックリンクするにはどうすればよいですか?

  1. Linuxでディレクトリを削除する方法

  2. Linuxでシンボリックリンクを作成する方法

  3. Linuxでディレクトリのサイズを取得する方法