Next: , Previous: , Up: Backup Files   [Contents][Index]


25.1.2 Backup by Renaming or by Copying?

Emacsがバックアップファイルを作成できる、2つの方法があります:

デフォルトは、1つ目の方法のリネームです。

変数backup-by-copyingが非nilの場合、それは2つ目の方法、つまり元のファイルをコピーして、新たなバッファー内容で上書きすることを意味します。変数file-precious-flagが非nilの場合にも、(メイン機能の副作用として)この効果があります。Saving Buffersを参照してください。

User Option: backup-by-copying

この変数が非nilの場合、Emacsは常にコピーによりバックアップファイルを作成する。デフォルトはnil

以下の3つの変数が非nilの際は、ある特定のケースに2つ目の方法が使用されます。その特定のケースに該当しないファイルの処理に影響はありません。

User Option: backup-by-copying-when-linked

この変数が非nilの場合、Emacsは複数名(ハードリンク)をもつファイルにたいして、コピーによりバックアップを作成する。デフォルトはnil

backup-by-copyingが非nilの場合は常にコピーによりバックアップが作成されるので、この変数はbackup-by-copyingnilのときだけ意味がある。

User Option: backup-by-copying-when-mismatch

この変数が非nil(デフォルト)の場合、リネームによりファイルの所有者、またはグループが変更されるケースでは、Emacsはコピーによりバックアップを作成する。

リネームによりファイルの所有者、またはグループが変更されない場合、値は効果をもたない。つまり、そのディレクトリーで新たに作成されるファイルにたいするデフォルトのグループに属するユーザーにより所有されるファイルが該当する。

backup-by-copyingが非nilの場合は常にコピーによりバックアップが作成されるので、この変数はbackup-by-copyingnilのときだけ意味がある。

User Option: backup-by-copying-when-privileged-mismatch

この変数が非nilの場合、特定のユーザーID値(具体的には、特定の値以下のID数値)にたいしてのみ、backup-by-copying-when-mismatchと同じように振る舞うことを指定する。変数には、その数値をセットする。

したがって、ファイル所有者の変更を防ぐ必要がある際は、backup-by-copying-when-privileged-mismatchを0にセットすれば、スーパーユーザーだけがコピーによるバックアップを行うことができる。

デフォルトは200。