他のOSでは邪魔になる macOS のドットファイル
この情報を記述した際のバージョン情報:
macOS: 14.6.1
macOSでは、標準のファイルシステム(HFS, APFS)でない HDD, USBやNASにファイルをコピーしたりすると、いくつかドットで始まるファイルやフォルダーを作成します。
.DS_Store | アイコン位置やレイアウトといったリソース(メタデータ) |
---|---|
.Trashes | リムーバブルディスク内のファイルを削除したときに作成されるゴミ箱 |
.spotlight-v100 | Spotlightが高速な検索をするためのインデックス |
.fseventsd | ファイルシステムのイベントログのデータが含まれたフォルダ |
._○○○ | FAT32, exFATなどといった macOS標準以外のファイルシステムでは、Apple Doubleという機構でファイルの付帯情報(メタデータ)を別ファイルを作成(○○○は対応する実ファイルの名前) |
これらドットファイルは、他のOSでファイルリストを確認すると非常に邪魔となることがあります。
.DS_Storeファイル
アイコン位置やレイアウトといったリソースを保存する為のファイル。消してしまっても問題はありません。
macローカルのストレージは制御できませんが、NASなどのネットワークストレージに対しては以下のコマンドで .DS_Storeファイルを作らなくなります。
defaults write com.apple.desktopservices DSDontWriteNetworkStores True
.Spotlight-V100フォルダ
Spotlight検索用のカタログを保存するためのフォルダ。ボリューム(パーティション)ごとに作られます。
Spotlightの検索対象から外すことにより、このフォルダを作らなくすることができるか?
「システム設定」アプリを起動して「SiriとSpotlight」を選択し、一番下までスクロールします。 「Spotlightのプライバシー...」ボタンを押します。 「+」から、Spotlight検索から除外するボリューム(USBばど)を追加し「完了」ボタンを押します。 これで、指定したボリュームに対して Spotlight検索をオフにすることができます。
Spotlight検索の設定は mdutil
コマンドでコマンドラインからも行えます。
すべてのボリュームに対して、Spotlight検索のインデックスをオフ(オン)にする場合:
sudo mdutil -a -i off sudo mdutil -a -i onボリュームを指定する場合は、
sudo mdutil -i [on|off] /Volumes/[ボリューム名]になります。
しかし、.Spotlight-V100フォルダは作られる...
Windows で .Spotlight-V100フォルダ消してから macOS で「システム設定」でSpotlight検索から除外を再度確認すると設定から消えている...
Spotlight検索から除外って .Spotlight-V100フォルダの中に情報が作られている気がする...結局消せない...
._○○○ (Apple Double)
メタデータなどファイルの付帯情報を別ファイルとして分離する機構(Apple Double)というのがあります。 FAT32やexFATなどHFS+以外のファイルシステムにファイルを保存すると同名のドットファイルが自動で作成されてしまいます。(ABC.xlsxであれば ._ABC.xlsx が作られる)
ファイルを exFATフォーマットのUSB などにコピーすると、これらのファイルが作られるため、Windows でファイル一覧を表示した際に非常に見にくくなります。
そこで dot_clean
コマンドを利用してApple Doubleとして分離されたファイル(._○○○)を取り除きます
dot_clean . dot_clean /Volumes/[ボリューム名]
dot_cleanコマンドには、いくつかコマンドラインオプションが用意されています。(dot_clean -h で確認できます)