問題タブ [ntfs-mft]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - マスター ファイル テーブルのクリーンアップ ユーティリティ?
MFTクリーンアップ用のツールを推奨できる人はいますか? MFT で、かつて存在していたが削除されたファイルのエントリを「元の」状態に復元し、エントリをゼロにしたいと考えています。
indexing - NTFS ドライブでのインデックス作成の仕組み
コンピュータは、ファイルまたはディレクトリの MFT テーブル内の特定のエントリをどのように取得しますか? NTFS と MFT の構造を説明している多くのドキュメントを読みましたが、E:\documents\test.txt にファイルがあると言うのを理解できませんでした。MFT インデックスでそのエントリを特定するにはどうすればよいですか。シーケンシャルですか?
windows - MFTファイルの場所?
NTFS としてフォーマットされたパーティションがあります。NTFS としてフォーマットされたデバイスには、デバイスの内容に関する多くの情報を含む MFT (マスター ファイル テーブル) があることを調査しました。
MFT は本当にファイルですか?
それはどこにありますか?
どうすれば表示できますか?
私は、実際に $BITMAP を表示して、パーティション内のすべてのファイルとディレクトリの場所を知りたいと思っています。
更新: HexEditor を使用してのみ MFT ファイルを表示できるようです。まだ他のオプションを探していますが...
windows - 理想的にはMFTを介して、NTFSボリュームでファイル名のセットをすばやく見つける
私は、MacとWindowsの両方で、iTunesライブラリの失われたファイルを見つけるツールを書いている最中です。Macでは、すばらしい「カタログ検索」機能を使用して名前を付けることで、ファイルをすばやく見つけることができます。
ただし、Windowsでは、ファイル名で検索するためのOS APIがないようです(またはありますか?)。
少しグーグルした後、NTFSディレクトリを直接読み取り、スキャンして名前でファイルを見つけるツール(TFind、Everythingなど)があることを知りました。
同じことをしたいのですが、最初からやり直す必要はありません(過去にかなりの数のディスクツールを作成しましたが、NTFSを掘り下げるエネルギーはありませんでした)。
おそらく.dllとして、この検索機能を提供する既製のライブラリがあるかどうか疑問に思います。ファイル名を渡して、そのパスを取得します。
または、Windowsインデックスサービスについてはどうでしょうか。少なくとも最近インストールしたXPHomeシステムでこれを試したとき、 [スタート]メニューの[検索]操作で実際にすべてのディレクトリがスキャンされました。これは、完全なデータベースがないことを示しています。私はWindowsユーザーではないので、なぜこれが機能しないのか疑問に思います。
結局のところ、必要な完全な解決策は次のとおりです。検索するファイル名のリストがあり、すべての結果を一度に取得するためにディスク全体を検索する(またはDBを使用する)コードが必要です。たとえば、検索では、検索しているすべてのファイルに対して新しいフルスキャンを開始するべきではありません。そのため、MFTの方法が最適であると思います。これは、すべての名前をすばやく反復して、それぞれを私のリストと比較できるためです。
windows - $mft ファイルのコンテンツのダンプ
私が行っているいくつかの商用プロジェクトでは、$mft ファイルに保存されている実際のデータを読み取ることができる必要があります。
役立つgplライブラリを見つけましたが、 gplなのでコードに統合できません。
誰かが私が使用できるプロジェクトを教えてください/または関連するWindows API(実装するのに1000行のコードを必要としないもの)を教えてください
ところで、Windows で単に mft ファイルを直接読み取れないのはなぜですか? (create file と read メソッドを通じて、ドライブを台無しにしたい場合、それは Ms ではなく私の仕事です)。
ありがとう。
file - NTFS ストリーム構造
ここでNTFS 構造について調べていましたが、自分自身で答えたい主な質問は、断片化されたストリームのブロックがどのようにつながっているかということでした。
このページには、マスター ファイル テーブルにはファイルのストリームに関する情報があると説明されていますが、そこにある情報と、どのブロックが自分に属しているかをストリームがどのように認識しているかについての正確な説明はありません。
私の質問:
NTFS はブロックの文字列を断片化されたストリームにどの程度正確に関連付けますか? 次のブロックへのポインターを含むブロックヘッダーですか? ストリームブロック関連テーブル? 私が考えていなかったもっと賢い何か?
windows - JavaまたはC++を使用してファイルMFTエントリ/iノードを取得する方法
Javaで重複ファインダーを作成しましたが、ハードリンクサポートを含める必要があります。残念ながら、JavaでファイルのMFTエントリを掘り下げる方法はないようです。
BasicFileAttributeViewクラスにはfileKey()というメソッドがありますが、NTFSファイルシステムでは機能しません(extではまだテストしていません)。
また、メソッドisSameFile()(java.nio.file.Path内)も見つかりました。この方法がどのように機能するか知っている人はいますか?正しいことをしているように見えますが、ブール値を返すので、私には価値がありません(結果をマップに入れ、MFTエントリでグループ化したいと思います)。
各ファイルの作成時間や変更時間などはいつでも比較できますが、これは諦めています。
C ++またはJavaのいずれかで私がやろうとしていることを達成する方法はありますか?私はそれを内線よりもNTFSで動作させることに関心があります。
ntfs - NTFS $Bitmap ファイルをダンプする方法
プロジェクトで、NTFS パーティション上のすべての空き/使用済みクラスターのリストを取得したいと考えています。このために、$Bitmap ファイルをダンプし、その内容を解析する必要があります。
Web 上には API とサンプルがほとんどありませんが、機能していないようです。$Bitmapファイルをどこかにコピーするだけの簡単な方法/コードサンプルはありますか?
FSCTL_GET_VOLUME_BITMAP を使用することが唯一の方法ですか? 理想的には、C# で実行したいと考えています。
ntfs - NTFSでの書き込みからセクターを保護する方法
ntfsパーティションにフォレンジック対策ツールを実装しようとしています。ファイルシステムによって書き込まれないように、1GBのスペース(正確な物理的な場所)を保持する必要があります。私の考え:
- 特定の場所に1GBのファイルを作成してみてください(どのように?)。
- MFTを手動で編集し、偽のエントリを挿入して、そのゾーンを使用済みとしてマークしてみてください(どのように?)
この2つのアイデアまたは他の何かを実装する方法について何か提案はありますか?
file - 短いファイルは、長いファイルよりも多くの MFT レコードを使用できますか?
ご存知のように、NTFS ではメタデータを MFT レコード (いくつかの実行を含む) と呼ばれる構造に保存します。
本は次の質問をします
短いファイルが長いファイルよりも多くの MFT レコードを使用している可能性はありますか?
答えはノーだと思います。メタデータが複数の MFT のサイズであるファイルがある場合は、実行を使用する必要があるためです。他の提案はありますか?