使用 wsl2 安装 Ubuntu-22.04 后 时间不正确,主要有两个原因
-
时区设置不正确,国内为京八区。
-
时区正确后,没有同步时间。(大部分人容易忽略这一点)
Linux 默认情况下使用 UTC 格式作为标准时间格式,如果在 Linux 下运行程序,且在程序中指定了与系统不一样的时区的时候,可能会造成时间错误。 我本身的开发环境是基于这个,所以时间不一致,开发会有问题。
桌面版的 Ubuntu 有可视化界面,故而方便设置,但是 Sever 版只能通过命令来设置。
设置时区
方式 1 tzselect 命令
tzselect
tzselect -> 输入 4 选择 Asia->输入 10 选择 China->输入 1 选择 BeiJing Time ->输入 yes 即可
方式 2 timedatectl 命令
timedatectl
查看 Time zone: Asia/Shanghai (CST, +0800) 看当前的时区 ,我这里设置过了 ,已经正常了。
如果你的不正确则设置
设置时区命令
timedatectl set-timezone "Asia/Shanghai"
如果设置完成时区后,时间还不正确,则同步下网络时间。
方式 3 tzconfig 命令
tzconfig
运行 tzconfig 会提示这个这是命令不存在则使用
dpkg-reconfigure tzdata
选择 ASia
在选择 Shanghai
不如前两个方便 还得找区域...
系统时间同步网络时间
网上同步时间
1. 安装ntpdate工具
# sudo apt-get install ntpdate
2. 设置系统时间与网络时间同步
# ntpdate cn.pool.ntp.org
3. 将系统时间写入硬件时间
# hwclock --systohc
cn.pool.ntp.org 是位于中国的公共 NTP 服务器,用来同步你的时间
使用 date -R 查看时间是否正确
欢迎关注,后面会有一些资源可以免费获取哟~
全栈开发,分享前后端编程经验,技术干货,技术方案,好用的开发工具和应用软件,人生经验感悟等