麒麟OS系统日志可通过五种方法导出:一、journalctl导出systemd结构化日志;二、打包/var/log/文本日志;三、dmesg导出内核环形缓冲区日志;四、kylin-iodiag-tools采集IO与诊断日志;五、图形化日志查看器导出桌面环境日志。

如果您需要在麒麟OS中获取系统日志用于故障排查,但不确定从何处提取或如何按需导出,则可能是由于日志来源分散、格式不统一或权限控制导致导出失败。以下是多种可直接执行的日志导出方法:
一、使用 journalctl 导出结构化系统日志
journalctl 是 systemd 日志子系统的命令行接口,所有由 systemd 管理的服务日志均被集中存储于二进制日志数据库中,支持时间范围筛选、服务限定与格式化导出,适用于大多数运行时问题分析。
1、导出全部系统日志(含历史启动周期)至文件:sudo journalctl > /tmp/all_journal.log
2、仅导出当前启动周期内的日志:sudo journalctl -b > /tmp/boot_journal.log
3、导出过去24小时内的日志:sudo journalctl --since "24 hours ago" > /tmp/last24h.log
4、导出指定服务(如 sshd)自昨日至今的完整日志:sudo journalctl -u ssh.service --since "yesterday" > /tmp/sshd_recent.log
5、导出带人类可读时间戳且仅含错误与警告级别的日志:sudo journalctl -p err..warning -T > /tmp/errors_warnings.log
二、打包 /var/log/ 目录下原始文本日志文件
/var/log/ 是麒麟OS持久化存储文本日志的主目录,包含 syslog、auth.log、messages 等关键文件,适合离线归档、合规审计或非 systemd 场景下的深度排查。
1、单独导出通用系统事件日志:sudo cp /var/log/syslog /tmp/syslog_$(date +%Y%m%d_%H%M).log
2、导出安全认证相关日志:sudo cp /var/log/auth.log /tmp/auth_$(date +%Y%m%d_%H%M).log
3、导出内核消息历史记录(若 messages 存在):sudo cp /var/log/messages /tmp/messages_$(date +%Y%m%d_%H%M).log
4、将整个 /var/log/ 下近7天内修改过的日志文件打包压缩:sudo find /var/log/ -type f -mtime -7 -name "*.log" -o -name "*.txt" | xargs tar -czf /tmp/var_log_recent_$(date +%Y%m%d_%H%M).tar.gz
5、仅打包核心日志文件(不含滚动备份):sudo tar -czf /tmp/core_logs.tar.gz /var/log/syslog /var/log/auth.log /var/log/kern.log /var/log/boot.log
三、使用 dmesg 导出内核环形缓冲区日志
dmesg 输出为内核启动及运行过程中产生的底层硬件交互信息,内容驻留在内存环形缓冲区中,不自动落盘,对识别驱动加载失败、设备未识别、PCIe链路中断等低层异常至关重要。
1、导出带人类可读时间戳的完整内核日志:sudo dmesg -T > /tmp/dmesg_full_$(date +%Y%m%d_%H%M).log
2、仅导出错误(err)与警告(warn)级别消息:sudo dmesg -l err,warn -T > /tmp/dmesg_errors_$(date +%Y%m%d_%H%M).log
3、导出最近100行内核消息:sudo dmesg -T -n 100 > /tmp/dmesg_tail_$(date +%Y%m%d_%H%M).log
4、实时捕获新出现的内核消息并保存(需另启终端执行后手动中断):sudo dmesg -w > /tmp/dmesg_live_$(date +%Y%m%d_%H%M).log &
5、导出启动阶段早期日志(含 initrd 阶段):sudo dmesg -T --boot > /tmp/dmesg_boot_$(date +%Y%m%d_%H%M).log
四、调用 kylin-iodiag-tools 提取 IO 行为与系统诊断日志
kylin-iodiag-tools 是麒麟OS官方提供的专用诊断工具套件,内置日志采集模块,可自动收集磁盘IO、内存压力、进程阻塞、电源状态等深度运行指标,专用于硬件兼容性与性能类故障定位。
1、检查工具是否已安装:which kylin-iodiag-tools
2、若未安装,先部署(需 root 权限):sudo apt install kylin-iodiag-tools
3、执行全量诊断日志采集(默认输出至 /var/log/kylin-diag/):sudo kylin-iodiag-tools --collect-all
4、导出最新一次采集生成的完整诊断包:sudo cp -r /var/log/kylin-diag/latest /tmp/kylin_diagnostic_$(date +%Y%m%d_%H%M)
5、仅导出IO子系统日志(含 iostat、iotop、blktrace 汇总):sudo kylin-iodiag-tools --collect-io --output-dir /tmp/io_log_$(date +%Y%m%d_%H%M)
五、通过图形化日志查看器导出桌面环境日志
麒麟OS桌面版预装“系统日志查看器”(kylin-log-viewer),提供可视化界面、关键词高亮、时间轴导航与多日志源聚合功能,适合非技术人员快速筛查登录失败、桌面崩溃、网络中断等高频事件。
1、在应用菜单中搜索并启动“系统日志查看器”;
2、点击顶部菜单栏“文件”→“打开日志”,选择需查看的源(如“系统日志”、“安全日志”、“内核日志”);
3、使用右上角时间控件设定起止范围;
4、点击“编辑”→“复制所选内容”或“导出所选内容”;
5、在弹出对话框中指定路径,保存为 .log 或 .txt 格式:/tmp/gui_export_$(date +%Y%m%d_%H%M).log

















