Attribut «extents» Linux ext4

9

J'ai remarqué l' eattribut sur plusieurs fichiers / répertoires sur des machines Linux installées sur des systèmes de fichiers ext4.

[[email protected] ~]$ lsattr -d /bin
-------------e- /bin

Selon chattr(1):

L'attribut «e» indique que le fichier utilise des extensions pour mapper les blocs sur le disque. Il ne peut pas être supprimé à l'aide de chattr (1).

En quoi est-ce différent et, surtout, en quoi ce détail est-il significatif - en particulier pourquoi ce détail est-il suffisamment important pour être signalé en tant qu'attribut de fichier? Dans quelles circonstances dois-je modifier mon comportement en sachant que ce fichier "utilise des extensions pour mapper les blocs sur le disque"? Vraisemblablement, c'est quelque chose que je dois savoir, sinon cela ne serait pas si évident, non?

tylerl
la source

Réponses:

13

Je pense que l'indicateur d'extension est exposé en tant qu'attribut principalement afin que vous puissiez le définir avec chattr, ce qui obligera le pilote ext4 à réallouer le fichier en utilisant des extensions au lieu de listes de blocage. Si vous avez converti un système de fichiers ext3 existant en ext4 (en utilisant tune2fspour activer les nouveaux indicateurs de fonctionnalité), vous souhaiterez probablement convertir les fichiers existants pour utiliser des extensions, et c'est la façon de le faire.

Les fichiers nouvellement créés sur un système de fichiers ext4 utilisent toujours des extensions (pour autant que je sache), donc si votre système de fichiers a été créé en ext4 (par opposition à converti depuis ext3), tout devrait déjà avoir l'attribut extend afin que vous n'ayez pas besoin de vous en souciez.

Consultez cet article pour plus d'informations.

Wyzard
la source
KVPM v0.9.9 -> écrire le système de fichiers -> options ext4 supplémentaires -> utiliser les extensions. On dirait que cela créerait les fs sans extension, d'après ce que vous avez dit, il devrait déjà être marqué / vérifié ou désactivé (immuable), ce qui est assez déroutant, pourrait être un bug d'interface kvpm? mais maintenant je crois que cela signifie qu'il y a des options par défaut, et essayer de définir de tels drapeaux nous permet juste de changer ces valeurs par défaut, cela ne nous montre tout simplement pas quelles sont les valeurs par défaut! probablement ...
Aquarius Power
1
@AquariusPower, cette question concerne l'indicateur d'extents sur un fichier individuel, mais l'option que vous voyez dans KVPM est de savoir si le nouveau système de fichiers doit prendre en charge les extensions. Si vous désactivez cette option, tous les fichiers seront alloués avec des listes de blocage et n'auront pas l'attribut "e". Si vous exécutez plus tard tune2fs -O extentsur le système de fichiers pour activer les extensions, les nouveaux fichiers auront l'attribut "e", mais chattr +eles fichiers préexistants ne le seront que lorsque vous aurez le fichier.
Wyzard