Pasta NTFS não possui proprietário, não possui permissões, não pode ser excluída

15

Eu tenho uma pasta em um servidor membro de 2003 que não pode ser excluída. Nada tem permissões (administrador do domínio e executando um prompt do cmd como "nt Authority \ system" usando psexec) - sempre "acesso negado".

Quando eu faço um dir / q, o proprietário aparece como "...".

Eu tentei takeown.exe na pasta e também é pai. A pasta incorreta sempre informa "acesso negado". Também tentei redefinir usando icacls, a mesma coisa.

As permissões do Explorer não possuem opções ou guias de compartilhamento e segurança. Funciona bem para outras pastas, mesmo no mesmo diretório.

winnt93
fonte

Respostas:

25

Eu já vi algo semelhante a isso. O que acabou sendo o caso é que o arquivo foi excluído enquanto ainda havia bloqueios pendentes nele. Eu não poderia fazer nada. A limpeza dos bloqueios pendentes causou a exclusão total do arquivo.

sysadmin1138
fonte
5
+1 - Absolutamente poderia ser isso também. O OP deve executar algo como SysInternals "handle.exe" e grep a saída para referências ao diretório "undeletable".
Evan Anderson
Acabei de voltar para verificar e executar a alça e agora se foi! Só posso presumir que algo estava em espera, o que acabou sendo fechado e permitiu a exclusão da pasta.
winnt93
1
Se a reinicialização for uma opção, isso também poderá funcionar - funcionou para mim. Após a reinicialização, todas as pastas / arquivos que estavam lá antes da reinicialização foram totalmente excluídas.
Olson.dev 11/11
4

Eu executaria o CHKDSK no volume antes de fazer qualquer outra coisa. Você está vendo alguma mensagem no log de eventos do sistema re: corrupção do sistema de arquivos (origem "NTFS")?

Evan Anderson
fonte
3

Teve o mesmo problema, mas nenhum arquivo tinha um bloqueio, apenas conseguiu perder todos os seus proprietários.

A solução foi usar TakeOwn

takeown /F dirname

Assumirá a propriedade do arquivo para o usuário atual. Use /Aapós o dirnamepara atribuí-lo ao administrador do sistema.

siva.k
fonte
2

Encontrei recentemente um problema semelhante. A causa do meu caso foi que outro computador teve o arquivo aberto por meio de um compartilhamento de arquivo de rede. (era uma .dll e o outro usuário havia lançado um programa que a abriu).

Para fechar arquivos compartilhados em rede:

Painel de Controle -> Ferramentas Administrativas -> Gerenciamento do Computador

Em seguida, abra Ferramentas do sistema -> Pastas compartilhadas -> Abrir arquivos.

Ele lista todos os arquivos abertos por outra máquina.

Tris Healy
fonte
1

Eu tropecei sobre isso também. O arquivo não tinha proprietário e não foi possível excluí-lo.

Eu verifiquei se havia processos bloqueados. Nenhum!

Eu tentei definir o proprietário via "takeown". Sem sorte, o arquivo não existe !!!

O problema surgiu devido à nomeação do arquivo.

O nome do arquivo terminou em um ponto, por exemplo, "OneDrive - Bla Bla.".

Parece que o OneDrive está criando nomes de arquivos com pontos pendentes, enquanto a maioria dos outros programas do Windows reduz os pontos pendentes. Então, obviamente, o takeown e acabou não encontrando "OneDrive - Bla Bla".

Finalmente consegui usar o nome de 8,3 ms-dos do arquivo, por exemplo "takeown / F ONEDRI ~ 0"

Para obter o nome 8.3 usando "dir / x" é uma opção.

leostona
fonte
1

Isso aconteceu comigo quando o Linux conseguiu corromper parcialmente minhas partições NTFS. O procedimento a seguir deve poder restaurar seus arquivos:

  1. Abra o prompt de comando elevado.
  2. Navegue para um diretório que contenha arquivos ou pastas problemáticos.
  3. icacls . /T /verify /Q
  4. Copie todas as linhas que contenham "Comprimento Acl incorreto". para um arquivo de texto (por exemplo, acl.txt). Se não houver, estamos prontos.
  5. for /F "tokens=*1 delims=:" %A in (acl.txt) do icacls %A /T /reset
  6. Repita da etapa 3.
Aleksi Hannula
fonte
0

Para excluir esses arquivos, primeiro tento o unlocker . Se isso falhar, ou se houver alguma outra operação que eu queira executar no arquivo, eu uso o meu disco Bart PE .

John Gardeniers
fonte
0

Você pode usar rd - rmdirque é removido do diretório ou excluir pastas,

Você pode usar o seguinte:

rd /s "\\?\C:\foldername\nextfolder\foldertodelete"

O /sparâmetro é remover todos os diretórios e arquivos no diretório especificado, além do próprio diretório. Usado para remover uma árvore de diretórios. Portanto, provavelmente o excluirá.

Eu tentei antes de mais de uma vez.

PCGenie

M Alkobaisi
fonte
0

Resolvi esse problema com a mudança para o formato POSIX:

del \\?\d:\path\problem_path\*
rmdir \\?\d:\path\problem_path\*

O problema agora é que não consigo recriar o diretório do explorer ou direto do cmd

user431950
fonte
0

Necroed, mas eu tinha algo muito parecido com isso ...

Executando o AccessEnum nas pastas Server2008 para auditar as permissões de arquivo / pasta.

AccessEnum shows ??? como o proprietário.

Clique com o botão direito do mouse no arquivo e nenhuma das opções normais disponíveis. Basta abrir e enviar para.

.

Acabou que era devido ao caminho longo e nome do arquivo longo. 272 caracteres no total!

Desenterrada na estrutura de pastas e Compartilhada uma pasta no final do caminho, agora os arquivos podem ser ref com um caminho mais curto.

Nada de errado com as permissões dos arquivos, etc., era apenas o Explorer sufocando no caminho longo.

Cajado
fonte