Meu PC tem um monte de unidades extras. A maioria deles contém cópias antigas do Windows e arquivos de programas. Meu PC se chama "PC" e meu usuário administrador se chama "Tim". Atribuí a propriedade dessas segundas unidades ao usuário "PC\Tim" e também dei ao usuário "PC\Tim" controle total sobre as unidades. Em seguida, tento excluir as pastas Windows ou Arquivos de Programas nessas unidades e recebo a mensagem.
"Você precisa de permissão do PC\Tim para fazer alterações nesta pasta."
O proprietário atual dessas pastas está listado como "Tim (PC\Tim)". As permissões efetivas para essas pastas listam que esse usuário tem todos os direitos.
As "respostas" absurdas na comunidade da Microsoft, é claro, oferecem coisas como "Usar limpeza de disco" (que é uma resposta descaradamente inculta) ou "apenas reformatar a unidade" (a formatação evita o problema em vez de resolvê-lo).
Quais são as etapas corretas para excluir esses arquivos antigos?
Responder1
Abra um prompt de comando com privilégios administrativos.
Execute os seguintes comandos, um de cada vez (altere "Z:\Arquivos de Programas" pela pasta que deseja excluir):
takeown /F "Z:\Program Files" /A /R /D Y icacls "Z:\Program Files" /T /grant administrators:F rd /s /q "Z:\Program Files"
Nota 1 - Idioma do SO: takeown ... /D Y
A entrada Y significa 'Sim' e será diferente dependendo do idioma do SO. A pasta Arquivos de Programas e os administradores também podem ter nomes diferentes.
Nota 2 - Versões mais antigas do Windows: se icacls
e rd
não forem suportados, tente usar cacls
e rmdir
em vez disso
Explicação e documentação:
O problema pode ser que você não tem as permissões corretas no listas de controle de acesso discricionário (DACLs)para a pasta e seu conteúdo. As DACLs identificam os trustees aos quais é permitido ou negado acesso a um objeto protegível. Portanto, simplesmente conceder a propriedade à pasta pode não ser suficiente, mas você também precisa conceder permissão nas DACLs. Você pode conceder permissão usando o comando icacls conforme mostrado no exemplo acima.Listas de controle de acesso e DACLs explicadas
tomar posse documentação de aquisição O administrador recupera o acesso a um diretório e seu conteúdo que anteriormente foi negado, tornando o grupo de administradores o proprietário./F [diretório]especifica qual diretório,/Adá propriedade ao grupo de administradores,/Rexecuta como operação recursiva no diretório, todos os arquivos e subdiretórios,/Dsuprime prompts de confirmação quando o usuário não tem permissão para "Listar pasta" com o seguinteSopção que se apropria do diretório. (Nota: A opção Y pode ser diferente dependendo do idioma do sistema operacional).
icacls documentação do icacls Concede ao grupo de administradores permissões DAC de acesso total ao diretório.[diretório]especifique qual diretório,/Texecuta a operação em todos os arquivos especificados no diretório e subdiretórios,/concederconcede direitos de acesso de usuário especificados com:Fque dá acesso total. (Nota: O nome do grupo administradores pode ser diferente dependendo do idioma do sistema operacional)
terceiro terceira documentação Exclui o diretório com todos os seus subdiretórios e arquivos./sexclui o diretório especificado e seus subdiretórios, incluindo todos os arquivos,/qespecifica o modo silencioso para que você não receba nenhuma solicitação de confirmação,[diretório]especifique qual diretório excluir.
Responder2
O que funcionou para mim foi uma versão simplificada doesta sugestão:
- Renomeie a
Windows
pasta paraWindows.old
- Execute a Limpeza de Disco no menu Iniciar
- Selecione a unidade que contém a
Windows.old
pasta - Anterior "Instalações do Windows" e clique em OK
Responder3
NOTA: Agora que penso nisso, você deve conseguir começar a partir do passo 4, basta clicar no botão "alterar permissões" para obter acesso. Eu testaria, mas estou sem diretórios para excluir.
No Windows 10 (provavelmente também funciona com Windows 7 e 8):
- Clique com o botão direito em pasta-> propriedades-> segurança-> avançado.
- Clique em Alterar ao lado do proprietário (na parte superior). Digite seu nome de usuário na caixa e clique em verificar nomes. (Deve ser convertido em um estilo MACHINENAME\USERNAME.)
- Clique em OK, OK, OK para sair das opções de segurança.
Agora você deve possuir o diretório.
- Clique com o botão direito em pasta-> propriedades-> segurança-> avançado. (De novo.)
- Encontre "Usuários" na lista de permissões. Clique nele, selecione editar e escolha controle total.
- Na parte inferior, marque "Substituir todas as entradas de permissão infantil...".
- Clique em OK e escolha Sim na caixa de aviso. Aguarde o computador aplicar as novas permissões.
Agora você deve ter as permissões necessárias para excluir os arquivos. Faça isso. (Testado nas pastas Arquivos de Programas e Windows.old.)
Responder4
Simplesmente renomeie os arquivos de programas para Windows.old e execute a limpeza do disco para limpar os arquivos do sistema. O mesmo truque funciona em qualquer pasta que você não possa remover.