it-swarm.asia

/ Winsxs klasörü neden bu kadar büyüyor ve küçültülebilir mi?

Kullandığım bir Vista sanal makinesinde yalnızca 10 GB'lık sanal bir sabit disk var - zamanla boşluğu kaldığından endişeleniyorum.

Suçluları kontrol etmek için TreeSize ) kullandım.

enter image description here

Ve birincil suçlu şu/winsxs veya "Windows Yan Yana" klasörü .

enter image description here

Windows Yan Yana klasörü nedir? Eh, bu burada oldukça iyi açıklanmıştır .

İşletim sistemindeki tüm bileşenler WinSxS klasöründe bulunur - aslında biz bu yere bileşen deposu diyoruz. Her bileşenin, oluşturulduğu sürüm, dil ve işlemci mimarisini içeren benzersiz bir adı vardır. WinSxS klasörü, bileşenin sistemde bulunduğu tek konumdur, sistemde gördüğünüz dosyaların diğer tüm örnekleri, bileşen deposundan sıkı bir şekilde bağlanarak “yansıtılır”. Son noktayı tekrar edeyim - işletim sistemindeki her bir dosyanın yalnızca bir örneği (veya tam veri kopyası) var ve bu örnek WinSxS klasöründe bulunuyor. Bu açıdan bakıldığında, WinSxS klasörü, işletim sisteminin tamamında, alt seviye işletim sistemlerinde "düz" olarak adlandırılan bir bütündür. Bu ayrıca, Sistem Dosyası Denetleyicisi (SFC) gibi işlemleri gerçekleştirirken veya ek özellikler ve roller yüklerken neden medya için sizden istemeyeceğinizi de açıklar.

Bu, klasörün neden büyük başladığını ancak zaman içinde neden büyüdüğünü açıklamıyor - bu sorunun cevabı hizmet ediyor. Windows'un önceki sürümlerinde atomik hizmet birimi dosyaydı, Windows Vista'da bu bileşendir. Belirli bir ikiliyi güncellediğimizde, tüm bileşenin yeni bir sürümünü çıkarırız ve bu yeni sürüm, bileşen deposundaki orijinalin yanında depolanır. Bileşenin daha yüksek sürümü sisteme yansıtılıyor, ancak mağazadaki eski sürüme dokunulmuyor. Bunun nedeni, komponent deposunun neden bu kadar genişlediğinin üçüncü kısmı.

Diğer birçok insan / winsxs klasörünün boyutundan da şikayetçi :

Bir iş arkadaşınız kısa bir süre önce her iki yıllık çalışma dizüstü bilgisayar yenilemesini aldı ve yeni dizüstü bilgisayarını Vista ile doldurmanın ortasındaydı. Bir nedenden ötürü, C: sabit diski sadece 25GB'a bölündü ve alanın geri kalanı çok daha büyük bir D için ayrıldı.

Her neyse, birçok Windows Güncellemesini yükledikten sonra, C: 'de kalan neredeyse hiç sürücü alanı kalmadı ve bir nedenden ötürü WinSxS dizini 8GB’tan daha fazla bir hıza ulaştı.

WinSxS (Windows Yan Yana) dizinin ne işe yaradığını bilmeme rağmen, normal işletim sistemi güncellemelerinde bu dizinin neden bu kadar hızlı patlayacağından emin değildim.

Tüm bu yinelenen dosyaların güvenlik için olmasını gerçekten umursamıyorum, ama _ do _ disk alanı hatası nedeniyle patlayan VM ile ilgileniyorum. Yani ../winsx'ler herhangi bir şekilde güvenli bir şekilde ayrıştırılabilir mi? Öyle görünmüyor gibi ..

Yöneticiler, hiçbir nedenle,/winsxs dizinini temizlemek için kendi başlarına üstlenmemelidirler - bunu yapmak Windows Update ve MSI'nin daha sonra düzgün çalışmasını engelleyebilir. Dizinden yanlışlıkla silinmeyi önleme, dizine çocuklarına miras kalan güçlü bir güvenlik tanımlayıcısı koyarak gerçekleştirilir.

Bu/winsxs klasörü daha da büyürse, bu sanal makineyi yeniden görüntülemem gerekecek .. ki ben gerçekten yapmak istemiyorum!

174
Jeff Atwood

Nihayet bunu yapmanın bir yolu var _ Windows 8.1 service pack 1 ve Windows Server 2012 R2 'ye benziyor.

Bileşen mağaza analizi aracı:

