2つの場所にbashスクリプトがあり、どのように作成するのか覚えていません。同じインデックスノードがありますが、どちらも他のノードと関連付けられていないようです。ハードリンクがありますが、そのinodeへのリンク数を2つにする必要はありませんか?
$ ls -l ~/bin/dropbox-backup
-rwxr-xr-x 1 bak bak 676 Aug 14 09:32 dropbox-backup
$ ls -l ~/Dropbox/linux/scripts/dropbox-backup
-rwxr-xr-x 1 bak bak 676 Aug 14 09:32 ~/Dropbox/linux/scripts/dropbox-backup
$ stat ~/bin/dropbox-backup
File: `dropbox-backup'
Size: 676 Blocks: 8 IO Block: 4096 regular file
Device: 806h/2054d Inode: 528738 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 1001/ bak) Gid: ( 1001/ bak)
Access: 2013-08-14 20:40:25.599322386 +0100
Modify: 2013-08-14 09:32:47.748546462 +0100
Change: 2013-08-14 20:40:25.591322386 +0100
Birth: -
$ stat ~/Dropbox/linux/scripts/dropbox-backup
File: `/home/rag/Dropbox/linux/scripts/dropbox-backup'
Size: 676 Blocks: 8 IO Block: 4096 regular file
Device: 806h/2054d Inode: 528738 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 1001/ bak) Gid: ( 1001/ bak)
Access: 2013-08-14 20:40:25.599322386 +0100
Modify: 2013-08-14 09:32:47.748546462 +0100
Change: 2013-08-14 20:40:25.591322386 +0100
Birth: -
ベストアンサー1
これらのファイルは同じ inode を持ち、同じファイルシステムにあります。stat
:の出力で2つのファイルを報告するのがわかりますDevice: 806h/2054d Inode: 528738
。すべてのデフォルトのUNIXファイルシステムは、異なるファイルに対して異なるinodeを報告します(一部のリモートまたは外部ファイルシステムではこれは保証されない可能性があります)。
ファイルの2つの名前は実際には互いに「リンク」されています。より正確には同じファイル結果。~/bin/dropbox-backup
そして~/Dropbox/linux/scripts/dropbox-backup
同じファイルです。最も可能性の高い説明は、これが~/bin
シンボリックリンクであり、~/Dropbox/linux/scripts
その逆も同様であるため、2つの異なるディレクトリとシンボリックリンクチェーンを介して同じファイルにアクセスできることです。
2つのパス(つまり、すべてのシンボリックリンクが検証されたパス)の正規化を比較することでこれを確認できます。
readlink -nf ~/bin/dropbox-backup ~/Dropbox/linux/scripts/dropbox-backup