Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы терминал / Terminal_KR_Gorodetskiy_BST2154_v2 .docx
Скачиваний:
21
Добавлен:
28.10.2024
Размер:
12.75 Mб
Скачать
  1. Работа с файлами и каталогами. Управление пользователями

Linux — многопользовательская система, Каждый физический пользователь должен быть зарегистрирован в системе, т. е. иметь собственное имя пользователя. Помимо вопросов обеспечения безопасности, существенны также и вопросы контроля за действиями пользователей, они идентифицируются системой по своим именам. При присвоении имени новому пользователю следует соблюдать следующие правила: имя может содержать: символы латинского алфавита, цифры, _, $,[a-z_][a-z0-9_]*[$]; нельзя использовать пробел, : @,#, т.д. и специальные символы (табуляция, конец строки). Учётная запись пользователя – это необходимая для операционной системы информация о пользователе, хранящаяся в специальных файлах. Информация используется Linux для аутентификации пользователя и назначения ему прав доступа. Аутентификация – системная процедура, позволяющая операционной системе определить, какой именно пользователь осуществляет вход. Вся информация о пользователе обычно хранится в файлах /etc/passwd и /etc/group.

Файл /etc/passwd представляет собой текстовый файл с одной записью в строке, представляющей учетную запись пользователя. Чтобы просмотреть содержимое файла, используйте текстовый редактор или например, команду cat: cat /etc/passwd

Обычно первая строка описывает пользователя root, за которым следуют системные и обычные учетные записи пользователей. Новые записи добавляются в конец файла.

Управление паролями в Linux - часть системной политики. Необходимо определить категориии пользователей, которые могут сами устанавливать пароль, правила выбора паролей и требования к их уровню сложности, сроки устаревания паролей, длительность периода запрета на изменение пароля. Это является типичными правилами при управлении паролями.

Группы пользователей - очень удобный механизм администрирования пользователей в ОС Linux. Информация о группах пользователей хранится в файле /etc/group. Запись для каждой группы пользователей так же, как и в /etc/passwd занимает одну строку. Строка в /etc/group имеет следующую структуру: <имя группы>:<пароль группы>:<GID группы>:<список пользователей>.

В файлах профиля пользователя устанавливаются переменные окружения.

Кроме этого в профиле пользователя хранятся настройки пользователя, файл сценария оболочки, который выполняется автоматически при входе в сеанс и umask. Umask - это права на доступ к файлам и каталогам по умолчанию.

Файл ~/.bashrc — это ресурс оболочки (для пользователя), выполняется только при запуске оболочки из командной строки (в отличие от файлов профиля), содержит дополнительные настройки оболочки /etc/bashrc — общесистемный файл ресурсов оболочки (удобно задавать псевдонимы для команд).

  1. Ядро Linux

Ядро операционной системы является центральной частью операционной системы, которая обеспечивает приложениям координированный доступ к ресурсам компьютера. Ядро управляет доступом к процессору, памяти, устройствам ввода-вывода, жесткими дискам, сетевым интерфейсам и другим аппаратным ресурсам; работает в привилегированном режиме и может выполнять операции, недоступные для процессов пользовательского режима.

Ядро Linux было разработано Линусом Торвальдсом в 1991 году и соответствует стандартам POSIX. Оно составляет основу операционных систем семейства Linux и активно развивается сообществом разработчиков.

Ядро Linux распространяется под лицензией GNU General Public License версии 2 (GPLv2), это означает, что исходный код ядра является открытым и доступным для каждого. Любой желающий может использовать, изменять и распространять его в соответствии с условиями лицензии.

Системные вызовы - это механизм, который операционная система

предоставляет приложениям для взаимодействия с ядром. Приложения

обращаются к ядру с помощью системных вызовов для выполнения операций, запрещенных в пользовательском режиме. Ядро обрабатывает запрос и возвращает результат приложению.

Для переключения из пользовательского в привилегированный режим используется механизм программных прерываний. Ядро операционной системы предоставляет API системных вызовов, который позволяет процессам получать доступ к различным системным функциям, таким как создание нового процесса, выполнение операций ввода-вывода, создание конвейеров для взаимодействия между процессами и др..

Модули ядра, загружаемые модули ядра (loadable kernel module, LKM) - динамически подключаемые объектные файлы, которые можно загружать и выгружать из ядра во время работы системы. Они используются для добавления новой функциональности, такой как поддержка новых устройств или файловых систем, а также для расширения возможностей системных вызовов. Модули ядра обычно хранятся в директории /lib/modules в файлах с расширением .ko. При необходимости модуль может быть выгружен.

В Linux модули ядра могут быть автоматически загружены при старте системы и автоматически собраны при обновлении ядра. Для этого существуют специальные механизмы автозагрузки и автосборки модулей.

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

При обновлении ядра некоторые его модули могут перестать работать, так как они скомпилированы под старую версию ядра. Для решения этой проблемы используется механизм автосборки модулей. DKMS (Dynamic Kernel Module Support) - фреймворк для автоматической сборки и установки модулей ядра в Linux.

DKMS устанавливает модуль ядра в систему, используя Makefile. Кроме того, DKMS позволяет автоматически обновлять и удалять модули ядра, если они больше не нужны или если ядро было обновлено.