Информационные технологииStfw.Ru 🔍

Загрузка и инициализация системы.

Вход в систему и управление сеансами.
🕛 22.05.2009, 13:00
Linux устанавливают загрузчик LILO(LInux Loader) по умолчанию.

Для указания параметров загрузки и управления работой LILO используется конфигурационный файл /etc/lilo.conf, который можно редактировать. После внесения изменений в /etc/lilo.conf следует выполнить команду lilo, чтобы внесенные в файл изменения вступили в силу. Для того чтобы получить дополнительную информацию по параметрам LILO, обратитесь к справочной странице файла lilo.conf (выполнив команду man lilo.conf) или к любому из документов, хранящихся в каталоге /usr/share/lilo*/doc.

После начала процесса загрузки автоматически запускается сценарий инициализации (init). Свою работу он начинает со считывания конфигурационного файла запуска по умолчанию /etc/inittab. Важнейший настроечный параметр этого файла определяет основной уровень выполнения (run level). После определения основного уровня выполнения сценарий инициализации передает управление
системой утилите getty, которая создает подключения для терминалов и выводит подсказку входа в систему. Затем getty передает управление еще одной утилите, называемой login, которая считывает имя пользователя и его пароль.
Возможные уровни исполнения:
Уровень Описание
0 Принудительное завершение всех процессов и остановка процессора.
1 Однопользовательский режим. Как правило, используется для техобслуживания системы.
2 Многопользовательский режим (консоль) без поддержки сетевой файловой системы.
3 Многопользовательский режим с поддержкой работы сети.
4 Не используется.
5 Многопользовательский режим с поддержкой сети и графической системы Х.
6 Принудительное завершение всех процессов и перезагрузка системы.

Завершение работы системы можно рассматривать просто как изменение уровня исполнения. С этой точки зрения команды reboot, halt, poweroff и shutdown также можно отнести к командам, предназначенным для изменения уровня исполнения. Команда reboot, являющаяся символической ссылкой на команду halt, выполняет команду shutdown -r now, завершая все процессы и перезагружая систему. Команда halt также выполняет команду shutdown -h now, завершая все
процессы, однако не выключая сам компьютер. Подобным образом работает и команда poweroff (также являющаяся ссылкой на halt), которая переводит систему на уровень исполнения 0 и, при наличии поддержки системой BIOS режима расширенного управления питанием (Advanced Power Management - APM), производит отключение системы. В команде shutdown после ее имени указывается время выключения системы либо в формате +m (количество минут, которое должно пройти до выключения системы после выполения команды), либо в формате hh:mm (абсолютное время суток, где hh означает час, а mm - минуту). Для немедленного выключения системы можно воспользоваться параметром now.

- длина пароля не должна быть меньше 6 символов;
- пароль должен включать по крайней мере 2 алфавитных символа и 1 цифру или специальный символ;
- пароль должен содержать хотя бы 3 символа, не встречавшихся в вашем предыдущем пароле.

Перечень команд:
chvt
Выводит на дисплей указанный виртуальный терминал (1 - 35). См. также tty.
login [имя пользователя]
Запрашивает у пользователя имя и пароль для входа в систему и запускает новый сеанс работы на текущем терминале. Заодно команда проверяет наличие новой
почты для заданного пользователя, запускает интерпретатор, указанный в файле /etc/passwd для этого пользователя (по умолчанию запускается bash), и выполняет настроечные сценарии интерпретатора для данного пользователя.
Logout
Выход из текущего сеанса и вывод приглашения на вход.
shutdown [параметры] время [сообщение]
Останавливает систему, предотвращая повреждение файловой системы. В большинстве систем для использования этой команды необходимо иметь статус привилегированного пользователя. Параметры команды позволяют указать необходимость выключения или перезапуска компьютера. Существует возможность указать задержку перед остановкой, набрав знак плюс и число минут до остановки
(например, +5). Можно также набрать слово now, эквивалентное +0. Кроме того можно указать сообщение, которое появится на терминалах всех пользователей, работающих в системе. Параметры
Параметр Действие
-r Быстрая перезагрузка без проверки цельности файловой системы.
-h Остановить систему после завершения работы. На большинстве современных компьютеров это приводит к выключению питания.
-k Отправить предупредительное сообщение, но не завершать работу.
-r Перезапуск системы. Примеры
Команда Действие
shutdown -r now Немедленная перезагрузка системы.
shutdown -h +2 Выключение компьютера через 2 минуты.

tty
Показывает номер используемого терминала. См. также chvt.

