Linux
 Computer >> コンピューター >  >> システム >> Linux

Linuxでシンボリックリンクを管理する方法

Linuxでシンボリックリンクを管理する方法

シンボリックリンクは、他のファイルに直接リンクするファイルです。 Linuxシステムでは、シンボリックリンクはショートカットとして機能します。

「シンボリックリンク」という用語は、「シンボリック」と「リンク」のかばん語であり、他のものへのシンボリック参照などのファイルの有用性を強調しています。

いわゆる「ハード」リンクは、文字通りのリンクよりも、参照するファイルのコピーとして機能します。 「ソフト」またはシンボリックリンクは、単にターゲットを指します。これらのリンクを削除しても、それらが指すファイルには何の影響もありません。また、便宜上、必要な数のシンボリックリンクを作成できます。これにより、ファイルシステムやパーティション間でファイルをポイントするのに最適です。

シンボリックリンクの使用

単一のアプリケーションをより効率的に実行するためにファイルシステムの基本構造を変更することは、深刻な作業になります。代わりに、シンボリックリンクは、問題を単純化し、元のファイルの場所に影響を与えることなく、プログラムが参照するための人工的なファイル階層を作成するためによく使用されます。

シンボリックリンクを使用すると、さまざまなプログラムに対応しやすくなりますが、ファイルシステムの分析も複雑になります。

シンボリックリンクの問題

シンボリックリンクが正しく機能している場合、実際に存在するファイルへの明確なパスを示します。ただし、失敗したシンボリックリンクは、存在しないか削除されたファイルを指します。これらのシンボリックリンクは、人間のユーザーとその正確さに依存するプログラムの両方に混乱をもたらします。

シンボリックリンクの対象となるファイルがスワップアウトされた場合、リンク自体はその内容を完全に無視して、新しいファイルをポイントし続けます。このブラインドフェイス機能により、リンクチェーンと相対リンクが可能になります。

特に、リンクチェーンは、リンクが2番目のリンクを参照し、それが最初のリンクを指す場合、循環リンク(無限の長さのリンクループ)につながる可能性があります。

このような難問は、必ずしも人間の介入だけで引き起こされるわけではありません。最適でないデバイス取り付け基準と特定の自動化されたプロセスは、不幸なことに「デッドリンク」と呼ばれるものを作成することに寄与する可能性があります。これはまさに、管理手法が役立つところです。

シンボリックリンクの管理

Linuxシステムには、シンボリックリンクを処理するためにすぐに利用できるさまざまなユーティリティがあります。 coreutilsに含まれるデフォルトのインクルードはlnです。 、ターミナルからのそのようなリンクの作成を容易にします。

ただし、シンボリックリンクを完全に管理するには、シンボリックリンクを見つけてすばやく分析できる必要があります。この目的のために検討する価値のある単純なコマンドラインオプションは、適切にsymlinksという名前です。 。

Fedoraなどの一部のLinuxディストリビューションにはこのツールがデフォルトでインストールされていますが、Ubuntuなどの他のディストリビューションにはインストールされていません。 Ubuntuに「シンボリックリンク」をインストールするには、ターミナルウィンドウを開いて、次のように入力します。

sudo apt install symlinks
Linuxでシンボリックリンクを管理する方法

シンボリックリンクの作成

Linuxでは、ターミナルからシンボリックリンクを作成するのは簡単です。次のコードを入力し、「original-file.txt」を選択したターゲットの名前とファイル拡張子に変更してから、「linkname」を任意の名前に変更します。

ln -s original-file.txt linkname
Linuxでシンボリックリンクを管理する方法

ln ユーティリティはリンクを作成するためのものであり、実行するとリンクが作成されます。 -s 上記のコマンドに含まれていると、生成されたリンクがシンボリックになります。

-rを追加して、相対的なシンボリックリンクを作成することもできます。 次と同じコマンドに:

ln -rs original-file.txt linkname
Linuxでシンボリックリンクを管理する方法

マウントポイントの変更に関係なく、相対リンクは機能し続けます。

シンボリックリンクの検索

上記のSymlinksユーティリティは、特定のディレクトリでシンボリックリンクを見つける簡単な方法を提供します。このためのコマンドは次のとおりです:(「directory-name」を検索するディレクトリへのフルパスに変更します。)

symlinks -v directory-name
Linuxでシンボリックリンクを管理する方法

rを追加する このコマンドを実行すると、指定されたディレクトリ内のファイルを再帰的にチェックするようにシンボリックリンクに指示されます。これは次のようになります:

symlinks -rv directory-name
Linuxでシンボリックリンクを管理する方法

サイクリックリンクで発生する問題が心配な場合は、再帰の使用に注意してください。サイクリックリンクは、誤ってループバックしてしまうリンクです。無限の構造に再帰しようとすると、シンボリックリンクユーティリティがハングする可能性があります。

上記のコマンドの非再帰バージョンは、既存の循環リンクが「ぶら下がっている」、つまり壊れていることを明らかにします。シンボリックリンクツールがそのような壊れたリンクを実際に修正することを可能にするのは分析です。

シンボリックリンクの修正

Symlinksを使用すると、特定のディレクトリ内のシンボリックリンクを修正するのは比較的簡単です。使用するコマンドは次のとおりです。

symlinks -cds directory-name
Linuxでシンボリックリンクを管理する方法

上記のコマンドは、一度に複数のことを実行します。検出した絶対リンクを相対リンクに変換し、ぶら下がっているリンクを削除し、「長い」リンク(パスに「../」が多いリンク)を短縮します。

この操作を実行した場合の潜在的な結果がわからない場合は、-cをテストできます。 次のコマンドを実行することで、何も変更せずに単独で実行できます。

symlinks -t directory-name
Linuxでシンボリックリンクを管理する方法

うまくいけば、シンボリックリンクとは何か、そしてそれらを効率的に管理する方法についての理解が深まったことを願っています。ファイルシステムでより具体的な操作を実行するためのシンボリックリンクユーティリティの残りの機能を確認してください。


  1. Linuxでディスク容量を確認および管理する方法

    システム管理者が必要とする重要なスキルの1つは、オンラインシステムとオフラインシステムの両方の状態を維持することです。これは、ダウンタイムや問題によってデータが失われる可能性がある本番サーバーでは特に重要です。一般的な問題は、ディスク容量が不足しているために更新が失敗することですが、重要なシステムをスムーズに実行し続けるために、エラーメッセージが表示されたときに実行できる簡単なチェックがいくつかあります。 使用できるコマンドは主に2つあります。 df –これはシステムのディスク容量を報告します du –これは特定のファイルによって使用されるスペースの量を示します 上記のそれぞれは異

  2. Linux でディスク容量をチェックして管理する方法

    ディスク容量の管理は、使用するプラットフォームに関係なく、コンピューター ユーザーにとって大きな懸念事項の 1 つです。特にシステム管理者の場合、オフライン システムとオンライン システムの状態を監視することが仕事です。ディスク容量が少ないと、Linux での更新が妨げられ、他の重大なエラーが発生する可能性があります。 したがって、特定のファイルが使用するディスク容量と容量を知るには、df および du コマンドに精通している必要があります。 この投稿では、df および du コマンドを使用して Linux のディスク容量を確認および管理する方法について説明します。 DF (ディスク ファ