tl; dr
Pada CentOS 7, Anda harus mengaktifkan penyimpanan pesan log yang persisten:
# mkdir /var/log/journal
# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald
Kalau tidak, pesan jurnal log tidak disimpan di antara boot.
Detail
Apakah journald
mempertahankan pesan log dari boot sebelumnya dikonfigurasi melalui /etc/systemd/journald.conf
. Pengaturan default di bawah CentOS 7 adalah:
[Journal]
Storage=auto
Di mana halaman manual journald.conf menjelaskan auto
sebagai:
Salah satu dari "volatile", "persistent", "auto" dan "none". Jika "volatile", data jurnal jurnal akan disimpan hanya dalam memori, yaitu di bawah hierarki / run / log / jurnal (yang dibuat jika diperlukan). Jika "persisten", data akan disimpan lebih disukai di disk, yaitu di bawah hierarki / var / log / jurnal (yang dibuat jika diperlukan), dengan fallback ke / run / log / jurnal (yang dibuat jika diperlukan), selama boot awal dan jika disk tidak dapat ditulisi. " auto " mirip dengan "persistent" tetapi direktori / var / log / jurnal tidak dibuat jika diperlukan, sehingga keberadaannya mengontrol ke mana data log dimasukkan .
(tekankan pada saya)
The halaman manual systemd-journald.service demikian menyatakan bahwa:
Secara default, jurnal menyimpan data log di / run / log / jurnal /. Karena / run / volatile, data log hilang saat reboot. Untuk membuat data tetap, cukup untuk membuat / var / log / jurnal / di mana systemd-journald kemudian akan menyimpan data.
Rupanya, defaultnya diubah di Fedora 19 (menjadi penyimpanan persitent) dan karena CentOS 7 berasal dari Fedora 18 - masih tidak ada di sana, secara default. Kegigihan diimplementasikan secara default di luar journald via /var/log/messages
dan versi /var/log/messages-YYYYMMDD
yang dirotasi yang ditulis oleh rsyslogd (yang berjalan secara default dan mendapat masukan dari journald).
Jadi, untuk mengaktifkan pencatatan persisten dengan journald di bawah RHEL / CentOS 7, Anda harus melakukannya
# mkdir /var/log/journal
dan kemudian perbaiki izin dan mulai ulang journald, mis. via
# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald
systemctl restart systemd-journald
harus melakukannya. Jadi tidak perlu reboot./usr/share/doc/systemd/README.Debian
:install -d -g systemd-journal /var/log/journal
.drwxr-sr-x. 3 root systemd-journal
- mungkin journald memperbaiki izin / kepemilikan selama inisialisasi.USR1
sinyal alih-alih memulai ulang, Anda tidak kehilangan konten jurnal saat ini.killall -USR1 systemd-journald
Anda dapat kehilangan log Anda: lihat https://github.com/systemd/systemd/issues/2236
Ada perubahan pada
v208
:Jadi, Anda harus menjalankan sesuatu seperti
systemd-tmpfiles --create --prefix /var/log/journal
setelahmkdir /var/log/journal
Lihat juga :
systemd-journal
tidak dapat membaca beberapa file jurnalsumber
chmod 4755 /var/log/journal; chown root:systemd-journal !:2
bekerja dengan baik. tetapi tmpfiles: gunakan sihir ACL di direktori jurnal