Linuxにおける"ハードリンク"と"シンボリックリンク"の概念の違いとは? 第03回 22年11月 / 最終更新:2023.11.17

Linuxにおけるハードリンク(Hard Link)とシンボリックリンク(Symbolic Linkまたはソフトリンク)は、ファイルやディレクトリ間でリンクを作成するための異なる方法です。それぞれの違いは以下のようになります。

    1. ハードリンク(Hard Link):

ハードリンクは、同一のファイルに、複数のファイル名を作成するリンク手法のことを指します。
ハードリンクは、ファイルのデータ自体を共有し、同じデータを複数のファイル名で参照します。
ファイルが削除されても、実際のデータは最後のハードリンクが削除されるまで残り続けます。
(複数のファイル名がすべて削除されたときに、ファイルが削除されます。)
ハードリンクは同じファイルシステム内でのみ作成できます。

    2. シンボリックリンク(Symbolic Linkまたはソフトリンク):


(Windowsで慣れている方は、「ショートカット」のイメージです)

シンボリックリンクは、オリジナルデータに、別のファイルまたはディレクトリへの「シンボル(参照)」を作成する方法です。
別のファイルまたはディレクトリのパスを参照し、そのパスをフォローすることによってオリジナルのデータにアクセスすることです。
シンボリックリンクは、リンク先のファイルが存在しない場合でもリンク自体は残り、リンク先が後で設定されたり変更されたりします。
シンボリックリンクはファイルシステムやデバイス間でリンクを作成することができます。
シンボリックリンクは、オリジナルファイルのパスが変更されてもリンク自体は有効です。

参照URL:
ハードリンクとは? https://wa3.i-3-i.info/word1152.html
シンボリックリンクとは? https://wa3.i-3-i.info/word1151.html