因为一些学习需求,在自己电脑上安装了Ubuntu和win10双系统,使用GNU Grub version2.02 进行引导。以下是遇到的一些问题及其解决方案。
设置默认启动项
自从装了双系统,因为懒,就没去设置默认启动项。一般我用win10用的多,而默认启动项为Ubuntu,冷不丁,一下没看住,就直接进入ubuntu了~~然后一系列重复操作,重启,选择win10,开机。这样情况其实不算多。也没去处理,直到上次更新win10,中间重启好几次,我又刚好有事,就放着自己更新,等到晚上回来,傻眼,进到ubuntu了,重启,得从30%开始更新。。。。。。
经过血淋淋的教训,我还是准备改一改默认启动项。步骤简单,如下
1.打开终端,运行:sudo gedit /boot/grub/grub.cfg
2.在打开的grub.cfg文件中查找(查找功能可用Ctrl+F实现)set default=”0” 这里的default的值就是默认启动项的标号,设置为你想设置的启动项编号就行。
系统之间时间同步出错
因为经常跳错系统,切回来之后会有个奇怪的问题,win10的时间总是会快8小时,这里通过win10时间设置里手动点击同步时间,还是可以同步回来的,但是这样治标不治本。还是要解决根本上的问题。通过查找资料,原因大致是这样,win10会修改CMOS时间为当前时区时间,设置时间时(包括自动同步时间和手动设置时间),自动更新了CMOS时间;而Ubuntu(linux)是读取CMOS时间,作为格林尼治标准时间,然后再根据当前时区调整时间。由此,便造成了时间总是快了八小时。
知道了原因,就可以着手去解决了,Windows 去使用时区或者让 Ubuntu 使用本地时间。我采取的方法是设置Ubuntu。
查了一下资料,网上的一部分解决方案是这样:
在ubuntu下执行两条命令:
sudo apt-get install ntpdate
sudo ntpdate time.windows.com
然后再执行:
sudo hwclock --localtime --systohc
将时间写入到CMOS中
但是我在ubuntu下,执行第一条命令时,直接报错,提示仓库中不再提供ntpdate软件了。一脸黑人问号???
再次查找资料,发现ntpdate在新版本Ubuntu中早已不提供服务,被timedatectl 取代了。
输入命令:
timedatectl status
显示
Local time: 二 2017-10-24 07:10:46 CST
Universal time: 一 2017-10-23 23:10:46 UTC
RTC time: 二 2017-10-24 07:10:46
Time zone: Asia/Shanghai (CST, +0800)
Network time on: no
NTP synchronized: no
RTC in local TZ: no
可以查看当前时间状态
最后三行是它的同步设置情况
执行以下两条命令:
sudo timedatectl set-local-rtc true
sudo timedatectl set-ntp true
再次查看状态
timedatectl status
显示
Local time: 二 2017-10-24 07:12:16 CST
Universal time: 一 2017-10-23 23:12:16 UTC
RTC time: 二 2017-10-24 07:12:16
Time zone: Asia/Shanghai (CST, +0800)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: yes
此时查看时间,恢复正常,到此双系统时间不同步问题解决。