Руководство администратора [Документация VAS Experts]

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
veos:admin_manual [2023/03/12 11:35] – [Управление пользователями] staspolevicveos:admin_manual [2023/10/10 08:25] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
-====== Руководство администратора ====== +====== Руководство администратора ====== 
-{{indexmenu_n>7}}+{{indexmenu_n>8}}
  
-===== Общие принципы работы VeOS =====+===== Общие принципы работы VEOS =====
  
 ==== Процессы и файлы ==== ==== Процессы и файлы ====
  
-VeOS является многопользовательской интегрированной системой, т.е. она разработана в расчете на одновременную работу нескольких пользователей.+VEOS является многопользовательской интегрированной системой, т.е. она разработана в расчете на одновременную работу нескольких пользователей.
 Пользователь может либо сам работать в системе, выполняя некоторую последовательность команд, либо от его имени могут выполняться прикладные процессы. Пользователь может либо сам работать в системе, выполняя некоторую последовательность команд, либо от его имени могут выполняться прикладные процессы.
 Пользователь взаимодействует с системой через командный интерпретатор, например, bash. Командный интерпретатор представляет собой прикладную программу, которая принимает от пользователя команды или набор команд и переводит их в системные вызовы к ядру системы. Интерпретатор позволяет пользователю работать с файлами, передвигаться по дереву файловой системы, запускать прикладные процессы. Все командные интерпретаторы UNIX имеют развитый командный язык и позволяют писать сложные программы, упрощающие процесс администрирования системы и работы с ней. Пользователь взаимодействует с системой через командный интерпретатор, например, bash. Командный интерпретатор представляет собой прикладную программу, которая принимает от пользователя команды или набор команд и переводит их в системные вызовы к ядру системы. Интерпретатор позволяет пользователю работать с файлами, передвигаться по дереву файловой системы, запускать прикладные процессы. Все командные интерпретаторы UNIX имеют развитый командный язык и позволяют писать сложные программы, упрощающие процесс администрирования системы и работы с ней.
Строка 14: Строка 14:
 Все программы, которые загружены в память сервера (т.е. выполняются) в текущий момент времени, называются процессами. Процессы можно разделить на два основных класса: системные процессы и пользовательские процессы. Все программы, которые загружены в память сервера (т.е. выполняются) в текущий момент времени, называются процессами. Процессы можно разделить на два основных класса: системные процессы и пользовательские процессы.
 Системные процессы — программы, решающие внутренние задачи ОС, например, организацию виртуальной памяти на диске или предоставляющие пользователям те или иные сервисы (процессы-службы). Системные процессы — программы, решающие внутренние задачи ОС, например, организацию виртуальной памяти на диске или предоставляющие пользователям те или иные сервисы (процессы-службы).
-Пользовательские процессы — процессы, запускаемые пользователем из командного интерпретатора для решения задач пользователя или управления системными процессами. VeOS изначально разрабатывался как многозадачная система. Он использует технологии, опробованные и отработанные другими реализациями UNIX - предшественниками VeOS.+Пользовательские процессы — процессы, запускаемые пользователем из командного интерпретатора для решения задач пользователя или управления системными процессами. VEOS изначально разрабатывался как многозадачная система. Он использует технологии, опробованные и отработанные другими реализациями UNIX - предшественниками VEOS.
 Фоновый режим работы процесса — режим, когда программа может работать без взаимодействия с пользователем. В случае необходимости интерактивной работы с пользователем (в общем случае) процесс будет «остановлен» ядром, и работа его продолжается только после переведения его в «нормальный» режим работы. Фоновый режим работы процесса — режим, когда программа может работать без взаимодействия с пользователем. В случае необходимости интерактивной работы с пользователем (в общем случае) процесс будет «остановлен» ядром, и работа его продолжается только после переведения его в «нормальный» режим работы.
  
 ==== ⁠Файловая система ОС ==== ==== ⁠Файловая система ОС ====
  
