Книга: Сетевые средства Linux

Копирование файлов сервера

Копирование файлов сервера

Сформировав поддерево chroot, надо скопировать в содержащиеся в нем каталоги требуемые файлы. Набор необходимых файлов зависит от особенностей сервера. Если сервер самостоятельно вызывает функцию chroot(), вам нет необходимости размещать в пределах поддерева chroot исполняемые файлы сервера. Вы можете запустить сервер за пределами поддерева chroot, указав ему расположение поддерева. После вызова chroot() сфера действий сервера будет ограничена сформированным вами поддеревом. Поскольку сервер, самостоятельно вызывающий chroot(), может читать конфигурационные файлы, размещенные за пределами поддерева, число файлов, которые необходимо поместить в каталоги поддерева chroot, сводится к минимуму. Вам придется скопировать лишь те файлы, которые требуются серверу для работы после вызова chroot(). Примером сервера, функционирующего подобным образом, является анонимный сервер FTP. (Подробно вопросы работа сервера FTP рассматривалась в главе 21.

Если сервер не вызывает самостоятельно функцию chroot(), его следует запускать посредством утилиты chroot. При этом в каталоги поддерева chroot необходимо скопировать исполняемые и конфигурационные файлы сервера, а также все файлы, необходимые серверу в процессе работы. Кроме того, иногда приходится помещать в каталоги поддерева chroot некоторые системные файлы. Определить набор файлов, необходимых серверу, достаточно сложно. Для того чтобы выяснить, какие файлы требуются в процессе работы, надо прочитать документацию, а если нужные сведения там отсутствуют, вам придется проанализировать содержимое дистрибутивного пакета. Для получения информации о файлах, содержащихся в пакете, можно использовать инструменты tar, rpm или dpkg. Очевидно, что копировать в каталоги поддерева chroot надо не все файлы; например, для работы сервера не нужна документация. Чтобы выяснить, какие файлы необходимы серверу, можно использовать программу strace. Вызвав команду strace имя_серверной_программы, вы получите сведения о файлах, используемых в процессе работы сервера, в том числе имена файлов, которые сервер открывает самостоятельно.

На заметку

Вместо копирования файлы можно переместить в каталоги поддерева chroot. При этом вы будете иметь гарантию того, что после запуска сервер будет выполняться в пределах поддерева.

Оглавление книги


Генерация: 0.096. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз