2009-10-26 06:47:19 +0000 2009-10-26 06:47:19 +0000
64
64

Como posso obter permissões para apagar ficheiros no Windows 7?

Actualizei o SO do meu computador portátil do Windows XP para o Windows 7. Agora existem alguns ficheiros que sobraram do Windows XP no computador. Se eu tentar apagá-los recebo o seguinte erro:

Você precisa de permissão para executar esta acção.

Você precisa de permissão do S-1-…. para fazer alterações a esta pasta.

O que é estranho é que eu estou ligado com a única conta de utilizador nesta máquina e eu tenho privilégios de administrador. Tentei desligar o UAC, mas ainda não consigo apagar os ficheiros.

Como posso forçar a remoção destes ficheiros?

Respostas (5)

85
85
85
2009-10-26 07:11:52 +0000

É possível que ao actualizar, o antigo utilizador XP não tenha sido bem convertido para o Windows 7 - portanto, estes ficheiros são propriedade de um utilizador fantasma. Pode seguir os passos abaixo:

  1. Assumir a propriedade dos ficheiros. Inicie um prompt de comando (cmd) como administrador e introduza:

  2. Dê a si mesmo todos os direitos sobre o ficheiro:

cacls pode ser utilizado com wildcards e travessias de directórios. Veja também: Segurança da linha de comando com CACLS comando CACLS

Para um script Visual Basic mais evoluído veja: Xcacls.vbs para modificar as permissões NTFS .

29
29
29
2011-06-29 06:41:01 +0000

Os argumentos de linha de comando para se tomar posse devem estar nesta ordem

takeown /f \<directory\> /r
/f filename or directory name pattern /r recurse

NOTA: cacls está agora depreciado, por favor icacls

icacls \<directory\> /grant \<user\>:f /t
f full access /t recurse
6
6
6
2011-01-14 17:39:43 +0000

No meu caso, tomar posse não foi suficiente no Windows 7 para as minhas circunstâncias particulares (a minha instalação no Windows 7 foi feita usando o Symantec Backup Exec de outra máquina e a pasta estava sob controlo da fonte).

Tive de executar mais dois passos:

  1. Clique com o botão direito do mouse na pasta contendo os arquivos que você deseja excluir e selecione ‘Propriedades’ -> ‘Segurança’ -> ‘Avançado’ -> selecione seu usuário -> ‘Alterar permissão’ -> Marque “Substituir todas as permissões de objetos menores por permissões herdáveis deste objeto”

  2. Apague manualmente os ficheiros nas pastas do interior para a raiz. Apague as pastas quando estiverem vazias, ou seja, se tiver “folder1->folder2” primeiro apague o conteúdo da pasta2, depois apague a pasta2 etc.

Se as outras soluções não forem suficientes, pode tentar estes passos adicionais.

1
1
1
2009-10-26 07:01:16 +0000

Este S-1-... é um GUIA que sobrou da instalação anterior. Obviamente o NEWSYSTEM\Administrator não faz parte do grupo OLDSYSTEM\Administrators.

Você precisa se apropriar da unidade, deixar as alterações se propagarem, então você deve ser capaz de apagar os arquivos.

1
1
1
2013-07-29 10:52:09 +0000

Normalmente takeown e (i)cacls fazem o trabalho.

Em alternativa, pode usar Unlocker para o apagar (provavelmente será necessário reiniciar), ou usar Sysinternals’ PsExec para obter privilégios de utilizador do SYSTEM e apagar esses ficheiros (este irá funcionar em alguns ficheiros, pode falhar em outros).

Mas se essa pasta tiver muitos arquivos, levará muito tempo para os privilégios do takeown (demorei cerca de 20 minutos, depende da velocidade do HDD). Assim, neste caso, qualquer LiveCD/DVD/USB é mais rápido, uma vez que não requer qualquer privilégio para apagar a pasta.