Dism.exe /Online /Cleanup-image /AnalyzeComponentStore

Taramanın sonunda, kullanıcı şöyle bir rapor alır (winsxs klasörünün gerçek boyutu)

analyzecomponentstore results

Bileşen deposu temizliği:

Günümüzde, Komponent Mağazası Temizliği, son kullanıcı tarafından DISM çalıştırılarak veya Disk Temizleme Sihirbazı kullanılarak elle tetiklenmelidir. Bileşen Mağazasını Temizleme işlemini ortalama son kullanıcı için daha kullanışlı hale getirmek için, son kullanıcılar için otomatik olarak yer tasarrufu sağlayan bir bakım görevine eklenecektir. Bunu etkinleştirmek için, yeniden başlatmaya gerek kalmadan değiştirilmiş gelen kutusu sürücülerinin kaldırılmasına izin verecek bir değişiklik yapılacaktır (bugün CBS tarafından yapılan tüm sürücü yükleme/kaldırma işlemleri için yeniden başlatma gerekir).

  1. Dism.exe /online /Cleanup-Image /StartComponentCleanup

  2. Disk Temizleme aracı, Sistem dosyalarını temizle düğmesini.

    disk cleanup tool

  3. schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"

6
Jeff Atwood

Windows 7 SP1 kurulumundan sonra temizleyen hoş bir komut var (beni 3 GB civarında kurtardı):

DISM /online /cleanup-Image /spsuperseded

Yükseltilmiş bir komuttan çalıştırılmalıdır İstemi

101
GvS

Bu kopyalar ve yedeklemeler sınırlı disk alanı bulunduğunda oldukça can sıkıcıdır.

O yerde olmak, işletim sisteminin istikrarını tehlikeye atmayacak tek yol, "Disk alanından kazanmak için içeriği sıkıştır" ayarını cömertçe kullanmaktı.

Tüm bu yedekleme dizinlerini Windows dizini altında sıkıştırarak, tanınabilir hiçbir yan etkisi olmadan dizin boyutunu 6,5 GB'den 5 GB'a düşürdüm. Pencere dizini dışındaki bazı nesnelerde kullanmak 10 GB'ınızı daha da uzatabilir.

33
eran

Vista'nız varsa ve SP2'yi yüklediyseniz, eski sistem dosyalarını yeni Servis Paketi Temizleme Aracı ile temizleyebilirsiniz.

  1. Başlat> Tüm Programlar> Donatılar> Komut İstemi'ni tıklayın veya Başlat> Çalıştır'ı tıklayın ve Komut İstemi'ni açmak için cmd yazın.
  2. “Compcln.exe” komutunu yürütün. Yol “c:\Windows\System32\compcln.exe” şeklindedir.
  3. Kullanıcılardan Vista SP2'yi sistemde kalıcı olarak tutup tutmayacakları sorulacak.
  4. “Y” yazıp enter tuşuna basın, sistem Windows bileşenlerini temizlemeye başlayacaktır.
27
Tomas Andrle

Windows 8 öğelerinde, WinSxS klasörünün boyutunu Windows Özelliklerini Kaldırma ile azaltabilirsiniz:

DISM.exe /Online /Disable-Feature /Featurename:<name> /Remove

Önemli olan / 8 parametresi Windows 8 için yeni olan _ parametresidir.

WinSxS'deki en fazla alan, zamanla yüklediğiniz WindowsUpdates'tir. Windows 8/Windows 10 öğelerinde şunları yapabilirsiniz yeni güncellemelerle değiştirilen Güncelleştirmeleri algıla ve kaldır (yeni birikimli IE Güncellemeler gibi) bu komutu çalıştırıyor:

dism.exe /online /cleanup-image /startcomponentcleanup

veya disk temizleme sihirbazını çalıştırıp "Windows Update Cleanup" seçeneğini seçin.

enter image description here

enter image description here

enter image description here

Ayrıca servis yığını güncellemesini yüklediğinizden emin olun http://support.Microsoft.com/kb/2821895 .

Bu güncellemeler, WinSxS’in derinlemesine temizlemesini sağlar ve şu anda kullanılmayan WinSxS’deki tüm DLL/Exe dosyalarını daha küçük delta dosyalarına sıkıştırır:

enter image description here

Farklı dosya boyutlarına bakın.

Windows 8.1yeni DISM komutları ekler . /startcomponentcleanup, son Güncellemenizi kalıcı kılan ve daha fazla yer kazanmak için tüm eski dosyaları silen yeni bir /ResetBase parametresi alır.

