centos 备忘录 20140429

姚洪楼 发表于 学习备忘录 分类,标签:
0
 

1、安装的时候选择了简体中文,装好后使用Xshell连接发生中文乱码的状况

我装的是centos6.3,对中文兼容性还是比较好的。通过其他软件测试,是可以正常显示中文的,所以排除是这台新装系统的字库问题;于是检查Xshell的软件设置,发现编码是“默认语言”,于是将其改为“UTF-8”,问题顺利解决。

 

2、修改好时间,但重启后依旧会快8小时的问题

这是由于centos将硬件保存的时间(BIOS时间)认作是UTC时间(世界标准时间),centos安装的时候我选择的是上海地区,所以系统时间应该是UTC+8,也就是BIOS时间+8小时。

当我们使用date命令查看时间的时候,显示给出的时间是CST,这个CST在这里的意思是:China Standard Time;但是需要注意的是,当我们调整系统时间的时候,需要先将这个CST时间设置为北京时间减去8小时(也就是UTC时间),而后再使用 hwclock –w 命令将其写入BIOS (否则,重启后centos重新读取BIOS时间作为UTC,CST就会快8小时了;或许有更好的办法解决这个问题,但是作为新手,还是暂时就用这个办法比较容易简单点,以后再研究更深层次的吧)

===============update 2014/04/30===============

昨天以为问题暂时解决了,但没想到的是,系统重启一次,时间就会增加8小时,而且是不断累加….

于是继续研究,查了N多资料,终于理清了里面的头绪:

hwclock 的意思是 硬件时钟(hardware)

Linux系统下有两个时间:一个是系统时间(系统里面的),一个是硬件时间(BIOS存储的)

系统每次启动的时候都会读取硬件时间,进行对应处理,然后赋给系统时间

 

CentOS的环境下,对BIOS的时间有两种定义:localtime、UTC

可以通过 hwclock –debug查看:Hardware clock is on local time 还是 UTC

CentOS的环境下,/etc/sysconfig/clock 这个文件里定义系统的时间是否使用UTC时间

以上两个条件就是系统启动时读取BIOS时间后的处理规则,具体果如下: (针对+0800时区)
1. hwclock 设定为 localtime,/etc/sysconf/clock 中的 UTC=true ,系统时间=BIOS时间-8小时
2. hwclock 设定为 localtime,/etc/sysconf/clock 中的 UTC=false,系统时间=BIOS时间
3. hwclock 设定为 UTC,/etc/sysconf/clock 中的 UTC=true,系统时间=BIOS时间
4. hwclock 设定为 UTC,/etc/sysconf/clock 中的 UTC=false,系统时间=BIOS时间+8小时

这就是CentOS系统启动之后对时间的处理过程,搞明白这个,问题就很明白了!

 

我的情况是:hwclock 设定了 UTC,/etc/sysconf/clock 中的 UTC=false,所以,CentOS每次启动系统都会加上8小时 (我按照网上的教程设置了系统时间与硬件时间同步,所以每次都会增加8小时,这就是遇病乱问医的结果,因为他们的那些解决方案并非针对我这种情况的)

所以解决问题的方法是:
1、hwclock –localtime 设置hwclock为localtime
2、vi /etc/sysconf/clock 修改UTC=false
3. date -R 确认时区为+0800,不正确请修改
4. date 确认北京时间正确,不正确请修改
5. hwclock -w 将系统时间强行写入BIOS
6. reboot 查看是否有效?

===============update 2015/09/07===============

cnetos6.5 安装过程指定上海时区,安装完成后系统时间总是快8小时的问题,似乎不再自动同步到bios

所以最简单的办法就是进BIOS将时间调成utc (也就是北京时间减去八小时)

强迫症患者则可以通过下面步骤操作

1. 编辑文件 # vi /etc/sysconfig/clock 设置bios时间不作为utc

ZONE="Asia/Shanghai"
UTC=false
ARC=false

2. 校准系统时间并设置bios时间与系统时间一致均为cst上海时区

# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# ntpdate asia.pool.ntp.org
# /sbin/hwclock –systohc

 

===============update 2014/04/30===============

3、双网卡上网的问题

a. IP的设置

vi  /etc/sysconfig/network-scripts/ifcfg-eth0  如下是参考项(文件中有的话直接修改,没有的话就手动添加)

DEVICE=eth0 #描述网卡对应的设备别名
HWADDR=00:22:46:0C:12:02  #对应的网卡mac地址
ONBOOT=YES  #设置为yes时,系统启动时激活此设备 (此条重要)
BOOTPROTO=static  #设置网卡获得ip地址的方式,可以是static,dhcp或bootp
IPADDR=192.168.0.2  #IP地址(网卡设置成static时才需要)
NETMASK=255.255.255.0 #网卡对应的网络掩码
GATWAY=192.168.0.1 #网卡对应的网络地址,也就是所属的网段
DNS1=8.8.4.4
DNS2=8.8.8.8

vi  /etc/sysconfig/network-scripts/ifcfg-eth1  编辑另外一块网卡(mac地址一般是自动的,可以区分对应网口)

然后重启网络服务即可。(如不行的话,reboot试试)

 

b. 修改默认上网的网关

vi  /etc/sysconfig/network  添加如下内容

GATEWAY=拿来上网的网卡的网关地址

然后重启网络服务即可。(如不行的话,直接reboot试试)

 

c. 我的情况是,eth1是内网地址(自动获取地址),eth0是公网地址(静态网络地址),起初是走的是eth1,一切正常,但当我将默认网关修改为eth0,出现域名无法解析的问题

我的第一反应是DNS设置问题,于是修改了/etc/resolv.conf,再进行测试发现域名可以解决了;但重启电脑之后,域名又无法解析,查看/etc/resolv.conf,发现dns服务器变成了我eth1的(eth1用的是电信DNS,而eth0是移动线路,所以无法使用电信的DNS)

也就是说,重启之后,/etc/resolv.conf 会自动重写….. 于是我将eth1的DNS修改成了8.8.4.4, 8.8.8.8 (这是Google提供的DNS服务器,不管移动还是电信有联通,都可以用的)


【版权声明】
 本文短地址:mpYes.com/934 本文版权属于:mpYes.com
 含有照片的文章谢绝转载,包括但不限于本人及本人亲友的照片
 涉及中国大陆现状的描述、本人的政治评论等相关文章谢绝转载
 其余文章允许非商用性质的转载,但请保留本文链接及本人署名

发表我的评论