Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Les sync ca use le disque?

9 réponses
Avatar
Saïd
Bonjour,

Devant des problemes de reboots intempestifs j'ai décidé de lancer un
script shell qui fait ceci

repeter toujours
sync
sleep 60 (dormir 60 secondes)

Est-ce que le fait de faire des sync aussi regulierement peut user le disque
dur? Est-ce que mac OS X fait les sync automatiquement (ce qui rend inutile
mon programme)?


--
Sind zu sein und es seiend in einem Schiff. Fällt zu sein hat das Wasser.
Wer bleibt er? -- Heidegger

9 réponses

Avatar
Patrick Stadelmann
In article ,
Saïd wrote:

Est-ce que le fait de faire des sync aussi regulierement peut user le disque
dur? Est-ce que mac OS X fait les sync automatiquement (ce qui rend inutile
mon programme)?


La man de "update", process normalement actif en permanence, indique que
"sync" est appelé toutes les 30 secondes.

Patrick
--
Patrick Stadelmann

Avatar
Saïd
Patrick Stadelmann :
In article ,
Saïd wrote:

Est-ce que le fait de faire des sync aussi regulierement peut user le disque
dur? Est-ce que mac OS X fait les sync automatiquement (ce qui rend inutile
mon programme)?


La man de "update", process normalement actif en permanence, indique que
"sync" est appelé toutes les 30 secondes.

Patrick


Je me disais bien que ca ne servait a rien. Merci.


--
Sind zu sein und es seiend in einem Schiff. Fällt zu sein hat das Wasser.
Wer bleibt er? -- Heidegger


Avatar
pas.de.spam
Patrick Stadelmann wrote:

In article ,
Saïd wrote:

Est-ce que le fait de faire des sync aussi regulierement peut user le disque
dur? Est-ce que mac OS X fait les sync automatiquement (ce qui rend inutile
mon programme)?


La man de "update", process normalement actif en permanence, indique que
"sync" est appelé toutes les 30 secondes.

ça sert à quoi un "sync" ?


Parce que je constate qu'il est impossible d'empècher un disque externe
de s'endormir. Idem d'ailleur pour un disque interne malgré le 'option
choisie dans les économies d'enrgie.

Mais bon, ceci n'a peut-être pas de rapport avec la question posée.
--
PO.

Pour m'écrire : po_taubaty(arobas)yahoo(point)fr


Avatar
jperrocheau
Pierre-Olivier TAUBATY wrote:

ça sert à quoi un "sync" ?

Parce que je constate qu'il est impossible d'empècher un disque externe
de s'endormir. Idem d'ailleur pour un disque interne malgré le 'option
choisie dans les économies d'enrgie.

Mais bon, ceci n'a peut-être pas de rapport avec la question posée.


----
man update

The update command helps protect the integrity of disk volumes by flush-
ing volatile cached filesystem data to disk at thirty second
intervals.
Update uses the sync(2) function call to do the task.
----

Toute l'explication est là.

--
Jacques PERROCHEAU
________________________________________________________________________
e-mail: mailto:

Avatar
Eric Levenez
Le 24/07/07 22:17, dans <1i1s62k.mhmec0zht2wuN%,
« Pierre-Olivier TAUBATY » a écrit :

ça sert à quoi un "sync" ?


C'est une commande unix et un appel système qui lance l'enregistrement des
blocs non encore écrits du cache disque qui se trouve en RAM. Après le sync,
toutes les partitions de tous les disques sont à jour.

Mais la petite astuce est que ce sync est asynchrone : il rend la main après
avoir lancé son ordre. Mais il fait cela en bloquant le superblock (le
premier bloc utile de chaque partition). L'écriture des blocs sur disque
peut alors prendre plusieurs secondes. L'astuce consiste donc à lancer 2
fois sync par la commande "sync;sync". Le premier lancement lance l'écriture
et le second est bloqué tant que la première écriture n'est pas terminée.
Quand cela est effectué, le deuxième sync se lance, mais il n'a plus rien à
écrire alors il rend la main aussitôt. Il faut faire le "sync;sync" sur une
seule ligne et pas sur deux car les shells modernes ont la fâcheuse
tendances à écrire chaque commande dans un fichier historique et cela
modifie le cache disque que justement on essaye de sauvegarder.

Le système fait un sync assez souvent pour garantir l'intégrité des données
sur disque. Il faut donc que cela soit assez fréquent, mais pas trop car
sinon cela nuirait aux performances vu que cela reviendrait à avoir un cache
disque tout petit.

Quand il n'y a rien de nouveau dans le cache disque, la commande sync rend
la main et ne fait rien du tout.

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.

