Como posso evitar que uma pasta seja apagada inadvertidamente por mim?

41

Eu tenho uma pasta muito importante no meu desktop. Ocasionalmente, limpo minha área de trabalho e estou muito preocupado por poder excluir a pasta mencionada inadvertidamente. Existe uma maneira de evitar esse desastre sem limitar minhas freqüentes operações de leitura e gravação no conteúdo da pasta? Nota Eu não me importo de excluir o conteúdo dentro da pasta, uma por uma de vez em quando, mas a pasta em si é importante para mim. Se for excluído, perco muitos esforços.

    
por codezombie 23.09.2015 / 15:00

7 respostas

112

Não tente evitar o inevitável. Use backups e controle de versão.

Você poderia negue a você mesmo a permissão Excluir . A exclusão de arquivos e pastas dentro desse diretório é uma permissão separada que você também pode desativar quando necessário.

    
por 23.09.2015 / 15:04
51

Existe uma solução melhor para o seu problema: mova a pasta para um local mais apropriado (por exemplo,% USERPROFILE% \ Documents)

Se você precisar acessar a pasta a partir da área de trabalho, poderá sempre criar um atalho. Isso garante que, embora você possa excluir acidentalmente o atalho, nunca excluirá a pasta ou seus próprios conteúdos preciosos.

Se outros aplicativos dependerem da presença dessa pasta na área de trabalho, você poderá criar um link simbólico com o comando "mklink". Como os links simbólicos são manipulados no nível do sistema de arquivos (enquanto os atalhos são arquivos reais que simplesmente apontam para outro local), não deve haver problemas de compatibilidade com programas que tentam usar esse tipo de "atalho" em caminhos.

    
por 23.09.2015 / 17:16
7

Sim, potencialmente limitado por qual versão do Windows você tem (as versões iniciais podem não ter a capacidade de ajustar a propriedade). Além disso, tenha em atenção que remover as suas permissões de eliminação não é uma garantia de que não pode eliminar a pasta . Eu fui queimada várias vezes.

Aqui está um método que geralmente é infalível:

  1. Crie um novo usuário
  2. Atribuir propriedade da pasta que você não deseja excluir para este novo usuário
  3. Remova o acesso do usuário para excluir a pasta, verifique se o usuário tem privilégios completos de leitura / gravação na pasta.

Eu usei este truque no Windows NT para o Windows 7. Às vezes você tem que brincar com as configurações antes de ficar perfeito.

