Что мы видим после ввода команды:
Общая информация:
текущее время
up время (сколько система работает)
Что можно делать в утилите top
Нажав на клавишу k мы можем убить процесс, достаточно будет ввести его PID
нажав на клавишу u и введя имя пользователя мы можем увидеть все процессы определенного пользователя
нажав на клавишу b или z и работающие процессы будут выделены цветом
Log — файлы, где они и что в них хранится.
Все события, процессы происходящие с файлами, работа оборудования в linux фиксируется в файлах.
Файлов этих много и все они расположены в директории /var/log/.
Как правило стандартные файлы Logi системы, в пример возьмем Debian, содержат следующее:
/var/log/syslog — основной системный журнал, содержит записи действий демонов и других программ, работающих в системе. Этот журнал нужно смотреть первым для поиска ошибок.
/var/log/auth.log — авторизация в системе, механизм идентификации пользователей
/var/log/daemon.log — содержит информацию о различных процессах который запущены в системе (демоны). Смотрим тут если есть падения системы
/var/log/dmesg — все сообщения ядра, начиная с этапа загрузки системы, просмотреть содержимое файла можно используя команду dmesg
/var/log/kern.log — журнал ядра, предоставляет подробный лог сообщений от ядра Linux, которые могут быть полезны при анализе и устранении неисправностей
/var/log/messages — файл содержит глобальные настройки и сообщения, регистрируются при запуске системы
Почему?
😪Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.
Мониторинг в реальном времени, что происходит в системе
Тут вам поможет команда
top
How to use the “last” command
Usually, you will only be interested in the most recent login attempts. You can see these with the “last” tool:
last
demoer pts/1 rrcs-72-43-115-1 Thu Sep 5 19:37 still logged in root pts/1 rrcs-72-43-115-1 Thu Sep 5 19:37 - 19:37 (00:00) root pts/0 rrcs-72-43-115-1 Thu Sep 5 19:15 still logged in root pts/0 rrcs-72-43-115-1 Thu Sep 5 18:35 - 18:44 (00:08) root pts/0 rrcs-72-43-115-1 Thu Sep 5 18:20 - 18:20 (00:00) demoer pts/0 rrcs-72-43-115-1 Thu Sep 5 18:19 - 18:19 (00:00)
This gives a formated version of the “/etc/log/wtmp” file.
Plaintext log files
These logs are plain text files with a standardized content format. Ubuntu uses
a log template called
RSYSLOG_TraditionalFileFormat.
This log format consists of four main fields with a space delimiter:
- The timestamp indicates the time when a log entry was created in the
formatMMM dd HH:mm:ss
(e.g.Sep 28 19:00:00
). Notice that this format
does not include a year. - Hostname is the host or system that originally create the message.
- Application is the application that created the message.
- Message contains the actual details of an event.
Let’s go ahead and review some log files in the plaintext format. Run the
command below to print the contents of the /var/log/syslog file with the
tail utility:
This outputs the last 10 lines of the file:
You’ll notice that that each record in this file is formatted in the manner
described earlier. For example, the last record has its timestamp as Mar 23
12:39:23, hostname as peter, application as systemd[1] and message as
Finished Clean php session files.
If you want to view the entire log file, you can use the cat utility or any
text editor such as nano or vim.
Ps — статус процессов
ps -aux | greb имя_программы
Можно узнать запущен ли данный процесс-программа
ps aux
Информация о всех процессах всех пользователей в системе
ps -f -u имя_пользователя
Все процессы этого пользователя
На данный момент пока такая информация, по мере изучения буду добавлять в этой статье. Если информации будет много выйдет другая статья.
Всем Удачи!
17 декабря 2022
Step 1 — finding linux system logs
All Ubuntu system logs are stored in the /var/log directory. Change into this
directory in the terminal using the command below:
You can view the contents of this directory by issuing the following command:
You should see a similar output to the following:
Let’s look at a few of the essential system log files that may be present in the
/var/log directory and what they contain:
The /var/log directory is also used to store various application logs. For
example, if your distribution is bundled with Apache or MySQL, or installed
later, their log files will also be found here.
The logrotate configuration file
Like rsyslog, logrotate also depends on a configuration file and the name of this file is logrotate.conf. It’s located under /etc.
Here is what I see in the logrotate.conf file of my Debian server:
debian@debian:~$ cat /etc/logrotate.conf
The rsyslog configuration file
The rsyslog daemon gets its configuration information from the rsyslog.conf file. The file is located under the /etc directory.
Basically, the rsyslog.conf file tells the rsyslog daemon where to save its log messages. This instruction comes from a series of two-part lines within the file.
This file can be found at rsyslog.d/50-default.conf on ubuntu.
The two part instruction is made up of a selector and an action. The two parts are separated by white space.
The selector part specifies what’s the source and importance of the log message and the action part says what to do with the message.
The selector itself is again divided into two parts separated by a dot (.). The first part before the dot is called *acility (the origin of the message) and the second part after the dot is called priority (the severity of the message).
Together, the facility/priority and the action pair tell rsyslog what to do when a log message matching the criteria is generated.
Here is excerpt from a CentOS rsyslog.conf file:
# rsyslog v5 configuration file
...
...
# Include all config files in /etc/rsyslog.d/
IncludeConfig /etc/rsyslog.d/*.conf
#### RULES ####
# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.* /dev/console
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages
# The authpriv file has restricted access.
authpriv.* /var/log/secure
# Log all the mail messages in one place.
mail.* -/var/log/maillog
# Log cron stuff
cron.* /var/log/cron
# Everybody gets emergency messages
*.emerg *
# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler
# Save boot messages also to boot.log
local7.* /var/log/boot.log
...
...
To understand what this all means, let’s consider the different types of facilities recognized by Linux. Here is a list:
And here is a list of priorities in ascending order:
- debug: Debug information from programs
- info: Simple informational message – no intervention is required
- notice: Condition that may require attention
- warn: Warning
- err: Error
- crit: Critical condition
- alert: Condition that needs immediate intervention
- emerg: Emergency condition
So now let’s consider the following line from the file:
cron.* /var/log/cron
This just tells the rsyslog daemon to save all messages coming from the cron daemon in a file called /var/log/cron. The asterix (*) after the dot (.) means messages of all priorities will be logged. Similarly, if the facility was specified as an asterix, it would mean all sources.
Facilities and priorities can be related in a number of ways.
In its default form, when there is only one priority specified after the dot, it means all events equal to or greater than that priority will be trapped. So the following directive causes any messages coming from the mail subsystem with a priority of warning or higher to be logged in a specific file under /var/log:
mail.warn /var/log/mail.warn
This will log every message equal to or greater than the warn priority, but leave everything below it. So messages with err, crit, alert or emerg will also be recorded in this file.
Using an equal sign (=) after the dot (.) will cause only the specified priority to be logged. So if we wanted to trap only the info messages coming from the mail subsystem, the specification would be something like the following:
mail.=info /var/log/mail.info
Again, if we wanted to trap everything from mail subsystem except info messages, the specification would be something like the following
mail.!info /var/log/mail.info
mail.!=info /var/log/mail.info
In the first case, the mail.info file will contain everything with a priority lower than info. In the second case, the file will contain all messages with a priority above info.
Multiple facilities in the same line can be separated by commas.
Multiple sources (facility.priority) in the same line is separated by semicolon.
Viewing log file contents
Here are some common log files you will find under /var/log:
wtmp
utmp
dmesg
messages
maillog or mail.log
spooler
auth.log or secure
Важные системные логи linux
Логи могут многое рассказать о работе системы. Хорошее понимание каждого типа файла поможет различать соответствующие логи.
Большинство каталогов можно сгруппировать в одну из четырех категорий:
- Системные логи (System Logs)
- Логи событий (Event Logs)
- Логи приложений (Application Logs)
- Логи обслуживания (Service Logs)
Многие из этих логов могут быть расположены в подкаталоге var/log.
Выполнить ротацию лога
Файлы логов, в конце которых добавлены нули, являются повернутыми файлами. Это означает, что имена файлов логов были автоматически изменены в системе.
Целью ротации логов является сжатие устаревших логов, занимающих место. Ротацию лога можно выполнить с помощью команды logrotate. Эта команда вращает, сжимает и отправляет системные логи по почте.
logrotate обрабатывает системы, которые создают значительные объемы файлов логов. Эта команда используется планировщиком cron и считывает файл конфигурации logrotate /etc/logrotate.conf. Он также используется для чтения файлов в каталоге конфигурации logrotate.
Чтобы включить дополнительные функции для logrotate, начните с ввода следующей команды:
var/log/log name here].log { Missingok Notifempty Compress Size 20k Daily Create 0600 root root }
Он сжимает и изменяет размер желаемого файла логов.
Команды выполняют следующие действия:
missingok
– сообщает logrotate не выводить ошибку, если файл логов отсутствует.notifempty
– не выполняет ротацию файла логов, если он пуст. Уменьшает размер файла лога с помощью gzipsize
– гарантирует, что файл логов не превышает указанный размер, и поворачивает его в противном случаеdaily
– меняет файлы журналов по ежедневному расписанию. Это также можно делать по недельному или ежемесячному расписанию.create
– создает файл логов, в котором владелец и группа являются пользователем root
Графические интерфейсы для просмотра файлов логов linux
System Log Viewer – это графический интерфейс, который можно использовать для отслеживания системных логов.
Интерфейс предоставляет несколько функций для управления логами, включая отображение статистики лога. Это удобный графический интерфейс для мониторинга логов.
В качестве альтернативы можно использовать Xlogmaster, который может отслеживать значительное количество файлов логов.
Xlogmaster полезен для повышения безопасности. Он переводит все данные для выделения и скрытия строк и отображает эту информацию для выполнения действий, запрошенных пользователем.
Как настроить файлы логов в ubuntu и centos
Начнем с примера CentOS. Чтобы просмотреть пользователей, которые в настоящее время вошли на сервер Linux, введите команду who от имени пользователя root:
Здесь также отображается история входа в систему пользователей. Для просмотра истории входа системного администратора введите следующую команду:
last reboot
Чтобы просмотреть информацию о последнем входе в систему, введите:
lastlog
Логи не в удобочитаемом формате
Не все логи созданы в удобочитаемом формате. Некоторые предназначены только для чтения системными приложениями. Такие файлы часто связаны с информацией для входа. Они включают логи сбоев входа в систему, логи последних входов в систему и записи входа в систему.
Существуют инструменты и программное обеспечение для чтения файлов логов Linux. Они не нужны для чтения файлов, так как большинство из них можно прочитать непосредственно с терминала Linux.
Логи приложений
Логи приложений хранят информацию, относящуюся к любому запускаемому приложению. Это может включать сообщения об ошибках, признаки взлома системы и строку идентификации браузера.
Системные логи
Файлы логов необходимы для работы Linux. Они содержат значительный объем информации о функциональности системы. Наиболее распространенные файлы логов:
Conclusion
In this tutorial, you’ve learnt the basics of system logs in Linux and how to
read and understand them. We discussed where the logs are typically placed and
the different log formats you will likely encounter. We also covered the
rsyslogd utility, which is responsible for maintaining log files in Ubuntu
before discussing log rotation and how to use the logrotate utility to keep
log files small and manageable.
Thanks for reading!
Next article
Итоги
Тщательное понимание того, как просматривать и читать логи Linux, необходимо для устранения неполадок в системе Linux. Использование правильных команд и инструментов может упростить этот процесс.