linux取bios时间的另一种方式
一般在linux下系统的时间与bios不一样,因为我们使用的时间时区不是GMT 0时区。所以可以考虑把系统的时区选成0时区的国家。但是要注意英国的时间实行"夏令时"。
这样做有一个问题:就是java环境取的日期默认不是+8区的java.util.Date()。所以在生产环境尽量不要这样做。一个变通的方法是在java代码中对日期进行特殊处理:
Date d = new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd kk:mm:ss ");
sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
System.out.println(sdf.format(d));
或者
<fmt:formatDate value="${createDate}" pattern="yyyy-MM-dd HH:mm:ss" timeZone="Asia/Shanghai"/>
感觉把问题越弄越乱.
deiban
dpkg-reconfigure tzdata
配置区域
dpkg-reconfigure locales
------------------------------------------------------------------
因为 Linux 使用协调世界时(UTC),把硬件时钟作为 UTC 对待,而 Windows 使用系统硬件时间。
使二者统一时间的方法,就是设置 Linux 使用硬件时钟作为本地时间。
在 Linux 系统中,进入系统管理员账号,先用以下命令设置时区为 Asia/Shanghai:
dpkg-reconfigure tzdata选Asia/Shanghai
再用以下命令设置 Linux 使用硬件时钟作为本地时间:
hwclock --localtime -w