Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
veos:admin_manual [2023/03/12 11:35] – [Управление пользователями] staspolevic | veos:admin_manual [2024/09/26 15:29] (текущий) – внешнее изменение 127.0.0.1 |
---|
====== 7 Руководство администратора ====== | ====== Руководство администратора ====== |
{{indexmenu_n>7}} | {{indexmenu_n>8}} |
| |
===== Общие принципы работы VeOS ===== | ===== Общие принципы работы VEOS ===== |
| |
==== Процессы и файлы ==== | ==== Процессы и файлы ==== |
| |
VeOS является многопользовательской интегрированной системой, т.е. она разработана в расчете на одновременную работу нескольких пользователей. | VEOS является многопользовательской интегрированной системой, т.е. она разработана в расчете на одновременную работу нескольких пользователей. |
Пользователь может либо сам работать в системе, выполняя некоторую последовательность команд, либо от его имени могут выполняться прикладные процессы. | Пользователь может либо сам работать в системе, выполняя некоторую последовательность команд, либо от его имени могут выполняться прикладные процессы. |
Пользователь взаимодействует с системой через командный интерпретатор, например, bash. Командный интерпретатор представляет собой прикладную программу, которая принимает от пользователя команды или набор команд и переводит их в системные вызовы к ядру системы. Интерпретатор позволяет пользователю работать с файлами, передвигаться по дереву файловой системы, запускать прикладные процессы. Все командные интерпретаторы UNIX имеют развитый командный язык и позволяют писать сложные программы, упрощающие процесс администрирования системы и работы с ней. | Пользователь взаимодействует с системой через командный интерпретатор, например, bash. Командный интерпретатор представляет собой прикладную программу, которая принимает от пользователя команды или набор команд и переводит их в системные вызовы к ядру системы. Интерпретатор позволяет пользователю работать с файлами, передвигаться по дереву файловой системы, запускать прикладные процессы. Все командные интерпретаторы UNIX имеют развитый командный язык и позволяют писать сложные программы, упрощающие процесс администрирования системы и работы с ней. |
Все программы, которые загружены в память сервера (т.е. выполняются) в текущий момент времени, называются процессами. Процессы можно разделить на два основных класса: системные процессы и пользовательские процессы. | Все программы, которые загружены в память сервера (т.е. выполняются) в текущий момент времени, называются процессами. Процессы можно разделить на два основных класса: системные процессы и пользовательские процессы. |
Системные процессы — программы, решающие внутренние задачи ОС, например, организацию виртуальной памяти на диске или предоставляющие пользователям те или иные сервисы (процессы-службы). | Системные процессы — программы, решающие внутренние задачи ОС, например, организацию виртуальной памяти на диске или предоставляющие пользователям те или иные сервисы (процессы-службы). |
Пользовательские процессы — процессы, запускаемые пользователем из командного интерпретатора для решения задач пользователя или управления системными процессами. VeOS изначально разрабатывался как многозадачная система. Он использует технологии, опробованные и отработанные другими реализациями UNIX - предшественниками VeOS. | Пользовательские процессы — процессы, запускаемые пользователем из командного интерпретатора для решения задач пользователя или управления системными процессами. VEOS изначально разрабатывался как многозадачная система. Он использует технологии, опробованные и отработанные другими реализациями UNIX - предшественниками VEOS. |
Фоновый режим работы процесса — режим, когда программа может работать без взаимодействия с пользователем. В случае необходимости интерактивной работы с пользователем (в общем случае) процесс будет «остановлен» ядром, и работа его продолжается только после переведения его в «нормальный» режим работы. | Фоновый режим работы процесса — режим, когда программа может работать без взаимодействия с пользователем. В случае необходимости интерактивной работы с пользователем (в общем случае) процесс будет «остановлен» ядром, и работа его продолжается только после переведения его в «нормальный» режим работы. |
| |
==== Файловая система ОС ==== | ==== Файловая система ОС ==== |
| |
В VeOS использована файловая система Linux, которая является единым деревом. Корень этого дерева — каталог, называемый root (рут) и обозначаемый /. | В VEOS использована файловая система Linux, которая является единым деревом. Корень этого дерева — каталог, называемый root (рут) и обозначаемый /. |
Части дерева файловой системы могут физически располагаться в разных разделах разных дисков или вообще на других компьютерах — для пользователя это прозрачно. Процесс присоединения файловой системы раздела к дереву называется монтированием, удаление — размонтированием. Например, файловая система CD-ROM в дистрибутиве монтируется по умолчанию в каталог /media/cdrom (путь в дистрибутиве обозначается с использованием /, а не \, как в Windows). | Части дерева файловой системы могут физически располагаться в разных разделах разных дисков или вообще на других компьютерах — для пользователя это прозрачно. Процесс присоединения файловой системы раздела к дереву называется монтированием, удаление — размонтированием. Например, файловая система CD-ROM в дистрибутиве монтируется по умолчанию в каталог /media/cdrom (путь в дистрибутиве обозначается с использованием /, а не \, как в Windows). |
Текущий каталог обозначается ".", родительский каталог (уровнем выше) - "..", например, для перехода в каталог верхнего уровня: | Текущий каталог обозначается ".", родительский каталог (уровнем выше) - "..", например, для перехода в каталог верхнего уровня: |
* /mnt — точки временного монтирования; | * /mnt — точки временного монтирования; |
* /opt — вспомогательные пакеты; | * /opt — вспомогательные пакеты; |
* /opt/vasexperts - родительский каталог продуктов компании ВАСЭкспертс | * /opt/vasexperts - родительский каталог продуктов компании VAS Experts |
* /proc — виртуальная файловая система, хранящаяся в памяти компьютера при загруженной ОС. В данном каталоге расположены самые свежие сведения обо всех процессах, запущенных на компьютере. | * /proc — виртуальная файловая система, хранящаяся в памяти компьютера при загруженной ОС. В данном каталоге расположены самые свежие сведения обо всех процессах, запущенных на компьютере. |
* /root — домашний каталог администратора системы; | * /root — домашний каталог администратора системы; |
Раздел диска обозначается числом после его имени. Например, /dev/sdb4 — четвертый раздел второго диска. | Раздел диска обозначается числом после его имени. Например, /dev/sdb4 — четвертый раздел второго диска. |
| |
=== Разделы, необходимые для работы VeOS === | === Разделы, необходимые для работы VEOS === |
| |
Для работы ОС на жестком диске (дисках) должны быть созданы, по крайней мере, два раздела: корневой (то есть тот, который будет содержать каталог /) и раздел подкачки (swap). Размер последнего, как правило, составляет от однократной до двукратной величины оперативной памяти компьютера. Если на диске много свободного места, то можно создать отдельные разделы для каталогов /usr, /home, /var. | Для работы ОС на жестком диске (дисках) должны быть созданы, по крайней мере, два раздела: корневой (то есть тот, который будет содержать каталог /) и раздел подкачки (swap). Размер последнего, как правило, составляет от однократной до двукратной величины оперативной памяти компьютера. Если на диске много свободного места, то можно создать отдельные разделы для каталогов /usr, /home, /var. |
| |
==== Виртуальная консоль ==== | ==== Виртуальная консоль ==== |
VeOS предоставляет доступ к виртуальным консолям, с которых можно осуществлять одновременно несколько сеансов работы в системе (сессий). | VEOS предоставляет доступ к виртуальным консолям, с которых можно осуществлять одновременно несколько сеансов работы в системе (сессий). |
Переключение между первыми шести виртуальными консолями производится нажатием комбинации клавиш Alt+F1 — Alt+F6 (Ctrl+Alt+F1 — Ctrl+Alt+F6). | Переключение между первыми шести виртуальными консолями производится нажатием комбинации клавиш Alt+F1 — Alt+F6 (Ctrl+Alt+F1 — Ctrl+Alt+F6). |
| |
==== Командные оболочки ==== | ==== Командные оболочки ==== |
| |
Для управления VeOS используются командные интерпретаторы (shell). | Для управления VEOS используются командные интерпретаторы (shell). |
Зайдя в систему, Вы увидите приглашение — строку, содержащую символ «$» (далее этот символ будет обозначать командную строку). Программа ожидает ваших команд. Роль командного интерпретатора — передавать ваши команды операционной системе. При помощи командных интерпретаторов можно писать небольшие программы — сценарии (скрипты). | Зайдя в систему, Вы увидите приглашение — строку, содержащую символ «$» (далее этот символ будет обозначать командную строку). Программа ожидает ваших команд. Роль командного интерпретатора — передавать ваши команды операционной системе. При помощи командных интерпретаторов можно писать небольшие программы — сценарии (скрипты). |
В VeOS доступны следующие командные оболочки: | В VEOS доступны следующие командные оболочки: |
* bash — Bourne Again Shell, самая распространенная оболочка | * bash — Bourne Again Shell, самая распространенная оболочка |
* ksh — Korn Shell, хорошо известная оболочка в UNIX™ системах. | * ksh — Korn Shell, хорошо известная оболочка в UNIX™ системах. |
* | |
Проверить, какая оболочка используется в данный момент можно, выполнив команду: | Проверить, какая оболочка используется в данный момент можно, выполнив команду: |
$ echo $SHELL | $ echo $SHELL |
| |
| |
==== Стыкование команд в системе VeOS ==== | ==== Стыкование команд в системе VEOS ==== |
| |
=== Стандартный ввод и стандартный вывод === | === Стандартный ввод и стандартный вывод === |
===== Режим суперпользователя ===== | ===== Режим суперпользователя ===== |
| |
VeOS — система многопользовательская, а потому пользователь — ключевое понятие для организации всей системы доступа в . Файлы всех пользователей в VeOS хранятся раздельно, у каждого пользователя есть собственный домашний каталог, в котором он может хранить свои данные. Доступ других пользователей к домашнему каталогу пользователя может быть ограничен. | VEOS — система многопользовательская, а потому пользователь — ключевое понятие для организации всей системы доступа в . Файлы всех пользователей в VEOS хранятся раздельно, у каждого пользователя есть собственный домашний каталог, в котором он может хранить свои данные. Доступ других пользователей к домашнему каталогу пользователя может быть ограничен. |
Суперпользователь в VeOS — это выделенный пользователь системы, на которого не распространяются ограничения прав доступа. Именно суперпользователь имеет возможность произвольно изменять владельца и группу файла. Ему открыт доступ на чтение и запись к любому файлу или каталогу системы. | Суперпользователь в VEOS — это выделенный пользователь системы, на которого не распространяются ограничения прав доступа. Именно суперпользователь имеет возможность произвольно изменять владельца и группу файла. Ему открыт доступ на чтение и запись к любому файлу или каталогу системы. |
Среди учётных записей VeOS всегда есть учётная запись суперпользователя — root. Поэтому вместо «суперпользователь» часто говорят «root». Множество системных файлов принадлежат root, множество файлов только ему доступны для чтения или записи. Пароль этой учётной записи — одна из самых больших драгоценностей системы. Именно с её помощью системные администраторы выполняют самую ответственную работу. | Среди учётных записей VEOS всегда есть учётная запись суперпользователя — root. Поэтому вместо «суперпользователь» часто говорят «root». Множество системных файлов принадлежат root, множество файлов только ему доступны для чтения или записи. Пароль этой учётной записи — одна из самых больших драгоценностей системы. Именно с её помощью системные администраторы выполняют самую ответственную работу. |
| |
Системные утилиты требуют для своей работы привилегий суперпользователя, потому что они вносят изменения в системные файлы. При их запуске выводится предупреждение о недостаточных правах текущего пользователя. | Системные утилиты требуют для своей работы привилегий суперпользователя, потому что они вносят изменения в системные файлы. При их запуске выводится предупреждение о недостаточных правах текущего пользователя. |
В некоторых случаях удобнее использовать не su, а утилиту sudo, которая позволяет выполнять только заранее заданные команды. | В некоторых случаях удобнее использовать не su, а утилиту sudo, которая позволяет выполнять только заранее заданные команды. |
| |
<note important>Для того чтобы воспользоваться командами su и sudo, необходимо быть членом группы wheel. Пользователь, созданный при установке системы, по умолчанию уже включён в эту группу.</note> | <note important>Чтобы воспользоваться командами su и sudo, необходимо быть членом группы wheel. Пользователь, созданный при установке системы, по умолчанию уже включён в эту группу.</note> |
| |
Для перехода в режим суперпользователя наберите в терминале команду su -. | Для перехода в режим суперпользователя наберите в терминале команду su -. |
Такая запись означает, что пользователь test (цифровой идентификатор 500) входит в группы test и rpm. Разные группы могут иметь разный уровень доступа к тем или иным каталогам; чем в большее количество групп входит пользователь, тем больше прав он имеет в системе. | Такая запись означает, что пользователь test (цифровой идентификатор 500) входит в группы test и rpm. Разные группы могут иметь разный уровень доступа к тем или иным каталогам; чем в большее количество групп входит пользователь, тем больше прав он имеет в системе. |
| |
<note important>В связи с тем, что большинство привилегированных системных утилит в VeOS имеют не SUID-, а SGID-бит, будьте предельно внимательны и осторожны в переназначении групповых прав на системные каталоги.</note> | <note important>В связи с тем, что большинство привилегированных системных утилит в VEOS имеют не SUID-, а SGID-бит, будьте предельно внимательны и осторожны в переназначении групповых прав на системные каталоги.</note> |
| |
==== Команда passwd ==== | ==== Команда passwd ==== |
| |
Код выхода: при успешном завершении passwd заканчивает работу с кодом выхода 0. Код выхода 1 означает, что произошла ошибка. Текстовое описание ошибки выводится на стандартный поток ошибок. | Код выхода: при успешном завершении passwd заканчивает работу с кодом выхода 0. Код выхода 1 означает, что произошла ошибка. Текстовое описание ошибки выводится на стандартный поток ошибок. |
Пользователь может в любой момент поменять свой пароль. Единственное,что требуется для смены пароля знать текущий пароль. | Пользователь может в любой момент поменять свой пароль. Единственное, что требуется для смены пароля знать текущий пароль. |
Только суперпользователь может обновить пароль другого пользователя. | Только суперпользователь может обновить пароль другого пользователя. |
| |
| |
| |
===== Система инициализации systemd и sysvinit ===== | ===== Система инициализации systemd ===== |
| |
| |
| ==== Запуск операционной системы ==== |
| Алгоритм запуска компьютера приблизительно такой: |
| - BIOS компьютера. |
| - Загрузчик системы (например, LILO, GRUB или другой). В загрузчике вы можете задать параметры запуска системы или выбрать систему для запуска. |
| - Загружается ядро Linux. |
| - Запускается на выполнение первый процесс в системе — init. |
| - Ядром запускается самая первая программа в системе init. Её задачей является запуск новых процессов и повторный запуск завершившихся. Вы можете посмотреть, где расположился init в иерархии процессов вашей системы, введя команду pstree. |
| От конфигурации init зависит, какая система инициализации будет использована. Система инициализации — это набор скриптов, которые будут выполнены при старте системы. |
| |
| Система инициализации systemd является основной системой инициализации VEOS, вобравшей в себя достоинства классического System V init и более современных launchd (OS X), SMF (Solaris) и Upstart (Ubuntu, Fedora), но при этом лишенной многих их недостатков. Он разрабатывался для обеспечения лучшего выражения зависимостей между службами, что позволяет делать одновременно больше работы при загрузке системы, и уменьшить время загрузки системы. |
| systemd (system daemon) реализует принципиально новый подход к инициализации и контролю работы системы. Одним из ключевых новшеств этого подхода является высокая степень параллелизации запуска служб при инициализации системы, что в перспективе позволяет добиться гораздо более высокой скорости, чем традиционный подход с последовательным запуском взаимозависимых служб. Другим важным моментом является контроль над точками монтирования (не-жизненно-важные файловые системы можно монтировать только при первом обращении к ним, не тратя на это время при инициализации системы) и устройствами (можно запускать и останавливать определенные службы и при появлении или удалении заданных устройств). Для отслеживания групп процессов используется механизм cgroups, который также может быть использован для ограничения потребляемых ими системных ресурсов. |
| Удобство systemd особенно заметно на компьютерах для домашнего пользования — когда пользователи включают и перезагружают компьютер ежедневно. В отличие от sysvinit, подвисание при запуске одного сервиса не приведет к остановке всего процесса загрузки. |
| |
| ==== Примеры команд управления службами, журнал в systemd ==== |
| |
| Команды service и chkconfig продолжат работать в мире systemd практически без изменений. Тем не менее, в этой таблице показано как выполнить те же действия с помощью встроенных утилит systemctl. |
| |
| ^ Команды Sysvinit ^ Команды Systemd ^ Примечания ^ |
| | service fastdpi start | systemctl start fastdpi.service | Используется для запуска службы (не перезагружает постоянные | |
| | service fastdpi stop |systemctl stop fastdpi.service | Используется для остановки службы (не перезагружает постоянные)| |
| | service fastdpi restart | systemctl restart fastdpi.service | Используется для остановки и последующего запуска службы | |
| | service fastdpi reload | systemctl reload fastdpi.service | Если поддерживается, перезагружает файлы конфигурации без прерывания незаконченных операций | |
| | service fastdpi condrestart | systemctl condrestart fastdpi.service | Перезапускает службу, если она уже работает | |
| | service fastdpi status | systemctl status fastdpi.service |Сообщает, запущена ли уже служба | |
| | ls /etc/rc.d/init.d/ | systemctl list-unit-files --type=service (preferred) | Используется для отображения списка служб, которые можно запустить или остановить. | |
| | chkconfig fastdpi on | systemctl enable fastdpi.service | Включает службу во время следующей перезагрузки, или любой другой триггер | |
| | chkconfig fastdpi off | systemctl disable fastdpi.service | Выключает службу во время следующей перезагрузки, или любой другой триггер | |
| | chkconfig fastdpi | systemctl is-enabled fastdpi.service | Используется для проверки, сконфигурирована ли служба для запуска в текущем окружении | |
| | chkconfig --list | systemctl list-unit-files --type=service(preferred) | Выводит таблицу служб. В ней видно, на каких уровнях загрузки они (не)запускаются | |
| | chkconfig fastdpi --list | ls /etc/systemd/system/*.wants/fastdpi.service | Используется, для отображения на каких уровнях служба (не)запускается | |
| | chkconfig fastdpi --add | systemctl daemon-reload | Используется, когда вы создаете новую службу или модифицируете любую конфигурацию | |
| |
| ==== Журнал в systemd ==== |
| |
| В systemd включена возможность ведения системного журнала. Для чтения журнала следует использовать команду journalctl. По умолчанию, больше не требуется запуск службы syslog. |
| Вы можете запускать journalctl с разными ключами: |
| > journalctl -b — покажет сообщения только с текущей загрузки; |
| > journalctl -f — покажет только последние сообщения. |
| Так же вы можете посмотреть сообщения определенного процесса: |
| > journalctl _PID=1 — покажет сообщения первого процесса (init). |
| Для ознакомления с прочими возможностями, читайте руководство по journalctl. Для этого используйте команду man journalctl. |
| |
| |