Вся информация о пользователях хранится в файле /etc/passwd. Это обычный текстовый файл, право на чтение которого имеют все пользователи системы, а право на запись имеет только администратор (суперпользователь). В этом файле хранятся пароли пользователей, правда в зашифрованном виде. Подобная открытость - недостаток с точки зрения безопасности, поэтому
зашифрованные пароли хранятся в отдельном закрытом для чтения и записи файле /etc/shadow. Аналогично, информация о группах хранится в файле /etc/group и содержит списки пользователей, принадлежащих той или иной группе. Каждая строка файла /etc/passwd является записью конкретного пользователя и имеет следующий формат:

name:passwd-encod:UID:GID:comments:home-dir:shell

- всего 7 полей (атрибутов), разделенных двоеточиями.
name Регистрационное имя пользователя. Это имя пользователь вводит в ответ на приглашение системы login.
passwd-encod Пароль пользователя в закодированном виде. Алгоритмы кодирования известны, но они не позволяют декодировать пароль. При входе в систему пароль, который вы набираете, кодируется, и результат сравнивается с полем passwd-encod. В случае совпадения пользователю разрешается войти в систему. Даже в закодированном виде доступность пароля представляет некоторую угрозу для безопасности системы. Поэтому пароль хранят в отдельном файле, а в поле passwd-encod ставится символ 'x'.
UID Идентификатор пользователя является внутренним представлением пользователя в системе. Этот идентификатор наследуется задачами, который запускает пользователь, и файлами, которые он создает. По этому идентификатору система проверяет пользовательские права (например, при чтении файли или запуске программы). Суперпользователь имеет UID = 0, что дает ему неограниченные права в системе.
GID Определяет идентификатор первичной группы пользователя. Этот идентификатор соответствует идентификатору в файле /etc/group, который содержит имя группы и полный список пользователей, являющихся ее членами. Принадлежность пользователя к группе определяет дополнительные права в системе. Группа определяет общие для всех членов права доступа и тем самым обеспечивает возможность совместной работы (например, совместного исользования файлов).
comments Обычно, это полное "реальное" имя пользователя. Это поле может содержать дополнительную информацию, например, телефон или адрес электронной почты. Некоторые программы (например, finger и почтовые системы) используют это поле.
home-dir Домашний каталог пользователя. При входе в систему пользователь оказывается в этом каталоге. Как правило, пользователь имеет ограниченные права в других частях файловой системы, но домашний каталог и его подкаталоги определяют область файловой системы, где он является полноправным хозяином.
shell Имя программы, которую Linux использует в качестве командного интерпретатора. При входе пользователя в систему Linux автоматически запустит указанную программу. Обычно это один из стандартных командных интерпретаторов, позволяющих пользователю вводить команды и запускать задачи. В принципе, в этом поле может быть указана любая программа. Важно то, что, завершив выполнение этой задачи, пользователь автоматически выйдет из системы. Файл /etc/shells содержит список программ, которые могут быть использованы в качестве командного интерпретатора.

Стандартные пользователи и группы
После установки Linux обычно уже содержит несколько зарегистрированных
пользователей. Перечислим основные из них:
Имя Пользователь
root Суперпользователь, администратор системы, UID = 0. Пользователь с этим именем имеет неограниченные полномочия в системе. Для него не проверяются права доступа, и таким образом он имеет все "рычаги" для управления системой.
adm Псевдопользователь, владеющий файлами системы ведения журналов.
bin Обычно это владелец всех исполняемых файлов, являющихся командами Linux.
lp Псевдопользователь, от имени которого выполняются процессы системы печати, владеющий соответствующими файлами.
news Псевдопользователь, от имени которого выполняются процессы системы телеконференций.
nobody Псевдопользователь, используемый в работе NFS.
uucp Псевдопользователь подсистемы Unix-to-Unix copy (uucp), позволяющей передавать почтовые сообщения и файлы между Unix-хостами.
Новая система также содержит ряд предустановленных групп.
Имя Группа
root или wheel Административная группа, GID = 0.
user Группа, в которую по умолчанию включаются все обычные пользователи.

Добавление учетной записи пользователя с помощью команды useradd. Единственный обязательный параметр команды usradd - это
регистрационное имя пользователя. Перед каждым дополнительным элементом
учетной записи пользователя следует расположить соответствующую букву
(параметр), которой предшествует дефис.