-В VeOS использована файловая система Linux, которая является единым деревом. Корень этого дерева — каталог, называемый root (рут) и обозначаемый /.+В VEOS использована файловая система Linux, которая является единым деревом. Корень этого дерева — каталог, называемый root (рут) и обозначаемый /.
 Части дерева файловой системы могут физически располагаться в разных разделах разных дисков или вообще на других компьютерах — для пользователя это прозрачно. Процесс присоединения файловой системы раздела к дереву называется монтированием, удаление — размонтированием. Например, файловая система CD-ROM в дистрибутиве монтируется по умолчанию в каталог /media/cdrom (путь в дистрибутиве обозначается с использованием /, а не \, как в Windows). Части дерева файловой системы могут физически располагаться в разных разделах разных дисков или вообще на других компьютерах — для пользователя это прозрачно. Процесс присоединения файловой системы раздела к дереву называется монтированием, удаление — размонтированием. Например, файловая система CD-ROM в дистрибутиве монтируется по умолчанию в каталог /media/cdrom (путь в дистрибутиве обозначается с использованием /, а не \, как в Windows).
 Текущий каталог обозначается ".", родительский каталог (уровнем выше) - "..", например, для перехода в каталог верхнего уровня: Текущий каталог обозначается ".", родительский каталог (уровнем выше) - "..", например, для перехода в каталог верхнего уровня:
Строка 40: Строка 40:
   * /mnt — точки временного монтирования;   * /mnt — точки временного монтирования;
   * /opt — вспомогательные пакеты;   * /opt — вспомогательные пакеты;
-  * /opt/vasexperts - родительский каталог продуктов компании ВАСЭкспертс+  * /opt/vasexperts - родительский каталог продуктов компании VAS Experts
   * /proc — виртуальная файловая система, хранящаяся в памяти компьютера при загруженной ОС. В данном каталоге расположены самые свежие сведения обо всех процессах, запущенных на компьютере.   * /proc — виртуальная файловая система, хранящаяся в памяти компьютера при загруженной ОС. В данном каталоге расположены самые свежие сведения обо всех процессах, запущенных на компьютере.
   * /root — домашний каталог администратора системы;   * /root — домашний каталог администратора системы;
Строка 84: Строка 84:
 Раздел диска обозначается числом после его имени. Например, /dev/sdb4 — четвертый раздел второго диска. Раздел диска обозначается числом после его имени. Например, /dev/sdb4 — четвертый раздел второго диска.
  
-=== ⁠Разделы, необходимые для работы VeOS ===+=== ⁠Разделы, необходимые для работы VEOS ===
  
 Для работы ОС на жестком диске (дисках) должны быть созданы, по крайней мере, два раздела: корневой (то есть тот, который будет содержать каталог /) и раздел подкачки (swap). Размер последнего, как правило, составляет от однократной до двукратной величины оперативной памяти компьютера. Если на диске много свободного места, то можно создать отдельные разделы для каталогов /usr, /home, /var. Для работы ОС на жестком диске (дисках) должны быть созданы, по крайней мере, два раздела: корневой (то есть тот, который будет содержать каталог /) и раздел подкачки (swap). Размер последнего, как правило, составляет от однократной до двукратной величины оперативной памяти компьютера. Если на диске много свободного места, то можно создать отдельные разделы для каталогов /usr, /home, /var.
Строка 91: Строка 91:
  
 ==== Виртуальная консоль ==== ==== Виртуальная консоль ====
-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
Строка 147: Строка 147:
  
  
-==== Стыкование команд в системе VeOS ====+==== Стыкование команд в системе VEOS ====
  
 === Стандартный ввод и стандартный вывод === === Стандартный ввод и стандартный вывод ===
Строка 195: Строка 195:
 ===== Режим суперпользователя ===== ===== Режим суперпользователя =====
  
