Onde o tempo de criação do arquivo (nascimento) é armazenado no linux?

0

Utilizar debugfs -R 'stat <inode_nr> ' /dev/sda1 devolve um resultado onde existe um campo crtime que, na minha opinião, representa a data de criação de um ficheiro apontado por inode numerado inode_nr. Eu uso isso em um ext4 fs.

Eu sei que o inode armazena access_time, modification_time e change_time mas não o nascimento de um arquivo

Então, minha pergunta é onde o tempo de criação é armazenado ou como o comando debugfs o recupera?

    
por Ahmadposten 18.10.2018 / 08:49

1 resposta

2

Se o tempo de criação do arquivo de registros do sistema de arquivos (Nem todos), ele é armazenado no inode junto com o restante dos metadados do arquivo, como modificação e alteração de horários. Ele pode ser recuperado com a chamada de sistema statx (2) recentemente adicionada no stx_btime field do struct statx que é preenchido. Note que não há um wrapper fácil de usar fornecido pela glibc; você tem que fazer o syscall diretamente.

debugfs provavelmente examina as estruturas de inode diretamente, no entanto.

    
por 18.10.2018 / 09:24