Program loginctl
jest częścią pakietu narzędzi systemd
, które umożliwiają zarządzanie systemem
. Daje on prawo do zarządzania bieżącymi sesjami użytkownika, przeglądania listy aktywnych użytkowników, blokowania ekranu lub całkowitego przerywania sesji oraz kończenia procesów użytkownika. Jeszcze nie tak dawno w tym celu użytkownicy korzystali z kilku programów i plików konfiguracyjnych. Ale teraz wszystko jest w jednym miejscu.
Program loginctl
daje użytkownikowi prawo do zarządzania wszystkim, co ma związek z autoryzacją użytkownika. Dokumentacja mówi, że program jest przeznaczony do zarządzania menedżerem logowania systemd-logind
.
Narzędzie zarządza:
(
użytkownik) - użytkownik, który zalogował się do systemu;session (sesja
) - logowanie użytkownika do systemu, każde logowanie, z wyjątkiem sudo
i su
, jest traktowane jako nowa sesja. Możliwe jest uwierzytelnienie wielu TTY, poprzez SSH. Logowanie do menedżera graficznego będzie również traktowane jako nowa sesja;seat
- koncepcja, która pozwala na podłączenie wielu monitorów lub urządzeń peryferyjnych do komputera i korzystanie z nich przez różnych użytkowników w tym samym czasie. Z reguły nie jest to jednak wykorzystywane, a program wyświetla tylko jedno miejsce pracy.Przyjrzyjmy się składni i dostępnym opcjom programu loginctl
.
Składnia programu jest prosta i nieskomplikowana:
$ loginctl [options] command [arguments]
Oto polecenia dostępne do użycia:
list-sessions
- wyświetla listę sesji.
session-status
- wyświetla status sesji, datę autoryzacji, informacje o głównych uruchomionych usługach i procesach.
show-session
- wyświetla ustawienia sesji.
activate
- umożliwia przejście do określonej sesji.
lock-session
- blokuje ekran dla określonej sesji; jeśli nie określono identyfikatora sesji, blokuje ekran dla bieżącej sesji.
unlock-session
- odblokowuje ekran dla określonej sesji.
kill-session
- pozwala zakończyć sesję lub wysłać określony sygnał do wszystkich procesów.
terminate-session
-kończy
określoną sesję.
list-users
- wyświetla listę użytkowników, którzy są aktualnie autoryzowani.
user-status
- podobnie jak session-status
, wyświetla datę autoryzacji, status i wszystkie uruchomione procesy w formie drzewa.
show-user
- wyświetla informacje o użytkowniku i jego bieżącej sesji bez uruchomionych procesów.
terminate-user - kończy
wszystkie sesje użytkownika i wszystkie procesy użytkownika.
kill-user
- wysyła sygnał do wszystkich procesów użytkownika, domyślnie wysyłany jest SIGTERM
.
list-seats
- wyświetla listę stacji roboczych.
seat-status
- wyświetla wszystkie procesy uruchomione w określonym miejscu pracy.
show-seat
- wyświetla ustawienia miejsca pracy.
terminate-seat - kończy
wszystkie procesy stacji roboczej.
Ustawienia miejsca pracy nie będą omawiane w tym materiale. Nie ma sensu przytaczać tych poleceń. Należy pamiętać, że wiele poleceń może działać poprawnie tylko w przypadku interfejsu graficznego, w szczególności session-lock
lub session-unlock
nie są obsługiwane dla sesji TTY lub SSH. W następnym artykule przyjrzymy się rzeczywistym przykładom.