Bezpečne vymažte priečinok WinSXS v systéme Windows Server 2012

Predtým, ako hovoríme o bezpečnom spôsobe vyčistenia priečinka WinSxS v systéme Windows Server 2012, pokúsime sa pochopiť, aký je priečinok, čo je v ňom uložené a prečo sa časom zväčšuje..

Ak si pamätáte, pri inštalácii ďalších komponentov v systéme Windows Server 2003 si inštalačný sprievodca vyžadoval vloženie inštalačného disku na disk CD-ROM alebo zadanie cesty k adresáru s distribúciou systému Windows Server 2003. V systéme Windows Server 2008 sa spoločnosť Microsoft rozhodla zmeniť prístup k inštalácii ďalších rolí a funkcií systému Windows. Teraz sú všetky binárne súbory potrebné na nasadenie akejkoľvek úlohy uložené v adresári C: \ Windows \ WinSxS (WinSxS - Windows vedľa seba). To znamená, že pri inštalácii akejkoľvek ďalšej role teraz nie je potrebné prehľadávať a pripájať distribučný disk k serveru. Pri tomto prístupe prirodzene vyžaduje OS oveľa viac miesta na disku. Musíte pochopiť, že adresár WinSXS obsahuje kľúčové komponenty systému, takže z neho nemôžete nič odstrániť manuálne. Prečo? Veľkosť priečinka WinSXS neustále rastie? Odpoveď je jednoduchá - aktualizácie. Pri inštalácii aktualizácií pre rôzne komponenty zostanú staré a nové verzie aktualizovaných komponentov v adresári WinSXS. Vďaka tejto architektúre môžeme kedykoľvek bezpečne odstrániť akúkoľvek nainštalovanú aktualizáciu a vrátiť sa k starej verzii súčasti.

obsah:

  • Funkcie na požiadanie v systéme Windows Server 2012
  • Nainštalujte vzdialené role a funkcie v systéme Windows Server 2012

rada. Používatelia Windows 7 SP 1 môžu odstrániť veľkosť priečinka WinSxS odstránením nepoužitých aktualizácií.

Čo ak však bude systém funkčný, nie sú plánované žiadne ďalšie úlohy a na disku nie je dostatok miesta? Koniec koncov, je nelogické, že na systémovom disku je niekoľko gigabajtov obsadených distribúciami, ktoré nikdy nebudú potrebné! V systéme Windows Server 2008 je bohužiaľ odstránenie týchto súborov bez poškodenia systému dosť ťažké. V novom operačnom systéme pre servery - Windows Server 2012 sa však spoločnosť Microsft rozhodla tento nedostatok napraviť a predstavila novú funkciu s názvom Funkcie na požiadanie.

Funkcie na požiadanie v systéme Windows Server 2012

funkcie Funkcie na požiadanie (funkcie na požiadanie) umožňuje zmenšiť veľkosť systému na disku, čím umožňuje odstrániť binárne súbory nepoužitých rol z priečinka WinSxS. V prípade, že v budúcnosti bude potrebné vrátiť predtým odstránenú rolu, všetky súbory potrebné na fungovanie rolí môžu byť extrahované z distribučného obrazu systému Windows Server 2012, služby Windows Update alebo sieťového prostriedku s pôvodným obsahom WinSxS..

Pomocou nasledujúceho príkazu Powershell môžete získať informácie o všetkých rolách systému:

Get-WindowsFeature

Ako vidíte, v stĺpci Inštalovať stav Zobrazí sa stav každej roly. Možné stavy:

  • nainštalovaný: rola alebo funkcia je nainštalovaná a systém ju v súčasnosti používa
  • k dispozícii: rola nie je nainštalovaná na serveri, disk však obsahuje všetky potrebné súbory, ktoré vám umožňujú túto úlohu kedykoľvek nainštalovať / aktivovať..
  • odstránené: - rola alebo funkcia nie je nainštalovaná na serveri, súbory potrebné na jej inštaláciu sa z disku odstránia

Preto pri inštalácii akejkoľvek roly prostredníctvom GUI alebo Powershell (príkaz Install-WindowsFeature), jeho stav z dostupných zmien na nainštalovaný a pri odinštalovaní (príkaz odinštalovať-WindowsFeature), naopak.

Rolu z disku (zo zložky WinSxS) môžete úplne odstrániť iba pomocou Powershell. Použite špeciálny argument pre príkaz Uninstall-WindowsFeatur  - Remove.

Ak chcete napríklad odstrániť binárne súbory pre rolu servera DHCP, spustite príkaz:

Odinštalovať -Funkce Windows - Názov DHCP -Odstrániť

Odstránenie súborov adresára služby Active Directory Domain Services:

