“acct” или “psacct” – это два наиболее известных инструмента, помогающих системным администраторам отслеживать активность других пользователей в своей системе и то, какие ресурсы потребляются.
Прежде чем перейти к дальнейшим объяснениям, позвольте мне уточнить, что оба этих инструмента одинаковы, просто известны под разными названиями; “acct” предназначен для Debian и Ubuntu, в то время как “psacct” известен для RedHat и Fedora.
Теперь этот инструмент (или вы можете назвать его пакетом) содержит в себе несколько программ. Итак, когда вы устанавливаете его, все эти программы вместе становятся доступными в вашей системе вместе с демоном, который продолжает работать в фоновом режиме для мониторинга активности пользователя, выполнения процессов и системных ресурсов.
Ниже приведен список программ (или команд), которые становятся доступными при установке пакета “acct” или “psacct” в вашей системе.
ac
“: будет выводиться статистика о том, как долго пользователи были подключены в часах,lastcomm
“: он покажет вам список команд, выполняемых пользователем.accton
“: позволяет включать / выключать процесс учета.sa
“: обобщите учетную информацию.
Подводя итог, можно сказать, что эта группа программ командной строки лучше всего подходит для активного мониторинга активности других пользователей, включая используемые ими ресурсы, продолжительность их активности в системе и статистику выполнения процессов.
Итак, дочитайте эту статью до конца, чтобы на практическом примере изучить этапы ее установки и использования.
Описание | “acct” или “psacct“ |
Уровень сложности | Низкий уровень |
Привилегии Root или Sudo | ДА |
Совместимость с ОС | Ubuntu, Manjaro, Fedora и др. |
Предварительные требования | – |
Требуется Интернет | Да (для установки) |
Как обсуждалось ранее во введении, пакеты “acct
” и “psacct
” одинаковы с точки зрения функциональности, но известны под разными названиями в различных дистрибутивах Linux. Итак, чтобы установить их в свой дистрибутив Linux, вы можете выполнить одну из соответствующих команд.
#On Debian, Ubuntu, Linux Mint, Pop!_OS, и другие. $ sudo apt install acct #On RedHat, Fedora, CentOS, AlmaLinux, и другие. $ sudo dnf install psacct #On Arch, Manjaro, EndeavourOS, и другие. $ sudo pacman -S acct #On OpenSUSE $ sudo zypper install acct #On Alpine Linux $ sudo apk add psacct
После установки пакета из терминала становятся доступны команды “ac
“, “lastcomm
“, “accton
“ и “sa
”, но убедитесь, что службы “acct
” или “psacct
” активно запущены в фоновом режиме, чтобы выяснить это; выполните следующую команду.
#Для пакета acct $ sudo systemctl status acct #Для пакета psacct $ sudo systemctl status psacct
Если статус активен, значит, все в порядке; в противном случае запустите службу и включите ее автозапуск при загрузке системы, выполнив следующие команды:
#Для пакета acct $ sudo systemctl start acct $ sudo systemctl enable acct $ sudo systemctl status acct #Для пакета psacct $ sudo systemctl start psacct $ sudo systemctl enable psacct $ sudo systemctl status psacct
Давайте узнаем, как использовать команды “ac
“, “lastcomm
“, “accton
“ и “sa
”, предлагаемые пакетом “acct
” или “psacct
“, начав с него.
Когда вы запускаете команду “ac
” без каких-либо параметров, она выводит количество времени (в часах), в течение которого пользователи были подключены к системе:
Статус пользователей определяется их активностью при входе в систему и выходе из системы. Например, если пользователь входит в систему и выходит из нее дважды, при этом один сеанс длится 1 час, а второй – 30 минут, общее время подключения пользователя составит 1,30 часа.
$ ac
Вывод:
andreyex@linux:-$ ac total 37.62 andreyex@linux:-$
Опция “-p
” с командой “ac
” выведет общее время входа в систему для каждого пользователя в часах.
$ ac -p
Вывод:
andreyex@linux: ~$ ac -p ________ 0.16 andreyex 19.77 jr 17.30 alex 0.49 total 37.73 andreyex@linux: ~$
Опция “-d
” с командой “acc
” выведет общее время входа в систему в часах в зависимости от дня. Вы также можете использовать опцию “-p
” для печати имени пользователя для каждой записи.
$ acc -dp
Укажите имя пользователя в качестве аргумента для команды “ac -dp
”, чтобы проверить время их входа в систему в часах в день.
$ ac -dp andreyex
Команда “sa
” без каких-либо опций выведет все команды, выполняемые пользователями.
$ sudo sa
Используйте опцию “-u
”, чтобы распечатать выполняемые пользователем команды вместе с их именами пользователей.
$ sudo sa -u
Используйте опцию “-m
”, чтобы распечатать недавно использованные ресурсы для каждого пользователя, которые включают общее количество процессов и минут работы процессора.
$ sudo sa -m
Команда “lastcomm
” используется для печати записей всех команд, выполненных пользователями. При выполнении этой команды без каких-либо параметров будут перечислены все записи пользователей, но отдельные записи пользователей можно распечатать, назначив их имя пользователя в качестве параметра.
$ sudo lastcomm $ sudo lastcomm andreyex
Как вы можете видеть, эта команда очень полезна системным администраторам для мониторинга активности пользователей в системе; Мы предлагаем проверить страницу руководства по ней, чтобы узнать больше.
Если у вас есть какие-либо вопросы, пожалуйста, дайте мне знать в разделе комментариев.