(很长时间没有写这些记录了,学习了很多,总结的很少,最后成为自己的,如果不记录,可能little 的没有了)
1、可能需要root权限,但是可能我们还不知道root密码,所以可以给设定一个密码
sudo passwd root
会先让你输入创建用户的密码,就是你自己的密码,
然后让你给root创建一个新的密码,就是root密码
2、切换用户
su
这个命令就可以直接切换到root用户了,可能需要你输入自己刚刚给root设定的密码
可以用命令whoami 来验证当前的用户名,(绝对不是你自己创建的名字)
whoami
3、然后就可以在你的终端修改你的时间了
第一步:修改时区
命令:
sudo tzselect
根据你的选项选择地区/时间
Asia/Shanghai
第二步:选择时间
sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
注意:Shanghai 后面有一个空格
OK,已经完成
验证 :
date
就会出现你想要的 chinese时间了,
root@ubuntu:/etc/default# date
Fri Jan 4 09:17:37 CST 2019
5、其他的设置
Real Time Clock
RTC的全称是Real Time Clock,也叫做硬件时钟(hardware clock),RTC时间是由主板的CMOS电池驱动的。即使你关闭电脑,RTC时钟也会一直运转,除非CMOS电池没电了。很多情况下,RTC时间并不准确。
要查看你的RTC时间,输入以下命令
timedatectl
输出结果
Local time: Wed 2017-12-13 14:47:19 CST
Universal time: Wed 2017-12-13 06:47:19 UTC
RTC time: Wed 2017-12-13 06:47:19
Time zone: Asia/Shanghai (CST, +0800)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
你可以看见,我的本地时间是14:49:19,但RTC时间是 06:47:19。RTC时间与本地时间不相同。有时候这会给系统的程序带来问题。RTC时间是不可靠的。
RTC时间默认没有时区。要让系统以UTC时区读取RTC时间,执行下面的命令
timedatectl set-local-rtc 0
要让系统以本地时区读取RTC时间,运行这个命令。
timedatectl set-local-rtc 1
推荐以UTC时区读取RTC时间,这可以减少麻烦。
让系统时间与本地时区时间自动同步
有时候,即使你正确设置好了时区,你的系统时间仍然有可能不准确。我们可以使用NTP协议来让系统时间与本地时区时间自动同步。
许多程序需要准确的时间才能发挥应有的功能。而NTP可以为网络上的机器提供精确的时间。NTP是一个应用层协议,使用UDP作为传输层协议。NTP时间服务器从原子钟(atomic clock)获取精确的时间。
使用Systemd的Linux系统可以用以下命令启用NTP网络时间自动同步。
timedatectl set-ntp true
这条命令会启动systemd-timesyncd服务。查看NTP状态 。
timedatectl status
输出结果:
Local time: Wed 2017-12-13 15:30:35 CST
Universal time: Wed 2017-12-13 07:30:35 UTC
RTC time: Wed 2017-12-13 07:30:35
Time zone: Asia/Shanghai (CST, +0800)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
网络时间(network time)为Yes就表示启用了NTP时间同步,NTP同步(NTP synchronized)有两个状态:Yes或No。如果 Network time没有启用,那么NTP同步的状态一定为No。现在可以查看systemd-timesyncd的状态。
sudo systemctl status systemd-timesyncd
输出结果:
systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2017-12-13 15:30:29 CST; 1h 37min ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 2243 (systemd-timesyn)
Status: "Synchronized to time server 202.112.29.82:123 (0.arch.pool.ntp.org)."
Tasks: 2 (limit: 512)
CGroup: /system.slice/systemd-timesyncd.service
└─2243 /usr/lib/systemd/systemd-timesyncd
可以发现,系统与202.112.29.82这台时间服务器同步成功了。