Pokud jste správce sítě a už jste se vypořádal(a) s automatizovanou instalací aplikací na počítače v doméně, tak tento článek pro vás nepřinese nic nového. Pokud jste ale automatizovanou instalaci nezkoušel(a), pak je to článek, který vám – doufám – pomůže.
Úvod
Znáte to – nějaká aplikace má každý týden novou verzi a vy lítáte po firmě a instalujete novou verzi. Zabere vám to spoustu času a přitom jde jen o to přihlásit se pod administrátorským účtem a odklikávat instalační volby… A když těch aplikací je víc a každý uživatel potřebuje jinou sadu aplikací a počítačů je dost, tak je to brzo na mrtvici.
A tady přichází ke slovu automatizovaná instalace. Co myslím automatizovanou instalací? Myslím tím instalaci určité aplikace na určitý počítač v doméně při startu či shutdownu (ať už vypnutí nebo restartu) a to bez jakéhokoliv zásahu administrátora.
Podmínky pro spuštění automatizované instalace
- Počítače jsou zařazeny v doméně.
- Máte plný přístup k Active Directory (AD) a aspoň trochu AD ovládáte.
- Počítače na které budete automatizovaně instalovat aplikace jsou zařazeny ve skupinách a mají pro danou skupinu nastavenu bezpečnostní politiku.
- Umíte skriptovat v DOSu a ještě lepší, když umíte navíc VBScript či Poweshell.
- Máte vytvořený adresář, ve kterém jsou umístěny všechny instalační skripty a instalační balíčky a logy. Tento adresář musí být nasdílen.
Postup zprovoznění
- V bezpečnostní politice AD pro danou skupinu počítačů ve volbě Computer Configuration-Windows Setting-Scripts(Startup/Shutdown) nastavte skript, který se bude spouštět.
- V bezpečnostní politice AD pro danou skupinu počítačů ve volbě Computer Configuration-Windows Setting-Administrative Templates-System-Scripts-Run xxx Scripts visible si nastavte, zda chcete vidět příkazové okno skriptu.
- Vytvořte si adresář, ve kterém budou skripty, logy, instalační balíčky. Tento adresář nasdílejte. Sdílení i vlastní adresář musí obsahovat plná práva pro skupiny: Domain Admins, Domain Users a Authenticated Users.
Několik postřehů z praxe
Všechno se o hezky čte, viďte? Vypadá to jednoduše a skvěle, co? Ale pak přijde realita a najednou zjistíte, že nějaká aplikace nemá možnost tiché instalace nebo má velice nestandardní postup instalace.
Abych uvedl konkrétní příklad: například systém Bakalář používaný na školách. S tím bylo trápení! Pro instalaci musí mít nejprve nastaven ODBC zdroj, pak musíte spustit “bakasql.exe REGI”. Jenže má to pár háčků: musíte to spustit z jednotky, kterou pro spuštění Bakaláře používáte a navíc ho musíte spustit přímo z adresáře, kde je bakasql.exe umístěn. A to nejdůležitější – musíte pro adresář Bakaláře nastavit plná práva pro skupinu Authenticated Users.
Moje rady
- Doporučuji instalační skript používat při Shutdownu, aby instalace nezdržovala uživatele při přihlašování (málokdy je potřeba nová instalace ihned provést a když bude chtít uživatele aplikaci ihned instalovat, tak si holt restartuje).
- Při odlaďování skriptů si nastavte viditelnost skriptu a dejte si někam pause, tím budete přesně vidět co se děje.
- Pokud u dané aplikace nelze použít tichá (bezodpovědní) instalace nastavte si viditelnost skriptu. Potom se objeví instalační okénka na obrazovce a uživatel nebo i vy to jen odkliká.
- Pokud musíte spouštět při automatizované instalaci další program z jiného než instalačního disku, pak na tento program musíte aplikovat plná práva pro skupinu Authenticated Users. Jinak nebudete mít právo ho spustit.
Doplnění pro Windows 10
Když jsem přecházel v práci na Windows 10, vše fungovalo, pak od listopadové aktualizace 2019 automatická instalace přestala fungovat. Zjistil jsem, že už nelze použít Authenticated Users. Nakonec jsem vydedukoval následující řešení:
- Na každý počítač při instalaci importuji Schedule task (stačí ji vytvořit na jednom počítači a exportovat), která při každém odhlášení (log-off) nebo přihlášení (log-on) spustí skript pod administrátorským účtem. Nelze použít trigger vypnutí počítače – nevím proč…
- Při instalaci nového počítače tedy musím i nakopírovat jednoduchý skript, který připojí síťový disk s autoinstalem (dávám do adresáře C:\Scripts) a spustí hlavní skript.
- Body 1 a 2 spolu s přiřazením příslušného doménového účtu pro instalaci provádím přes Powershell Remotting.