14.2. Смена корневого каталога
14.2. Смена корневого каталога
Хотя в системе имеется один корневой каталог, значение / может меняться для каждого процесса в системе. Это обычно делается для предотвращения доступа к файловой системе со стороны сомнительных процессов (например, демоны ftp, обрабатывающие запросы ненадежных пользователей). Например, если в качестве корневого каталога процесса определен /home/ftp, запуск chdir("/") сделает текущий каталог процесса /home/ftp, a getcwd() вернет / для поддержания последовательности данного процесса. С целью обеспечения безопасности, если процесс пытается выполнить chdir("/.."), он остается в своем каталоге / (каталог /home/ftp в масштабах всей системы), так же как и нормальные процессы, выполняющие chdir("/..") остаются в корневом каталоге в масштабах всей системы. Процесс может легко изменять свой текущий корневой каталог с помощью системного вызова chroot(). Но путь нового корневого каталога процесса интерпретируется с помощью текущего установленного корневого каталога, поэтому chroot("/") не модифицирует текущий корневой каталог процесса.
#include <unistd.h>
int chroot(const char * path);
Здесь path определяет новый корневой каталог для процесса. Этот системный вызов, однако, не изменяет текущий каталог процесса. У процесса все еще есть доступ к файлам в текущем каталоге, а также в родственном ему каталоге (../../directory/file). Большинство процессов, выполняющих chroot(), немедленно меняют свои текущие каталоги, чтобы находиться внутри новой корневой иерархии, с помощью chdir("/") или чего-либо подобного. Отмена этого действия может вызвать проблемы с безопасностью в некоторых приложениях.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
8.6. Изменение корневого каталога: chroot()
8.6. Изменение корневого каталога: chroot() Текущий рабочий каталог, установленный с помощью chdir() (см. раздел 8.4.1 «Изменение каталога — chdir() и fchdir()»), является атрибутом процесса, таким же, как набор открытых файлов. Он также наследуется новыми процессами.Менее известным
Выбор корневого узла
Выбор корневого узла Как вы уже видели, выбрать корневой узел можно при помощи образца выбора «/», как, например:<xsl:template match="/"> <HTML>
14.1.3. Смена текущего каталога
14.1.3. Смена текущего каталога Предусмотрено два системных вызова, меняющих текущий каталог процесса: chdir() и fchdir().#include <unistd.h>int chdir(const char * pathname);int fchdir(int fd);Первый системный вызов получает имя каталога в качестве единственного аргумента; второй принимает файловый
Смена фонового рисунка
Смена фонового рисунка О том, как сменить рисунок на Рабочем столе, вы можете узнать из видеоролика «Урок 2.4. Смена фонового рисунка на Рабочем столе».В Windows Vista появилась целая галерея красивых изображений (рис. 2.11), которыми вы можете украсить свой Рабочий стол. Чтобы
Смена IP-адреса компьютера
Смена IP-адреса компьютера Большинство файлообменных сервисов идентифицируют пользователя, пытающегося скачать файл по IP-адресу его компьютера. Из-за этого все проблемы скачивающих, офисных работников и вообще пользователей, получающих доступ к Интернету через
5.9 СМЕНА ТЕКУЩЕГО И КОРНЕВОГО КАТАЛОГА
5.9 СМЕНА ТЕКУЩЕГО И КОРНЕВОГО КАТАЛОГА Когда система загружается впервые, нулевой процесс делает корневой каталог файловой системы текущим на время инициализации. Для индекса корневого каталога нулевой процесс выполняет алгоритм iget, сохраняет этот индекс в
3.4.1. Смена режима
3.4.1. Смена режима Фоновыми процессами являются все сервисы. Они выполняют свои действия параллельно с вашей работой. Но вы в фоновом режиме можете запустить любую программу. Для этого достаточно после указания команды через пробел поставить знак "&". Например, выполните
Подразделы корневого раздела
Подразделы корневого раздела Как видите, сведения о расширениях файлов хранятся в реестре в виде упорядоченных данных (чего, к сожалению, нельзя сказать о других корневых разделах реестра, структура которых если и прослеживается, то только в некоторых местах).Но не
Другие разделы корневого раздела
Другие разделы корневого раздела Уже была рассмотрена большая часть содержимого корневого раздела реестра HKEY_CLASSES_ROOT — разделы расширения, идентификатора и раздел CLSID, но, кроме них, корневой раздел включает в себя еще несколько разделов, которые стоит описать. Некоторые
5.8.2. Смена владельца файла
5.8.2. Смена владельца файла Если вы хотите «подарить» кому-то файл, т. е. сделать какого-то пользователя владельцем файла, то вам нужно использовать команду chown: chown <пользователь> <файл> Примечание Возможно, что после изменения владельца файла вы сами не сможете
Автоматическая смена обоев
Автоматическая смена обоев Украсить Рабочий стол, не устанавливая специальные программы для визуализации интерфейса, можно стандартными обоями. Используя для этого высококачественные изображения, можно фактически каждый день изменять внешний вид своего Рабочего
ФМ-ВЕЩАНИЕ: Смена ориентации
ФМ-ВЕЩАНИЕ: Смена ориентации Некоторые из моих старых московских и региональных знакомых, давно занимающихся перепродажей коробочного софта конечным клиентам, последние год-два начали жаловаться на резкое падение реальных доходов, несмотря на постоянный подъем общих
Смена имен и переопределение
Смена имен и переопределение В предыдущей лекции мы обсудили переопределение компонентов, полученных по наследству. (Помните, что переопределение эффективного компонента задает его новое определение, а для отложенного компонента задает его реализацию.) Сравнение