Очистите корзину для всех пользователей в Windows Server 2008 R2

Мы используем rsync для тиражирования данных через WAN с нашего основного сервера резервного копирования на наш теплый сервер резервного копирования сайтов. Это работало очень хорошо с этой целью. До rsnapshot я не знаком с тем, чем преимущества были бы для использования того решения.

40
задан 14 November 2011 в 16:32
7 ответов

Насколько я могу судить, это не «официальный» способ, поддерживаемый Microsoft. Есть два варианта. Один включает удаление c: \ $ Recycle.Bin, а другой - сценарий cleanmgr.exe для запуска при каждом входе пользователя в систему.

Наиболее близким к "официальной" поддержке удаления c: \ $ Recycle.bin является MS KB , который ссылается на XP и Vista, но подразумевает ожидаемое поведение.


Немедленное удаление

Если вы хотите, чтобы это произошло немедленно, кажется, вы можете просто запустить rd /sc:\$Recycle.Bin, и Windows должна заново создать необходимые папки в следующий раз, когда они понадобятся. Я просто проверил это быстро и, похоже, работает, но, очевидно, действуйте осторожно.


Повторяющееся удаление с помощью сценария входа в систему

Вы можете сделать это с помощью средства очистки диска (cleanmgr.exe). К сожалению, Microsoft решила связать это с набором функций «Desktop Experience», что означает, что вам придется установить кучу другого дерьма и перезагрузиться.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

Microsoft решила связать это с набором функций «Desktop Experience», что означает, что вам придется установить кучу другого дерьма и перезагрузиться.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

Microsoft решила связать это с набором функций «Desktop Experience», что означает, что вам придется установить кучу другого дерьма и перезагрузиться.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

набор функций, то есть вам придется установить кучу другого дерьма и перезагрузиться.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

набор функций, то есть вам придется установить кучу другого дерьма и перезагрузиться.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 не изменился.

Альтернативный вариант - захватить следующие два файла и переместить их в указанные места на 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 в одиночку не позволит вам очистить корзину для всех, но вы можете использовать / sageset и / sagerun для создания сценария входа в систему, который запускается для всех пользователей через GPO, который очистит их корзину при следующем входе в систему, как описано здесь . Это не самое чистое, но сработает. Приведенная по ссылке статья предназначена для XP, но синтаксис в Server 2008 R2 не изменился.

Запуск cleanmgr в одиночку не позволит вам очистить корзину для всех, но вы можете использовать / sageset и / sagerun для создания сценария входа в систему, который запускается для всех пользователей через GPO, который очистит их корзину при следующем входе в систему, как описано здесь . Это не самое чистое, но сработает. Приведенная по ссылке статья предназначена для XP, но синтаксис в Server 2008 R2 не изменился.

34
ответ дан 28 November 2019 в 19:45

Я не думаю, что существует надлежащий способ документирования, поскольку корзины для пользователей хранятся отдельно в их профилях; это также может быть угрозой безопасности, поскольку документы или элементы в корзине при просмотре пользователями могут привести к утечке определенных документов.

Можно было бы создать сценарий с правами администратора для запуска и очистки файлов из корзины каждого локального профиля (но он все равно может быть синхронизирован с сервером, на котором хранятся ваши профили, если у вас есть перемещаемые профили). Но у вас должны быть правильно установлены разрешения и права собственности; Я знаю, что на наших серверах у администратора нет надлежащего доступа к профилям на сервере хранения; администратор должен стать владельцем профиля, и когда мы закончим, вернем право собственности соответствующему пользователю, иначе профили больше не будут работать для них должным образом.

Вы можете попробовать запустить процесс при выходе из системы, который очищает каталог корзины для каждого пользователь, но это также влечет за собой случайное удаление того, что они хотят восстановить позже, и теперь оно исчезнет, ​​поскольку оно было удалено при последнем выходе из системы.

Вероятно, «правильный» способ сделать это - настроить квоты на рабочих станциях и серверах, и когда эта квота будет достигнута для хранилища, пользователь узнает, что ему нужно удалить элементы из корзины. Из-за безопасности это будет проблемой обучения. В противном случае вам понадобится обходной путь.

