ファイル

ファイルシステム (file system)

ファイルシステムの種類

  • ディスクファイルシステム (Disk file systems)
  • フラッシュ (Flash file systems)
  • テープ (Tape file systems)
  • データベース (Database file systems)
  • トランザクション (Transactional file systems)
  • ネットワーク (Network file systems)
  • 共有ディスク (Shared disk file systems)
  • 特別 (Special file systems)
File system - Wikipedia, the free encyclopedia

FAT (File Allocation Tables)

FATとは、MicrosoftのOSで利用されるファイルシステムです。

  • FAT16 … 2の16乗 (65536) のクラスタに分割して管理
  • FAT32 … 2の32乗 (約42億) のクラスタに分割して管理
FATとは 【 File Allocation Tables 】 〔 FATファイルシステム 〕 - 意味/解説/説明/定義 : IT用語辞典

exFAT (Extended File Allocation Table)

exFATとは、FAT32を拡張したリムーバブル メディア向けのファイルシステムです。USBメモリなどでの利用が想定されているため、内蔵ハードディスクなどでは原則として使用できません。exFATとは 【 Extended File Allocation Table 】 - 意味/解説/説明/定義 : IT用語辞典

ファイルシステム 最大容量 ファイルサイズの上限
FAT32 32GB 4GB
exFAT 16EB 16EB

NTFS (NT File System)

次のような特徴があります。

NTFSとは 【 NT File System 】 - 意味/解説/説明/定義 : IT用語辞典

NTFS for Windows 98

2000より前のWindowsはNTFSをサポートしないため、NTFSでフォーマットされた領域にはアクセスできません。NTFS for Windows 98は、そのような問題を解決してくれるツールです。窓の杜 - 【集中企画】あなたのパソコン、まだFATなんですか? NTFSのススメ 齋藤正穂 (2002/12/05)

ファイルシステムのトラブル

もし不意にドライブの中身が空になったとしたら、それはファイルシステムに問題が発生しているのかもしれません。

まずはチェックディスクを実行します。このとき[ファイル システム エラーを自動的に修復する]がチェックされていることを確認します。

終了しても何もファイルが表示されないならば、[フォルダーオプション]で[保護されたオペレーティング システム ファイルを表示しない (推奨)]のチェックを外して、システムファイルが表示されるようにします。

FOUND.000のような「FOUND.」に連番がつづくフォルダが表示されたら、それを開きます。

FILE0000.CHKのようなファイルが表示されたら、それがチェックディスクによって修復されたファイルです。

もし完全に修復されているならば、そのファイルに対応したアプリケーションでそのまま開けます。ファイル形式がわからないならば、Stirlingなどのバイナリエディタで開いて調査するか、フォーマットの判別ツールで確認できます。

ファイルが破損してしまっている場合には、さらにそれを修復しないと開けないこともあります。

ファイル名 (file name)

ファイル名の制限

個々の制限は、ファイルシステムに依存します。

長さ

Windows APIでは、ファイル パスを含めて260文字までに制限されています。Maximum Path Length Limitation - Naming Files, Paths, and Namespaces (Windows) | MSDN ファイル名の最大長はいくつですか。 - ファイル名とファイル名の拡張子: よく寄せられる質問 - Windows ヘルプ

Windowsのパス名

禁止文字

Windowsでは「\ / ? : * " > < |」が禁止文字とされています。ファイル名に使用できない文字にはどんなものがありますか。 - ファイル名とファイル名の拡張子: よく寄せられる質問 - Windows ヘルプ

拡張子 (extension)

拡張子の偽装

Unicode制御文字をファイル名に埋め込むことで、拡張子を偽装することができます。たとえばファイル名を「sample_iva.exe」という名前にして、

このファイル名の「iva.exe」の直前に、Unicode制御文字のRLO (Start of right-to-left override) を埋め込みます。

そうするとこのファイルは外観上「sample_exe.avi」と表示され、拡張子が.aviであるかのように見えます。

埋め込まれた制御文字は、そのファイル名を編集状態にして[Unicode 制御文字の表示]を選択することで確認できます。

ちなみに登録されている拡張子は表示されないように設定している場合には、「sample_avi」と表示されます。

対策

RLOの悪用による拡張子の偽装に対処するには、ファイル名にRLOを含むファイルを実行できないように制限をかけます。それにはローカル セキュリティ ポリシーを起動し、[ソフトウェアの制限のポリシー]の[追加の規則]を選択します。このとき[追加の規則]の項目が表示されないならば、[ソフトウェアの制限のポリシー]を右クリックし、[新しいポリシーの作成]からポリシーを作成します。

[追加の規則]を選択したならば、それを右クリックして[新しいパスの規則]を選択します。そしてパスの項目に「**」と入力し、この2つのアスタリスクの中間を右クリックしてRLOを挿入します。さらに[セキュリティ レベル]が[許可しない]となっていることを確認したら[OK]で保存します。設定変更が完了したら、それを反映させるためOSを再起動させます。

最後にRLOを埋め込んだファイルを実行し、「グループ ポリシーによりこのプログラムはブロックされています。詳細はシステム管理者に問い合わせてください。」のようなメッセージが表示され、実行が阻止されるのを確認します。RLO偽装をちょっとしたTipsで対策 - ファイル名は「左から右に読む」とは限らない?! - @IT 飯田朝洋 (2009/09/28)

プロパティ

ファイル属性 (file attribute)

ファイル属性   意味
R Read-only 読み取り専用
A Archive アーカイブ
S System システム ファイル
H Hidden 隠しファイル
C Compact 圧縮
E Encrypted 暗号化
I not content Indexed 非インデックス対象ファイル
attribコマンド

タイムスタンプ (time stamp)

代替データ ストリーム (Alternate Data Streams : ADS)

Streams | TechNet

エクスプローラでZoneIdを削除するには、そのファイルのプロパティで[ブロックの解除]を実行します。

プロパティの取得

コマンドによる方法

wmicコマンドにより取得できます。windows xp - Is there a way to get file metadata from the command line? - Super User

C:\>wmic datafile where name="C:\\Windows\\System32\\cmd.exe" get

取得可能なプロパティは、次のように確認できます。

C:\>wmic datafile get /?

プログラムによる方法

ツールによる方法

ファイルリスト作成機

ファイルリスト作成機のダウンロード : Vector ソフトを探す!

アクセス権 (access rights)

パーミッション (permissions) / アクセス許可

パーミッションとは、ファイルやフォルダに対するアクセス権の許可情報のことです。

グループ名とユーザー名

Windowsはアクセス権の管理のため、SIDでユーザーを識別しています。

アクセス制御リスト (Access Control List : ACL)

アクセス制御リストとは、アクセス制御エントリ (Access Control Entries : ACE) のリストです。Access Control Lists (Windows) | MSDN

コマンドラインからは、caclsで制御できます。

ジャーナリング (journaling)

ジャーナリング ファイルシステムとは、ファイル処理をログに記録することで、障害発生時の原因の確認を容易にするものです。