답변:
내가 알 수있는 한, 이것들은 "공식적인"Microsoft 지원 방법이 아닙니다. 두 가지 옵션이 있습니다. 하나는 c : \ $ Recycle.Bin을 삭제하고 다른 하나는 cleanmgr.exe를 스크립팅하여 각 사용자 로그온시 실행되도록합니다.
c : \ $ Recycle.bin 삭제에 대한 "공식적인"지원에 가장 가까운 것은 XP 및 Vista를 참조하는 이 MS KB 에서 발생하지만 예상되는 동작을 의미합니다.
이 작업을 즉시 수행하려면 바로 실행할 수 rd /s c:\$Recycle.Bin
있고 다음에 필요할 때 Windows에서 필요한 폴더를 다시 만들어야합니다. 방금 이것을 빨리 테스트했는데 작동하는 것처럼 보이지만 조심스럽게 진행하십시오.
디스크 정리 도구 (cleanmgr.exe)를 사용하여이 작업을 수행 할 수 있습니다. 불행히도 Microsoft는이 기능을 "데스크탑 경험"기능 세트와 함께 제공하기로 결정했습니다. 즉, 여러 가지 다른 문제를 설치하고 다시 부팅해야합니다.
대안은 다음 두 파일을 잡고 Technet 당 지정된 위치로 이동하는 것입니다 .
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_en-us_b9cb6194b257cc63\cleanmgr.exe.mui
Cleanmgr.exe는 % systemroot % \ System32에 있어야합니다.
Cleanmgr.exe.mui는 % systemroot % \ System32 \ en-US에 있어야합니다.
cleanmgr 만 실행하면 모든 사람의 휴지통을 지울 수는 없지만 / sageset 및 / sagerun을 사용하여 여기에 설명 된대로 다음 로그온시 휴지통을 지울 GPO를 통해 모든 사용자에 대해 실행되는 로그온 스크립트를 만들 수 있습니다 . 가장 깨끗한 것은 아니지만 작동합니다. 링크 된 기사는 XP 용이지만 Server 2008 R2에서 구문은 변경되지 않았습니다.
cleanmgr
각 로그인에서 실행되는 스크립팅 은 공식적인 MS 방식과 가장 비슷합니다. 대안은 각 프로파일에서 휴지통 폴더를 제거하는 것입니다. 그것은 해야한다 각 사용자에 대해 다음 로그인을 다시,하지만 난이 생산 시도 조금 지친 것.
사용자의 휴지통이 프로필에서 분리되어 있기 때문에 문서화 된 적절한 방법이 없다고 생각합니다. 휴지통에있는 문서 나 항목을 사용자가 사용하는 경우 특정 문서가 유출 될 수 있으므로 보안 상 위험 할 수 있습니다.
관리자 권한 스크립트를 스크립트하여 각 로컬 프로파일의 휴지통에서 파일을 실행하고 지우는 것이 가능할 수 있습니다 (그러나 로밍 프로파일이있는 경우 프로파일을 보유한 서버와 동기화 될 수 있음). 그러나 권한과 소유권을 올바르게 설정해야합니다. 서버에서 관리자는 스토리지 서버의 프로파일에 올바르게 액세스 할 수 없습니다. 관리자는 프로필의 소유권을 가져야하며, 완료되면 올바른 사용자에게 소유권을 반환하거나 프로필이 더 이상 제대로 작동하지 않습니다.
로그 오프시 사용자별로 휴지통 디렉토리를 지우는 프로세스를 실행할 수 있지만 나중에 복구하려는 항목을 실수로 삭제해야하며 마지막 로그 오프시 삭제 된 이후에 사라질 것입니다.
아마도 "적절한"방법은 워크 스테이션과 서버에서 할당량을 구성하는 것이며 해당 할당량에 도달하면 휴지통에서 항목을 삭제해야한다는 것을 알게됩니다. 보안 상 훈련 문제가 될 것입니다. 그렇지 않으면 해결 방법이 필요합니다.
@markm은이 작업을 수행하는 것으로 보이는 유틸리티 제안이있었습니다. 추가 기능이므로 기본적으로 Windows에 내장되어 있지 않기 때문에 "적절한"방법이 아니라고 주장합니다 (유용한 관리 유틸리티가 포함되어 있지 않은 것은 놀랍지 않습니다). d 워크 스테이션과 서버에서 실행해야하거나 위치에 나타나는 프로필 동기화 문제가있을 수 있습니다. Windows의 "디스크 정리"탭에 액세스하기위한 단순한 도구 인 것 같습니다.
또 다른 생각은 ... 추천되지 않은 ... 폴더 리디렉션을 사용하여 휴지통 폴더를 중앙 서버로 리디렉션하는 것입니다. 그러나 나는 이것을 기념비적으로 나쁜 생각 (tm)으로 분류 할 것이다. 그런 다음 해당 공유 디렉토리에서 파일을 삭제합니다. 그러나 네트워크, 보안 설정 등을 통해이 링크를 연결하면 다른 시스템 관리자가 자발적으로 폭발하기 전에 도망치게하는 1 순위 우선 순위가됩니다.
TreeSize Free를 실행하고 휴지통에 15gigs가있는 것을 보았지만 오랫동안 이탈 한 사용자가 수행했기 때문에 볼 수 없었습니다. 그러나 TreeSize Pro에서 데이터를 삭제하면 볼 수있는 휴지통에 데이터가 저장됩니다.
이것은 나를 위해 작동합니다 :-
Get-ChildItem "C:\`$Recycle.bin\" | Remove-Item -Recurse -Force
recycle.bin을 제거합니다. Windows는 필요에 따라, 즉 사용자가 새 파일을 삭제하자마자 휴지통을 다시 만듭니다.
가장 우아한 코드는 아니며 더 좋은 방법이있을 수도 있지만 혼잡 한 서버의 공간을 확보하는 데 도움이됩니다. Remove-Item 명령에서 -WhatIf 스위치를 사용하여 테스트 할 수 있습니다.
Get-ChildItem "C:\`$Recycle.bin\" | Remove-Item -Recurse -Force -WhatIf
주의 : 각 드라이브는 자체 휴지통을 유지합니다. 따라서 드라이브 문자를이 명령을 실행중인 드라이브로 바꾸거나 모든 로컬 드라이브에 다음을 사용할 수 있습니다.
Get-PSProvider -PSProvider FileSystem `
| Select-Object -ExpandProperty Drives `
| Where-Object { $_.DisplayRoot -notlike "\\*" } `
| Select-Object -ExpandProperty Root `
| ForEach-Object { "$_`$Recycle.bin\" } `
| Where-Object { Test-Path -Path $_ -PathType Container } `
| ForEach-Object { Get-ChildItem -Path $_ -Force | Remove-Item -Recurse -Force }
도움이 되었기를 바랍니다
이 솔루션이 무엇을하고 있는지 이해하기 쉽고 작업을 수행하기 때문에이 솔루션이 마음에 들었지만 명령을 실행하는 모든 위치에서 작업하려면 "drive_letter 뒤에 \를 추가하여 다음과 같이 변경해야합니다. ") 및 다른 사용자로부터 해당 폴더를 삭제할 수 있습니다. remove-item 명령 끝에"-force "를 추가해야합니다. 또한 C : \ $ Recycle.bin \ 내의 모든 폴더를 삭제하면 하위 항목을 가져올 때 "-recurse"를 포함 할 필요가 없습니다. 그래서 이것은 내가 대신 사용할 최종 명령입니다.
Get-ChildItem "C :`$ Recycle.bin \"-Force | 항목 제거-재귀-강제-WhatIf
명령을 테스트하는 것 이상을 수행하려는 경우 -WhatIf 제거