בניית משלך אוטומטי קובץ עדכון מערכת
כל מנהל השרת יש קבוצה של תוכניות השירות הם אוהבים להשתמש. בדרך כלל, כלים אלה נשמרים על כל מכונה כדי להבטיח זמינות יכול לבוא ממגוון מקורות כגון Sysinternals ו Nirsoft.
כדי לשמור על כלים אלה מעודכנים את הגרסאות העדכניות ביותר, עדכון ידני יכול להיות די מייגע זמן רב, במיוחד כאשר יש מספר שרתים בתערובת. אז יש לנו פתרון בשבילך: פשוט להגדיר פתרון שבו אתה שומר על קבוצה אחת של כלים וכל המכונות שלך לסנכרן את הגירסאות של הכלים שלהם למיקום זה.
לדוגמה, נניח שאתה שומר על מערכות בשלוש רשתות נפרדות, וכמו כן יש לך אותה קבוצה של 10 כלים הזמינים בכל המחשבים האלה עבור סקריפטים ותחזוקה. אתה צריך תיקיית הורים של כלים (זמין באמצעות אתר אינטרנט) שבו אתה שומר על גירסאות שחרור אתה רוצה להפיץ את כל המערכות שלך. כל שאר המערכות שלך ואז "הטלפון הביתה" לתיקייה זו הורים ולהוריד את הגרסה המתאימה באופן מקומי. תהליך זה מספק פתרון אוטומטי כדי לוודא תמיד גירסאות השירות שלך עקביים על פני כל המערכות שלך.
הגדרת הסביבה
הסביבה לעבודה זו היא די קלה להגדיר, לאחר נעשה, הוא באמת "להגדיר את זה לשכוח את זה" פתרון.
- צור תיקיה בתוך אתר אינטרנט שיש לך גישה אליו יהיה השרת כתיקיית המאסטר (כלומר, ToolsFolder).
- העלה את כל כלי השירות הנפוצים שלך לתיקיה זו.
- בשרתים שברצונך לסנכרן לאתר הראשי, מקם את התסריט שלהלן בתיקיה המקומית המחזיקה את הכלים (ו- WGet אם אין לך את זה כבר).
- עדכן את כתובת האתר לתיקיית המאסטר שלך (לדוגמה, http://my.site.com/ToolsFolder).
- תזמן את התסריט להפעלה מעת לעת ואת כל הכלים המקומיים הקיימים באתר הראשי יהיה sync'ed.
שימושים חלופיים
אמנם יש לנו כיסוי מעשי שימוש מנהל מערכת יכול להיות עבור סוג זה של סקריפט, ישנם מצבים רבים אחרים שבהם סקריפט זה יכול להיות שימושי:
- השתמש כדי לעדכן Sysinternals ו Nirsoft כלי עזר על מכונות מקומיות (כתובת האתר של כלולים בסקריפט).
- השתמש במערכת שולחנית כדי לשמור על סדרה של מסמכים שסונכרנו עם עותק ראשי.
התסריט תומך הן קידוד כתובת האתר, כמו גם אספקת אחד משורת הפקודה (כלומר UpdateFromWeb http://source.site.Stuff.zip), אז להשתמש בדמיון שלך.
התסריט
@ECHO OFF כותרת עדכון מ ECHO אינטרנט לעדכן מהאינטרנט ECHO נכתב על ידי: ג 'ייסון Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM הצב סקריפט זה בתיקייה המכילה את כלי השירות לעדכון. REM דורש ש- WGet יהיה באותה תיקיה שבה נמצא סקריפט זה או במיקום שהוגדר במשתנה PATH. כתובת אתר של REM כדי לחפש עדכונים על אם לא צוין אף אחד כפרמטר. REM URL של עניין --- REM Sysinternals: http://live.sysinternals.com/tools REM NirSoft: http://www.nirsoft.net/panel SET URL = http: //my.site.com/ToolsFolder REM אם צוין פרמטר, השתמש בו ככתובת האתר. אם לא 1 == SET URL =% ~ 1 REM הגדר ערך זה ל 1 כדי להפעיל מחדש משימות שנעצרו במהלך תהליך העדכון. SET RestartKilledTasks = 0 ECHO ספרייה שזוהתה:% ~ dp0% ~ d0 CD% ~ p0 ECHO. ECHO. SET NewFile = .NEW FOR / F %% A IN ('DIR / B') DO WGet - Output-document = "%% A% NewFile%" "% URL% / %% A" REM Delete empty (not found ) קבצים. FORFILES / P. /% C% /% C / C / c @ path "SET StartWhenFinished ="% TEMP% StartWhenFinished.tmp.txt "ECHO: כלים שהסתיימו>% StartWhenFinished% FOR / F %% A IN (' DIR / B ') עשה (אם קיים "%%% NewFile%" (ECHO נמצא גרסה חדשה של: %% A REM אם הקובץ פועל, הרג אותו כך שניתן להחליפו. FOR / F %% B IN ( 'TASKLIST') DO (אם אני / אני [%% A] == [%% B] (ECHO %% B פועל כעת, תהליך הרג. ECHO %% A >>% StartWhenFinished% TASKKILL / IM %% B " /% / T / F)) REM החלף בגרסה החדשה DEL / F / Q "%% A" RENAME "%% A% NewFile%" "% A")) אם % RestartKilledTasks% = 1 (ECHO ECHO חידוש המשימות שנהרגו עבור / F "שימוש חוזר %% a%" %% A ") אם קיים"% % "DEL"% StartWhenFinished% "ENDLOCAL
קישורים
הורד סקריפט UpdateFromWeb מ SysadminGeek.com
הורד WGet