Файл: Основы администрирования и безопасности Linux.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 18.04.2025

Просмотров: 485

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Режимы работы программы

Программа может работать в режимах: -foreground — занимает консоль пользователя.

-background — запускается как параллельный процесс. После запуска программы пользователю доступна командная строка.

49

Режимы работы программы

Для запуска программы в background режиме в конце командной строки необходимо написать символ &

Если программа, запущенная в background-режиме попытается что либо прочитать со стандартного ввода, ее выполнение будет приостановлено.

50


Управление задачами

Ctrl+Z — приостановка выполнения программы

jobs — показывает список приостановленных и запущенных в background режиме программ.

fg [число] — продолжает выполнениепрограммы в foreground режиме.

bg [число] — продолжает выполнение программы в background режиме.

51

Изучение ключевых файлов конфигурации системы

Каталог /etc является централизованным хранилицем настроек системы и приложений.

Настройки приложений хранятся в конфигурационных файлах, формат которых может сильно отличаться в зависимости от приложения.

Если приложение не предполагает иметь более одного конфигурационного файла, то оно располагает его непосредственно в /etc.

Иначе, в /etc создается каталог для размещения конфигурационных файлов приложения.

52

Ключевые конфигурационные

файлы системы

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

/etc/mtab – отражает настройки файловых систем смонтированных в настоящий момент, заполняется из /proc/mounts, при любом монтировании или отмонтировании ФС.

/etc/ld.so.conf – определяет пути поиска системных библиотек программой ldconfig, которая ведет их учет и преоставляет эту информацию приложениям по запросу.

/etc/hosts – содержит соответсвия между именами компьютеров и их IP-адресами

/etc/resolv.conf – содержит настройки DNS-клиента

● /etc/host.conf и /etc/nsswitch.conf – содержат настройки порядка определения IP-адресов на основедоменных имен.

/etc/syslog.conf – содержит настройки системной службы ведения журналов

53

Загрузка системы

Как осуществляется загрузка системы

Как выглядит загрузка системы

Что происходит “за кулисами”

порядок загрузки системы

классические системы инициализации (BSD / System V)

система инициализации upstart

уровни выполнения

установка оборудования

повышение полномочий и работа с правами суперпользователя

монтирование файловых систем

54


Как осуществляется

загрузка системы

Power On Self-Test (POST)

Master Boot Record (MBR)

Boot sector (/dev/hdaX или /dev/sdaX)

Загрузчик ОС (grub, lilo, ntloader...)

Ядро

Процесс init (PID=1)

Система инициализации (BSD, System V, Upstart)

Стартовые скрипты

55

Что происходит “за

кулисами”

Ядро пытается загрузить процесс init, для этого:

Проверяет не указана ли опция init, и если указана запускает соответствующую программу

Если такой опции передано не было, то ядро пытается запустить /init

В случае неудачи с /init ядро пытается запустить /sbin/init

При отсутствии /sbin/init делается попытка запустить

/etc/init

При отсутствии /etc/init делается попытка запустить

/bin/init

Если /bin/init тоже отсутствует ядро пытается запустить

/bin/sh

В случае очередной неудачи – выдается “kernel panic”

56

Порядок

загрузки системы

Ядро

Процесс init (PID=1)

Система инициализации (BSD, System V, Upstart)

Инициализация раздела подкачки

Проверка ФС и их переподключение

Загрузка модулей ядра

Запуск системных сервисов

57

Классические системы

инициализации

Система инициализации BSD

Процесс init использует /etc/inittab в котором прописано соответствие между уровнями выполнения и запускаемыми скриптами и уровень выполнения по умолчанию.

Все скрипты располагаются в директории /etc/rc.d, а для того, чтобы программа запускалась при старте необходимо сделать исполняемым ее скрипт

Система инициализации System V

Процесс init использует /etc/inittab в котором прописан скрипт, который необходимо запустить при старте, соответствие между уровнями выполнения и запускаемыми скриптами и уровень выполнения по умолчанию

Все скрипты располагаются в директории /etc/init.d, а функции используемые в стартовых скриптах в /etc/rc.d/functions

Скрипты начинаются на “K” (останов сервисов) и на “S” (старт сервисов), при загрузке системы запускаются “S”-скрипты в соответствии с их нумерацией: S01xxx,S02yyy...S11zzz..

58


Система инициализации

Upstart

Событийно ориентированная конфигурация

Два типа сервисов: служба и задание

Основные возможности

Задачи и службы запускаются и останавливаются при помощи событий

При запуске/останове задач и служб генерируются события

Событие может быть получено от любого процесса в системе

Сервисы могут автоматически перезапускаться в случае их неожиданного останова

Двунаправленная связь с демоном init, что позволяет получать больше информации в процессе работы

Файлы конфигурации служб расположены в каталоге /etc/event.d

Все скрипты располагаются в директории /etc/init.d а функции используемые в стартовых скриптах в /lib/lsb/init-functions

Символические ссылки на скрипты размещаются в /etc/rcx.d, где x – соответствующий уровень выполнения

59

Уровни выполнения

0 – завершение работы системы

1 или S – однопользовательский режим

2 – многопользовательский режим (по умолчанию)

3 – многопользовательский режим

4 – не используется

5 – многопользовательский режим + X Window

6 – перезагрузка системы

60


Повышение привилегий до

суперпользователя

В Ubuntu по умолчанию отключена возможность входа в систему для суперпользователя

Для выполнения команд с правами суперпользователя используется команда sudo

Пример:

sudo su -

61

Настройка оборудования

lsmod – получение списка загруженных модулей ядра

modprobe –l – получение списка всех доступных модулей ядра

modprobe modulename – загрузка модуля ядра modprobe -r modulename – выгрузка модуля ядра

modinfo modulename – получение информации по модулю

Сами модуля ядра расположены в /lib/modules/$

(uname -r)

Модули которые требуется загружать при загрузке системы следует указать в /etc/modules

62

Монтирование файловых

систем

Любая файловая система которую планируется использовать должна быть подключена (смонтирована) к общему дереву каталогов.

Монтирование производится к любой выбранной директории, но следует иметь ввиду, что если директория не пустая, то после монтирования в нее файловой системы ее старое содержимое станет недоступно, до отключения (размонтирования) соответствующей файловой системы.

После монтирования, файлы находящиеся на смонтированной файловой системе будут отражены на содержимое директории в которую она смонтирована.

При подключении файловых систем допускается указывать параметры специфичные для данной ФС и необходимые для ее корректной работы.

63

Монтирование файловых

систем

mount – утилита для подключения файловых систем. Опции:

–-aподключить все файловые системы описанные в /etc/fstab

–-t fstype – указывает тип подключаемой файловой системы

–-o options... - определяет опции для подключаемой файловой системы

rw — подключение с правами на чтение и запись

ro — подключение с правами на чтение

remount — переподключение смонтированной файловой системы с новыми опциями

64