LinuxでのSymlinkチュートリアル–シンボリックリンクを作成および削除する方法
シンボリックリンク(シンボリックリンクとも呼ばれます)は、コンピューター上の別のファイルまたはフォルダーを指すLinuxのファイルの一種です。 。シンボリックリンクはWindowsのショートカットに似ています。
シンボリックリンクを「ハードリンク」ではなく「ソフトリンク」(Linux / UNIXシステムのリンクの一種)と呼ぶ人もいます。
違いソフトリンクとハードリンクの間
ソフトリンクはショートカットに似ており、任意のファイルシステム内の別のファイルまたはディレクトリを指すことができます。
ハードリンクはファイルのショートカットでもあります。ただし、別のファイルシステム内のフォルダまたはファイルに対してハードリンクを作成することはできません。
シンボリックリンクの作成と削除に関連する手順を見てみましょう。また、壊れたリンクについても見ていきます。
シンボリックリンクを作成する方法
シンボリックリンクを作成するための構文は次のとおりです。
lnはリンクコマンドです。 -sフラグは、リンクをソフトにする必要があることを指定します。 -sは-symbolicとして入力することもできます。
デフォルトでは、lnコマンドはハードリンクを作成します。次の引数は、リンクするpath to the file (or folder)です。 (つまり、ショートカットを作成するファイルまたはフォルダーです。)
最後の引数は、path to link自体(ショートカット)です。
ファイルのシンボリックリンクを作成する方法–コマンドの例
このコマンドを実行すると、
とtrans.txt。 trans.txtへの変更も元のファイルに反映されます。
上記のこのコマンドは、リンクファイルtrans.txt。次のフォルダにリンクされたファイルを作成することもできます:
現在のディレクトリにはすでに「my-stuffs」というディレクトリが必要です–そうでない場合、コマンドはエラーをスローします。
フォルダのシンボリックリンクを作成する方法–コマンドの例
上記と同様に、次を使用します。
これにより、/home/jamesのコンテンツを含む「james」というシンボリックリンクフォルダが作成されます。このリンクフォルダへの変更も影響します。元のフォルダ。
シンボリックリンクを削除する方法
シンボリックリンクを削除する前に、ファイルまたはフォルダがシンボリックリンクであることを確認することをお勧めします。ファイルを改ざんしないでください。
これを行う1つの方法は次のとおりです。
ターミナルでこのコマンドを実行すると、ファイルのプロパティが表示されます。その結果、最初の文字が小文字のL( “l”)の場合、ファイル/フォルダがシンボリックリンクであることを意味します。
矢印(-)最後にsimlinkが指しているファイル/フォルダを示します。
シンボリックリンクを削除するには2つの方法があります:
Unlinkを使用してシンボリックリンクを削除する
構文は次のとおりです。
これにより、プロセスが成功した場合にシンボリックリンクが削除されます。
シンボリックリンクがフォルダの形式であっても、「/」を追加しないでください。Linuxはそれを「saディレクトリ」と見なし、unlinkはディレクトリを削除できないためです。
rmを使用してシンボリックリンクを削除する方法
これまで見てきたように、シンボリックリンクは元のファイルまたはフォルダーを指す単なる別のファイルまたはフォルダーです。その関係を削除するには、リンクされたファイルを削除します。
したがって、構文は次のとおりです。
例:
rm james/を実行しようとするとエラーが発生することに注意してください。これは、Linuxが「james /」をディレクトリと見なすためです。これには、rやfなどの他のオプションが必要になります。しかし、それは私たちが望んでいることではありません。シンボリックリンクはフォルダの場合もありますが、関係するのは名前だけです。
rmの主な利点はunlinkは、ファイルの場合と同様に、一度に複数のシンボリックリンクを削除できることです。
壊れたリンクを見つけて削除する方法
壊れたリンクシンボリックリンクが指すファイルまたはフォルダがパスを変更するか、削除された場合に発生します。
たとえば、「transactions.txt」が/home/jamesから
の場合、「trans.txt」リンクが壊れます。ファイルにアクセスしようとすると、「そのようなファイルまたはディレクトリはありません」というエラーが発生します。これは、リンクに次の内容が含まれていないためです。
壊れたリンクを見つけたら、ファイルを簡単に削除できます。壊れたシンボリックリンクを見つける簡単な方法は次のとおりです。
これにより、ファイルからディレクトリ、サブディレクトリまで、jamesディレクトリ内の壊れたシンボリックリンクがすべて一覧表示されます。
-deleteオプションを渡すと、次のように削除されます。
まとめ
シンボリックリンクは、LinuxおよびUNIXシステムの興味深い機能です。
簡単にアクセスできるシンボリックリンクを作成して、他の方法ではアクセスしにくいファイルやフォルダを参照できます。 ある程度練習すれば、これらが直感的なレベルでどのように機能するかを理解し、ファイルシステムの管理をはるかに効率的にすることができます。