Вместе команда /usr/sbin/useradd и директория /etc/skel предоставляют способ гарантированного добавления пользователей в систему LFS с одинаковыми начальными установками для таких параметров, как PATH, обработка клавиатуры и переменные окружения.
Директория /etc/skel содержит копии различных установочных и других файлов, которые могут быть скопированы в новые домашние директории пользователей, когда программа /usr/sbin/useradd добавляет пользователя user.
Useradd
Программа useradd использует набор значений по умолчанию, находящихся в /etc/default/useradd, если он присутствует. Если файла нет, тогда используются внутренние значения. Вы можете просмотреть значения по умолчанию, запустив /usr/sbin/useradd -D.
Для изменения этих значений на новые, создайте базовый файл /etc/default/useradd с теми же значениями, что выводятся командой /usr/sbin/useradd -D. Вот пример.
# Begin /etc/default/useradd
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=
SKEL=/etc/skel
# End /etc/default/useradd
В файле отсутствует только оболочка по умолчанию. Добавьте это запуском:
/usr/sbin/useradd -D -s/bin/bash
Это установит строку SHELL= в SHELL=/bin/bash.
Useradd имеет много параметров, которые могут быть установлены в файле /etc/default/useradd.
Для большей информации смотрите man useradd.
/etc/skel
Для начала создайте директорию /etc/skel и убедитесь, что она доступна для записи только системному администратору, обычно root. Создание директории под root это лучший способ.
У любого файла из этой части книги, который вы разместите в /etc/skel, запись должна быть разрешена только владельцу, а так же они должны быть нечитаемыми для "группы" и "других".
Вы можете разместить и другие файлы в /etc/skel с другими правами доступа.
Решите, какие файлы инициализации должны быть предоставлены для всех (или большинства) новых домашних директорий пользователей. Решение, которое вы сделаете, будет влиять на ваши действия в двух следующих разделах Стартовые файлы оболочки Bash и Файлы /etc/vimrc и ~/.vimrc. Некоторые их этих файлов будут полезны для root, другие для остальных и новых пользователей.
Файлы из этих разделов, которые вы можете захотеть разместить в /etc/skel, включают .inputrc, .bash_profile, .bashrc, .bash_logout, .dircolors, и .vimrc. Если вы не уверены, какой из них должен быть размещен здесь, просто продолжайте до следующих разделов, читая каждый раздел и другие предлагаемые ссылки, а затем сделайте ваш выбор.
Вы можете запустить слегка измененные установки команд для файлов, размещенных в /etc/skel. Каждый раздел будет напоминать вам об этом. Короче, команды в книге были написаны для файлов, которые не добавлены в /etc/skel, а только посылают результаты в домашние директории пользователей. Если файл должен быть в /etc/skel, измените команды книги для посылки вывода сюда, а затем просто скопируйте файл из /etc/skel в подходящие директории, например /etc, ~ или домашнюю директорию любого пользователя, имеющегося в системе.
Добавление пользователя
При добавлении нового пользователя командой useradd используйте параметр -m, который говорит useradd создать домашнюю директорию пользователя и скопировать в нее файлы из /etc/skel. Например:
useradd -m jwrober
Последнее обновление 2005-01-14 17:30:04 -0700