基于ubuntu x86 12.04LTS
首先修改时区有三种方式:
一.没有图形界面GUI的情况下
1.使用tzselect命令并根据提示操作
2.把/usr/share/zoneinfo/下各时区文件覆盖/etc/localtime,注意备份和权限问题
二.有GUI的情况下可以直接点击时间选项卡修改
最后可以使用sudo ntpdate cn.pool.ntp.org修改时间
cn.pool.ntp.org是位于中国的公共NTP服务器,用来同步你的时间
以上是逻辑相关操作
接下来是脚本
#!/bin/bash
#modify system timezone
#timezonemod.sh
bitadir=/home/bita/
workdir=/home/bita/bisc
zonefiledir=/usr/share/zoneinfo
zoneconfdir=/etc/localtime
for ip in $(cat $workdir"/iplist.txt")
do
ssh -p36000 bita@$ip << EOF
echo "bita" | sudo -S cp /etc/localtime /etc/localtime.bak //备份时区文件
echo "bita" | sudo -S cp $zonefiledir"/Asia/Shanghai" $zoneconfdir //修改系统时区为Asia-Shanghai
echo "bita" | sudo -S ntpdate cn.pool.ntp.org //跟cn.pool.ntp.org服务器同步时间
exit
EOF
done
echo "timezone modify completed!"
PS:此脚本是基于已建立服务器和客户端双向ssh秘钥认证的环境下,否则使用时要注意ssh认证相关的问题,可参考这里
附带一个自动生成ip列表的文件(非传参定制)
#!/bin/bash
#generate a ip list
for(ip=201;ip<240;ip++)
do
if [ ip -lt 216 ]
then
echo "192.168.11.$ip" >> iplist
else
echo "192.168.12.$ip" >> iplist
fi
done
//生成一个从192.168.11.201~192.168.11.215和192.168.12.216~192.168.12.239的ip列表文件