【Linux入門】ハードリンク
ハードリンクは、ファイルシステムにおいて、同じファイルに複数の名前をつける方法です。元のファイルとハードリンクされたファイルは、実質的に同じファイルを指しており、どちらかの名前でアクセス・操作すると、内容が同期されます。ハードリンクは、元のファイルが削除されても、他のハードリンクが存在する限りデータは失われません。
ハードリンクとは
具体的に説明すると、ハードリンクは、ファイルシステムにおいて同じ iノード(ファイルのメタデータが格納される場所)を複数のファイル名で参照する方法です。オリジナルのファイルと同じiノードを共有する新しいファイルを作成することで、実質的に同じデータを参照する複数のファイルを作成できます。
ハードリンクを作成するコマンド
Linuxシステムでハードリンクを作成するには、ln
コマンドを使用します。一般的な使用法は以下のとおりです。
$ ln オリジナルファイル ハードリンク名
例えば、'file1
' という名前のファイルにハードリンクを作成する場合は、
$ ln file1 link_to_file1
ハードリンクの例
例えば、'file1
' という名前のファイルを作成し、それに対してハードリンクを作成する場合を考えてみましょう。
1.オリジナルファイルの作成
$ echo "This is the original file." > file1
2.ハードリンク
$ ln file1 link_to_file1
この操作により、'file1
' と 'link_to_file1
' は同じデータを参照するハードリンクとして作成されます。どちらか一方のファイルを変更しても、データは同期されます。
まとめ
ハードリンクは同じファイルシステム内でのみ機能し、同じデータへの新たな参照を作成する際に利用されます。