@markm предложил утилиту, которая, кажется, делает это; Я поддерживаю утверждение, что это не «правильный» способ, поскольку он является надстройкой и не встроен в Windows по умолчанию (хотя я не удивлен, что полезная утилита администрирования не включена). Единственная другая проблема, которую я ' Меня беспокоит то, что он может быть запущен на рабочей станции и на сервере, или у вас могут возникнуть проблемы с синхронизацией профиля с тем, что появляется. Похоже, это должен быть просто мини-инструмент для доступа к вкладке «Очистка диска» в Windows.

Еще одна мысль ... непроверенная ... могла бы использовать перенаправление папок для перенаправления их папки с мусором на центральный сервер . Однако я бы классифицировал это как чрезвычайно плохую идею (тм). Затем вы удалите их файлы из этого общего каталога. Связывание этого по сети, настройка безопасности и т. Д.

9
ответ дан 28 November 2019 в 19:45

У меня была корзина, в которой отображалось более 4 ГБ данных, но мне не удалось ее очистить. Зашел и нашел кучу профилей, которые больше не использовались на сервере, и удалил их в свойствах системы - Дополнительно - Профили пользователей, и теперь корзина пуста.

Очевидно, не удаляйте никакие учетные записи, которые все еще актуальны или используется, но как администратор вы можете сделать это следующим образом.

1
ответ дан 28 November 2019 в 19:45

Я запустил TreeSize Free и увидел, что у меня 15 гигабайт в корзине, но я не мог его увидеть, вероятно, потому что это было сделано давно ушедшим пользователем. Но в TreeSize Pro я мог удалить его, что поместило данные в корзину, которую я мог видеть.

6
ответ дан 28 November 2019 в 19:45

Это работает для меня: -

Get-ChildItem "C:\`$Recycle.bin\" | Remove-Item -Recurse -Force

Удаляет recycle.bin; Windows повторно создаст корзину по мере необходимости, то есть как только пользователь удалит новый файл.

Возможно, это не самый элегантный код, и вполне может быть лучший способ сделать это, но он поможет освободить место на перегруженном сервере. Вы можете проверить это, используя переключатель -WhatIf в команде Remove-Item.

Get-ChildItem "C:\`$Recycle.bin\" | Remove-Item -Recurse -Force -WhatIf

NB: Каждый диск поддерживает свою собственную корзину; поэтому вам нужно заменить букву диска на тот диск, для которого вы запускаете эту команду, или вы можете использовать следующее для всех локальных дисков:

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 }

Надеюсь, это поможет

3
ответ дан 28 November 2019 в 19:45

Мне понравилось это решение, потому что легко понять, что оно делает, и оно делает работу, но для того, чтобы работать из любого места, откуда вы выполняете команду, вам нужно выполнить ее изменение вот так (добавив \ после "drive_letter:"), а для того, чтобы иметь возможность удалять эти папки у других пользователей... вам нужно добавить "-force" в конце команды remove-item. Кроме того, поскольку вы удаляете все папки внутри C:\$Recycle.bin\, вам не нужно включать "-recurse" при получении дочерних элементов. Таким образом, это будет последняя команда, которую я буду использовать вместо нее:

Get-ChildItem "C:`$Recycle.bin\" -Force | Remove-Item -Recurse -force -WhatIf

remove -WhatIf, если вы хотите сделать больше, чем просто протестировать команду

.
0
ответ дан 28 November 2019 в 19:45

გამოიყენეთ ქვემოთ მოცემული პროცესი ყველა ფაილის ამოსაღებად.

  1. შედით როგორც ადმინისტრატორის მომხმარებელი და შეისწავლეთ c დისკი
  2. მონიშვნის გარეშე ოპერაციული სისტემის ფაილი საქაღალდის ვარიანტებიდან
  3. დაათვალიერეთ $ Recycle.Bin საქაღალდე
  4. წაშალეთ ყველა ფაილი და საქაღალდე
  5. ცარიელეთ თქვენი სანაგვე ყუთი

ყველა ფაილი წაიშლება დისკიდან.

0
ответ дан 28 November 2019 в 19:45

Теги

Похожие вопросы