TESTE EM UMA NOVA PASTA PRIMEIRA (incluindo a criação de arquivos e pastas dentro da pasta de teste!

Também : atenda aos conselhos de "Usar backups e controle de versão". Se os arquivos são tão importantes, você precisa de pelo menos 2 cópias.

    
por 23.09.2015 / 17:48
5

Os sistemas de arquivos do Windows têm um sinalizador "somente leitura". Isso é mais simples do que ter que definir permissões DACL para um efeito tão simples.

Em um prompt de comando, use o comando ATTR. No shell da GUI, ele deve estar nas Propriedades, embora o gui possa fazer algo complexo e além do que você realmente queria.

Além disso, se você recriar um diretório com o mesmo nome, poderá aplicar "restaurar versões anteriores" nele.

Atualizar

Eu experimentei em um sistema Win7. A exclusão da GUI (sem lixeira) ignora o sinalizador R no diretório. Não há avisos adicionais alertando sobre isso, como eu vi para H e / ou S flags. Emitir rd da linha de comando concede acesso negado conforme o esperado. No entanto, você não pode apenas rd de um diretório não vazio: o arquivo delete e o diretório remove são comandos diferentes. Um comando para remover recursivamente um diretório com conteúdo removerá o conteúdo e não removerá o diretório agora vazio.

Portanto, proteger o diretório em si não funciona na ação da GUI que você tem em mente. E implica que qualquer abordagem mais chique para impedir que o próprio diretório seja removido não impedirá que ele seja esvaziado primeiro! Você disse que ainda quer acesso normal dentro do diretório para criar e remover arquivos, então bloqueá-lo completamente não é uma solução para você.

A melhor solução parece ser o link simbólico . Fazendo um link simbólico (novo estilo, o que o Windows Vista e o Windows chamam agora de link simbólico) para o diretório na área de trabalho, quando o diretório realmente existe em outro lugar, funciona no sentido de que se eu excluir o ícone da área de trabalho (shift-delete, sem lixeira) o diretório real não é afetado, pois apenas o link foi excluído.

Shift-Delete do ícone da área de trabalho não se importava se estivesse marcado com o atributo R .

Um programa usando a caixa de diálogo padrão de abertura de arquivos do Windows navegou pelo symlink sem problemas. Na verdade, resolveu o nome do diretório vinculado, então o arquivo aberto era o nome real ; por exemplo. Desktop\MyFolder tornou-se D:\scratch\MyFolder quando naveguei por ele.

Usando um link de estilo antigo (a Junction ), o programa viu o nome com a junção ainda no caminho; por exemplo. C:\Users\john\Desktop\MyFolder\test.txt , então o fato de ser um link é invisível. No entanto, a ação de exclusão da GUI ainda a tratava como um link, não seguindo-a invisivelmente.

De qualquer forma, se um programa usar o nome do alias diretamente, ele funcionará. Mas ter arquivos às vezes vistos com um nome e às vezes o outro pode confundir as coisas.

Conclusão

Use um Junction na área de trabalho com a pasta realmente localizada em outro lugar, e será completamente transparente que é isso que está acontecendo. Opcionalmente, usando DACL para impedir a exclusão acidental do arquivo de ponto de junção na área de trabalho. Pelo menos, tenha um script para recriá-lo quando necessário.

Bônus

Eu não tentei isso, mas gostaria de saber se você poderia ter algo em "novos itens" para recriar a junção ou o link simbólico? Em seguida, clique com o botão direito do mouse na área de trabalho vazia, escolha Novo ... e escolha "Lixo da área de trabalho" no menu. Restaurar tudo o que você realmente quer na área de trabalho.

    
por 23.09.2015 / 20:45
2

Outra coisa que você deve considerar é ativar o recurso Histórico de Arquivos do Windows 8.1. Isso permitirá que seu sistema mantenha automaticamente um histórico de alterações em seus arquivos e pastas. É melhor usar com um local de armazenamento externo, mas também pode ser usado com uma unidade local.

link

    
por 24.09.2015 / 03:39
1

Uma solução eficaz poderia estar removendo a pasta da área de trabalho e, em seguida, configurando uma junção NTFS usando o MKLINK comando.

C:\Users\Administrator>MKLINK

Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target
        /D      Creates a directory symbolic link.  Default is a file
                symbolic link.
        /H      Creates a hard link instead of a symbolic link.
        /J      Creates a Directory Junction.
        Link    specifies the new symbolic link name.
        Target  specifies the path (relative or absolute) that the new link
                refers to.

Então, no seu caso, o comando seria:

MKLINK /J %userprofile%\Desktop\ImportantFolder D:\ImportantFolder

Em que D:\ImportantFolder é a pasta real e %userprofile%\Desktop\ImportantFolder é a junção.

Notas:

  • O Junction não precisa ter o mesmo nome da pasta de origem.
  • A junção não é uma cópia, é de fato um redirecionamento outra forma de acessar sua pasta. Imagine como a versão foldr de um atalho normal (* .lnk).
  • As junções diferem do atalho normal para as pastas, pois são totalmente transparentes para os programas.
  • Se a junção for excluída, a pasta real não será excluída.
  • Mas, qualquer modificação de arquivo é o mesmo que ir para D:\ImportantFolder e fazer as coisas. Portanto, se você excluir um arquivo passwords.txt na junção, você o excluiu de d:/ImportantFolder também.
  • Se você excluir acidentalmente a junção, você a criará novamente.

Forma gráfica (mais eficiente mais fácil ) (com a extensão de menu contextual)

Você pode, em vez disso, instalar o Link Shell Extension , em seguida, mover sua pasta para outro local, clicar com o botão direito do mouse nela e selecione Pick link source... , em seguida, clique com o botão direito na área de trabalho e selecione drop as... - > %código%. E você está feito.

Esta é a primeira aplicação que eu instalo em sistemas novos, pois é uma solução extremamente útil. Eu recomendo veementemente que você sempre tenha que gerenciar junções ou links hard / simbólicos em seu computador.

    
por 25.09.2015 / 19:41
0

Você pode fazer backup de todos os seus arquivos e pastas em onedrive. Você pode usá-lo gratuitamente, mas limitado para 15GB. No entanto, se você tiver uma assinatura do Office 365, terá 1 TB em storge onedrive e ela estará incluída.

    
por 24.09.2015 / 09:04