debian修改时间 debian系统之修改时间与时区 - Linux - 服务器之家

服务器之家

专注于服务器技术!
当前位置:首页 > 服务器系统 > Linux

debian修改时间 debian系统之修改时间与时区

发布时间:2017-04-03 来源:服务器之家

1.时区的修改:

1.图形界面配置时区的命令:

dpkg-reconfigure tzdata
该操作会修改两个文件

/etc/timezone #该文本文件可直接修改
/etc/localtime #该文件可通过软连接修改
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
或者直接
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
所以时区的修改需要修改两个地方:
1.修改
/etc/timezone :修改该文件
2./usr/share/zoneinfo/Asia/把该目录下对应的文件复制到/etc/下面并命名为localtime
然后过段时间使用date指令查看便会发现时区已改变。

2.文本方法:

root@debian:~# tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
1) Africa
2) Americas
3) Antarctica
4) Arctic Ocean
5) Asia
6) Atlantic Ocean
7) Australia
8) Europe
9) Indian Ocean
10) Pacific Ocean
11) none - I want to specify the time zone using the Posix TZ format.
3.直接编辑
/etc/timezone

2.Linux时间

Linux时间分为系统时间和硬件时间

系统时间:当前Linux内核中的时间

硬件时间:主板上有电池供电的时钟,这个硬件时钟可以在bios钟进行设置,当Linux启动时,会去读取硬件时间作为系统时间,然后系统时间会独立于硬件运作。

系统时间和时区有关;

UTC :时间协调时间

GMT:格林威治标准时间,

在/etc/default/rcS这个文件中设置系统是否使用UTC,

UTC=yes/no

计算的主板上有自己的硬件时间,关机也不会丢失

BIOS=本地时间,UTC=no
BIOS=UTC时间,UTC=yes
3.时间的设置

#dibian下面修改时间方法:
1.修改为指定的年月日
date -s '月/日/年'
root@debian:~# date
2014年 09月 19日 星期五 00:07:40 CST
root@debian:~# date -s'09/20/14'
2014年 09月 20日 星期六 00:00:00 CST
root@debian:~# date
2014年 09月 20日 星期六 00:00:03 CST
2.修改为指定的时分秒
date -s '时:分:秒'
3.修改为指定时间
date -s "YYYY/MM/DD hh:mm:ss"
root@zhu:~# date
Fri Sep 19 21:33:52 CST 2014
root@zhu:~# date -s 'Fri Sep 19 22:33:52 CST 2014'
Fri Sep 19 22:33:52 CST 2014
root@zhu:~# date
Fri Sep 19 22:33:54 CST 2014
root@zhu:~# date -s '09/19/14 21:33:54'
Fri Sep 19 21:33:54 CST 2014
root@zhu:~# date
Fri Sep 19 21:33:56 CST 2014
#修改系统时间方法如上。
root@zhu:~/log# date --help
用法:date [选项]... [+格式]
 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
以给定的格式显示当前时间,或是设置系统日期。
-d,--date=字符串 显示指定字符串所描述的时间,而非当前时间
-f,--file=日期文件 类似--date,从日期文件中按行读入时间描述
-r, --reference=文件 显示文件指定文件的最后修改时间
-R, --rfc-2822 以RFC 2822格式输出日期和时间
例如:2006年8月7日,星期一 12:34:56 -0600
--rfc-3339=TIMESPEC 以RFC 3339 格式输出日期和时间。
TIMESPEC=`date',`seconds',或 `ns'
表示日期和时间的显示精度。
日期和时间单元由单个的空格分开:
2006-08-07 12:34:56-06:00
-s, --set=字符串 设置指定字符串来分开时间
-u, --utc, --universal 输出或者设置协调的通用时间
--help 显示此帮助信息并退出
--version 显示版本信息并退出
给定的格式FORMAT 控制着输出,解释序列如下:
%% 一个文字的 %
%a 当前locale 的星期名缩写(例如: 日,代表星期日)
%A 当前locale 的星期名全称 (如:星期日)
%b 当前locale 的月名缩写 (如:一,代表一月)
%B 当前locale 的月名全称 (如:一月)
%c 当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
%C 世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
%d 按月计的日期(例如:01)
%D 按月计的日期;等于%m/%d/%y
%e 按月计的日期,添加空格,等于%_d
%F 完整日期格式,等价于 %Y-%m-%d
%g ISO-8601 格式年份的最后两位 (参见%G)
%G ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用
%h 等于%b
%H 小时(00-23)
%I 小时(00-12)
%j 按年计的日期(001-366)
%k hour, space padded ( 0..23); same as %_H
%l hour, space padded ( 1..12); same as %_I
%m month (01..12)
%M minute (00..59)
%n 换行
%N 纳秒(000000000-999999999)
%p 当前locale 下的"上午"或者"下午",未知时输出为空
%P 与%p 类似,但是输出小写字母
%r 当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)
%R 24 小时时间的时和分,等价于 %H:%M
%s 自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
%S 秒(00-60)
%t 输出制表符 Tab
%T 时间,等于%H:%M:%S
%u 星期,1 代表星期一
%U 一年中的第几周,以周日为每星期第一天(00-53)
%V ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
%w 一星期中的第几日(0-6),0 代表周一
%W 一年中的第几周,以周一为每星期第一天(00-53)
%x 当前locale 下的日期描述 (如:12/31/99)
%X 当前locale 下的时间描述 (如:23:13:48)
%y 年份最后两位数位 (00-99)
%Y 年份
%z +hhmm 数字时区(例如,-0400)
%:z +hh:mm 数字时区(例如,-04:00)
%::z +hh:mm:ss 数字时区(例如,-04:00:00)
%:::z 数字时区带有必要的精度 (例如,-04,+05:30)
%Z 按字母表排序的时区缩写 (例如,EDT)

date指令日期格式之间转换

root@zhu:~/log# date
2014年 10月 10日 星期五 18:42:45 CST
root@zhu:~/log# date +%s
1412937769
root@zhu:~/log# date -d '@1412937769'
2014年 10月 10日 星期五 18:42:49 CST
root@zhu:~/log# date -d '2014年 10月 10日 星期五 18:42:45 CST' +%s
1412943240
root@zhu:~/log# date -d @1361542596 +"%Y-%m-%d %H:%M:%S"
2013-02-22 22:16:36
root@zhu:~/log# date -d '2014年 10月 10日 星期五 18:42:45 CST' +"%Y-%m-%d %H:%M:%S"
2014-10-10 20:14:00

 显示指定时区的时间

root@zhu:~/log# TZ='Asia/Bangkok' date
2014年 10月 10日 星期五 17:55:13 ICT
root@zhu:~/log# TZ='Asia/Shanghai' date
2014年 10月 10日 星期五 18:57:54 CST