Answers:
sync
三次键入命令时,我听到了(对不起,我忘了在哪里)(如:S Y N C Return,等待提示,重复,重复)。我还读到起源是一个特定的系统,即使它告诉操作系统一切都很好,磁盘仍需要花费几秒钟来完成其缓冲区的刷新。再输入两次命令将使磁盘有足够的时间稳定下来。似乎这些年来,目的已被遗忘,并且该建议被缩写为sync; sync; sync
不会产生预期的效果(由于磁盘已报告“全部清除”,因此第二和第三次同步将立即完成,并且提示会回来太早)。
我从未听说过sync
可以使用多种操作的系统,并且我非常怀疑是否存在任何操作。我认为这是一个城市传奇。另一方面,我认为在某些系统中,您应该在同步后和关闭电源之前等待几秒钟。
谷歌搜索会导致一些独立的并发分析,例如sync的传说。另请参见在关闭Linux之前是否仍需要执行sync(8)?。
当然,在较早的UNIX系统上,同步多个安全性更高,但并非所有命令行都以“ sync; sync; sync”同步。在80年代中期,它被提炼为:
当您关闭系统电源时,您将同步三遍。不多不少。同步数为3,同步数为3。您不得同步四次,也不得同步两次,只是您要第三次同步...
我真的不知道这三个时间是哪里来的,除了也许很有趣。但是这个词在大街上要做两次。不是“ sync; sync”,而是外壳程序上的两行。
例如,在V7 UNIX时代,文件系统修复并不是一件很有趣的事情。您必须手工完成,对文件系统的工作原理以及dcheck,ncheck和icheck之类的程序有很多了解。fsck,如果有的话,并不总是您会信任的。
这听起来像是一个“我们两路都走过雪”的故事。好吧,我们没有重启或关闭之类的精美命令。当您想重新引导系统时,您将文件系统与sync同步,然后在控制台上按Ctrl-P使其停止。
当sync命令退出时,内核已经安排了同步,但是并不是所有的缓冲区(包括所有重要的文件系统超级块)都必须将其写入磁盘。因此,运行同步然后在安全之前停止运行非常容易。
再次运行同步是一件容易的事,花费时间,并且具有一定的直观吸引力,而不必了解所有内容,也不必处理诸如“数到10”之类的模糊指令。
在V7手册页上甚至还有一个BUG部分,update
还说:
在运行更新的情况下,如果在执行同步时暂停CPU,则文件系统可能会损坏。这部分是由于DEC硬件在NPR请求失败时写入零。一种解决方法是让sync(1)暂时将系统时间至少增加30秒,以触发更新的执行。这将有30秒的宽限期来暂停CPU。
(顺便说一句,这是V7手册第1卷的最后一部分)
随着时间的流逝,用于关闭和重新引导系统的文件系统工具和程序会更好地避免这种情况。当系统神秘运行时,民间传说,伏都教和系统魔法会进入其中。同步两次使您不必费力地将文件系统重新组合在一起的可能性就降低了,因此它已成为惯例的一部分。一旦完成了很多次,您就无需考虑。然后有人注意到并问为什么。答案是:“总是那样做。它更安全。”
我不会声称这是权威性的,在某些细节上我可能是错的。但我认为它与原点非常接近。
sync; sync; sync; sync
的称号,我有时会键入这样的说法,我还听到它向我解释同样的方式,也就是同步,等待,再次同步,等待等等