Параметр Описание
-с комментарий Описание учетной записи. Как правило, это всего лишь полное имя пользователя.
-d домашний каталог Домашний каталог пользователя. По умолчанию значение этого параметра совпадает с регистрационным именем пользователя. Как правило, домашний каталог пользователя размещается в каталоге /home.
-D Указывает на необходимость сохранения предоставленной информации в качестве новой стандартной настройки для всех вновь создаваемых учетных записей (учетная запись при этом не создается).
-e конечный_срок_ Срок истечения действия учетной записи. _действия
-f срок бездействия Количество дней после окончания срока действия пароля, по прошествии которых учетная запись пользователя будет удалена. По умолчанию данный параметр имеет значение -1, что указывает на необходимость его игнорирования.
-g группа Первичная группа пользователя.
-G список_групп Добавление пользователя в указанный список групп, разделенных запятыми.
-k эталонный_каталог Определяет структуру каталога, включающую в себя файлы первоначальной конфигурации и сценарии регистрации, которые должны быть скопированы в домашний каталог пользователя. Этот параметр может быть использован только вместе с параметром -m.
-m Автоматическое создание домашнего каталога пользователя и копирование в него файлов "эталонного" каталога (/etc/skel).
-M Запрещает создание домашнего каталога пользователя, даже если это предусмотрено по умолчанию.
-n Запрещает создание новой группы, соответствующей имени и идентификационноиу номеру пользователя, которая обычно создается по умолчанию.
-r Создать учетную запись с идентификационным номером пользователя, который принадлежит диапазону, зарезервированному для системных учетных записей.
-s оболочка Командная оболочка, которая должна быть ассоциирована с данной учетной записью пользователя.
-u идентиф._номер Идентификационный номер пользователя. По умолчанию автоматически задается следующий по порядку доступный номер.
После создания учетной записи нового пользователя необходимо командой
passwd задать начальный пароль пользователя.
В процессе создания учетной записи пользователя команда useradd
выполняет следующие действия:
- считывает файл /etc/login.defs, содержащий стандартные установки, которые должны быть использованы при создании учетной записи пользователя (местоположение начального ящика электронной почты, диапазон автоматически назначаемых идентификационных номеров пользователей и групп и т.п.).
- анализирует параметры команды, чтобы выяснить, какие из значений по умолчанию должны быть переопределены.
- основываясь на значениях по умолчанию и указанных параметрах команды, создает новый элемент в списке пользователей в файлах /etc/passwd и /etc/shadow.
- создает новый элемент в списке групп в файле /etc/group.
- создает домашний каталог, расположенный в каталоге /home.
- копирует все файлы эталонного каталога в только что созданный домашний каталог нового пользователя. Сюда входят такие файлы, как сценарии регистрации и сценарии запуска приложений.

Файлы настроек Многие приложения Linux, включая и саму командную оболочку, считывают
при загрузке различные файлы настроек. Традиционно эти файлы хранятся в
домашних каталогах пользователей. Следовательно, каждый пользователь может
настроить параметры командной оболочки и других приложений, не повлияв на
настройки остальных пользователей. Общие настройки, содержащиеся в файле
/etc/profile, могут быть дополнены или переопределены в личных файлах настроек
пользователей. Как правило, имена файлов сценариев запуска и файлов настроек
различных приложений начинаются с символа точки (.) и заканчиваются буквами
rc. Командная оболочка bash считывает при каждом своем запуске файл
.bashrc, расположенной в домашнем каталоге текущего пользователя. Существуют конфигурационные файлы командной оболочки, общие для всех
пользователей системы. Каждая командная оболочка считывает содержимое этих
файлов, перед тем как обратиться к индивидуальным файлам пользователя. В
частности, командная оболочка bash прежде всего считывает содержимое файла
/etc/bashrc.
Переназначение пароля пользователя
Команда passwd.
Изменение учетных записей пользователей
Команда usermod аналогична команде useradd и даже имеет с ней общие
параметры. Однако вместо того, чтобы добавлять новые учетные записи эта
команда позволяет изменять уже существующие. Вызвав команду usermod, следует
сообщить регистрационное имя пользователя, а также те детали учетной записи,
которые должны быть изменены:
-с Новый комментарий. Для этого также можно использовать команду chfn. (Несколько подряд идущих слов должны быть взяты в кавычки)
-d Переместить домашний каталог в новое место. Если при этом используется параметр -m, то будет скопировано также и содержимое домашнего каталога.
-e Аналогично useradd.
-f Аналогично useradd.
-g Аналогично useradd.
-G Аналогично useradd.
-l рег._имя_ Новое регистрационное имя пользователя. Имя домашнего каталога _польз-ля при этом не будет изменено. Для этого необходимо применить параметры -d и -m.
-m Используется только вместе с параметром -d. В результате применения этих двух параметров содержимое домашнего каталога копируется в новый каталог.
- Используется вместе с параметром -u. Игнорировать необходимость уникальности идентификационного номера пользователя.
-s Аналогично useradd. Можно использовать команду chsh,
-u Новый идентификационный номер пользователя для данной учетной записи. Если параметр -o не используется, новый идентификационный номер пользователя должен быть уникален.
Удаление учетных записей пользователя
Команде userdel нужен всего лишь один параметр - регистрационное имя
пользователя, учетная запись которого подлежит удалению. Если применить
дополнительный параметр -r, то команда userdel удалит также и домашний каталог
пользователя со всеми хранящимися в нем файлами.

Linux   Теги: Linux

Читать IT-новости в Telegram
Информационные технологии
Мы в соцсетях ✉