data/

外部非公開のユーザーデータを保存するディレクトリです。「パスワード」「ブログの設定」「記事のデータ」などが含まれます。

  • このディレクトリは外部から読み込めないように設定されている必要があります。
  • このディレクトリ内のほとんどのデータファイルは標準.dat形式になります。

目次

blog/<blogid>/

各ブログ固有の設定やキャッシュが保存されています。

arts/

記事やコンテンツの前後関係、親子関係が記録されたキャッシュです。どれかひとつでも記事を保存したり、ブログの設定を変更するとすべて再生成されます。

func/

プラグイン(デザインモジュール含む)のファイルがインストールされます。ここには perl のスクリプト(.pm)が置かれます。

skel/

プラグインが使用するスケルトンファイル、およびデザイン編集の結果出力として以下の4ファイルが置かれます。

  • _article.html
  • _main.html
  • _header.html
  • _sidebar.html

これらのファイルは「skel/ディレクトリの該当ファイルを上書きする」形で使用され、デザイン編集の結果を画面に反映します。

lock/

記事の多重編集ロック機能で使用するロックファイル置かれます。

design.dat

現在使用中のデザインモジュールの情報がキャッシュとして保存されています。「skel/」以下に保存される4ファイルが正規のモジュールの使用状況なのですが、プラグイン(モジュール)再インストール時にHTMLを解析することは問題が多いので、プラグイン再インストール処理のためだけに、このファイルが置かれています。

デザイン編集画面から結果を保存する度にこのキャッシュファイルが生成されます。

plugins.dat

プラグインの使用状況を保存しています。プラグインの設定はここには保存されません。

setting.dat

ブログのありとあらゆる設定が保存されています。Windowsで言うところのレジストリに相当するファイルです。プラグインごとの個別設定もこのファイルに保存されています。「p:」で始まる項目がそれです。*1

ブログに関する情報をこの1ファイルに集約し、多数のファイルを読み込まなくても1ファイル読みこめば現在のブログの状態がわかるようにすることで、速度アップの効果があります。

tag_cache.txt

タグと、そのタグを持つ記事の情報がキャッシュとして保存されています。arts/以下のファイルと同様、記事を保存するなどすると自動再生成されます。

usertag.txt

ユーザータグ(記法タグ)の設定データです。

*1 : 使用設定はplugins.datにあり、ここには保存されていません。一度削除したプラグインを再インストールしたとき前の設定が残っているのは、プラグインの設定は使用状態に関わらずこのファイルに残っているからです。

db/

標準のテキストDBを使用したときに保存されるDBのデータです。外部DB使用時は存在しません。

各ディレクトリがテーブル名になります。

db/<table>/#index.dat

indexファイルです。テーブルのカラム情報の他、テーブルのindexが記述されています。

検索を高速化するため通常は#indexのみを読み込み、そこに記述されるカラムに対して検索を行います。その結果、取り出すファイルを個別に読み込んでいます。テキストDBの仕様上、検索対象にTABや改行が含まれていても、検索時はスペースに置換されて扱われます。

db/<table>/XXXXX.dat

カラムファイルです。すべてのカラムはpkeyというシリアル値(primary key)を持ちます。そのpkeyの値がXXXXXに当てはまります。中身は標準.datファイルです。

db/<table>/#index.backup.dat

#index.datが何らかの原因で破損または消失したときのためにテーブル情報を保存するバックアップファイルです。

#index.datが消失していれば、すべてのカラムファイルの情報を読み込んで、#index.backup.datのテーブル情報を元に#index.datを自動再生成します。このファイルを削除するとテーブルが再生成できなくなり、致命的な問題が起きます。

dbのdatファイルを直接書き換える

以上の特性を利用して、テキストDBのファイルを直接書き換えることが可能です。

  1. 書き換えたい XXXXX.dat を直接編集して保存します。
  2. 編集したテーブルの #index.dat を削除します。

tmp/

テンポラリファイル置かれます。例えば「インポート処理時」のログデータ等です。

default_setting.dat

ブログの標準設定が置かれます。新しくブログを作成したときに参照される設定になります。

このファイルが存在しないときは、info/default_setting.dat を標準設定として参照します。

system_config.dat

システム全体の設定です。管理→システム管理にある設定項目が主に保存されます。

このファイルは info/default_config.dat をベースとして初期設定時に自動的に生成されます。

textparser_plugin_cache.dat

標準パーサー(さつきパーサー)のタグプラグイン*2のキャッシュです。

記法タグはタグプラグインを置くことで拡張可能な仕様になっていますが、毎回すべてのプラグインを読み込んでいると処理が遅くなってしまいますので、必要なプラグインのみ都度ロードするようになっていて、それを実現するためのキャッシュファイルです。

削除すると記事を処理するときに再生成されます。

*2 : adiaryのプラグインとは異なります