
- •Введение
- •Лабораторная работа 1.
- •Регистрация пользователя в системе
- •Выход из системы
- •Выполнение простых команд
- •Группирование команд
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Литература
- •5.3. Задание для самостоятельной работы
- •5.4. Контрольные вопросы
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Задание для самостоятельной работы
- •Формат файла /etc/passwd
- •Формат файла /etc/shadow
- •Формат файла /etc/group
- •Создание нового пользователя
- •Переключение между пользователями
- •Файлы инициализации пользователей
- •Файлы, регламентирующие работу пользователей
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •9.3. Права доступа к каталогам
- •9.4. Смена прав доступа на файлы
- •9.5. Маска на вновь создаваемые файлы
- •9.6. Дополнительные атрибуты файла
- •9.7. Списки управления доступом
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •10.3. Метасимволы или шаблоны
- •10.4. История команд
- •10.5. Псевдонимы
- •10.6. Перенаправление ввода и вывода
- •10.7. Конвейеры
- •10.8. Приглашение ко вводу
- •10.9. Сценарии оболочки
- •10.10. Задания для самостоятельной работы
- •10.11. Контрольные вопросы
- •11.3. Системный вызов open()
- •11.4. Системный вызов read()
- •11.5. Системный вызов write()
- •11.6. Системный вызов lseek()
- •11.7. Системный вызов close()
- •11.8. Задания для самостоятельной работы
- •11.9. Контрольные вопросы
- •12.3. Системный вызов fork
- •12.4. Системный вызов exit
- •12.5. Системный вызов wait
- •12.6. Системный вызов exec
- •12.7. Системные вызовы наследования пользовательских дескрипторов файла
- •12.8. Задания для самостоятельной работы
- •12.9. Контрольные вопросы
- •13.3. Системный вызов signal
- •13.4. Системный вызов pause
- •13.5. Системный вызов alarm
- •13.6. Управление непредусмотренными событиями
- •13.7. Неименованные каналы
- •13.8. Именованные каналы
- •13.9. Задания для самостоятельной работы
- •13.10. Контрольные вопросы
- •Литература
- •Заключение
- •Учебное издание
- •Системное программирование Лабораторный практикум
Формат файла /etc/shadow
Файл /etc/shadow содержит в себе информацию о паролях пользователей. В отличие от файла /etc/passwd файл /etc/shadow недоступен для чтения любому пользователю. Одна строка файла соответствует одному пользователю. Строки имеют следующий формат:
username : password : lastchg : min : max : inactive : expire
В таблице 8.4 представлен формат этого файла.
Таблица 8.4
Формат файла /etc/shadow
Название |
Описание |
username |
Имя пользователя в системе. |
password |
Пароль в зашифрованном виде. |
lastchg |
Дата последней смены пароля. |
min |
Минимальное число дней между сменами паролей. |
max |
Максимальное число дней между сменами паролей. |
inactive |
Число дней с последней даты входа, после которого бюджет пользователя будет заблокирован. |
expire |
Дата после которой пользователь не может войти в систему. |
Пример. Команда $cat /etc/shadow позволяет убедиться, что пароль пользователя root не хранится в открытом виде.
Формат файла /etc/group
Файл /etc/group описывает группы, которые присутствуют в ОС. Одна строка файла соответствует одной группе. Строки имеют следующий формат:
group-name : group-password : GID : user-list
В таблице 8.5 представлен формат этого файла.
Таблица 8.5
Формат файла /etc/group
Название |
Описание |
group-name |
Имя группы пользователей в системе. |
group-password |
Поле не используется. |
GID |
Номер группы. |
user-list |
Список пользователей, входящих в группу. |
Группы, существующие по умолчанию
root::0:root
other::1:
bin::2:root,bin,daemon
sys::3:root,bin,sys,adm
adm::4:root,adm,daemon
uucp::5:root,uucp
mail::6:root
tty::7:root,tty,adm
lp::8:root,lp,adm
nuucp::0:root,nuucp
staff::10:
daemon::12:root,daemon
sysadmin::14:
nobody::6001:
noaccess::6002:
nogroup::65534:
Пример. Команда $cat /etc/group позволяет определить, какие пользователи принадлежат группе bin.
Создание нового пользователя
Можно выделить три способа создания нового пользователя:
редактируя /etc/passwd, /etc/shadow и /etc/group;
командой useradd;
через admintool.
Для создания новых учетных записей пользователя и группы не рекомендуется напрямую редактировать файлы /etc/passwd и etc/group, т.к. в некоторых системах информация о пользователях хранится в системных таблицах. Лучше пользоваться утилитами.
Графическая утилита admintool. Утилита admintool позволяет добавлять и удалять пользователей и группы, изменять атрибуты пользователей.
В таблице 8.6 представлены утилиты командной строки для администрирования пользователей и групп. Утилиты командной строки - более гибкий инструмент по сравнению с admintool.
Таблица 8.6
Утилиты для администрирования пользователей и групп
Команда |
Описание |
useradd |
Добавить нового пользователя. |
userdel |
Удалить пользователя. |
usermod |
Изменение атрибутов пользователя. |
groupadd |
Добавить новую группу. |
groupdel |
Удалить группу. |
groupmod |
Изменить данные о группе. |
passwd username |
Смена пароля пользователю. |
Пример. Команда $passwd student позволяет установить пароль пользователю student.