Odinštalujte službu AD-DomainFeature-WindowsFeature -Odstrániť

Pomocou potrubí Powershell môžete napísať komplexnejší príkaz, ktorý odstráni inštalačné súbory zo všetkých nepoužitých rolí a funkcií systému Windows Server z disku:

Get-WindowsFeature | Where-Object $ _. InstallState -Eq “Available” | | Odinštalovať - ​​WindowsFeature --Odstrániť

V našom príklade, za predpokladu, že bola nainštalovaná iba rola súborového servera, sa veľkosť priečinka WinSxS znížila z 8 na 5,2 GB. Nie je to zlé, však? Okrem toho sme na vymazanie priečinka WinSxS potrebovali iba jeden príkaz.

Nainštalujte vzdialené role a funkcie v systéme Windows Server 2012

Zvážte ďalší scenár, ktorý predpokladá, že musíte nainštalovať určitú rolu systému Windows Server 2012, ktorej distribúcia bola odstránená z adresára WinSxS. Existuje niekoľko spôsobov, ako obnoviť rolu: pomocou GUI Server Manager alebo pomocou Powershell.

Predtým, ako začnete obnovovať súbory rolí, musíte určiť index nainštalovaného vydania systému Windows Server 2012. Potrebujeme disk s distribučnou súpravou Windows Server 2012 (alebo skôr obrazový súbor install.wim umiestnený v adresári zdrojov). Spustite nasledujúci príkaz Powershell:

Get-windowsimage -imagepath \ sources \ install.wim

Vyhľadajte verziu systému Windows Server nainštalovanú v počítači a zapamätajte si jeho index (hodnota v riadku Register). V našom príklade ide o dátové centrum Windows Server 2012 s indexom 4. (Funkcie práce s rôznymi vydaniami systému Windows 2012 sme už preskúmali v jednej distribúcii v článku „Integrácia ovládačov do inštalačného disku systému Windows Server 2012“)..

Rovnakú operáciu je možné vykonať pomocou pomocného programu Dism:

dism.exe / get-imageinfo /imagefile:d:\sources\install.wim

Nainštalujte vzdialenú rolu pomocou Správcu servera

Otvorte konzolu Server Manager a spustite Sprievodcu pridaním rol a funkcií. Vyberte rolu alebo funkciu, ktorú chcete nainštalovať. Sprievodca vás upozorní, že niektoré súbory potrebné na inštaláciu tejto roly chýbajú a musíte zadať alternatívnu cestu k umiestneniu distribúcie. Zadajte alternatívnu zdrojovú cestu.

Do poľa Cesta zadajte úplnú cestu k súboru intall.wim a index nainštalovanej edície OS v tomto formáte:

WIM: D: \ Sources \ Install.wim: 4

Ak je to potrebné, v tomto riadku môžete určiť sieťovú cestu k adresáru pomocou súboru WIM alebo sieťovú cestu k adresáru WinSxS. Cestu do tohto adresára môžete navyše zadať okamžite pre skupinu serverov pomocou skupinovej politiky ( Konfigurácia počítača -> Šablóny pre správu -> Systém -> Zadajte nastavenia pre voliteľnú inštaláciu a opravu komponentov). Druhá možnosť je výhodná v prípade veľkého počtu inštalácií serverov so systémom Windows Server 2012, pretože celkový efekt vyčistenia priečinka WinSxS môže dosiahnuť stovky GB..

Po kliknutí na tlačidlo OK sa všetky potrebné súbory pre nainštalovanú rolu skopírujú do adresára WinSxS.

Obnovenie odstránenej roly systému Windows 2012 pomocou Powershell

Rovnakú operáciu môžete vykonať iba jedným príkazom Powershell. Predpokladajme, že musíme obnoviť odstránené súbory rolí ADDS. Spustite nasledujúci príkaz:

Install-WindowsFeature AD-Domain-Services -Source WIM: WIM: D: \ Sources \ Install.wim: 4

V tomto článku sme teda prišli na novú funkciu systému Windows Server 2012 s názvom Funkcie na požiadanie, ktorá vám umožňuje odstrániť binárne distribúcie nepoužitých serverových rolí z adresára WinSxS. V prípade potreby sa odstránená rola dá ľahko obnoviť: všetko, čo je na to potrebné, je distribúcia systému Windows Server 2012.

Vo Windows 8 funguje funkcia Feautere on Demand trochu inak, faktom je, že cmdlet Powershell, ktorý používame, jednoducho chýba. Jeho náprotivkom (nie je to tak pohodlné) je príkaz DISM s možnosťou / Zakázať funkciu. Prípadne môžete jednoducho skomprimovať obsah adresára Winsxs. Podrobnosti v článku Ako zmenšiť veľkosť priečinka Winsxs v systéme Windows 8