在 Debian(以及大多数 Linux 系统)里,日志时间对齐通常指两件事之一:
下面分别说。
journalctl(systemd 日志)journalctl
默认时间已经对齐,例如:
Aug 21 10:23:45 hostname service[1234]: message
如果你想改成 ISO 时间并更好对齐:
journalctl -o short-iso
或
journalctl -o short-iso-precise
导出到文件时更好看:
journalctl -o short-iso > log.txt
/var/log/syslog / messages这些一般是 rsyslog 写的,格式在:
/etc/rsyslog.conf
常见模板(已对齐):
$template TraditionalFormat,"%timegenerated% %HOSTNAME% %syslogtag%%msg%\n"
如果想自定义对齐格式,可改模板,例如:
$template MyFormat,"%timegenerated:1:19:date-rfc3339% %syslogtag:1:20% %msg%\n"
然后:
sudo systemctl restart rsyslog
date
sudo timedatectl set-timezone Asia/Shanghai
查看:
timedatectl
sudo timedatectl set-ntp true
确认:
timedatectl status
看到:
System clock synchronized: yes
ntpdate cn.pool.ntp.org
或安装:
apt install ntp
✅ 90% 是时区不对
✅ 没开 NTP,或硬件时钟不对:
hwclock --systohc
timedatectl set-timezone Asia/Shanghai
timedatectl set-ntp true
journalctl -o short-iso
如果你指的是某一类日志(如 docker / nginx / 自定义程序)时间不对齐,可以告诉我具体场景,我给你针对性方案。