Avatar
Saïd
Pierre-Olivier TAUBATY :
Patrick Stadelmann wrote:

In article ,
Saïd wrote:

Est-ce que le fait de faire des sync aussi regulierement peut user le disque
dur? Est-ce que mac OS X fait les sync automatiquement (ce qui rend inutile
mon programme)?


La man de "update", process normalement actif en permanence, indique que
"sync" est appelé toutes les 30 secondes.

ça sert à quoi un "sync" ?


Parce que je constate qu'il est impossible d'empècher un disque externe
de s'endormir. Idem d'ailleur pour un disque interne malgré le 'option
choisie dans les économies d'enrgie.

Mais bon, ceci n'a peut-être pas de rapport avec la question posée.


Mes disques externes dorment tres bien, malgré le update (et donc sync) qui
se lance toutes les 30 secondes.

--
Sind zu sein und es seiend in einem Schiff. Fällt zu sein hat das Wasser.
Wer bleibt er? -- Heidegger



Avatar
pas.de.spam
Saïd wrote:

Pierre-Olivier TAUBATY :
Patrick Stadelmann wrote:

In article ,
Saïd wrote:

Est-ce que le fait de faire des sync aussi regulierement peut user le
disque dur? Est-ce que mac OS X fait les sync automatiquement (ce qui
rend inutile mon programme)?


La man de "update", process normalement actif en permanence, indique que
"sync" est appelé toutes les 30 secondes.

ça sert à quoi un "sync" ?


Parce que je constate qu'il est impossible d'empècher un disque externe
de s'endormir. Idem d'ailleur pour un disque interne malgré le 'option
choisie dans les économies d'enrgie.

Mais bon, ceci n'a peut-être pas de rapport avec la question posée.


Mes disques externes dorment tres bien, malgré le update (et donc sync) qui
se lance toutes les 30 secondes.


je suppose donc, qu'ils ne peuvent se mettre en route qu'une fois le
dernier sync (d'après l'explication d'Eric) achevé, donc une fois que le
cache serait effectivement vide ...
--
PO.

Pour m'écrire : po_taubaty(arobas)yahoo(point)fr




Avatar
pas.de.spam
Eric Levenez wrote:

Le 24/07/07 22:17, dans <1i1s62k.mhmec0zht2wuN%,

ça sert à quoi un "sync" ?


C'est une commande unix et un appel système qui lance l'enregistrement des
blocs non encore écrits du cache disque qui se trouve en RAM. Après le sync,
toutes les partitions de tous les disques sont à jour.

Mais la petite astuce est que ce sync est asynchrone : il rend la main après
avoir lancé son ordre. Mais il fait cela en bloquant le superblock (le
premier bloc utile de chaque partition). L'écriture des blocs sur disque
peut alors prendre plusieurs secondes. L'astuce consiste donc à lancer 2
fois sync par la commande "sync;sync". Le premier lancement lance l'écriture
et le second est bloqué tant que la première écriture n'est pas terminée.
Quand cela est effectué, le deuxième sync se lance, mais il n'a plus rien à
écrire alors il rend la main aussitôt. Il faut faire le "sync;sync" sur une
seule ligne et pas sur deux car les shells modernes ont la fâcheuse
tendances à écrire chaque commande dans un fichier historique et cela
modifie le cache disque que justement on essaye de sauvegarder.

Le système fait un sync assez souvent pour garantir l'intégrité des données
sur disque. Il faut donc que cela soit assez fréquent, mais pas trop car
sinon cela nuirait aux performances vu que cela reviendrait à avoir un cache
disque tout petit.


merci beaucoup de cette explication, qui pour technique n'en est pas
moins lumineuse .


Quand il n'y a rien de nouveau dans le cache disque, la commande sync rend
la main et ne fait rien du tout.


Donc je suppose que c'est à ce moment là qu'un disque peut se mettre en
sommeil ?
--
PO.

Pour m'écrire : po_taubaty(arobas)yahoo(point)fr


Avatar
Eric Levenez
Le 25/07/07 2:46, dans <1i1sihw.78rnn3ruezszN%,
« Pierre-Olivier TAUBATY » a écrit :

Eric Levenez wrote:

Quand il n'y a rien de nouveau dans le cache disque, la commande sync rend
la main et ne fait rien du tout.


Donc je suppose que c'est à ce moment là qu'un disque peut se mettre en
sommeil ?


Un disque pourrait se mettre en sommeil à tout moment. Cela est indépendant
du sync. Mais effectivement c'est plus logique que la mise en sommeil des
disques se fasse après le dernier sync (sinon le disque se réveillerait au
moment du sync).

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.