Làm cách nào để cài đặt Disk Cleanup trên máy chủ Windows 2012 mà không cần cài đặt Trải nghiệm máy tính để bàn?


14

Vấn đề đơn giản là tôi muốn làm tốt nhất có thể để dọn dẹp / nén ổ đĩa .vhdx của VM trước khi chạy lệnh ghép ngắn Optimize-VHD. Thật tuyệt khi sử dụng tiện ích Disk Cleanup của Microsoft. Vấn đề là nó không được cài đặt theo mặc định.

Cách chính thức để có được nó là sử dụng "Thêm vai trò và tính năng" và thêm tính năng "Trải nghiệm máy tính để bàn". Có những tác dụng phụ không mong muốn, trong đó, tính năng này cũng yêu cầu các tính năng "Nền tảng truyền thông" và "Mực và chữ viết tay". Tôi chỉ muốn "Dọn đĩa".


Hãy nhớ rằng, không giống như năm 2008 Trải nghiệm máy tính để bàn có thể tháo rời và bạn có thể quay lại Server Core.
Michael Hampton

Đúng: Đó là một phần cách tôi tìm ra điều này. :) Nhưng bây giờ tôi không phải khởi động lại máy chủ của mình để "cài đặt" nó.
Granger

Ngoài ra, xóa tất cả các tệp nhật ký dưới c:\windows\logs\cbs. Một số người dùng báo cáo hơn 20 GB được tiêu thụ bởi các nhật ký này. Các nhật ký này mở rộng mỗi khi bạn chạy Disk Cleanup hoặc Windows Updates (và ai biết những gì khác). Nếu bạn không thể xóa chúng, hãy dừng TrustedInstallerdịch vụ và thử lại.
James L.

Câu trả lời:


17

"Dọn đĩa" chỉ yêu cầu 2 tệp để hoạt động (cùng nhau, dưới 260KB)

"Cleanmgr.exe" cho nền tảng của bạn và "Cleanmgr.exe.mui" cho ngôn ngữ của bạn. Chúng đã có trên máy của bạn trong các thư mục con trong "% SystemRoot% \ WinSxS".

Đầu tiên, tìm kiếm trong thư mục "% SystemRoot% \ WinSxS" cho "cleanmgr.exe". Bạn có thể sẽ tìm thấy các tệp trong các thư mục "amd64", "wow64" và "x86". Tôi đã chọn "amd64" cho cả hai tệp trên bản cài đặt Windows Server 2012 Standard x64.

Sao chép 2 tệp đó vào các vị trí này:

  • % SystemRoot% \ System32 \ cleanmgr.exe
  • % SystemRoot% \ System32 \ en-US \ cleanmgr.exe.mui

(Tôi cho rằng, nếu bạn đang sử dụng một ngôn ngữ khác, WinSxS sẽ có nhiều lựa chọn hơn và bạn phải sao chép tệp .mui vào thư mục con cho miền địa phương đó.)

Về mặt kỹ thuật, bạn đã hoàn thành vào thời điểm này. Chạy "cleanmgr.exe" với tư cách Quản trị viên nếu bạn muốn nó hiển thị cho bạn mọi thứ mà nó có thể xóa (bao gồm các Cập nhật Windows cũ được lưu trữ trong WinSxS, hiện là một tùy chọn trong Win2012).

Nếu bạn muốn có thêm "GUI-ness", hãy tiếp tục ...

Để đưa "Dọn ổ đĩa" mới của bạn vào menu Bắt đầu, hãy tạo một lối tắt đến tệp "Cleanmgr.exe". Đặt lối tắt mới vào thư mục "% ProgramData% \ Microsoft \ Windows \ Start Menu \ Programs \ Admin Tools"; đặt tên là "Dọn đĩa". Bây giờ, khi trong menu Bắt đầu, bạn có thể chỉ cần gõ "Dọn ổ đĩa" và bạn sẽ có tùy chọn để bắt đầu với tư cách Quản trị viên ngay từ đầu.

Để có được "Disk Cleanup" hiển thị dưới dạng nút trên hộp thoại Thuộc tính của ổ đĩa, bạn phải thay đổi sổ đăng ký để thêm khóa mới và "Giá trị chuỗi có thể mở rộng". Tạo một tệp văn bản .reg mới và dán vào sau:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6c,00,\
  65,00,61,00,6e,00,6d,00,67,00,72,00,2e,00,65,00,78,00,65,00,20,00,2f,00,44,\
  00,20,00,25,00,63,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6c,00,\
  65,00,61,00,6e,00,6d,00,67,00,72,00,2e,00,65,00,78,00,65,00,20,00,2f,00,44,\
  00,20,00,25,00,63,00,00,00

Chuỗi hex là "% SystemRoot% \ System32 \ cleanmgr.exe / D% c", trong trường hợp bạn muốn thêm thủ công này. Đối với tôi, tôi chỉ cần khóa đầu tiên được thêm vào. Khóa thứ hai chỉ là một nơi khác mà tôi tìm thấy cài đặt nằm. FYI, có 2 vị trí khác trong sổ đăng ký xử lý "cleanmgr.exe", nhưng may mắn là họ không quan trọng với việc này, vì họ đã sử dụng một số công cụ ClassID GUID.


2
Nếu bạn đang sử dụng HĐH 64 bit, thì có hai bộ tệp trong winsxsthư mục. Các amd64file đi in c:\windows\system32c:\windows\system32\en-US, và các x86file đi c:\windows\syswow64c:\windows\syswow64\en-US.
James L.

Có vẻ như phương pháp này chưa hoàn thành. Làm điều này dường như không cho tôi tùy chọn xóa "Cài đặt Windows trước". Cài đặt Trải nghiệm máy tính để bàn trên một máy chủ nhất định .. Tôi sẽ kiểm tra thêm một vài máy chủ để xác nhận điều này.
Michael Bisbjerg

1
Đã thử điều này trên Win2012 R2, nhưng Windows cho tôi biết rằng nó không hỗ trợ chạy các ứng dụng 16 bit cũ (!). Nhìn vào EXE, nó dường như bị nén, nhưng dường như không có tiện ích chính thức nào để giải nén nó. Tôi đã tìm thấy cái này trên GitHub, nó hoạt động tốt trong quá trình cài đặt của tôi và tôi đã làm cho trình hướng dẫn dọn dẹp hoạt động: github.com/hfiref0x/SXSEXP
Ale

Có vẻ như điều này không còn hoạt động vào năm 2018. Tôi có nhiều thư mục con (amd64, x86, wow64) trong thư mục WinSxS với nhiều bản sao của Cleanmgr.exe / Cleanmgr.mui và dường như không có kết hợp nào hoạt động - EXE sẽ sớm xuất hiện khi nó chạy. Tôi cũng đã phải sử dụng công cụ SXSEXP được đề cập bởi @Ale để có được Cleanmgr.exe để có thể thực thi được.
Ian Kemp

chỉ hoạt động một phần (không có tùy chọn "dọn sạch tệp hệ thống")
jitbit
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.