| Наступна ревізія | Попередня ревізія |
| linux:logs:ubuntu [22/05/2024 10:39] – створено osvex | linux:logs:ubuntu [Невідома дата] (поточний) – зовнішнє редагування (Невідома дата) 127.0.0.1 |
|---|
| ====== Логування в Ubuntu ====== | ====== Логування в Ubuntu ====== |
| | |
| | Логування в Ubuntu — це важливий аспект адміністрування системи, оскільки дозволяє відстежувати події, помилки, доступ до сервісів та інші активності. Основні типи логів включають системні логи, логи веб-серверів, поштові логи та інші. Давайте розглянемо їх детальніше. |
| | |
| | ==== Системні логи ==== |
| | |
| | Системні логи в Ubuntu зберігаються у каталозі ''/var/log''. Деякі з найбільш важливих файлів логів включають: |
| | |
| | * **/var/log/syslog**: Основний системний лог, який містить загальну інформацію про роботу системи, включаючи повідомлення ядра, системних сервісів та додатків. |
| | * **/var/log/auth.log**: Лог аутентифікації, який містить записи про входи в систему, спроби аутентифікації та інші пов'язані події. |
| | * **/var/log/kern.log**: Лог ядра, який містить повідомлення, згенеровані ядром Linux. |
| | * **/var/log/dmesg**: Лог з повідомленнями, створеними під час старту системи, завантаження драйверів та інших подій. |
| | Система ''rsyslog'' використовується для управління логами в Ubuntu. Конфігураційні файли ''rsyslog'' знаходяться у ''/etc/rsyslog.conf'' та у директорії ''/etc/rsyslog.d/''. |
| | |
| | ==== Логи веб-серверів ==== |
| | |
| | === Apache === |
| | |
| | Якщо у вас встановлений веб-сервер Apache, його логи знаходяться у каталозі ''/var/log/apache2''. Основні файли логів: |
| | |
| | * **/var/log/apache2/access.log**: Лог доступу, який містить записи про всі HTTP-запити до сервера. |
| | * **/var/log/apache2/error.log**: Лог помилок, який містить повідомлення про помилки та діагностичну інформацію. |
| | Конфігурація логування для Apache визначається у файлі ''/etc/apache2/apache2.conf'' та у файлах конфігурації в директорії ''/etc/apache2/sites-available/''. |
| | |
| | === Nginx === |
| | |
| | Для веб-сервера Nginx логи знаходяться у каталозі ''/var/log/nginx''. Основні файли логів: |
| | |
| | * **/var/log/nginx/access.log**: Лог доступу, який містить записи про всі HTTP-запити до сервера. |
| | * **/var/log/nginx/error.log**: Лог помилок, який містить повідомлення про помилки та діагностичну інформацію. |
| | Конфігурація логування для Nginx визначається у файлі ''/etc/nginx/nginx.conf'' та у файлах конфігурації в директорії ''/etc/nginx/sites-available/''. |
| | |
| | ==== Поштові логи ==== |
| | |
| | Якщо на вашій системі налаштований поштовий сервер, наприклад, Postfix або Sendmail, логи зберігаються у каталозі ''/var/log/mail.log'' або у відповідних підкаталогах. |
| | |
| | * **/var/log/mail.log**: Основний поштовий лог, який містить записи про всі події, пов'язані з відправкою та отриманням пошти. |
| | * **/var/log/mail.err**: Лог помилок поштового сервера, який містить повідомлення про помилки. |
| | Конфігураційні файли для логування поштових серверів зазвичай знаходяться у директоріях ''/etc/postfix/'' або ''/etc/mail/''. |
| | |
| | ==== Інші логи ==== |
| | |
| | * **/var/log/boot.log**: Лог завантаження системи, який містить повідомлення про процес завантаження. |
| | * **/var/log/cron.log**: Лог планувальника завдань cron, який містить записи про виконані завдання. |
| | ==== Інструменти для перегляду логів ==== |
| | |
| | * [[:linux:commands:journalctl|]]: Використовується для перегляду логів, зібраних системним журналом ''systemd''. Наприклад, ''journalctl -xe'' показує останні помилки і попередження. |
| | * **less**: Для перегляду великих лог-файлів, наприклад, ''less /var/log/syslog''. |
| | * **tail**: Для перегляду останніх рядків у лог-файлі, наприклад, ''tail -f /var/log/syslog''. |
| | ==== Ротація логів ==== |
| | |
| | Для управління розміром лог-файлів використовується утиліта ''logrotate'', конфігураційні файли якої знаходяться у ''/etc/logrotate.conf'' та ''/etc/logrotate.d/''. Вона автоматично архівує, видаляє або пересилає старі лог-файли. |
| | |
| | Ось приклад основного конфігураційного файлу ''logrotate'': |
| | |
| | <code bash> |
| | /var/log/syslog |
| | { |
| | rotate 7 |
| | daily |
| | missingok |
| | notifempty |
| | delaycompress |
| | compress |
| | postrotate |
| | /usr/lib/rsyslog/rsyslog-rotate |
| | endscript |
| | } |
| | |
| | |
| | </code> |
| | |
| | Цей приклад налаштовує ротацію для системного лога ''/var/log/syslog'', зберігаючи сім старих копій, і архівуючи їх щодня. |
| |