Полезные инструменты, которые предоставляет systemd.
В самом начале цикла статей о systemd я упоминал, что эта система предоставляет огромное количество возможностей. Мы запускали и останавливали сервисы, самостоятельно создавали файлы юнитов, изучали логи и даже монтировали удаленные хранилища.

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

localectl: централизованное управление языковыми и региональными параметрами.

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

Для того, чтобы вывести текущие настройки, выполните:

localectl

или

localectl status

localectl: централизованное управление языковыми и региональными параметрами

Разберемся, какую информацию мы получили.

System Locale — текущая системная локаль, т. е. набор правил, определяющих язык системы, формат денежных единиц, часовой пояс и т. д.
VC Keymap — раскладка клавиатуры для консоли.
X11 Layout — раскладки клавиатуры, используемые в графической системе.
X11 Model — тип/модель клавиатуры
X11 Variant — варианты раскладки клавиатуры, используемые в графической системе. Примеры: русская машинописная, DVORAK, QUERTY и т. д.
X11 Options — опции, в том числе горячие клавиши для переключения раскладки и отображение текущего состояния с помощью индикатора Scroll Lock.

Далее я приведу несколько примеров использования localectl.

Вывести список доступных локалей:

localectl list-locales

Изменить язык системы на английский:

localectl set-locale LANG="en_EN.utf8"

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

Вывести список доступных раскладок клавиатуры:

localectl list-x11-keymap-layouts

localectl: централизованное управление языковыми и региональными параметрами

Всю работу по обновлению существующих и созданию новых конфигурационных файлов localectl берет на себя.

timedatectl: управление настройками времени и даты.

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

timedatectl

timedatectl: управление настройками времени и даты

На всякий случай разберем вывод этой команды.

Local time — местное время.
Universal time — UTC или всемирное координированное время. Отправная точка для отсчета часовых поясов.
RTC time — время в аппаратных часах ПК или сервера.
Time Zone — часовой пояс.
Network time on — показывает, включен ли ntp-клиент, входящий в состав systemd. Даже если он отключен, синхронизация может выполняться сторонними клиентами.
NTP synchronized — показывает, синхронизировано ли время с ntp-сервером.
RTC in local TZ — показывает, какое время хранится в аппаратных часах: локальное или всемирное. Таким образом, yes означает локальное время, no — всемирное.

Несколько примеров использования.

Установить дату и время (работает только при выключенной синхронизации):

timedatectl set-time "2016-02-11 20:15:01"

Отключить синхронизацию с ntp-сервером:

timedatectl set-ntp 0

В этой и других подобных командах из набора systemd в качестве булевых значений можно использовать 1\0, on\off, true\false.

Отобразить список часовых поясов и установить подходящий:

timedatectl list-timezones  
  
timedatectl set-timezone Europe/Vienna

timedatectl: управление настройками времени и даты

Включить синхронизацию времени с ntp-сервером:

timedatectl set-ntp 1

loginctl: управление сеансами пользователей.

Эта простая утилита, входящая в состав systemd, позволяет получать информацию о том, какие пользователи находятся в системе в данный момент, как давно они вошли, какой uid им принадлежит, сколько сеансов запущено на данный момент и т. д. Кроме того, loginctl позволяет всем этим управлять.

Чтобы заблокировать текущую сессию, выполните:

loginctl lock-session

А вот таким образом можно вывести список открытых сеансов:

loginctl list-sessions

loginctl: управление сеансами пользователей

Получить список залогинившихся пользователей:

loginctl list-users

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

loginctl terminate-session

Через пробел можно добавить id сеанса, если их несколько.

Вывести информацию о состоянии текущего сеанса (или любого другого, если добавить id), включая список дочерних процессов и номер виртуальной консоли:

loginctl session-status

Это далеко не полный список утилит, входящих в состав systemd. О некоторых из них я рассказывал в прошлых статьях, о других, возможно, пойдет речь в следующих.


Комментарии отключены