ЗАДАЧА системного администрирования
-
Основные задачи системного администрирования
Администрирование системы заключается в выполнении ряда определенных задач по настройке системы и ее поддержанию в работоспособном состоянии. Обычно в администрировании выделяют два аспекта: системное администрирование, связанное с обслуживанием локальной системы, и сетевое администрирование, связанное с обеспечением сетевого взаимодействия данной (локальной) системы с другими (удаленными) системами. Так как ОС МСВС 3.0 является сетевой ОС и для корректного функционирования многих системных сервисов необходима ее правильная сетевая настройка, такое разделение задач является достаточно условным. Однако оно позволяет лучше понять и организовать администрирование системы в целом. Поэтому логически выделяется два администратора: системный и сетевой. В пособии основное внимание уделено системному администрированию, называемому далее просто администрированием, т.е. управлению локальной системой.
Совсем не обязательно, чтобы задачи по администрированию выполнял один человек. В небольших системах эти задачи выполняет один администратор. В больших системах эти задачи распределяются между несколькими администраторами, которые подчиняются главному администратору системы. В любом случае необходим хотя бы один человек, который понимал бы все поставленные задачи и обеспечивал их выполнение другими людьми.
Перечислим основные задачи администрирования:
установка и настройка операционной системы;
установка и настройка аппаратных средств;
установка даты и времени;
обеспечение безопасности системы;
администрирование пользователей (управление учетными записями пользователей);
управление программным обеспечением;
управление файловыми системами;
управление системными сервисами;
мониторинг системы;
поиск неисправностей;
резервное копирование файловых систем, архивирование данных;
ведение системного журнала и локальной документации;
оказание помощи пользователям.
Система безопасности должна быть полноценной со всех точек зрения. Даже если большинство компонент защиты находятся под контролем системного администратора, слабое звено системы защиты дает потенциальную возможность проникнуть злоумышленнику в систему. Получив возможность изучать систему защиты изнутри, злоумышленник повышает свои шансы полного взлома системы и получения привилегированных полномочий. Только комплексное развитие всех подсистем безопасности может обеспечить надежную защищенность системы в целом.
Системный администратор должен своевременно изучать всю новую информацию, относящуюся к системе безопасности. Особенное внимание следует уделять сообщениям о новых открытых «дырах» в системе защиты, чтобы вовремя обновлять устаревшие защитные средства и исправлять недостатки, приводящие к возможности нарушения нормального функционирования системы.
Можно заметить, что каждая из задач администрирования прямо или косвенно связана с администрированием либо ядра ОС, либо процессов (системных сервисов), либо файлов (файловых систем). Именно по этому принципу построено дальнейшее изложние материала.
-
Типы интерфейсов пользователя
ОС МСВС 3.0 предоставляет пользователю ряд интерфейсов. Под пользователем в данном случае понимается как обычный пользователь (оператор), так и системный администратор и разработчик-программист.
Существуют следующие типы интерфейсов:
командный интерфейс;
псевдографический интерфейс;
графический интерфейс;
программный интерфейс;
конфигурационный интерфейс.
Командный интерфейс представляет собой набор команд, предназначенных для взаимодействия пользователя с ОС на уровне командной строки. Для реализации командного интерфейса используется командная оболочка BASH, называемая также интерпретатором команд. BASH также представляет собой интерпретируемый язык программирования, который опытный системный администратор обязан знать, чтобы понимать логику работы сценариев запуска системы и уметь автоматизировать рутинные операции.
Синтаксис команды состоит из имени команды и ее аргументов. В качестве аргументов выступают опции (ключи) команды и их параметры. Имя и аргументы разделяются символами-разделителями: пробелами или табуляцией.
Команды можно условно разбить на три класса: встроенные команды BASH, простые команды и утилиты. Встроенные команды BASH являются частью командной оболочки и выполняются в ее контексте. Например, команда изменения текущего каталога cd. Однако большинство команд являются отдельными программами, для выполнения которых создаются отдельные процессы. Простые команды выполняют определенные действия. Например, одна из самых часто используемых команд – команда вывода содержимого каталога ls. Для повышения гибкости использования команд, их поведение может изменяться с помощью опций. Например, команда ls с опцией -l выводит содержимое каталога в длинном формате. Утилиты – это сложные команды, которые обладают собственным набором подкоманд и обычно взаимодействуют с пользователем в интерактивном (диалоговом) режиме. Например, команда управления разделами жестких дисков fdisk.
Командный интерфейс характеризуется повышенной сложностью использования, поэтому его рекомендуется использовать либо опытным пользователям, либо в условиях ограниченных аппаратных ресурсов (например, при отсутствии графического интерфейса).
Псевдографический интерфейс состоит из псевдографических программ и занимает промежуточное положение между командным и графическим интерфейсами. Он обладает всеми преимуществами графического интерфейса при более ограниченной реализации, обусловленной отсутствием богатых графических возможностей. Наиболее известным примером псевдографической программы является менеджер файлов Midnight Commander, который обладает многими возможностями, полезными не только для обычного пользователя, но и для системного администратора (встроенный редактор, ftp-клиент, поддержка архивов и пакетов RPM).
Графический интерфейс – это набор графических программ, предоставляющих пользователю дружелюбный интуитивно-понятный визуальный интерфейс к операционной системе. Использование графического интерфейса позволяет уменьшить трудоемкость и повысить эффективность выполнения задач по системному администрированию, так как управление системой сводится к щелчкам «мышью». Основными преимуществами графического интерфейса являются:
исключение работы пользователя на уровне командной строки (не нужно помнить команды и знать их формат);
визуализация работы механизмов и структур данных операционной системы (не нужно знать формат конфигурационных файлов);
предоставление пользователю тех же возможностей, что и командный интерфейс;
контроль действий пользователя (например, проверка при вводе допустимых значений);
оперативное предоставление пользователю подсказок и помощи.
Программный интерфейс, также называемый прикладным программным интерфейсом, – это набор библиотечных функций, предназначенных для обращения к операционной системе из программ. Библиотечные функции группируются в библиотеки по функциональному назначению. Например, основной системной библиотекой, которую используют все программы, является библиотека glibc. С помощью данной библиотеки можно обращаться к системным вызовам – программному интерфейсу ядра ОС. Для написания графических программ в ОС МСВС 3.0 широко используется библиотека Qt.
Программный интерфейс, как следует из названия, предназначен для программиста. Чтобы им воспользоваться, необходимо не только владеть тем или иным языком программирования, но и иметь в наличие средства разработки – прежде всего компилятор gcc и отладчик gdb. Для разработки графических приложений для ОС МСВС 3.0 используется среда визуального программирования на языках С/С++ «Конструктор». Системному администратору данный интерфейс может понадобиться только в особых случаях. Поэтому его рассмотрение выходит за рамки пособия. Отметим только, что наиболее естественным языком программирования в ОС МСВС 3.0 является язык С, так как сама операционная система в основном написана именно на этом языке, и, как следствие, ее прикладной интерфейс – это прежде всего функции языка С.
Конфигурационный интерфейс – это множество системных настроек, управляющих поведением системы. Доступ к этим настройкам можно получить двумя способами:
через системные файлы, в которых хранится информация, необходимая для функционирования операционной системы;
через псевдо-файловую систему /proc, речь о которой пойдет в четвертом разделе.
Редактируя системные файлы можно управлять различными аспектами функционирования операционной системы: разрешать или запрещать вход в систему тех или иных пользователей, подключать или запрещать использовать те или иные устройства (видео-, звуковые, сетевые карты, жесткие диски, принтеры), определять используемые файловые системы, управлять системными демонами и сетевыми сервисами и т.д.
В общем случае системные файлы – это простые текстовые файлы, для редактирования которых можно использовать любой текстовый редактор. Например, классический редактор vi, который входит в состав любой ОС класса UNIX.
Системные файлы обладают определенным внутренним форматом, который может быть как простым (например, наборы записей определенного формата), так и сложным, похожим на программу на языке программирования. Сложные системные файлы обладают набором ключевых слов (параметров) и обычно разбиваются на секции.
В общем случае системные файлы располагаются в каталоге /etc и его подкаталогах, сгруппированные по функциональному назначению. Например, системные файлы средств защиты информации находятся в каталоге /etc/security.
По характеру содержащейся информации системные файлы можно разделить на следующие два класса:
файлы – базы данных;
конфигурационные файлы.
К первому классу относятся файлы, содержащие не управляющую информацию. Классическим примером является файл с учетными записями пользователей системы /etc/passwd. Ко второму классу относятся файлы с управляющей информацией для различных подсистем операционной системы. Например, файл с настройками уровней выполнения /etc/inittab.
Конфигурационный интерфейс предназначен исключительно для системного администратора, так как изменять содержимое системных файлов может только суперпользователь.
|