chroot изменяет корневой каталог текущего запущенного процесса и его потомков, изолируя их в субдиректории файловой системы. Процессы внутри chroot не могут получить доступ к файлам или каталогам выше нового корневого каталога. Это достигается путем изменения структуры файловой системы, которую видит ядро для данного процесса. То есть вызовы к системным функциям, обращающимся к файлам по абсолютному пути (например, /usr/bin/ls), разрешаются относительно нового корневого каталога.
Применение:
Ограничения:
chroot может все еще влиять на систему, например, использовать ресурсы ЦП и памяти, изменять настройки ядра (если у него есть соответствующие привилегии).chroot (исполняемые файлы, библиотеки), должны быть скопированы внутрь нового корневого каталога.chroot: Процесс с root-привилегиями может выйти из chroot с помощью системных вызовов, хотя это и нетривиально.Пример использования:
bash
После выполнения последней команды, новая оболочка bash будет работать внутри каталога /my_chroot, и ее корневым каталогом будет считаться /my_chroot. Команда ls / внутри этого bash покажет список файлов и каталогов внутри /my_chroot.