Which crucial files may be missing, that are needed for boot, but were never accessed before?
Eu acho que não é sobre "nunca acessado antes", mas sim "seus novos tempos de acesso não puderam ser armazenados", porque em geral alguns estágios do processo de inicialização leem o (s) sistema (s) de arquivos em modo somente leitura.
Não é que algo ignore o recurso atime
de propósito. O tempo de acesso não sendo atualizado é apenas um efeito colateral da montagem somente leitura preliminar (para armazenar o novo atime você precisa escrevê-lo, certo?). Eu espero que isso se aplique especialmente a initrd
e vmlinuz
em /boot
, mas o sistema de arquivos raiz é inicialmente montado somente para leitura também:
Thus, the kernel initializes devices, mounts the root filesystem specified by the boot loader as read only, and runs Init (
/sbin/init
) ...
( source )
Então o que quer que atue como Init (é systemd
no Ubuntu) remonta o sistema de arquivos como read-write em algum momento. Para systemd
:
systemd-remount-fs.service
is an early boot service that applies mount options listed infstab(5)
to the root file system [...]
Então, quando eu li essa afirmação: "Não aparece na tela preta na inicialização inicial", estou supondo que você removeu alguns arquivos que precisam ser acessados apenas durante esses primeiros estágios de inicialização somente de leitura quando o atime não pode ser atualizado.
Outra armadilha (que no final parece irrelevante para o seu caso, mas é bom saber):
De man 8 mount
[ênfase minha]:
atime
Do not use the
noatime
feature, so the inode access time is controlled by kernel defaults. See also the descriptions of therelatime
andstrictatime
mount options.
relatime
Update inode access times relative to modify or change time. Access time is only updated if the previous access time was earlier than the current modify or change time. (Similar to
noatime
, but it doesn't breakmutt
or other applications that need to know if a file has been read since the last time it was modified.)Since Linux 2.6.30, the kernel defaults to the behavior provided by this option (unless
noatime
was specified), and thestrictatime
option is required to obtain traditional semantics. In addition, since Linux 2.6.30, the file's last access time is always updated if it is more than 1 day old.
Esta condição de "1 dia de idade" junto com o sistema operacional "instalado alguns dias antes" e com a remoção de arquivos "não acessados pelos últimos dias" - tudo isso torna o padrão relatime
irrelevante para o seu problema, eu acho. Ainda assim você pode ter pensado que a opção atime
é suficiente para que o tempo de acesso seja atualizado sempre; então achei que seria bom explicar isso.