Ayrıca WinSxS klasörünü analiz etmek için dism /online /cleanup-image /analyzecomponentstore komutunu çalıştırabilirsiniz:

enter image description here

Şimdi, yerden tasarruf etmek için temizliği ne zaman çalıştırmanız gerektiğini size söyler.

21
magicandre1981

SP1'i kalıcı hale getirmek için VSP1CLN.EXE komutunu kullanabilirsiniz, ki bu, bu sayfaya göre , yerine geçen SP1 bileşenlerini serbest bırakacaktır.

20
Ben Lings

İyi haberler! Şu anda bir resmi olarak onaylanmış bir yöntem var , Microsoft'tan Windows 7 SP1 için, WinSXS klasörünüzü temizleyin .

  1. HotFix 2852386 yükleyin - El ile indirebilir veya Windows Update'inizden gelmesini bekleyebilirsiniz
  2. Bu, "Windows Update Temizleme" için etkinleştirebileceğiniz Disk Temizleme Wizard (Sistem Dosyalarını Temizleme Altında) seçeneğine yeni bir seçenek ekler. Bu seçeneği işaretleyin.
  3. Tamam'ı tıklayın

Uyarı: WinSxS klasörünüzü temizledikten sonra bazı Windows Güncellemelerini kaldıramayabilirsiniz.

9
Mark Henderson

Dism ++ aradığınız şey ( https://www.chuyu.me/en/index.html ).

Gigabaytlık yer tasarrufu yapacaksınız ...

"Değiştirilen WinSxS derlemeleri" seçmeniz gerekir. Bunu yaparsanız, bu yüklü güncelleştirmelerin kaldırılamayacağı konusunda size bir uyarı verir. Tamam'ı tıklayın, sonra tarayın

 enter image description here

Size ne kadar yer kazanacağınız konusunda bir fikir verecektir. Temizleme isabet ve o boşluğu temizlemelidir.

2
user425154

Umarız basit bir oneliner'ın, Jeff Atwood'un /ResetBase anahtarını cevaplamamasının harika bir cevabı olması faydalı olacaktır.

Dikkat : Bu anahtar, WinSxS klasörünün boyutunu azaltmaya yardımcı olur, ama önceki bileşenlerin sürümlerini tamamen siler, bu nedenle daha önce kurulu güncellemeleri geri alamazsınız. Ancak sisteminiz iyi çalışıyorsa, güvende olmalısınız (özellikle Üretim ortamında değilseniz)

dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

Bu, Windows 8.1 ve sonraki sürümlerinde çalışır

1
maoizm

Yukarıda belirtilen çözümlerin yanı sıra, önemli bir alan kazanmanın bir yolu da tüm klasör içeriğini sıkıştırmaktır. Ancak, bu Explorer (en azından Windows 7'den başlayarak gerekli haklar gereklidir) kullanılarak yapılamaz.

Bu talimatlar / bunun nasıl başarılacağını gösterir:

sc query msiserver 
sc query TrustedInstaller

sc stop msiserver
sc stop TrustedInstaller

sc config msiserver start= disabled
sc config TrustedInstaller start= disabled

icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS.acl" /t

takeown /f "%WINDIR%\WinSxS" /r

icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t

compact /s:"%WINDIR%\WinSxS" /c /a /i *

icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t

icacls "%WINDIR%" /restore "%WINDIR%\WinSxS.acl"
del "%WINDIR%\WinSxS.acl"

sc config msiserver start= demand
sc config TrustedInstaller start= demand

sc start msiserver
sc start TrustedInstaller

Notlar/ipuçları:

  1. Gruplandırma, el ile yapılırsa bu komutları çalıştırmanın önerilen yolunu gösterir. Normalde herhangi bir sorun olmamalıdır (kullanımda oldukları için atlanan bazı dosyalar dışında), ancak her grup için sonuç kontrol edilmelidir.

  2. Evde ve işte çeşitli işletim sistemleri kurulumunda şu adımları uyguladım: Win7x64, Win10x64, Windows Server 2008R2 ve Windows Server 2012 ve şu ana kadar bir sorun görmedim.

  3. Bazı adımların, özellikle de sıkıştırma zamanının oldukça zaman alması gerekir. Çoğu adım, işlenen dosyaları yineleyecek ve gösterecektir. Komut İstemi penceresinin simge durumuna küçültülmesi biraz hız kazanabilir.

0
Alexei