ハードリンクを検索

表題を行いたい。

■ 環境

  • Ubuntu 16.04

■ きっかけ

とあるファイルを`gzip`で圧縮しようとしたところ下記のようなエラーが出て圧縮できなかった。

$ gzip example.log
gzip: example.log has 1 other link -- unchanged
$

確認してみる。

$ ls -lh example.log
-rw-r----- 2 ubuntu ubuntu 1.2G Jun  7 09:42 example.log
$

確かにハードリンクが設定されているようである。さてどこからハードリンクされているのか、を調べたい。同じファイルがリンクされているので”inode“は一致するはずである。よって”inode“を元に検索する。

$ ls -li example.log
4066131 -rw-r----- 2 ubuntu ubuntu 1204065371 Jun  7 09:42 example.log
$
$ find /path/to/project -type f -inum 4066131
/path/to/project/logs/2018/06/example.log
/path/to/project/etc/log/example.log
$

上記のような結果が得られた。よって不要な方をまずは削除する。

$ rm /path/to/project/etc/log/example.log
$
$ ls -l example.log
-rw-r----- 1 ubuntu ubuntu 1204065371 Jun  7 09:42 example.log
$

これで`gzip`でも問題なく圧縮が可能であった。

以上。