Bagaimana cara menginstal Pembersihan Disk pada server Windows 2012 tanpa menginstal Pengalaman Desktop?

14

Masalahnya hanyalah bahwa saya ingin melakukan yang terbaik untuk membersihkan / memadatkan drive .vhdx VM sebelum menjalankan cmdlet Optimize-VHD. Menyenangkan menggunakan utilitas Pembersihan Disk Microsoft. Masalahnya adalah itu tidak diinstal secara default.

Cara resmi untuk mendapatkannya adalah dengan menggunakan "Tambahkan Peran dan Fitur" dan tambahkan fitur "Pengalaman Desktop". Ada efek samping yang tidak diinginkan untuk itu, di antaranya bahwa fitur tambahan memerlukan fitur "Media Foundation" dan "Tinta dan Tulisan Tangan". Saya hanya ingin "Disk Cleanup".

Granger
sumber
Ingat, tidak seperti tahun 2008 Desktop Experience dapat dilepas dan Anda dapat kembali ke Server Core.
Michael Hampton
Benar: Sebagian cara saya menemukan ini. :) Tapi sekarang saya tidak perlu me-reboot server saya untuk "menginstal" itu.
Granger
Juga, hapus semua file log di bawah c:\windows\logs\cbs. Beberapa pengguna melaporkan 20+ GB yang dikonsumsi oleh log ini. Log ini berkembang setiap kali Anda menjalankan Pembersihan Disk atau Pembaruan Windows (dan siapa yang tahu apa lagi). Jika Anda tidak dapat menghapusnya, hentikan TrustedInstallerlayanan dan coba lagi.
James L.

Jawaban:

17

"Disk Cleanup" hanya membutuhkan 2 file untuk berfungsi (bersama-sama, kurang dari 260KB)

"cleanmgr.exe" untuk platform Anda, dan "cleanmgr.exe.mui" untuk lokal Anda. Mereka sudah ada di mesin Anda dalam sub-folder di bawah "% SystemRoot% \ WinSxS".

Pertama, cari di bawah folder "% SystemRoot% \ WinSxS" untuk "cleanmgr.exe". Anda mungkin akan menemukan file di folder "amd64", "wow64", dan "x86". Saya memilih "amd64" untuk kedua file pada instalasi Windows Server 2012 Standard x64 saya.

Salin 2 file itu ke lokasi ini:

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

(Saya akan berasumsi bahwa, jika Anda menggunakan lokal yang berbeda, WinSxS akan memiliki lebih banyak pilihan, dan Anda harus menyalin file .mui ke sub-folder untuk lokal itu.)

Secara teknis, Anda sudah selesai pada saat ini. Jalankan "cleanmgr.exe" sebagai Administrator jika Anda ingin menampilkan semua yang dapat dibersihkan (termasuk Pembaruan Windows yang disimpan di WinSxS, yang sekarang menjadi pilihan di Win2012).

Jika Anda ingin lebih "GUI-ness", lanjutkan ...

Untuk mendapatkan "Disk Cleanup" baru Anda ke menu Start, buat pintasan ke file "cleanmgr.exe". Masukkan pintasan baru di folder "% ProgramData% \ Microsoft \ Windows \ Start Menu \ Programs \ Administrative Tools"; beri nama "Disk Cleanup". Sekarang, ketika di menu Start, Anda cukup mengetik "Disk Cleanup", dan Anda akan memiliki opsi untuk memulainya sebagai Administrator di awal.

Untuk mendapatkan "Disk Cleanup" muncul sebagai tombol pada kotak dialog Properties disk drive, Anda harus mengubah registri untuk menambahkan kunci baru dan "Expandable String Value". Buat file teks .reg baru dan rekatkan pada yang berikut ini:

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

String hex adalah "% SystemRoot% \ System32 \ cleanmgr.exe / D% c", jika Anda ingin menambahkan ini secara manual. Bagi saya, saya hanya perlu kunci pertama yang ditambahkan. Kunci kedua hanyalah tempat lain yang saya temukan pengaturannya. FYI, ada 2 tempat lain di registri yang berurusan dengan "cleanmgr.exe", tapi untungnya mereka tidak masalah untuk ini, karena mereka menggunakan beberapa barang GUID ClassID.

Granger
sumber
2
Jika Anda menggunakan OS 64bit, maka ada dua set file di winsxsfolder. The amd64file masuk c:\windows\system32dan c:\windows\system32\en-US, dan x86file masuk c:\windows\syswow64dan c:\windows\syswow64\en-US.
James L.
Tampaknya metode ini tidak lengkap. Melakukan ini sepertinya tidak memberi saya opsi untuk menghapus "Instalasi Windows Sebelumnya". Menginstal Pengalaman Desktop pada host yang diberikan tidak. Saya akan memeriksa beberapa server lagi untuk mengonfirmasi hal ini.
Michael Bisbjerg
1
Mencoba ini pada Win2012 R2, tetapi Windows mengatakan kepada saya bahwa itu tidak mendukung menjalankan aplikasi 16-bit lama (!). Melihat ke EXE, tampaknya dikompresi, tetapi tampaknya tidak ada utilitas resmi untuk mengekstraknya. Saya menemukan ini di GitHub, itu bekerja dengan baik pada instalasi saya dan saya mendapatkan penyihir pembersihan bekerja: github.com/hfiref0x/SXSEXP
Ale
Tampaknya ini tidak lagi berfungsi mengumumkan 2018. Saya memiliki beberapa subfolder (amd64, x86, wow64) di direktori WinSxS dengan banyak salinan cleanmgr.exe / cleanmgr.mui dan tidak ada kombinasi yang berfungsi - EXE keluar begitu saja saat dijalankan. Saya juga harus menggunakan alat SXSEXP yang disebutkan oleh @Ale untuk mendapatkan cleanmgr.exe agar dapat dieksekusi.
Ian Kemp
hanya berfungsi sebagian (tidak ada opsi "bersihkan file sistem")
jitbit