▼すべてを開く。
▲すべてを閉じる。
$ ls -li 328176 drwxrwxr-x 2 masa users 4096 6月 2 18:13 dir1 100159 -rw-rw-r-- 1 masa users 529 5月 6 16:45 myfile1
$ cp -l myfile1 linkfile
cpコマンドで-lオプションを指定し、ファイル「myfile1」と「linkfile」を指示すると、ハードリンクが作成される。
lsコマンドでコマンド実行結果を確認する$ ls -li 328176 drwxrwxr-x 2 masa users 4096 6月 2 18:13 dir1 100159 -rw-rw-r-- 2 masa users 529 5月 6 16:45 linkfile 100159 -rw-rw-r-- 2 masa users 529 5月 6 16:45 myfile1
i-ノードを見て判るように、「myfile1」と「linkfile」は同じi-ノードである。
作成されたハードリンクは、シンボリックリンクと違ってリンク元とリンク先の区別はない。どちらも同じファイルであるため、タイムスタンプも初めに存在していたファイルのままになる。通常のコピーのように、コピー時の時刻に変更されない。
$ ls -l -rw-rw-r-- 1 masa users 268 6月 3 21:48 myfile1
$ ln myfile1 userfile1
lnコマンドでリンク元のファイル名「myfile1」、リンクファイル名「userfile1」を指定すると、ハードリンクが作成される。ハードリンクでは、ファイルの実体は一つなので、ファイルの情報(タイムスタンプ)などはリンク元とリンクファイルとは同じである。またリンクを実行したときにタイムスタンプが変更されたりすることは無い。
lsコマンドで実行結果を見る$ ls -l -rw-rw-r-- 2 masa users 268 6月 3 21:48 myfile1 -rw-rw-r-- 2 masa users 268 6月 3 21:48 userfile1
同じファイルへのハードリンクは複数作成することができる。また、作成したリンクファイルにリンク元とリンク先の区別はない。
ファイルシステム(/dev/sd0aなどのデバイス)をまたいだハードリンクは作成できない。