Como exibir os sinalizadores inode do ext4?

1

Nós não podemos criar mais de 65000 subdiretórios em um sistemas de arquivos ext4 e uma suspeita que temos é que o diretório foi criado com uma versão mais antiga do ext4 ou um conjunto de recursos diferente.

Eu sei como encontrar algumas informações básicas:

> stat .
  File: ‘.’
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d      Inode: 2           Links: 24
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2017-12-04 09:41:00.892098776 +0000
Modify: 2017-12-04 09:58:37.576216794 +0000
Change: 2017-12-04 09:58:37.576216794 +0000
 Birth: -

Estou interessado nos sinalizadores ext4 mais detalhados, por exemplo se o diretório é linear ou baseado em hash.

Como podemos ver as configurações do inode, por exemplo? as bandeiras?

    
por Georg Schölly 03.12.2017 / 20:28

2 respostas

3

Use stat no diretório.

No entanto, você está realmente atingindo um limite do sistema de arquivos e isso pode causar problemas de desempenho em seu armazenamento. A solução comum é particionar seu namespace de uma maneira mais estruturada ou, dependendo de quais são seus requisitos, um sistema de arquivos mais flexível, como xfs, zfs ou btrfs.

    
por 03.12.2017 / 21:16
0

Com a ferramenta debugfs, consegui extrair mais algumas informações:

> sudo debugfs /dev/sda1
> stat /
Inode: 2   Type: directory    Mode:  0755   Flags: 0x80000
Generation: 0    Version: 0x00000000:0000002f
User:     0   Group:     0   Size: 4096
File ACL: 0    Directory ACL: 0
Links: 25   Blockcount: 8
Fragment:  Address: 0    Number: 0    Size: 0
 ctime: 0x5a2520d3:c43db60c -- Mon Dec  4 10:17:55 2017
 atime: 0x5a2520fb:98591bd8 -- Mon Dec  4 10:18:35 2017
 mtime: 0x5a2520d3:c43db60c -- Mon Dec  4 10:17:55 2017
 crtime: 0x59f78ef9:00000000 -- Mon Oct 30 20:43:37 2017
Size of extra inode fields: 28
EXTENTS:
(0):140

E para determinar se um diretório é linear ou baseado em hash (acho que também é possível analisar os sinalizadores acima):

> sudo debugfs /dev/sda1
> htree /
htree: Not a hash-indexed directory
    
por 04.12.2017 / 13:56