看了下archwiki和其他安装教程,基本在系统分区前都要做以下几个准备工作:
1.设定键盘布局:为了敲代码
2.验证启动模式:涉及到分区,引导安装等
3.确认网络连接:pacstrap安装包
4.同步系统时间
前三步都明白各自的作用,但是最后一步不太明白为什么要在这里同步时间,而不是等到pacstrap后跟同步时区一起做呢,难道只是为了记录正确的系统安装时间?
而且为什么这里要用timedatectl set-ntp true手动设置同步呢,archlinux安装盘本身就是一个装在U盘里的linux系统,为什么就不能在启动后自动同步呢
这家伙很懒,就留下这么一行字
离线
应该是先同步系统时间,再pacstrap安装包。
系统时间不对可能造成ssl连接失败导致安装出错,有没有其他的影响就不太清楚了。
启动时不一定就连接上了网络,有的网络需要拨号。
离线
应该是先同步系统时间,再pacstrap安装包。
系统时间不对可能造成ssl连接失败导致安装出错,有没有其他的影响就不太清楚了。
启动时不一定就连接上了网络,有的网络需要拨号。
也就是说archwiki把timedatectl set-ntp true放在了网络设置之后,是为了确保能第一时间更新系统时间
如果先启动更新系统时间,而后配置的联网,联网后系统无法保证能在第一时间更新系统时间是吧
这家伙很懒,就留下这么一行字
离线
我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
开源/Linux大众化,从驿窗开始~
离线
我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
这不是很正常的么?
离线
我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
windoges 也会啊
离线
因为你要验证软件包签名啊,时间都不对,鬼知道这份公钥过期没过期
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
BIOS时间本来就是要改的,它存在的意义就是关机时保持壁挂钟,这样开机时再用它初始化系统壁挂钟,这样就时钟一直在走啦。否则你关机1年难道下次开机从1年前算起?
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
而且Windows默认把硬件时钟当本地时间才有毛病,万一我要改时区多麻烦。壁挂钟时间数据本来就应该永远是UTC,用户要看的时候才临时转换成本地时
最近编辑记录 xtricman (2018-12-12 22:33:16)
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
还有https证书,也要验过期时间
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
piter 说:我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
BIOS时间本来就是要改的,它存在的意义就是关机时保持壁挂钟,这样开机时再用它初始化系统壁挂钟,这样就时钟一直在走啦。否则你关机1年难道下次开机从1年前算起?
我不清楚是不是因为我习惯了windows的时间方式;
我这么理解:
bios时钟应该算是硬件时钟;
应用软件如果需要读取当前时间,应该都是向操作系统来发出询问,然后系统给出一个当前时间,应用软件再用这个时间结果继续后续的运算;
操作系统可以直接从bios读取时间,然后根据时区规则,计算出正确的当前当地时间,显示在当前屏幕上,并提供给需要的应用软件;
在windows中,无论给出的是什么时区,显示的当前本地时间都是bios时钟时间;如果我们认为时间不对,那通常是我们认为本地时间不对,并不是认为UTC不对,所以我们需要调整本地时间,也就是调整bios时钟;通常情况下,如果bios时间没有错误,里面的时钟时间,应该都是正确的本地时间,所以,windows系统安装好以后,时间永远是正确的;只有一种情况会出现问题,那就是bios时钟不是本地时钟;
默认在linux中,系统管理员按照时区规则设定本地时间,然后系统会按时区规则,修改bios时钟为utc时间;这样,通常在系统中存在两个时间,一个是UTC时间,一个是本地时间;但这个调整并不是因为bios时钟故障或错误,而是因为linux的计算规则;
linux因为软件的计算规则,修改了硬件时间,这就是我感觉困惑的地方;理论上,软件有多种方法可以实现UTC时间与本地时间的换算,但linux选择了修改硬件时钟的方法;并且,硬件时钟并没有出现故障或错误;如果一定要认定错误或故障,那么就是因为它不是UTC时间;但实际上,它是不是UTC时间,对于系统来说,完全可以忽略,因为系统可以自己根据管理员提供的时区和本地时间进行计算;
如果关机一年后再开机,时间还保持在一年前,那算是硬件时钟故障问题了;
或者,我认为,任何对硬件的修改,都应该是尽量避免的;
-----------------
好像这种想法也有一部分因素是习惯了windows的原因,或者不习惯linux的原因...
开源/Linux大众化,从驿窗开始~
离线
piter 说:我一直觉得,linux对于时间的设置,有一点反人类;尤其它会主动修改bios时间,这太儿戏了感觉;
windoges 也会啊
你不会是故意打错字吧
开源/Linux大众化,从驿窗开始~
离线
我不清楚是不是因为我习惯了windows的时间方式;
我这么理解:
bios时钟应该算是硬件时钟;应用软件如果需要读取当前时间,应该都是向操作系统来发出询问,然后系统给出一个当前时间,应用软件再用这个时间结果继续后续的运算;
操作系统可以直接从bios读取时间,然后根据时区规则,计算出正确的当前当地时间,显示在当前屏幕上,并提供给需要的应用软件;
在windows中,无论给出的是什么时区,显示的当前本地时间都是bios时钟时间;如果我们认为时间不对,那通常是我们认为本地时间不对,并不是认为UTC不对,所以我们需要调整本地时间,也就是调整bios时钟;通常情况下,如果bios时间没有错误,里面的时钟时间,应该都是正确的本地时间,所以,windows系统安装好以后,时间永远是正确的;只有一种情况会出现问题,那就是bios时钟不是本地时钟;默认在linux中,系统管理员按照时区规则设定本地时间,然后系统会按时区规则,修改bios时钟为utc时间;这样,通常在系统中存在两个时间,一个是UTC时间,一个是本地时间;但这个调整并不是因为bios时钟故障或错误,而是因为linux的计算规则;
linux因为软件的计算规则,修改了硬件时间,这就是我感觉困惑的地方;理论上,软件有多种方法可以实现UTC时间与本地时间的换算,但linux选择了修改硬件时钟的方法;并且,硬件时钟并没有出现故障或错误;如果一定要认定错误或故障,那么就是因为它不是UTC时间;但实际上,它是不是UTC时间,对于系统来说,完全可以忽略,因为系统可以自己根据管理员提供的时区和本地时间进行计算;
如果关机一年后再开机,时间还保持在一年前,那算是硬件时钟故障问题了;
或者,我认为,任何对硬件的修改,都应该是尽量避免的;
-----------------
好像这种想法也有一部分因素是习惯了windows的原因,或者不习惯linux的原因...
不论linux还是windows进行时钟同步时都要修改硬件时钟,这个无法避免。
默认情况下windows并没有进行时区偏移等计算,而linux进行了时区计算。所以当你以windows为基准的时候,就会发现linux尝试修复“错误“的硬件时钟。反过来,当你以linux为基准的时候,windows同样会尝试修复“错误”的硬件时钟。这仅仅是两者默认的处理策略不同,不存在两者谁对谁错。
如果按windows默认的策略,同一时间在不同时区的服务器硬件时钟是不一致的,需要在软件层面处理。就像xtricman说的,如果你从一个时区移动到另一个时区,就需要重新同步硬件时钟。而按照linux的策略,硬件时钟是UTC时间,全球一致,你只需要修改时区,无需修改硬件时钟。
所以按照你的观点,linux应该是做的比windows的默认策略好的。
PS:双系统的时候,手动修改windows的时区为当地时区,两者处理策略就一致了。
PS2:因为硬件时钟没有时区和夏令时信息,我认为存储一个不带时区偏移的标准时钟应该是更优的。
离线
但实际上,它是不是UTC时间,对于系统来说,完全可以忽略,因为系统可以自己根据管理员提供的时区和本地时间进行计算;
你是不是对 UTC 有什么误解?
你觉得一个变来变去的硬件时间很有趣?
硬件时间使用本地时间的话,你时区变动的时候你不是得改硬件时间?还是说你把你买电脑地方的时区当「UTC」用?
而如果它是UTC,系统时区你爱改不改,反正总是对的(只是不是你所在的时区而已)。就算你不经常满世界飞来飞去的,夏令时你听说过吧?
一个依靠手工维护的硬件时间,必然会造成混乱的。(不巧的话,证书有效时间、文件时间戳、签名时间……都会乱)
离线
本来写了好多内容,后来全删除了;
原因是,在试图推翻你们的观点的过程中,我越来越发现,你们居然是对的,我不得不推翻自己之前的观点;bios时间使用UTC,确实好处多多;这一对比,windows是真的有点傻的感觉;
这个是什么原因造成的呢?
是不是因为windows是微软程序员集中在一栋大楼里做出来的,而linux是分散在世界许多不同时区的人一起做出来的?
unix不知道是啥规则...
最近编辑记录 驿窗 (2018-12-12 22:07:58)
开源/Linux大众化,从驿窗开始~
离线