• ESXI6.0 时间(时区)显示不一致


    ESXI6.0 时间(时区)显示不一致

    来源 http://blog.51cto.com/jdonghong/1957118

    近日由于设置ESXI计划任务,无意间发现了esxi服务器客服端时间和系统显示时间不一致的情况,导致了(我为了一致,通过SSH用命令修改了ESXI系统时间)虚拟机时间也不一致,最终导致虚拟服务器系统时间出错。

    wKioL1mVRxDgZnGUAAA-EWfD8ao730.png

    wKiom1mVRxKgsF8pAAAIHpRMzpg757.png

    相差大约八小时,可以通过客户端显示的时间CST,而ssh服务器用命令显示为UTC时间。于是我查看了所有的ESXI服务器,发现都是一样的情况,因为平时不在意(没有关注这里的时间)没有关注这一点,你会发现你的ESXI也是这样的。当时我想到用命令(esxcli system time set)改为一样不就行了,可以事与愿违,改了后导致虚拟服务器时间也跟着变,导致系统错误。

    最后查了下资料发现ESXI默认都是UTC时间,并且无法更改,更坑的是官方也是这样说的,只有4.X下的版本的破解办法,4.X以后官方也无解法。

    wKiom1mVS3nBNmGmAAF-9vcHrLI922.jpg

    wKioL1mVS0zzuAkhAABp20v0y_o784.png

          

    于是自己捣鼓了下,发现ESXI上/etc下有个localtime ,于是联想到了LINUX下的localtime,能否先设置好,再进行替换,于是进行了尝试:

          

    先把LINUX服务器时间设置好,再把localtime复制并上传到ESXI服务器上,一定要上传到数据存储目录,其它目录ESXI重启系统都会还原,文件也会丢失。这里目录为:/vmfs/volumes/esxi26199

    wKioL1mVT0LhSsO_AABIKESrAbM017.png

    然后使用复制命令,覆盖掉/etc下的localtime文件,cp /vmfs/volumes/esxi26199/localtime  /etc/localtime。

    wKiom1mVUSHRqQkTAAATD881ZCQ033.png

    然后date你会发现奇迹出现了:

    wKiom1mVUWrib6K8AAAVyZ2d9IM698.png

    时间变为了CST了,而且你用客户端登陆发现时间也是正常的,没有再变了,查看虚拟机时间也是正常的。

    wKioL1mVUb7SXTRWAAAmt483dTQ856.png

     

    但是重启ESXI后你会发现你所作的操作都是无用的,一切回到从前……

    接着说解法吧:

          刚刚为什么要把localtime文件拷到数据存储目录下也是有原因的,为了我们能重复使用。

    在ESXI中,开机有会自动启动脚本文件,路径为:/etc/rc.local.d/local.sh查看属性你会发现此文件为可读写可执行的。

    wKioL1mVVKHzMxSxAAAXFzP8PRw993.png

    添加一条命令在此文件中即可:cp /vmfs/volumes/esxi26199/localtime  /etc/localtime

    wKioL1mVVVCwh9aIAAAsQYjVhSU056.png

    这样即使ESXI主机重启后,时间也会正确的了(可能会有几秒延时)。

         经过测试,c6和c7下的localtime都可以作为原文件进行替换。

  • 相关阅读:
    KVC之-setValue:forKey:方法实现原理与验证
    李洪强iOS开发之iOS社区收集
    跟着百度学PHP[15]-会话控制session的工作机制
    代码审计学习之文件操作漏洞
    中间人攻击——ARP欺骗的原理、实战及防御
    跟着百度学PHP[14]-PDO的预处理语句2
    跟着百度学PHP[14]-PDO的预处理语句1
    跟着百度学PHP[14]-PDO之Mysql的事务处理2
    跟着百度学PHP[14]-PDO之Mysql的事务处理1
    跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/9176065.html
Copyright © 2020-2023  润新知