スポンサーリンク

UNDELETE(2) FreeBSD システムコールマニュアル UNDELETE(2)

名称

undelete − 削除したファイルの回復

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <unistd.h>

int

undelete(const char *path);

解説

undelete() システムコールは、 path で指定された削除済みファイルを回復しよ うとします。現在は、指定されたオブジェクトがユニオンファイルシステムのホ ワイトアウトである場合に限って動作します。このシステムコールはホワイトア ウトを削除し、ユニオンスタックの下層にあるオブジェクトが表示されるように します。

最終的に undelete() 機能は、その他のログ構造ファイルシステムのような削除 済みファイルを回復できるファイルシステムに拡張されるでしょう。

戻り値

関数 undelete() は、処理が成功すると値 0 を返します。そうでない場合、値 -1 が返され、グローバル変数 errno が設定されてエラーを示します。

エラー

undelete() は、以下の場合にエラーとなります:

       [ENOTDIR]

パスの構成要素中にディレクトリ以外のものが含まれていま す。

[ENAMETOOLONG]
パス名の構成要素が 255 文字を越えているか、またはパス 名全体が 1023 文字を越えています。

[EEXIST]
パスがホワイトアウトを参照していません。

[ENOENT]
指定されたホワイトアウトが存在しません。

[EACCES]
前置パス名の構成要素について検索許可が拒否されていま す。

[EACCES]
回復するファイルを含むディレクトリについて、書込み許可 が拒否されています。

[ELOOP]
パス名を変換するときに検出されたシンボリックリンクが多 すぎます。

[EPERM]
ファイルを含むディレクトリがスティッキとマークされ、そ のディレクトリが、有効なユーザ ID に所有されていませ ん。

[EIO]
ディレクトリエントリの更新している間に入出力エラーが発 生しました。

[EROFS]
指定されたファイルは読取り専用ファイルシステム上にあり ます。

[EFAULT]
path
引数が、プロセスに割り当てられたアドレス空間の範 囲外を指しています。

関連項目

unlink(2), mount_unionfs(8)

歴史

undelete() 関数呼び出しは、 4.4BSD−Lite ではじめて登場しました。

FreeBSD 10.0 October 18, 1994 FreeBSD 10.0

スポンサーリンク