Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私はバージョン6UNIXのテキストを読んでいて、iノードについて学びました。次の質問があります。
あるディレクトリにファイルがあり、別の場所にファイルへのリンクがあるとします。ファイルを削除しても、refcountが0でないため、iノードはまだ存在していると言ってもいいですか?これは、リンクが存在する間はファイルが実際には削除されず、iノード番号を介してファイルにアクセスできることを意味しますか?
はい、リンクがハードリンクの場合。いいえ、それが単なるシンボリックリンクである場合。
ハードリンクは基本的に、同じiノードを持つ複数のディレクトリにある同じファイルです。ディレクトリの1つからファイルのリンクを解除すると、参照カウントが1つ減ります。ゼロになるまで削除されません。
シンボリックリンクには独自のiノードがあり、他のエントリにリダイレクトされます。ターゲットが削除されると、シンボリックリンクがぶら下がります。シンボリックリンク自体は、ターゲットファイルまたはディレクトリに影響を与えることなく削除できます。
ファイル名は、ディスク内のどこかを指すディレクトリテーブルの単なるエントリです。ハードリンクは、同じデータを指す単なる別の名前エントリです。後続のハードリンクは、元のファイル名エントリと区別できません。
だから答えはイエスです。