显示 UTC 和本地时间条目的日志文件

显示 UTC 和本地时间条目的日志文件

我不知道从哪里开始。我有一台 Centos 7 服务器,运行 rsync 作为备份的守护进程,下面是我的 rsyncd.log 文件的片段。您将看到,对于来自客户端的每个连接,前 2 个日志条目都是本地(EDST)时间。接下来的 3 个条目是 UTC。我不知道为什么会这样。我希望它都是本地时间。我还在下面包含了一些我的时间配置的输出。

rsyncd.log:

2019/03/16 12:37:00 [29440] name lookup failed for 192.168.10.246: Name or service not known
2019/03/16 12:37:00 [29440] connect from UNKNOWN (192.168.10.246)
2019/03/16 16:37:00 [29440] rsync to Rtemp/ from UNKNOWN (192.168.10.246)
2019/03/16 16:37:00 [29440] receiving file list
2019/03/16 16:46:08 [29440] sent 227465 bytes  received 4197952526 bytes  total size 4871704448

2019/03/16 13:31:00 [1283] name lookup failed for 192.168.10.246: Name or service not known
2019/03/16 13:31:00 [1283] connect from UNKNOWN (192.168.10.246)
2019/03/16 17:31:00 [1283] rsync to Rtemp/ from UNKNOWN (192.168.10.246)
2019/03/16 17:31:00 [1283] receiving file list
2019/03/16 17:31:00 [1283] sent 78 bytes  received 1628 bytes  total size 542134144

2019/03/16 13:33:00 [1286] name lookup failed for 192.168.10.246: Name or service not known
2019/03/16 13:33:00 [1286] connect from UNKNOWN (192.168.10.246)
2019/03/16 17:33:00 [1286] rsync to Rtemp/ from UNKNOWN (192.168.10.246)
2019/03/16 17:33:00 [1286] receiving file list
2019/03/16 17:33:00 [1286] sent 25 bytes  received 1621 bytes  total size 542134144

系统日期查询输出:

[root@cent7 log]# ls -la /etc | grep localtime
lrwxrwxrwx.  1 root root     37 Mar  9 00:04 localtime -> ../usr/share/zoneinfo/America/Toronto

[root@cent7 log]# hwclock --show
Sat 16 Mar 2019 02:34:12 PM EDT  -0.173067 seconds

[root@cent7 log]# date
Sat Mar 16 14:34:15 EDT 2019

2019年3月22日编辑:

我还没有找到解决办法,但确认了更多:我开始将每个模块与全局日志分开记录。全局日志是按“设置”时区显示日志条目的地方。这些日志与与守护进程的连接相关联。

模块日志,其中记录传输特定的日志(通过将“传输日志记录”布尔值设置为 1 创建的日志)是在 UTC 中完成的日志。

我在留言板上找到了这个注释和错误报告,其中详细描述了我的问题,他们确定这是因为 rsync 正在 chroot 到无法到达 /etc/localtime 的路径,并且他们提供了一种解决方法。但是我没有 chroot,所以这应该不是问题,对吧?
https://lists.samba.org/archive/rsync/2009-March/022772.html
https://bugzilla.samba.org/show_bug.cgi?id=4402

虽然我没有 chroot,但我想知道 SE_linux 是否可能阻止读取 /etc/localtime,有人有什么想法吗?

答案1

与 ubuntu16 有同样的问题。已修复systemctl edit rsync.service

# systemctl cat rsync.service | tail -3
[Service]
Environment="TZ=:/etc/localtime"
  • 前:

    # cat /proc/$(pgrep rsync)/environ
    LANG=en_US.UTF-8PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
  • 后:

    # cat /proc/$(pgrep rsync)/environ
    LANG=en_US.UTF-8PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binTZ=:/etc/localtime
    

https://hungryadmin.com/setting-the-tz-variable-for-systemd.html https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2017-April/017383.html

相关内容