標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
XPG4 |
両方 |
#define _XOPEN_SOURCE
#include <unistd.h>
int chroot(const char *path);
path 引数は、ディレクトリーを指名するパス名を指します。chroot() 関数は、指名したディレクトリーをルート・ ディレクトリーにします。このルート・ディレクトリーは、/ で始まるパス名 のパス検索の開始点です。プロセスの作業ディレクトリーは、chroot() の影響を 受けません。スーパーユーザーだけが chroot() を要求できます。
ルート・ディレクトリーに .. (ドット 2 つ) を 入力すると、ルート・ディレクトリーを指すように 解釈されます。そのため、.. (ドット 2 つ) は、ルート・ディレクトリーの サブツリーの外にあるファイルにアクセスするのには 使用できません。
この関数は、従来からの運用上の理由から提供されます。 これは Single UNIX Specification、バージョン 2 のレガシー機能でしたが、 既に廃止され、Single UNIX Specification、バージョン 3 の一部として サポートされていません。
Single UNIX Specification、バージョン 3 のために 書かれたアプリケーションで、この関数を引き続き使う必要がある場合は、 標準システム・ヘッダーを組み込む前に、フィーチャー・テスト・マクロ _UNIX03_WITHDRAWN を 定義してください。マクロは、Single UNIX Specification、バージョン 3 に移動された すべてのインターフェースおよびシンボルを公開します。
正常終了の場合、chroot() は、ルート・ディレクトリーを変更して 0 を 戻します。