Como faço para que o noatime monte padrão?

8

Estou fazendo um derivativo do Ubuntu, e quero tornar o noatime a opção de montagem padrão para todos os sistemas de arquivos (em vez do relatime que é padrão no Ubuntu).

Parece haver um parâmetro booleano default_relatime kernel para alternar entre o padrão para atime ou relatime (também disponível escrevendo / proc / sys / kernel / default_relatime), mas não consigo encontrar um equivalente para noatime e eu não sei como habilitar isso em uma distro por padrão.

Como configurar para gravar dados para pendrive instantaneamente? / a> sugere que há uma maneira de adicionar o parâmetro de montagem noatime via udev, mas não tenho idéia se isso funcionará para a mídia interna e como fazê-lo.

Qual é a maneira menos invasiva de tornar o kernel padrão para o noatime?

O padrão atual pode ser visualizado usando "cat / proc / mounts" porque ele mostra os parâmetros de montagem implícitos; não confie em "montar".

Sim, eu li Vale a pena ajustar o Ext4 com noatime? e eu ainda quero fazer isso.

    
por Shnatsel 29.08.2011 / 21:25

1 resposta

4

O kernel costumava ter uma opção de configuração para usar ATIME ou RELATIME; Não sei se isso também incluiu alguma opção para o NOATIME. De qualquer forma, isso se foi agora.

Eu também estudei o util-linux, para ver se o comando mount tinha padrões configuráveis ou poderia ser modificado, mas não parecia ser o caso.

No entanto, parece que você pode corrigir o kernel para alterar o comportamento padrão. Modifique ./fs/namespace.c, em torno das linhas 2334:

long do_mount(...)
...
    /* Default to relatime unless overriden */
    if (!(flags & MS_NOATIME))
            mnt_flags |= MNT_RELATIME;
...

Troque isso:

long do_mount(...)
...
    /* Default to noatime unless overriden */
    if (!(flags & MS_RELATIME))
            mnt_flags |= MNT_NOATIME;
...

E isso deve acontecer.

    
por Bryce 05.07.2012 / 08:10