web-dev-qa-db-fra.com

ext [34] Option `commit` et intégrité du système de fichiers

Je lance une installation assez récente et Vanilla 10.10, construite à partir de rien il y a environ un mois sur un ordinateur portable Acer Aspire 5742. J'utilise openbox comme gestionnaire de fenêtres et je ne lance ni les piles de bureau KDE ni Gnome. Je n'ai pas encore compris comment assurer l'hibernation du système lorsque la charge de la batterie est faible, de sorte que je subis parfois des pannes de courant.

J'ai remarqué que lorsque mon ordinateur portable bascule sur la batterie, mes partitions ext * sont remontées avec l'option commit=600.

Lorsque je repasse en mode AC, il existe un autre ensemble de remontées avec commit=0.

Cela ressort clairement des entrées dans /var/log/syslog comme

Mar 31 14:48:48 gatsby kernel: [414710.189306] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro,commit=600
Mar 31 14:48:48 gatsby kernel: [414710.324137] EXT4-fs (dm-1): re-mounted. Opts: commit=600
Mar 31 14:48:48 gatsby kernel: [414710.749636] EXT4-fs (dm-2): re-mounted. Opts: commit=600
Mar 31 16:35:58 gatsby kernel: [421128.882072] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro,commit=0
Mar 31 16:35:58 gatsby kernel: [421129.083283] EXT4-fs (dm-1): re-mounted. Opts: commit=0
Mar 31 16:35:59 gatsby kernel: [421129.724136] EXT4-fs (dm-2): re-mounted. Opts: commit=0

Le manuel mount explique la signification de l'option count par rapport au système de fichiers ext3 de la manière suivante:

commit=nrsec
       Sync all data and metadata every nrsec seconds.
       The default value is 5 seconds. Zero means default.

Qu'est-ce que cela signifie, exactement? Cela semble impliquer que les écritures peuvent être mises en cache pendant 10 minutes maximum. Cela signifie-t-il qu'il peut y avoir une corruption du système de fichiers ou que certaines modifications peuvent ne pas être sauvegardées si la batterie est à court d'énergie?

4
intuited

Cela ne devrait pas entraîner de corruption du système de fichiers (c'est un système de fichiers journalisé, après tout), mais cela pourrait entraîner une perte de travail.

Ce comportement s'explique par le fait que la rotation du disque consomme de l'énergie. Si vous attendez plus longtemps avant de valider le journal, il peut être possible d'effectuer plusieurs écritures en une seule fois, ce qui réduit le nombre de spin-ups et améliore la durée de vie de la batterie.

Si cela vous cause des problèmes, vous pouvez modifier l’intervalle de validation lorsque vous êtes sur batterie. Les modifications sont effectuées par le package pm-utils. Créez donc un fichier sous /etc/pm/config.d/ (le nom importe peu) avec le contenu suivant:

JOURNAL_COMMIT_TIME_BAT=300

Ce qui précède fixe le délai d'attente à 5 minutes. Vous pouvez le modifier au besoin.

2
James Henstridge