AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1616394
Accepted
Ξένη Γήινος
Ξένη Γήινος
Asked: 2021-01-11 01:14:39 +0800 CST2021-01-11 01:14:39 +0800 CST 2021-01-11 01:14:39 +0800 CST

Como usar o registro para desabilitar $Recycle.Bin para todos os usuários em todas as unidades e exibir a caixa de confirmação de exclusão por padrão no Windows 10 20H2?

  • 772

Resumo rápido: eu sou um funileiro e odeio clicar na GUI, não preciso $Recycle.Bin, então quero desativá-lo usando Set-ItemPropertypara modificar o registro.

Como no título, quero usar regedit.exe (eu sei reg adde tal, mas não uso reg, em vez disso, uso Set-ItemPropertye seus coortes para fazer o trabalho e gostaria de colocar todos os comandos em um arquivo) e gpedit.msc ( novamente registro, pois as configurações da Diretiva de Grupo são armazenadas no registro) para desabilitar $Recycle.Binpara todas as unidades e exibir a caixa de confirmação de exclusão por padrão, isso significa modificar HKEY_LOCAL_MACHINEe HKEY_CURRENT_USER.

Resumindo, o efeito desejado é, quando qualquer usuário (todas as contas de usuário são contas de administrador de minha propriedade, pois sou o único usuário, porque as contas de usuário podem ficar ruins e seria difícil consertar as contas uma vez que estão ruins, e eles são muito propensos a ficarem ruins se ocorrer um blecaute enquanto o computador estiver em execução...) clica para excluir um arquivo/arquivos em qualquer unidade, uma caixa de confirmação de exclusão aparece; Após a confirmação, o(s) arquivo(s) é(ão) deletado(s) diretamente SEM passar por $Recycle.Bin . E não há essa pasta $Recycle.Bin não-deletável presente em nenhum diretório raiz das unidades.

Claro que eu sei disso:

insira a descrição da imagem aqui

E é exatamente isso que estou tentando evitar. Porque eu tenho que clicar manualmente na Don't move files to the Recycle Bin...caixa de seleção para cada unidade. Também não consigo me livrar dessa $Recycle.Binpasta, se eu a excluir, ela simplesmente reaparece magicamente depois F5...

Encontrei esta chave de registro e valor depois de pesquisar no Google:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket]
"NukeOnDelete"=dword:00000001

Mas a fonte diz que se aplica ao Windows 7, nunca usei o Windows 7, esse valor impede a recriação de $Recycle.Bin? Ainda funciona no Windows 10?

Também encontrei isso:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoRecycleFiles"=dword:00000001

Mas quando tentei abrir esse caminho no regedit, um som de erro é reproduzido e a localização atual não é alterada, então o caminho não existe ...

E isto:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"ConfirmFileDelete"=dword:00000001

Isso parece habilitar a "caixa de diálogo de confirmação de exclusão", o que eu não sei é, essa configuração afeta todas as unidades? E ele mostra a caixa de diálogo e, em seguida, basta mover o arquivo para $Recycle.Bin após a confirmação se o $Recycle.Bin não estiver desabilitado?

Como desabilitar $Recycle.Bin para todos os usuários e todas as unidades por padrão? E como evitar que $Recycle.Bin retorne? Qualquer ajuda é apreciada.


Atualizar

É estranho, eu habilitei Do not move deleted files to the Recycle Bina política, ainda consigo acessar HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer no regedit... Basta pressionar F5e encontrar a tecla...


Atualização1

Com todas as configurações mencionadas acima ativadas, tentei excluir as pastas $Recycle.Bin com o Explorer, resultado: elas reaparecem após pressionarF5

Usado rd X:\$Recycle.Bin /s /qe eles não se repetiram após várias F5prensas até agora, mas não sei por que, pensei que teria o mesmo efeito que excluí-lo no explorer.exe ...


Mas o que Don't move file to the Recycle Bin. Remove files immediately when deleted.faz? Qual chave de registro e valor ele grava? Alguém pode me dizer?


As pastas $Recycle.Bin reapareceram... Confirmei, clicando na pasta "Lixeira" irá recriar as pastas $Recycle.Bin...


Eu usei procmon e obtive isso: insira a descrição da imagem aqui

Parece que Don't move...define nukeondelete como ativado na unidade atual.


Eu escrevi um script do PowerShell para desabilitar automaticamente a Lixeira em todas as unidades, usando Get-Volume e Set-ItemProperty;

Este é o script que mencionei, posto aqui caso mais alguém queira fazer:

