Lorsque j'ai découvert Linux pour la première fois, en travaillant chez Cisco Systems en 2000, j'ai appris le bien-fondé de la sync
commande, utilisée pour vider les tampons sur le disque pour éviter la corruption du système de fichiers / la perte de données. On m'a dit non seulement par des collègues là-bas, mais par des amis à l'université de toujours exécuter sync
"quelques" ou "un tas" de fois, c'est-à-dire peut-être 5 à 10 fois, au lieu d'une seule fois.
J'ai continué cette habitude depuis, mais y a-t-il un mérite à cela? Quelqu'un d'autre a-t-il déjà entendu cela? Et surtout, quelqu'un peut-il fournir de bonnes raisons / preuves empiriques pour / contre l'idée que vous devez exécuter sync
plus d'une fois pour que cela soit efficace?
sync; sync; sync; sync
le titre, et je le tape parfois de cette façon, je l'ai également entendu m'expliquer de la même manière, c'est-à-dire, synchroniser, attendre, synchroniser à nouveau, attendre, etc.Old-timer ici. À l'époque glorieuse de TAPE, 3 synchronisations rapides consécutives étaient un moyen de dire aux contrôleurs TAPE non seulement de dissocier / de dérouler le flux de bande, mais aussi de le rembobiner, c'est-à-dire de définir la tête FD / rw à 0.
"sync; sync; sync" était vraiment uniquement utilisé, de manière productive, par ceux d'entre nous qui ont fait leurs preuves avec les Unix basés sur TAPE, c'est-à-dire les applications dont les fichiers ont été montés sur / var / spool, le stockage le moins cher possible à l'époque. ;)
Les manuels d'utilisation MIPS Risc / OS contiennent une page à ce sujet.
la source
Il y avait certainement des systèmes UNIX plus anciens pour lesquels il était plus sûr de synchroniser plus d'une fois, mais pas tous sur une seule ligne de commande comme "sync; sync; sync". Au milieu des années 80, cela s'est distillé pour:
Je ne sais pas vraiment d'où viennent les trois temps, sauf peut-être que c'était amusant. Mais le mot dans la rue pour le faire deux fois. Pas comme "sync; sync", mais comme deux lignes distinctes sur le shell.
À l'époque de, disons, V7 UNIX, la réparation du système de fichiers n'était pas très amusante. Vous deviez le faire à la main, en sachant beaucoup sur le fonctionnement du système de fichiers et les particularités de programmes comme dcheck, ncheck et icheck. fsck, si vous l'aviez, n'était pas toujours quelque chose en qui vous auriez confiance.
Cela commence à ressembler à une histoire «nous avons traversé la neige dans les deux sens». Eh bien, nous n'avions pas de commandes sophistiquées comme le redémarrage ou l'arrêt. Lorsque vous vouliez redémarrer le système, vous avez synchronisé le système de fichiers avec la synchronisation, puis vous avez appuyé sur Ctrl-P sur la console pour l'arrêter.
À la fin de la commande de synchronisation, le noyau avait planifié la synchronisation, mais tous les tampons (y compris le superbloc de système de fichiers très important) n'étaient pas nécessairement arrivés sur le disque. Il était donc assez facile d'exécuter la synchronisation, puis d'arrêter les choses avant qu'elles ne soient sûres.
Exécuter à nouveau la synchronisation était une chose facile à faire, prenait du temps et avait un certain attrait intuitif sans avoir à tout comprendre ou à traiter des instructions vagues comme "compter jusqu'à 10" ou quelque chose comme ça.
Il y avait même une section BUG sur la page de manuel V7 pour
update
aussi dit:(qui, soit dit en passant, était la toute dernière chose dans le volume 1 des manuels V7)
Au fil du temps, les outils du système de fichiers et les programmes d'arrêt et de redémarrage des systèmes se sont améliorés pour éviter de traiter cela. Le folklore, le vaudou et la magie du système y entrent lorsque le système se comporte mystérieusement. La synchronisation à deux reprises a rendu beaucoup moins probable que vous deviez sortir la pince à épiler pour remonter votre système de fichiers, donc cela est devenu une partie du rituel. Une fois que vous l'avez fait plusieurs fois, vous le faites sans réfléchir. Ensuite, quelqu'un remarque et demande pourquoi. Et la réponse est quelque chose comme, "Toujours le faire de cette façon. C'est plus sûr."
Je ne prétendrai pas que cela fait autorité, et je peux me tromper sur certains détails. Mais je pense que c'est assez proche de l'origine.
la source