Проведіть мене через файли журналів Linux (будь ласка)


11

Я просто спробував завантажити файл 2MB в gedit, і він мовчки загинув на мені. Мені було цікаво, чи може щось з’явитися у файлі журналу, що могло б допомогти мені діагностувати це: я перевірив syslogі виявив, що це відокремлено. Роблячи це, я зрозумів, що насправді нічого не знаю про те, як організовано ведення журналу на * nix-машинах.

Все, що я знаю в мо - це

  1. Журнали, як правило, зберігаються у /var/log/... Чи є ще десь, про який я повинен знати?

  2. Мені знайомі журнали конкретних додатків, наприклад, апаш.

  3. Я розумію, що dmesgце журнал завантаження, і syslogце загальний системний журнал ... це правильно? Редагувати: Боббі каже dmesg, що також загальне призначення ... в чому різниця між ними?

То хто б не подумав провести мене через найкорисніші журнали? Є два журнали, які я згадую в кінцевій точці, єдиними загальними журналами? А якими є фанкі числа на початку рядків dmesg? Секунди з моменту запуску?

Будь ласка, включіть у свої відповіді все, що, на вашу думку, покращило б моє розуміння тут і допоможе мені відстежити аномалії!

ТІА

Енді


dmesgабо /var/log/messagesце загальний журнал повідомлень, а не лише для завантаження. Також запуск програми з терміналу може допомогти налагодити проблему.
Боббі

так, я помітив, що якщо я запускаю речі за допомогою командного рядка, мені часто доводиться повертатись до програми-блювоти. Якщо я запускаю ту саму програму через графічний пусковий механізм, це текст втрачений? Чи вважається гарною практикою графічний додаток для виводу повідомлень stdout?
Енді

Якщо ви запускаєте програму графічно, то stdout та stderr будуть підключені ніде (або / dev / null, з цього приводу), що означає, що всі повідомлення будуть втрачені. Якщо вам це потрібно, то або почніть з командного рядка, або перенаправляйте вихід у файл, встановивши команду у файлі .desktop на щось подібне: "some_command &> some_logfile".
petersohn

Справжнє питання - чи потрібно мені це! Чи залишає більшість програм більш корисний вихід у журналах? Чи просунутий Linux Linux зазвичай використовує це, stdoutщоб допомогти діагностувати проблеми із програмним забезпеченням (не власним)? (В основному я знайомий з тим, як захопити stdout, але не з тим, наскільки корисним може бути результат…)
Енді,

Я запускаю програми з терміналу лише в тому випадку, якщо у мене виникають проблеми (отримання деякої інформації про налагодження та повідомлення про помилки, які, можливо, проковтнув GUI). І так, це хороша практика, і це стандартна поведінка всіх програм під Linux.
Боббі

Відповіді:


7

У LinuxHomeNetworking є стартер: Швидкий HOWTO: Ch05: Усунення несправностей з Linux за допомогою syslog .

Можливо, вам також сподобаються поради Ubuntu: Як переглянути файли системного журналу в графічному інтерфейсі .

Сторінка Ubuntu LinuxLogFiles також є хорошою посиланням
(розміщена в коментарі Pulseдо іншої відповіді тут).


12

Велике спасибі Pulse за рекомендацію https://help.ubuntu.com/community/LinuxLogFiles . Я вирізав декілька бітів і пропустив, як користуватися syslogdта іншими необхідними командами, щоб залишити це невелике керівництво для подальшої довідки. Це з сайту Ubuntu, і я не знаю, скільки коштує для інших дистрибутивів.

Системні журнали

Системні журнали стосуються насамперед функціонування системи Ubuntu, не обов'язково з додатковими додатками, доданими користувачами. Приклади включають механізми авторизації, системні демони, системні повідомлення та сам всеохоплюючий системний журнал, syslog.

Журнал авторизації: /var/log/auth.log

Журнал авторизації відстежує використання систем авторизації, механізми авторизації користувачів, які запрошують паролі користувачів, такі як система модуля автентифікації Pluggable (PAM), sudoкоманда, віддалені входи в систему sshdтощо.

Демон-журнал: /var/log/daemon.log

Журнал демон демонструє інформацію про запущені демони системи та додатків, такі як демон Gnome Display Manager, демон gdmHCI Bluetooth hcidабо демон бази даних MySQL mysqld.

Журнал налагодження: /var/log/debug

Журнал налагодження надає докладні повідомлення про налагодження з системи Ubuntu та додатків, які syslogdвходять на рівень DEBUG.

Журнал ядра: /var/log/kern.log

Журнал ядра забезпечує детальний журнал повідомлень з ядра Ubuntu Linux. Такі повідомлення можуть виявитися корисними, наприклад, для зйомки нового або створеного на замовлення ядра.

Буфер кільця ядра: dmesg