$volumes=Get-Volume | where {$_.FileSystem -eq "NTFS"}
$Drives=foreach ($volume in $volumes) {
    $DriveLetter=$Volume.DriveLetter
    [string]$ObjectId=($Volume.ObjectId | Select-String -Pattern "Volume{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}}\\").Matches.Value.SubString(6,38)
    Remove-Item -Path $('{0}:\$Recycle.Bin' -f $DriveLetter) -Force -Recurse -ErrorAction SilentlyContinue
    New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -ErrorAction SilentlyContinue | Out-Null
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -Name NukeOnDelete -Type DWord -Value 1
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -Name MaxCapacity -Type DWord -Value 0
}
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name NukeOnDelete -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name MaxCapacity -Type DWord -Value 0

Agora estou procurando maneiras de impedir a criação de $Recycle.Bin, estou pensando em políticas de grupo e opções de segurança.

Eu encontrei isso: **GPO - Como bloquear a criação de pastas e arquivos no diretório raiz no Windows 10

Não sei se funcionará (estou apenas tentando bloquear a lixeira) e como fazê-lo com as opções de segurança?

windows-10 windows-registry
  • 1 1 respostas
  • 2905 Views

1 respostas

  • Voted
  1. Best Answer
    Ξένη Γήινος
    2021-01-13T05:25:02+08:002021-01-13T05:25:02+08:00

    Justo, tentei usar a Diretiva de Grupo para desabilitar a criação de pastas, mas não há objeto de diretiva de grupo do Sistema de Arquivos presente em Local Computer Policy>> Computer Configuration>> Windows Settings>> Security Settingse não sei como criá-lo ...

    eu tentei usaricacls C:\$Recycle.Bin /deny SYSTEM:(OI)(CI)(F)

    Então eu deletei a pasta via Remove-Item, depois de pressionar F5a pasta não reapareceu, mas abrir Recycle Binna área de trabalho imediatamente a fez reaparecer.

    Portanto, a pasta $Recycle.Bin é removida permanentemente, até que você reabra a Recycle Binpasta na área de trabalho, portanto, basta remover o ícone para garantir que a pasta não seja recriada;

    Com meus comandos anteriores usados ​​para habilitar NukeOnDelete, NoRecycleFilese ConfirmFileDeletepara desabilitar MaxCapacity, o código final:

    New-Item -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -ErrorAction SilentlyContinue | Out-Null
    Set-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name "NukeOnDelete" -Type DWord -Value 1
    New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -ErrorAction SilentlyContinue | Out-Null
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name "NukeOnDelete" -Type DWord -Value 1
    New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -ErrorAction SilentlyContinue | Out-Null
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "NoRecycleFiles" -Type DWord -Value 1
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "ConfirmFileDelete" -Type DWord -Value 1
    New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\NonEnum" -ErrorAction SilentlyContinue | Out-Null
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\NonEnum" -Name "{645FF040-5081-101B-9F08-00AA002F954E}" -Type DWord -Value 1
    Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{645FF040-5081-101B-9F08-00AA002F954E}" -Force -Recurse -ErrorAction SilentlyContinue
    $volumes=Get-Volume | where {$_.FileSystem -eq "NTFS"}
    $Drives=foreach ($volume in $volumes) {
        $DriveLetter=$Volume.DriveLetter
        [string]$ObjectId=($Volumes[0].ObjectId | Select-String -Pattern "Volume{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}}\\").Matches.Value.SubString(6,38)
        Remove-Item -Path $('{0}:\$Recycle.Bin' -f $DriveLetter) -Force -Recurse -ErrorAction SilentlyContinue
        New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -ErrorAction SilentlyContinue | Out-Null
        Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -Name NukeOnDelete -Type DWord -Value 1
        Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\$ObjectId" -Name MaxCapacity -Type DWord -Value 0
    }
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name NukeOnDelete -Type DWord -Value 1
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket" -Name MaxCapacity -Type DWord -Value 0
    

    Ele faz bem o que eu pretendia, escrevi todas essas linhas para medidas extras para garantir que o $Recycle.Bin esteja desabilitado corretamente. Vou colocar o código em um único arquivo .ps1 junto com muitos outros códigos e executá-lo...


    Confirmado, reiniciar o explorer.exe também fará com que a pasta $Recycle.Bin reapareça, mas seja o que for, pelo menos, eu possa usar este script para desabilitar a Lixeira em todas as unidades automaticamente, acho que é uma conquista ...

    • 0

relate perguntas

  • O serviço de arbitragem USB da estação de trabalho VMware não inicia automaticamente

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • atalho do shell da área de trabalho no painel lateral do explorer

  • Por que não consigo enviar arquivos do Android para o Windows 10?

  • Abrir com em vários arquivos?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 Por que uma conexão de Internet gigabit/s via cabo (coaxial) não oferece velocidades simétricas como fibra? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve