Izgradite vlastiti automatizirani sustav ažuriranja datoteka
Svaki administrator poslužitelja ima skup uslužnih programa koje žele koristiti. Obično se ovi alati čuvaju na svakom računalu kako bi se osigurala dostupnost i mogu doći iz različitih izvora kao što su Sysinternals i Nirsoft.
Da bi se ti alati ažurirali na najnovije verzije, ručno ažuriranje može biti prilično zamorno i dugotrajno, pogotovo kada je u kombinaciji više poslužitelja. Stoga imamo rješenje za vas: jednostavno rješenje za postavljanje gdje ćete održavati jedan skup alata, a svi vaši uređaji sinkronizirati verzije svojih alata na tu lokaciju.
Na primjer, pretpostavimo da održavate sustave na 3 odvojene mreže i želite imati isti skup od 10 alata dostupnih na svim tim strojevima za skripte i održavanje. Imali biste glavnu mapu alata (dostupno putem web-mjesta) na kojoj održavate verzije izdanja koje želite distribuirati svim vašim sustavima. Svi vaši drugi sustavi tada „telefoniraju“ u ovu glavnu mapu i preuzimaju odgovarajuću verziju lokalno. Ovaj proces pruža automatizirano rješenje za uvijek osiguranje da su vaše verzije uslužnog programa konzistentne u svim vašim sustavima.
Postavljanje okruženja
Okruženje za rad je prilično jednostavno postaviti i, kada ga završite, je uistinu rješenje „postavi ga i zaboravi“.
- Stvorite mapu unutar web-lokacije kojoj pristupate poslužitelj kao glavna mapa (tj. Mapa alata).
- Prenesite sve uobičajene uslužne programe u ovu mapu.
- Na poslužiteljima koje želite sinkronizirati na glavnu web-lokaciju postavite skriptu u lokalnu mapu u kojoj se nalaze alati (i WGet ako je već nemate).
- Ažurirajte URL u glavnu mapu (npr. Http://my.site.com/ToolsFolder).
- Zakažite skriptu da se povremeno pokreće i svi lokalni alati koji postoje na glavnom web-mjestu bit će sinkronizirani.
Alternativna upotreba
Iako smo pokrili praktičnu uporabu administratora sustava za ovu vrstu skripte, postoje mnoge druge situacije u kojima ova skripta može dobro doći:
- Koristi se za ažuriranje Sysinternals i Nirsoft alata na lokalnim strojevima (URL-ovi su uključeni u skriptu).
- Koristite na stolnom sustavu da biste sinkronizirali skup dokumenata s glavnom kopijom.
Skripta podržava i kodiranje URL-a kao i dobivanje jednog iz naredbenog retka (tj. UpdateFromWeb http://source.site.com/Stuff.zip), stoga upotrijebite svoju maštu.
Skripta
@ECHO OFF TITLE Ažuriranje iz web-ECHO-a Ažuriranje web-a ECHO Autor: Jason Faulkner ECHO SysadminGeek.com ECHO. JEKA. SETLOCAL EnableExtensions REM Postavite ovu skriptu u mapu koja sadrži uslužne programe za ažuriranje. REM Zahtijeva da WGet bude u istoj mapi kao ova skripta ili na mjestu postavljenom u PATH varijabli. REM URL za traženje ažuriranja u slučaju da nitko nije naveden kao parametar. REM URL zanimljivosti --- REM Sysinternals: http://live.sysinternals.com/tools REM NirSoft: http://www.nirsoft.net/panel SET URL = http: //my.site.com/ToolsFolder REM Ako je parametar naveden, koristite ga kao URL. AKO NE % 1 == SET URL =% ~ 1 REM Postavite ovu vrijednost na 1 da biste ponovno pokrenuli zadatke koji su zaustavljeni tijekom procesa ažuriranja. SET RestartKilledTasks = 0 Direktorij ECHO Detected:% ~ dp0% ~ d0 CD% ~ p0 ECHO. JEKA. SET NewFile = .NEW FOR / F %% A IN ('DIR / B') DO WGet --output-document = "%% A% NewFile%" "% URL% / %% A" REM Brisanje prazno (nije pronađeno) ) datoteke. FORFILES / P. / C "CMD / C IF @ fsize == 0 DEL / F / Q @path" SET StartWhenFinished = "% TEMP% StartWhenFinished.tmp.txt" ECHO; Prekid alata>% StartWhenFinished% FOR / F %% A IN (' DIR / B ') DO (AKO POSTOJI "%% A% NewFile%" (ECHO pronašao novu verziju: %% A REM Ako je datoteka pokrenuta, ubijte je kako biste je mogli zamijeniti. FOR / F %% B IN ( "TASKLIST") DO (IF / I [%% A] == [%% B] (trenutno se izvodi ECHO %% B, proces ubijanja. ECHO %% A >>% StartWhenFinished% TASKKILL / IM "%% B" / T / F)) REM Zamijenite s novom verzijom DEL / F / Q "%% A" RENAME "%% A% NewFile%" "%% A")) IF % RestartKilledTasks% == 1 (ECHO. ECHO Nastavak ubijenih zadataka FOR / F "usebackq skip = 1" %% A IN (% StartWhenFinished%) DO (ECHO Pokretanje %% A START "Ponovno pokretanje %% A" "%% A")) IF EXIST "% StartWhenFinished% "DEL"% StartWhenFinished% "ENDLOCAL
linkovi
Preuzmite skriptu UpdateFromWeb iz SysadminGeek.com
Preuzmite WGet