existe algo como um formato 'rápido' para o ext4?

25

no Windows é muito rápido para formatar com o NTFS. Eu tenho uma máquina Linux de baixa potência, com pouca memória RAM. formatar um volume de 2TB para ext4 demora muito tempo

há algo que eu possa fazer para acelerar o formato? Eu não posso imaginar o que leva tanto tempo? (o que demora tanto)

    
por stuck 01.08.2012 / 06:37

4 respostas

14

Resposta estrita

Soluções como -E lazy_itable_init não alteram o resultado, apenas aceleram o processo. Isto é o que foi explicitamente perguntado, mas em muitos casos as pessoas precisam de mais.

Bônus extra

Na maioria dos casos, você realmente deseja algumas opções que correspondam aos seus padrões de uso e não apenas acelerar a criação do sistema de arquivos, mas também permitir um uso mais rápido e mais espaço utilizável.

Eu acabei de fazer um teste. Mesmo sem usar -E lazy_itable_init , as opções abaixo aceleram o tempo de criação de um sistema de arquivos de 2TB de 16 minutos, 2 segundos a 1 minuto, 21 segundos (kernel 3.5.0 64bit no Intel i7 2.2GHz, disco de 2TB na conexão USB2 - SATA provavelmente ser mais rápido).

Para um sistema de arquivos que conterá arquivos grandes, eu uso essa combinação:

mkfs.ext3 /dev/sdXX -O sparse_super,large_file -m 0 -T largefile4

em que -T largefile4 escolhe opções em /etc/mke2fs.conf , que geralmente contêm algo como:

    inode_ratio = 4194304
    blocksize = -1

Faça um man mke2fs para detalhes sobre cada uma dessas opções.

Aqui estão os extratos relevantes:

               sparse_super
                      Create a filesystem with fewer superblock backup copies (saves space on large filesystems).

               large_file
                      Filesystem can contain files that are greater than 2GB.  (Modern kernels set this feature  automatically
                      when a file > 2GB is created.)

   -i bytes-per-inode
          Specify  the  bytes/inode ratio.  mke2fs creates an inode for every bytes-per-inode bytes of space on the disk.  The
          larger the bytes-per-inode ratio, the fewer inodes will be created.  This value generally shouldn't be smaller  than
          the blocksize of the filesystem, since in that case more inodes would be made than can ever be used.  Be warned that
          it is not possible to expand the number of inodes on a filesystem after it is created, so be  careful  deciding  the
          correct value for this parameter.

-m 0 apenas diz para não reservar 5% para o root, o que é bom para um sistema de arquivos de dados (não de boot / root). 5% de um disco de 2 TB significa 100 GB. Essa é uma diferença bastante significativa.

    
por 14.07.2013 / 14:04
19

Adicione o sinalizador -E lazy_itable_init

Veja o que a página do manual diz:

If enabled and the uninit_bg feature is enabled, the inode table will not be fully initialized by mke2fs. This speeds up filesystem initialization noticeably, but it requires the kernel to finish initializing the filesystem in the background when the filesystem is first mounted. If the option value is omitted, it defaults to 1 to enable lazy inode table initialization.

    
por 19.09.2012 / 00:09
8

O padrão é um formato rápido; configurar as estruturas para um volume ext * demora muito mais do que para um volume NTFS, já que há mais delas. Você pode reduzir o número de superblocos, mas mesmo isso só vai tão longe.

    
por 01.08.2012 / 06:51
4

Se você estiver armazenando arquivos maiores, você pode aumentar o número de bytes por inode, diminuindo assim o número de inodes criados. Isso pode acelerar substancialmente o tempo de criação.

    
por 01.08.2012 / 07:39