undelete(2) FreeBSD 一般コマンドマニュアル

undelete

前のページ 上に戻る 次のページ

undelete




書式

     #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]            指定されたファイルは読取り専用ファイルシステム上にあり
                        ます。


ABELNET VPSサービス