-VeOS — система многопользовательская, а потому пользователь — ключевое понятие для организации всей системы доступа в . Файлы всех пользователей в VeOS хранятся раздельно, у каждого пользователя есть собственный домашний каталог, в котором он может хранить свои данные. Доступ других пользователей к домашнему каталогу пользователя может быть ограничен. +VEOS — система многопользовательская, а потому пользователь — ключевое понятие для организации всей системы доступа в . Файлы всех пользователей в VEOS хранятся раздельно, у каждого пользователя есть собственный домашний каталог, в котором он может хранить свои данные. Доступ других пользователей к домашнему каталогу пользователя может быть ограничен. 
-Суперпользователь в VeOS — это выделенный пользователь системы, на которого не распространяются ограничения прав доступа. Именно суперпользователь имеет возможность произвольно изменять владельца и группу файла. Ему открыт доступ на чтение и запись к любому файлу или каталогу системы. +Суперпользователь в VEOS — это выделенный пользователь системы, на которого не распространяются ограничения прав доступа. Именно суперпользователь имеет возможность произвольно изменять владельца и группу файла. Ему открыт доступ на чтение и запись к любому файлу или каталогу системы. 
-Среди учётных записей VeOS всегда есть учётная запись суперпользователя — root. Поэтому вместо «суперпользователь» часто говорят «root». Множество системных файлов принадлежат root, множество файлов только ему доступны для чтения или записи. Пароль этой учётной записи — одна из самых больших драгоценностей системы. Именно с её помощью системные администраторы выполняют самую ответственную работу.+Среди учётных записей VEOS всегда есть учётная запись суперпользователя — root. Поэтому вместо «суперпользователь» часто говорят «root». Множество системных файлов принадлежат root, множество файлов только ему доступны для чтения или записи. Пароль этой учётной записи — одна из самых больших драгоценностей системы. Именно с её помощью системные администраторы выполняют самую ответственную работу.
  
 Системные утилиты требуют для своей работы привилегий суперпользователя, потому что они вносят изменения в системные файлы. При их запуске выводится предупреждение о недостаточных правах текущего пользователя. Системные утилиты требуют для своей работы привилегий суперпользователя, потому что они вносят изменения в системные файлы. При их запуске выводится предупреждение о недостаточных правах текущего пользователя.
Строка 206: Строка 206:
 В некоторых случаях удобнее использовать не su, а утилиту sudo, которая позволяет выполнять только заранее заданные команды. В некоторых случаях удобнее использовать не su, а утилиту sudo, которая позволяет выполнять только заранее заданные команды.
  
-<note important>Для того чтобы воспользоваться командами su и sudo, необходимо быть членом группы wheel. Пользователь, созданный при установке системы, по умолчанию уже включён в эту группу.</note>+<note important>Чтобы воспользоваться командами su и sudo, необходимо быть членом группы wheel. Пользователь, созданный при установке системы, по умолчанию уже включён в эту группу.</note>
  
 Для перехода в режим суперпользователя наберите в терминале команду su -. Для перехода в режим суперпользователя наберите в терминале команду su -.
Строка 220: Строка 220:
 Такая запись означает, что пользователь test (цифровой идентификатор 500) входит в группы test и rpm. Разные группы могут иметь разный уровень доступа к тем или иным каталогам; чем в большее количество групп входит пользователь, тем больше прав он имеет в системе. Такая запись означает, что пользователь test (цифровой идентификатор 500) входит в группы test и rpm. Разные группы могут иметь разный уровень доступа к тем или иным каталогам; чем в большее количество групп входит пользователь, тем больше прав он имеет в системе.
  
-<note important>В связи с тем, что большинство привилегированных системных утилит в VeOS имеют не SUID-, а SGID-бит, будьте предельно внимательны и осторожны в переназначении групповых прав на системные каталоги.</note>+<note important>В связи с тем, что большинство привилегированных системных утилит в VEOS имеют не SUID-, а SGID-бит, будьте предельно внимательны и осторожны в переназначении групповых прав на системные каталоги.</note>
  
 ==== Команда passwd ==== ==== Команда passwd ====
Строка 240: Строка 240:
  
 Код выхода: при успешном завершении passwd заканчивает работу с кодом выхода 0. Код выхода 1 означает, что произошла ошибка. Текстовое описание ошибки выводится на стандартный поток ошибок. Код выхода: при успешном завершении passwd заканчивает работу с кодом выхода 0. Код выхода 1 означает, что произошла ошибка. Текстовое описание ошибки выводится на стандартный поток ошибок.
-Пользователь может в любой момент поменять свой пароль. Единственное,что требуется для смены пароля знать текущий пароль.+Пользователь может в любой момент поменять свой пароль. Единственное, что требуется для смены пароля знать текущий пароль.
 Только суперпользователь может обновить пароль другого пользователя. Только суперпользователь может обновить пароль другого пользователя.
  
Строка 273: Строка 273:
  
  
-===== Система инициализации 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.