Excluí acidentalmente um arquivo executando:
rm -rf ./Desktop/myScript.sh
Eu acho que é possível recuperar o arquivo, porque o rm
comando é removido temporariamente. Como posso recuperar o arquivo excluído no Mac OSX?
shell
shell-script
data-recovery
cat_minhv0
fonte
fonte
Respostas:
MacOS é um sistema operacional Unix e
rm
significa "adeus". A interface da GUI permite mover um arquivo para a lixeira (que você pode recuperar), mas não foi isso que você fez. Se você tiver um backup (por exemplo, o Time Machine em execução), será salvo.Esclarecimento
Estritamente falando (como aponta @ire_and_curses),
rm
basta excluir a entrada de diretório do arquivo, deixando intocados os blocos de disco que ele usou. Se você pudesse desativar o sistema de arquivos em que o arquivo estava, existem métodos avançados pelos quais você pode tentar descobrir novamente o conteúdo desses blocos. Existem também algumas ferramentas de recuperação que podem ser adquiridas para recuperar a perda. A questão central é que nada mais reutiliza nenhum dos blocos de disco representados pelo seu arquivo.O MacOS também possui um comando de remoção segura (
srm
) que sobrescreve um arquivo antes de serunlink
editado, tornando-o irrecuperável. Eu uso ounlink
termo, já que esta é a chamada do sistema subjacente associada aorm
comando de um shell . Isso prepara o cenário para a próxima parte desta discussão, abaixo.Nota
[Devo me apressar a acrescentar que, mesmo que você sobrescreva um disco várias vezes, existem maneiras de ler o que foi gravado uma dúzia ou mais de vezes antes. Para higienizar adequadamente um disco para descarte, é necessário um banho de ácido, um grande martelo e uma trituradora. ]
unlink
Um arquivo diminui a contagem de links do inode do arquivo. Se esse valor atingir zero, o arquivo será excluído do diretório do sistema de arquivos e seus blocos de disco serão liberados para reutilização. Isso acontece apenas quando nenhum processo tem o arquivo aberto. Muitas vezes, é confuso para os administradores descobrir que um sistema de arquivos está utilizando quantidades muito grandes de espaço que não podem ser explicadas pela simples soma de blocos de disco (com algo parecidodu
). Na maioria das vezes, o motivo é que um arquivo aberto foi removido, para que não seja mais representado em seu diretório. O motivo é que os blocos de disco permanecem em uso até o último processo usando o arquivo terminar.Abrir um arquivo e
unlink
fazê-lo imediatamente é uma prática comum para criar arquivos temporários seguros. Ferramentas como essalsof
podem expor esses arquivos invisíveis se você procurar arquivos com uma contagem de links (NLINK) igual a zero.No Unix e Linux (do qual o MacOS é um Unix da marca),
rm
segue-se a filosofia do Unix de "faça-o" sem alarde, se puder. Ou seja, se você tem permissão para remover um arquivo (ou seja, seu diretório permite a gravação),rm
faz exatamente o que você pede. Você pode criar um alias do shellrm='rm -i'
que solicita sua confirmação antes de executar a operação. Usar o-f
switch comrm
substituições que, se necessário. Um aliasrm
é mais útil quando vocêglob
remove comorm *.log
. Ou seja, você tem a opção de pular um arquivo na lista.fonte
Dependendo do seu conteúdo, mas você pode usar diferentes softwares de terceiros para fazer isso, por exemplo:
e muitos mais.
Você pode encontrar mais aplicativos digitando 'recuperação de dados' na App Store.
A maneira mais avançada é inicializar seu OSX no modo de recuperação (ou desmontar sua partição, se você puder) e procurá-lo manualmente (se você se lembrar de algum texto específico do seu script).
Algum exemplo:
fonte