Как записывать содержимое dmesg в файл?

Я запускаю ОС Linux, которая была построена с нуля. Я хотел бы сохранить буфер сообщений ядра (dmesg) в файл, который будет оставаться постоянным между перезагрузками.

Я попытался запустить syslogd, но он только что открыл новый файл журнала, / var / log / messages, ни с существующим буфером сообщений ядра, ни с какими-либо новыми сообщениями, сгенерированными ядром после запуска syslogd.

Как буфер буфера ядра можно сохранить в постоянном файле журнала?

  • Умный поворот журнала
  • как показать цвета в syslog
  • Объединение файлов журналов с разными форматами временных меток
  • Сообщения из syslogd, что они означают и что мне делать?
  • Syslog TLS Сжатие и буферизация сообщений
  • Как отправить всю информацию в файл / var / adm / message в удаленную систему?
  • Подавлять Rsyslog до терминала
  • Файловый дескриптор для чтения сообщений журнала ядра?
  • 3 Solutions collect form web for “Как записывать содержимое dmesg в файл?”

    Вам нужно посмотреть либо /etc/rsyslog.conf либо /etc/syslog.conf . Если у вас есть линия раньше, например:

     *.* -/var/log/syslog 

    Все, включая материал из dmesg, должно перейти к этому файлу. Чтобы лучше ориентироваться:

     kernel.* -/var/log/dmesg 

    Если по какой-то причине это не удается, вы можете периодически (например, через cron):

     dmesg > /var/log/dmesg 

    В зависимости от того, насколько велик буфер dmesg (он скомпилирован в ядро ​​или задан с помощью параметра log_buf_len ), и как долго ваша система будет работать, это будет вести запись журнала ядра с момента его запуска.

    Если вы хотите непрерывно записывать вывод dmesg в файл, используйте флаг -w (–follow).

     dmesg --follow > mydmesg.log 

    Если вы используете systemd вы можете получить всю информацию из журнала systemd с помощью journalctl -k . syslog и rsyslog не нужны, если вы используете systemd.

    PopSicle делает это, я использую старый перенаправление msdos, и он перенаправляется в файл .csv, который открывается в листе распространения LibreOffice Calc на терминале, попробуйте что-то вроде этого

     dmesg > /path to where you want the file written/File-Name.csv dmesg > /media/joe/Data/Z-Back/Script-Files/Dmesg-Output.csv echo "Dmesg-to-CSV.sh"" the script file" #!/bin/bash echo "This is a shell script" SOMEVAR='I am done running dmesg and redirecting to /media/joe/Data/B-Back/Script-Files/Dmesg-Output.csv' echo "$SOMEVAR" dmesg > /media/joe/Data/Z-Back/Script-Files/Dmesg-Output.csv echo "Dmesg-CSV.desktop"" the icon file" [Desktop Entry] Encoding=UTF-8 Name=Dmesg-to-CSV.sh Comment=Launch DirSyncPro Exec=gnome-terminal -e /media/joe/Data/Z-Back/Script-Files/Dmesg-to-CSV.sh Icon=utilities-terminal Type=Application Name[en_US]=Dmesg-CSV.desktop echo "both the .sh file and .desktop file are stored in the same directory as the .csv output file" 
    Interesting Posts
    Linux и Unix - лучшая ОС в мире.