Le même disque ext4 peut-il être monté à partir de deux hôtes, l'un en lecture seule?

Je sais que monter le même disque avec un système de files ext4 à partir de deux servers différents (c'est une vloume iSCSI) va probablement corrompre datatables sur le disque. Ma question est est -ce que cela fera une différence si l'un des servers monte le disque en lecture seule alors que l'autre monte en lecture-écriture?

Je sais OCFS2 ou les goûts pourraient être utilisés pour cela et que je pourrais exporter le disque avec NFS pour être accessible à l'autre server, mais je voudrais savoir si la configuration que je propose fonctionnera.

Non. Il ne donnera pas de résultats cohérents sur le client en lecture seule, en raison de la caching. Ce n'est définitivement pas conçu pour cela. Vous pouvez vous attendre à voir les erreurs d'E / S renvoyées aux applications. Il y a probablement encore un certain nombre de lacunes dans le code, qui pourraient causer un crash du kernel ou une memory corrompue utilisée par n'importe quel process.

Mais le plus important, ext4 rejoue le journal même sur les montures en lecture seule. Ainsi, un assembly en lecture seule écrira toujours sur le périphérique de bloc sous-jacent. Ce serait dangereux même si les deux montures étaient en lecture seule :).

Cela évitera la corruption des données, mais ne va probablement pas être ce que vous voulez faire. Je n'ai jamais remarqué de problèmes pour monter le volume en lecture seule sur un autre nœud. Même si quelque chose ne correspond pas au nœud ro, il suffit de lancer un «inode inattendu inoffensif, exécutez e2fsck» ou similaire dans / var / log / messages. Si quelque chose est terriblement inattendu à propos d'un système de files non critique ("/ opt / mySpecialmount"), Linux montera le volume en lecture seule (ce qui est déjà le cas). Si vous êtes très inquiet de la caching de l'effet, vous pouvez essayer d'get une sorte de régime drop_caches / vfs_cache_pressure.

Pour éviter de relire le journal, ajoutez "noload" aux args de assembly, faites-le avec les erreurs = remount-ro (juste pour faire preuve de prudence).

Cela dit, il y a des chances pour que si vous êtes en mesure de le monter en lecture seule, c'est probablement une reference pour l'autre nœud, auquel cas NFS ou smbfs résoudrait le problème et est conçu pour un peu plus de concurrency que ext3 / 4 serait. Si vous avez besoin de performances, vous pouvez regarder dans un système de files en cluster (un peu plus de surcharge administrative, mais c'est là si la performance est vraiment quelque chose dont vous avez besoin).