-6

ファイル パスが与えられた場合、そのメタ データを取得するにはどうすればよいですか。ここに私の問題があります: 私は本当にファイルを非表示にする必要があり (ls -a を使用してもどこにも表示されないはずです)、ファイルが戻ってきたときに同じ状態になることを保証する必要はありません。今、メタデータをコピーしてどこかに保存できれば、必要なときに書き戻すことができれば、問題は解決します

  1. そのメタ データのコピーを作成し、別の場所に保存する必要があります。
  2. 必要なときにいつでもそのメタデータをコピーできなければなりません。

では、ファイルのメタデータを取得するにはどうすればよいでしょうか? ファイルを完全に非表示にするより良い方法がある場合、どうすればよいですか?

これは個人的なプロジェクトであり、アップストリームのコードはありません。

Linuxカーネル3.5.4vで作業しています

4

1 に答える 1

0

私はその質問についてもう少し考えました。

もちろん、本当に隠しファイルの可能性を生み出すファイルシステム固有の方法はありますが、私はそれらを調査することにまったく興味がありません。ただし、ニーズに合った別のアプローチ、バリアントがあります。

opensyscallのみをインターセプトする (正確には既存のものを拡張する) ことで、同様の効果を得ることができます。開いたファイルが存在しないファイルに解決されるが、ディレクトリとファイル名が一致する場合、失敗する代わりに、「隠し」ファイルへの特別なパスを作成し、代わりにそれを開きます。

既存のファイルは、実際には別の場所にある、完全に通常のファイルになります。もちろん、ルートのみがアクセスできるディレクトリ ( drwx------ root:root) に配置し、開くときにアクセス セキュリティ チェックを省略して、「非表示」にすることもできます。

于 2012-10-17T06:15:28.013 に答える