Буфер кільця ядра насправді не є файлом журналу сам по собі, а скоріше область у запущеному ядрі, за допомогою якої ви можете запитувати повідомлення про завантаження ядра через dmesgутиліту. Щоб переглянути повідомлення, використовуйте це:

dmesg | less

За замовчуванням сценарій ініціалізації системи також /etc/init.d/bootmisc.shнадсилає всі файли завантаження у файл /var/log/dmesg.

Журнал повідомлень: /var/log/messages

Журнал повідомлень містить інформаційні повідомлення з програм та системних засобів. Цей журнал корисний для вивчення виводу повідомлень із додатків та системних засобів, які входять до syslog/ sysklogдемон на рівні INFO.

Система журналу: /var/log/syslog

Системний журнал, як правило, містить найбільше інформації про вашу систему Ubuntu за замовчуванням. Він може містити інформацію, яку інші журнали не містять. Зверніться до системного журналу, коли ви не можете знайти потрібну інформацію журналу в іншому журналі.

Журнали програм

Багато додатків також створюють журнали /var/log. Якщо ви перерахуєте вміст свого /var/logпідкаталогу, ви побачите знайомі імена, наприклад /var/log/apache2представлення журналів веб-сервера Apache 2, або /var/log/samba, що містять журнали для сервера Samba.

Журнали сервера Apache HTTP: /var/log/apache2

Установка за замовчуванням для Apache2 в Ubuntu створює підкаталог журналу. У цьому підкаталозі є два файли журналу з двома різними цілями:

  • /var/log/apache2/access.log - записи кожної сторінки, що обслуговується, та кожного файлу, завантаженого веб-сервером.
  • /var/log/apache2/error.log - записи всіх умов помилок, про які повідомляється HTTP-сервером

Журнали системи друку CUPS: /var/log/cups/error_log

Загальна система друку Unix (CUPS) використовує файл журналу за замовчуванням /var/log/cups/error_logдля зберігання інформаційних повідомлень та повідомлень про помилки.

Журнал полювання Rootkit: /var/log/rkhunter.log

Утиліта Rootkit Hunter ( rkhunter) перевіряє вашу систему Ubuntu на задній план, нюхання та руткіти, що все є ознаками компромісу вашої системи.

Журнали серверів Samba SMB: /var/log/samba

Сервер сервера протоколу блоку повідомлень (SMB), Samba широко використовується для обміну файлами між вашим комп'ютером Ubuntu та іншими комп'ютерами, які підтримують протокол SMB. Samba зберігає у підкаталозі три різних типи журналів:

  • log.nmbd - повідомлення, пов’язані з функцією NETBIOS від Samba через IP (мережеві речі)
  • log.smbd - повідомлення, пов'язані з функцією SMB / CIFS Samba (файли та спільний доступ до друку)
  • log.[IP_ADDRESS] - повідомлення, пов'язані із запитами на послуги з IP-адреси, що містяться в імені файлу журналу.

Журнал сервера X11: /var/log/Xorg.0.log

За замовчуванням X11 Windowing Server, який використовується у Ubuntu, є сервер Xorg X11. Цей журнал корисний для діагностики проблем із середовищем X11.

Журнали, що не читаються людиною

Деякі файли журналів, знайдені в /var/logпідкаталозі, призначені для читання програм, не обов'язково для людей. Деякі приклади випливають.

Журнал відмов у вході: faillog

Журнал відмов у вході, розташований у /var/log/faillog, насправді призначений для аналізу та відображення faillogкомандою.

Журнал останніх реєстрацій: lastlog

Останній журнал входу /var/log/lastlogзазвичай не повинен аналізуватися та перевірятися людьми, а скоріше повинен використовуватися разом із lastlogкомандою.

Журнал записів про вхід: who

Файл /var/log/wtmpмістить записи про вхід, але на відміну від /var/log/lastlogвище, /var/log/wtmpне використовується для відображення списку останніх входів, а замість цього використовується іншими утилітами, такими як whoкоманда для представлення списку поточно зареєстрованих користувачів.


1

syslog (вірніше, syslog.d) - це система реєстрації журналів, яка відповідає за запис більшості журналів /var/log. Є й інші подібні проекти, наприклад syslog-ng

system.log це лише спеціально названий файл, до якого трапляється записувати syslog


Дякую за відповідь: Мене більше зацікавила загальна картина журналів Linux. Мій приклад із системою syslog був лише преамбулою для пояснення того, як я дійшов до цього загального питання.
Енді

0

Ви не кажете, де ви базуєтесь, але Linux Format мав статтю у випуску 132, що стосується файлів журналів. Вам потрібно буде знайти когось із копією або придбати зворотній випуск, щоб одержати його.


Я базуюсь у Великобританії, але все ще сподіваюся, що зможу отримати інформацію, не витрачаючи грошей (:
Енді,

2
Я все ще вивчаю linux, і мені здалося, що
Pulse

Ось саме це я й пішов!
Енді
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.