Unix mantém timestamps 3 para cada arquivo: mtime, ctime, e ATIME. A maioria das pessoas parecem compreender ATIME (acesso tempo), é quando o arquivo foi lido. Lá não parece ser uma certa confusão entre mtime ctime e embora. ctime é o
nodo mudança, enquanto mtime é a modificação do ficheiro tempo. "Alterar" e "alteração" são muito sinônimos. Não há nenhum indício de ser tido por refletir essas palavras. Em vez disso você precisa se concentrar no que está sendo mudado. mtime muda quando você escrever para o arquivo. É a idade dos dados no arquivo. Sempre mtime alterações, de forma que não ctime. Mas algumas mudanças ctime extra vezes. Por exemplo, ele irá mudar se você mudar o proprietário ou as permissões do arquivo.
Vejamos um exemplo concreto. Nós corremos um pacote chamado Samba que permite aceder aos ficheiros do PC. Para alterar a configuração Samba, acabei de editar um arquivo chamado smb.conf. (Isto muda e mtime ctime.) Não tenho necessidade de tomar qualquer outra acção para dizer Samba que eu alterei o arquivo. Cada agora e então Samba olha o mtime sobre o arquivo. Se o mtime mudou, Samba Atualiza o arquivo. Mais tarde naquela noite o nosso sistema de backup é executado. Usa ctime, que também mudou o modo que faz o backup de arquivos. Mas digamos que um par de dias mais tarde eu aviso que as permissões em smb.conf são 666. Isso não é bom .. qualquer pessoa pode editar o arquivo. Então devo fazer um "chmod 644 smb.conf". Isso muda apenas ctime. Samba não irá reler o arquivo. Mas depois dessa noite, o nosso programa backup anúncios ctime que tem mudanças, por isso backup do arquivo. Dessa forma, se perdermos o sistema ea necessidade de recarregar nossas backups, ficamos com a nova definição melhorada permissão.
Aqui está um segundo exemplo. Vamos dizer que você tem um arquivo de dados chamado employees.txt o que é uma lista de colaboradores. E você tem um programa para imprimi-lo. O programa não só imprime os dados, mas que obtém o mtime e que imprime também. Agora, alguém pediu uma lista de empregados ao final do ano 2000 e que encontrou uma fita de backup que tem esse arquivo. Muitos programas restaurar irá restaurar a mtime também. Quando você executar esse programa irá imprimir um mtime partir do final do ano de 2000. Mas o ctime é hoje. Então, novamente, nosso backup programa irá ver o arquivo como necessitando de ser compensados.
Suponha restaurar o seu programa não restaurar o mtime. Você não quer que seu programa para imprimir a data actual. Pois não há problema. mtime está sob seu controle. Você pode configurá-lo para que cada vez que quiser. Então basta fazer:
$ Touch-t 200012311800 employees.txt
Isto irá definir mtime volta para a data pretendida e põe-se a ctime agora. Você tem o controle completo sobre mtime, mas o sistema permanece no controle da ctime. Mtime Então é um pouco como a data em uma carta, enquanto ctime é como o carimbo do correio no envelope.