3Sep

Sukurkite savo automatinę failų atnaujinimo sistemą

click fraud protection

Kiekvienas serverio administratorius turi daugybę naudingų programų, kurias jie nori naudoti. Paprastai šios priemonės yra laikomos kiekviename įrenginyje, kad būtų užtikrintas prieinamumas, ir gali būti iš įvairių šaltinių, tokių kaip "Sysinternals" ir "Nirsoft".

Kad šie įrankiai būtų atnaujinami iki naujausių versijų, rankinis atnaujinimas gali būti gana nuobodus ir daug laiko, ypač kai mišinyje yra keli serveriai. Taigi, turime jums sprendimą: paprastas nustatymo sprendimas, kuriame jūs turite vieną įrankių rinkinį, o visos jūsų mašinos sinchronizuos jų įrankių versijas su šia vietove.

Pavyzdžiui, tarkime, kad jūs palaikote sistemas 3 atskiruose tinkluose ir norėtumėte turėti tą patį 10 įrankių rinkinį, kuris būtų prieinamas visose šiose mašinose scenarijus ir techninei priežiūrai. Jūs turėtumėte pagrindinį įrankių katalogą( prieinamas per tinklalapį), kuriame jūs palaikote versijų versijas, kurias norite platinti visoms jūsų sistemoms. Visos kitos jūsų sistemos tada "namo" į šį pagrindinį aplanką ir atsisiųsite atitinkamą versiją vietoje.Šis procesas suteikia automatizuotą sprendimą visada užtikrinti, kad jūsų programinės įrangos versijos būtų suderintos visose jūsų sistemose.

instagram viewer

Aplinkos nustatymas

Aplinka šiam darbui yra gana lengva nustatyti ir, kai tik tai daroma, iš tiesų yra "jį nustatė ir pamiršta".

  1. Sukurkite žiniatinklio svetainės, prie kurios prisijungsite, aplanką sukurkite kaip pagrindinį aplanką( t. Y. "ToolsFolder").
  2. Įkelkite visas savo įprastas programas į šį aplanką.
  3. Serveriuose, kuriuos norite sinchronizuoti su pagrindine svetaine, žemiau esantį scenarijų įdėkite į vietinį aplanką, kuriame yra įrankiai( ir WGet, jei to dar neturite).
  4. Atnaujinkite savo pagrindinio aplanko URL( pvz., Http: //my.site.com/ ToolsFolder).
  5. Nustatykite scenarijų periodiškai paleisti ir visi vietiniai įrankiai, esantys pagrindinėje svetainėje, bus sinchronizuojami.

alternatyva naudoja

Nors aptikome praktinį šio tipo scenarijaus sistemos administratoriaus funkciją, yra daugybė kitų situacijų, kai šis scenarijus gali būti naudingas:

  • Naudokite atnaujinti Sysinternals ir Nirsoft komunalines paslaugas vietinėse mašinose( URL yra įtrauktascenarijuje).
  • Naudokite darbastalio sistemoje, kad dokumentų rinkinys būtų sinchronizuojamas su pagrindine kopija.

Skriptas palaiko ir koduotą URL, ir tiekia jį iš komandinės eilutės( pvz., UpdateFromWeb http: //source.site.com/ Stuff.zip), todėl naudokite savo vaizduotę.

Script

@ECHO OFF TITLE Atnaujinimas iš interneto ECHO atnaujinimas iš interneto ECHO Parašė: Jasonas Faulkneras ECHO SysadminGeek.com ECHO.ECHO.SETLOCAL EnableExtensions REM Įdėkite šį scenarijų į aplanką, kuriame yra atnaujinimui reikalingos programos. REM reikalauja, kad WGet būtų toje pačioje aplanke kaip šis scenarijus arba nurodytas PATH kintamojo vietoje. REM URL ieškoti atnaujinimų, jei nė vienas nėra nurodytas kaip parametras. REM URL interesų --- REM Sysinternals: http: //live.sysinternals.com/ įrankiai REM NirSoft: http: //www.nirsoft.net/ skydas SET URL = http: //my.site.com/ ToolsFolder REM Jei parametras yra nurodytas, naudokite jį kaip URL.Jei ne( % 1) =={ } SET URL =% ~ 1 REM Nustatykite šią vertę 1, kad iš naujo paleistumėte užduotis, kurios buvo sustabdytos atnaujinimo proceso metu. SET RestartKilledTasks = 0 ECHO Aptikta aplankas:% ~ dp0% ~ d0 CD% ~ p0 ECHO.ECHO.SET NewFile =. NEW FOR / F %% A IN( "DIR / B") DO WGet --output-document = "%% A% NewFile%" "% URL% / %% A" REM Ištrinti tuščią( nerasta) failus. FORFAI / P./ C "CMD / C IF @ fsize == 0 DEL / F / Q @path" Nustatyti StartWhenFinished = "% TEMP% StartWhenFinished.tmp.txt" ECHO; Išjungti įrankiai & gt;% StartWhenFinished% FOR / F %% A IN( "DIR / B") DO( IF EXIST "%% A% NewFile%"( ECHO Rasta nauja versija: %% A REM Jei failas veikia, nužudykite jį taipgali būti pakeistas FOR / F %% B IN( 'TASKLIST') DO( IF / I [%% A] == [%% B]( ECHO %% B šiuo metu veikia, žudymo procesas. ECHO %% A & gt; & gt;% StartWhenFinished% TASKKILL / IM "%% B" / T / F)) REM Pakeisti į naują versiją DEL / F / Q "%% A" RENAME "%% A% NewFile%" "%% A")) Jei( % RestartKilledTasks%) ==( 1)( ECHO. ECHO Sustabdyti užduotus užklausas FOR / F" usebackq skip = 1 "%% A IN( % StartWhenFinished%) DO( ECHO Starting %% A START"% A "" %% A "))) JEI EXIST"% StartWhenFinished% "DEL"% StartWhenFinished% "ENDLOCAL

Nuorodos

Atsisiųsti UpdateFromWeb scenarijų iš SysadminGeek.com

Atsisiųsti WGet