НАЗВАНИЕ¶
chroot - изменить
  корневой
  каталог
ОБЗОР¶
#include <unistd.h>
 
int chroot(const char *path);
ОПИСАНИЕ¶
chroot изменяет
  корневой
  каталог на
  тот, что
  задан
  аргументом
  
path. Этот
  каталог
  будет
  использоваться
  для имен
  файлов,
  начинающихся
  со /. Корневой
  каталог
  наследуется
  всеми
  потомками
  текущего
  процесса.
 
Только
  суперпользователь
  может
  изменять
  корневой
  каталог.
 
Заметьте, что
  этот
  системный
  вызов не
  изменяет
  текущий
  рабочий
  каталог,
  поэтому .
  может
  находиться
  вне дерева
  каталогов,
  начинающегося
  со /. В
  частности,
  суперпользователь
  может
  выбраться
  из-под chroot jail с
  помощью mkdir foo; chroot foo; cd
  ...
ВОЗВРАЩАЕМОЕ
  ЗНАЧЕНИЕ¶
В случае
  успеха
  возвращается
  ноль. При
  ошибке
  возвращается
  -1, а 
errno
  устанавливается
  должным
  образом.
 
ОШИБКИ¶
В
  зависимости
  от файловой
  системы
  могут
  появляться
  другие
  ошибки.
  Стандартные
  ошибки
  таковы:
 
  - EPERM
 
  - Фактический
      UID не равен
      нулю.
 
  - EFAULT
 
  - path
      указывает
      за пределы
      доступного
      адресного
      пространства.
 
  - ENAMETOOLONG
 
  - path
      слишком
      длинно.
 
  - ENOENT
 
  - Файл не
      существует.
 
  - ENOMEM
 
  - Ядру не
      хватило
      памяти.
 
  - ENOTDIR
 
  - Компонент
      пути,
      использованный
      как каталог
      в path, в
      действительности
      таковым не
      является.
 
  - EACCES
 
  - В одном из
      каталогов,
      находящихся
      по пути к path,
      запрещен
      поиск.
 
  - ELOOP
 
  - path
      является
      зацикленной
      символической
      ссылкой, то
      есть при
      подстановке
      возникает
      ссылка на
      неё саму.
 
  - EIO
 
  - Произошла
      ошибка
      ввода-вывода.
 
СООТВЕТСТВИЕ
  СТАНДАРТАМ¶
SVr4, SVID, 4.4BSD, X/OPEN. Эта
  функция не
  входит в POSIX.1. SVr4
  документирует
  дополнительные
  коды ошибок EINTR,
  ENOLINK и EMULTIHOP. X/OPEN не
  документирует
  EIO, ENOMEM и EFAULT. Этот
  интерфейс
  помечен как
  "устаревающий"
  в X/OPEN.
СМОТРИ
  ТАКЖЕ¶
chdir(2)
ПЕРЕВОД¶
Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 1999