วิธีที่เหมาะสมในการล้างถังรีไซเคิลสำหรับผู้ใช้ทั้งหมดใน Windows Server 2008 R2 คืออะไร?
วิธีที่เหมาะสมในการล้างถังรีไซเคิลสำหรับผู้ใช้ทั้งหมดใน Windows Server 2008 R2 คืออะไร?
คำตอบ:
เท่าที่ฉันสามารถบอกได้เหล่านี้ไม่มี Microsoft "ทางการ" สนับสนุนวิธีการทำเช่นนี้ มีสองตัวเลือก หนึ่งเกี่ยวข้องกับการลบ c: \ $ Recycle.Bin และอื่น ๆ คือการเขียนสคริปต์ cleanmgr.exe เพื่อให้ทำงานในการเข้าสู่ระบบของผู้ใช้แต่ละคน
สิ่งที่ใกล้เคียงที่สุดกับการสนับสนุน "เป็นทางการ" สำหรับการลบ c: \ $ Recycle.bin มาจากMS KBนี้ซึ่งอ้างอิง XP และ Vista แต่หมายถึงพฤติกรรมที่คาดหวัง
หากคุณต้องการให้สิ่งนี้เกิดขึ้นทันทีดูเหมือนว่าคุณสามารถเรียกใช้rd /s c:\$Recycle.Bin
และ Windows ควรสร้างโฟลเดอร์ที่จำเป็นอีกครั้งในครั้งถัดไปที่จำเป็น ฉันเพิ่งทดสอบสิ่งนี้อย่างรวดเร็วและดูเหมือนจะใช้งานได้ แต่ - อย่างชัดเจน - ดำเนินการด้วยความระมัดระวัง
คุณสามารถทำได้ด้วยเครื่องมือ Disk Cleanup (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 \ th-US
เล่น cleanmgr เพียงอย่างเดียวจะไม่ยอมให้คุณถังรีไซเคิลที่ชัดเจนของทุกคน แต่คุณสามารถใช้ / sageset และ / sagerun เพื่อให้สคริปต์เข้าสู่ระบบที่ทำงานสำหรับผู้ใช้ทั้งหมดผ่าน GPO ที่จะล้างถังรีไซเคิลของพวกเขาในการเข้าสู่ระบบต่อไปตามที่อธิบายไว้ที่นี่ มันไม่ใช่สิ่งที่สะอาดที่สุด แต่จะใช้ได้ บทความที่เชื่อมโยงมีไว้สำหรับ XP แต่ไวยากรณ์ไม่เปลี่ยนแปลง ณ Server 2008 R2
cleanmgr
เพื่อทำงานในแต่ละการเข้าสู่ระบบเป็นสิ่งที่ใกล้เคียงกับวิธีการอย่างเป็นทางการของ MS อีกทางเลือกหนึ่งคือการทำให้โฟลเดอร์ถังรีไซเคิลหายไปในแต่ละโปรไฟล์ มันควรจะสร้างมันในการเข้าสู่ระบบต่อไปสำหรับผู้ใช้แต่ละคน แต่ฉันจะเบื่อเล็ก ๆ น้อย ๆ ที่จะลองนี้ในการผลิต
ฉันไม่คิดว่าจะมีวิธีการบันทึกที่เหมาะสมเนื่องจากถังขยะรีไซเคิลสำหรับผู้ใช้ถูกแยกเก็บไว้ในโปรไฟล์ของพวกเขา สิ่งนี้จะเป็นอันตรายต่อความปลอดภัยเนื่องจากเอกสารหรือรายการในถังรีไซเคิลหากผู้ใช้อ่านอาจอนุญาตให้มีการรั่วไหลของเอกสารบางอย่าง
อาจเป็นไปได้ที่สคริปต์สคริปต์ที่มีสิทธิ์ของผู้ดูแลระบบสามารถเรียกใช้และล้างไฟล์จากถังขยะของแต่ละโปรไฟล์โลคัล (แต่อาจยังซิงค์กับเซิร์ฟเวอร์ที่เก็บโปรไฟล์ของคุณหากคุณมีโปรไฟล์ข้ามเครือข่าย) แต่คุณต้องมีการอนุญาตและการเป็นเจ้าของอย่างถูกต้อง ฉันรู้ว่าในเซิร์ฟเวอร์ของเราผู้ดูแลระบบไม่สามารถเข้าถึงโปรไฟล์บนเซิร์ฟเวอร์จัดเก็บข้อมูลได้อย่างเหมาะสม ผู้ดูแลระบบจะต้องเป็นเจ้าของโปรไฟล์และเมื่อเราเสร็จสิ้นการคืนความเป็นเจ้าของให้กับผู้ใช้ที่เหมาะสมหรือโปรไฟล์อื่นไม่ทำงานอย่างถูกต้องสำหรับพวกเขาอีกต่อไป
คุณสามารถลองใช้กระบวนการเมื่อออกจากระบบซึ่งจะล้างไดเรกทอรีถังขยะต่อผู้ใช้ แต่ก็มีการลบบางสิ่งที่พวกเขาต้องการกู้คืนโดยไม่ตั้งใจและตอนนี้จะหายไปตั้งแต่ถูกลบออกเมื่อออกจากระบบครั้งล่าสุด
อาจเป็นวิธี "เหมาะสม" ที่จะทำคือการกำหนดค่าโควต้าบนเวิร์กสเตชันและเซิร์ฟเวอร์และเมื่อโควต้าที่ถูกตีสำหรับการจัดเก็บผู้ใช้เรียนรู้ว่าพวกเขาต้องลบรายการจากถังรีไซเคิล เนื่องจากความปลอดภัยมันจะเป็นปัญหาการฝึกอบรม มิฉะนั้นคุณจะต้องแก้ไขปัญหา
@markm มีข้อเสนอแนะยูทิลิตี้ที่ดูเหมือนว่าจะทำเช่นนี้; ฉันยืนยันว่ามันไม่ใช่วิธีที่ "ถูกต้อง" เนื่องจากเป็นส่วนเสริมและไม่ได้สร้างไว้ใน Windows โดยค่าเริ่มต้น (แม้ว่าฉันจะไม่แปลกใจเลยว่ายูทิลิตี้การดูแลระบบที่เป็นประโยชน์จะไม่รวมอยู่) ปัญหาอื่น ๆ ไม่ต้องกังวลในการใช้งานเพราะอาจต้องใช้งานบนเวิร์กสเตชันและบนเซิร์ฟเวอร์หรือคุณอาจมีปัญหาในการซิงค์โปรไฟล์กับสิ่งที่ปรากฏขึ้น ดูเหมือนว่ามันควรจะเป็นเพียงเครื่องมือขนาดเล็กสำหรับเข้าถึงแท็บ "การล้างข้อมูลบนดิสก์" ใน Windows
ความคิดอื่น ๆ ... ยังไม่ทดลอง ... จะใช้การเปลี่ยนเส้นทางโฟลเดอร์เพื่อเปลี่ยนเส้นทางโฟลเดอร์ถังขยะไปยังเซิร์ฟเวอร์กลาง อย่างไรก็ตามฉันจะจัดว่าเป็นความคิดที่ไม่ดีอย่างยิ่งยวด (tm) จากนั้นคุณจะลบไฟล์ออกจากไดเรกทอรีที่แชร์ การเชื่อมโยงสิ่งนี้กับเครือข่ายการตั้งค่าความปลอดภัย ฯลฯ จะทำให้สิ่งนี้เป็นสิ่งสำคัญอันดับหนึ่งที่จะทำให้ sysadmins อื่นวิ่งหนีไปก่อนที่จะทำการเผาไหม้ตามธรรมชาติ
ฉันวิ่ง TreeSize ฟรีและเห็นว่าฉันมี 15 กรัมในถังรีไซเคิล แต่ฉันไม่เห็นอาจเป็นเพราะผู้ใช้ที่เสียชีวิตไปนานแล้ว แต่ใน TreeSize Pro ฉันสามารถลบได้ซึ่งใส่ข้อมูลลงในถังรีไซเคิลที่ฉันเห็น
สิ่งนี้ใช้ได้กับฉัน: -
Get-ChildItem "C:\`$Recycle.bin\" | Remove-Item -Recurse -Force
มันจะลบ recycle.bin; Windows จะสร้างถังรีไซเคิลขึ้นมาใหม่ตามต้องการเช่นทันทีที่ผู้ใช้ลบไฟล์ใหม่
อาจไม่ใช่โค้ดที่หรูหราที่สุดและอาจมีวิธีที่ดีกว่าในการทำ แต่มันจะช่วยเพิ่มพื้นที่ว่างบนเซิร์ฟเวอร์ที่แออัด คุณสามารถทดสอบโดยใช้สวิตช์ -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 }
หวังว่านี่จะช่วยได้
ฉันมีถังรีไซเคิลที่แสดงข้อมูลมากกว่า 4GB แต่ฉันไม่สามารถล้างได้ ไปและพบโปรไฟล์จำนวนมากที่ไม่ได้ใช้บนเซิร์ฟเวอร์และลบออกภายใต้คุณสมบัติของระบบ - ขั้นสูง - โปรไฟล์ผู้ใช้และตอนนี้ถังรีไซเคิลว่างเปล่า
แน่นอนว่าจะไม่ลบบัญชีใด ๆ ที่ยังคงเป็นปัจจุบันหรือใช้งานอยู่ แต่ในฐานะผู้ดูแลระบบคุณสามารถทำได้ด้วยวิธีนี้
ฉันชอบโซลูชันนี้เพราะเข้าใจได้ง่ายว่าทำอะไรอยู่และทำงานได้ แต่เพื่อที่จะทำงานจากตำแหน่งใด ๆ ที่คุณเรียกใช้คำสั่งคุณจำเป็นต้องเรียกใช้การเปลี่ยนแปลงเช่นนี้ (เพิ่ม \ หลัง "drive_letter: ") และเพื่อให้สามารถลบโฟลเดอร์เหล่านั้นออกจากผู้ใช้รายอื่น .. คุณต้องเพิ่ม" -force "ที่ส่วนท้ายของคำสั่ง remove-item นอกจากนี้เมื่อคุณลบโฟลเดอร์ทั้งหมดใน C: \ $ Recycle.bin \ คุณไม่จำเป็นต้องใส่ "-recurse" เมื่อรับไอเท็มลูก ดังนั้นนี่จะเป็นคำสั่งสุดท้ายที่ฉันจะใช้แทน:
รับ ChildItem "C:` $ Recycle.bin \ "-Force | ลบรายการ - เรียกเก็บเงิน - กำลัง - อะไรถ้า
เอาออก - ถ้าหากคุณต้องการทำมากกว่าการทดสอบคำสั่ง
ใช้กระบวนการด้านล่างเพื่อลบไฟล์ทั้งหมด
ไฟล์ทั้งหมดจะถูกลบออกจากดิสก์