add 13 lesson lab
parent
8a08352e95
commit
a5c497a213
10
labs.md
10
labs.md
|
@ -126,3 +126,13 @@
|
|||
3. Используя `at` запланировать задание отключения компьютера сегодня в удобное время.
|
||||
|
||||
***
|
||||
|
||||
**Глава 13. Настройка хранения логов.**
|
||||
|
||||
1. Убедитесь, что логи systemd сохраняются постоянно (persistently).
|
||||
|
||||
2. Создать запись в rsyslog, при которой сохраняются все сообщения категории error и выше (severity - error) в `/var/log/error`
|
||||
|
||||
3. Убедитесь, что `/var/log/error` архивируется ежемесячно, при этом 12 последних сообщений должны сохраниться перед архивацией.
|
||||
|
||||
***
|
||||
|
|
127
labs_solution.md
127
labs_solution.md
|
@ -394,3 +394,130 @@ at> <EOT>
|
|||
```
|
||||
|
||||
***
|
||||
|
||||
**Глава 13. Настройка хранения логов.**
|
||||
|
||||
1. Убедитесь, что логи systemd сохраняются постоянно (persistently).
|
||||
*убедимся, что служба запущена*
|
||||
```bash
|
||||
[da2001@co1 ~]$ systemctl status systemd-journald.service
|
||||
● systemd-journald.service - Journal Service
|
||||
Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service; static; vendor preset: disabled)
|
||||
Active: active (running) since Sun 2021-08-22 20:12:19 MSK; 1 weeks 4 days ago
|
||||
Docs: man:systemd-journald.service(8)
|
||||
man:journald.conf(5)
|
||||
Main PID: 586 (systemd-journal)
|
||||
Status: "Processing requests..."
|
||||
Tasks: 1 (limit: 11258)
|
||||
Memory: 2.5M
|
||||
CGroup: /system.slice/systemd-journald.service
|
||||
└─586 /usr/lib/systemd/systemd-journald
|
||||
|
||||
Aug 22 20:12:19 co1.rh systemd-journald[586]: Journal started
|
||||
Aug 22 20:12:19 co1.rh systemd-journald[586]: Runtime journal (/run/log/journal/75cfadef25be494698e02d31e421d7bf) is 8.0M, max 90.8M, 82.8M free.
|
||||
```
|
||||
*проверим настройки*
|
||||
```bash
|
||||
[da2001@co1 ~]$ cat /etc/systemd/journald.conf
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Entries in this file show the compile time defaults.
|
||||
# You can change settings by editing this file.
|
||||
# Defaults can be restored by simply deleting this file.
|
||||
#
|
||||
# See journald.conf(5) for details.
|
||||
|
||||
[Journal]
|
||||
#Storage=auto
|
||||
#Compress=yes
|
||||
#Seal=yes
|
||||
|
||||
***
|
||||
```
|
||||
*в данном случае нас интересует только строка Storage, строки ниже не показаны. Значение `auto` говорит о том, что логи будут сохранятся в папку `/var/log/journal`, при условии, что папка существует. Убирать символ `#` в начале не нужно, т.к. значение auto используется по-умолчанию.*
|
||||
```bash
|
||||
[da2001@co1 ~]$ sudo mkdir /var/log/journal
|
||||
[da2001@co1 ~]$ sudo systemctl restart systemd-journald.service
|
||||
[da2001@co1 ~]$ sudo systemctl status systemd-journald
|
||||
● systemd-journald.service - Journal Service
|
||||
Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service; static; vendor preset: disabled)
|
||||
Active: active (running) since Fri 2021-09-03 09:20:40 MSK; 21s ago
|
||||
Docs: man:systemd-journald.service(8)
|
||||
man:journald.conf(5)
|
||||
Main PID: 156983 (systemd-journal)
|
||||
Status: "Processing requests..."
|
||||
Tasks: 1 (limit: 11258)
|
||||
Memory: 1.2M
|
||||
CGroup: /system.slice/systemd-journald.service
|
||||
└─156983 /usr/lib/systemd/systemd-journald
|
||||
|
||||
Sep 03 09:20:40 co1.rh systemd-journald[156983]: Journal started
|
||||
Sep 03 09:20:40 co1.rh systemd-journald[156983]: System journal (/var/log/journal/75cfadef25be494698e02d31e421d7bf) is 16.0M, max 999.0M, 982.9M free.
|
||||
```
|
||||
*теперь видно, что логи сохраняются в `/var/log/journal/75cfadef25be494698e02d31e421d7bf`*
|
||||
|
||||
2. Создать запись в rsyslog, при которой сохраняются все сообщения категории error и выше (severity - error) в `/var/log/error`
|
||||
```bash
|
||||
sudo vi /etc/rsyslog.d/error.conf
|
||||
```
|
||||
```bash
|
||||
*.error /var/log/error
|
||||
```
|
||||
```bash
|
||||
sudo systemctl restart rsyslog.service
|
||||
```
|
||||
3. Убедитесь, что `/var/log/error` архивируется ежемесячно, при этом 12 последних сообщений должны сохраниться перед архивацией.
|
||||
*посмотрим настройки по-умолчанию для примера*
|
||||
```bash
|
||||
[da2001@co1 ~]$ cat /etc/logrotate.conf
|
||||
# see "man logrotate" for details
|
||||
# rotate log files weekly
|
||||
weekly
|
||||
|
||||
# keep 4 weeks worth of backlogs
|
||||
rotate 4
|
||||
|
||||
# create new (empty) log files after rotating old ones
|
||||
create
|
||||
|
||||
# use date as a suffix of the rotated file
|
||||
dateext
|
||||
|
||||
# uncomment this if you want your log files compressed
|
||||
#compress
|
||||
|
||||
# RPM packages drop log rotation information into this directory
|
||||
include /etc/logrotate.d
|
||||
|
||||
# system-specific logs may be also be configured here.
|
||||
```
|
||||
*настройку для отдельного сервиса или категории необходимо создать в новом файле в папке `/etc/logrotate.d`*
|
||||
*посмотрим пример какого-нибудь файла из этой папки*
|
||||
```bash
|
||||
[da2001@co1 ~]$ cat /etc/logrotate.d/samba
|
||||
/var/log/samba/log.* {
|
||||
compress
|
||||
dateext
|
||||
maxage 365
|
||||
rotate 99
|
||||
notifempty
|
||||
olddir /var/log/samba/old
|
||||
missingok
|
||||
copytruncate
|
||||
}
|
||||
```
|
||||
*на основе настроек в `/etc/logrotate.conf` и `/etc/logrotate.d/samba` создадим новый конфиг для архивации логов error*
|
||||
```bash
|
||||
/var/log/error {
|
||||
montly
|
||||
rotate 12
|
||||
create
|
||||
}
|
||||
```
|
||||
|
||||
***
|
||||
|
|
Loading…
Reference in New Issue