Xây dựng hệ thống cập nhật tệp tự động của riêng bạn

Mục lục:

Xây dựng hệ thống cập nhật tệp tự động của riêng bạn
Xây dựng hệ thống cập nhật tệp tự động của riêng bạn

Video: Xây dựng hệ thống cập nhật tệp tự động của riêng bạn

Video: Xây dựng hệ thống cập nhật tệp tự động của riêng bạn
Video: Cách gửi video dài qua zalo rất đơn giản || Cách tải video dung lượng lớn lên zalo || MẸO HAY - YouTube 2024, Tháng tư
Anonim

Mỗi quản trị viên máy chủ đều có một bộ chương trình tiện ích mà họ thích sử dụng. Thông thường, những công cụ này được lưu giữ trên mỗi máy để đảm bảo tính khả dụng và có thể đến từ nhiều nguồn khác nhau như Sysinternals và Nirsoft.

Để giữ cho các công cụ này được cập nhật lên phiên bản mới nhất, việc cập nhật theo cách thủ công có thể khá tẻ nhạt và mất thời gian, đặc biệt khi có nhiều máy chủ trong hỗn hợp. Vì vậy, chúng tôi có một giải pháp cho bạn: một giải pháp đơn giản để thiết lập nơi bạn duy trì một bộ công cụ và tất cả các máy của bạn đồng bộ hóa các phiên bản công cụ của họ với vị trí này.

Ví dụ, giả sử bạn duy trì hệ thống trên 3 mạng riêng biệt và muốn có cùng một bộ 10 công cụ có sẵn trên tất cả các máy này cho các tập lệnh và bảo trì. Bạn sẽ có một thư mục chính của các công cụ (có sẵn thông qua một trang web), nơi bạn duy trì các phiên bản phát hành mà bạn muốn phân phối cho tất cả các hệ thống của bạn. Tất cả các hệ thống khác của bạn sau đó sẽ chuyển sang thư mục chính này và tải xuống phiên bản tương ứng tại địa phương. Quy trình này cung cấp giải pháp tự động để luôn đảm bảo các phiên bản tiện ích của bạn nhất quán trên tất cả các hệ thống của bạn.

Thiết lập môi trường

Môi trường để làm việc này khá dễ dàng để thiết lập và, sau khi thực hiện, thực sự là một ‚Äúset nó và quên nó giải pháp.

  1. Tạo một thư mục bên trong trang web mà bạn có quyền truy cập vào đó sẽ là máy chủ làm thư mục chính (ví dụ: ToolsFolder).
  2. Tải lên tất cả các tiện ích phổ biến của bạn vào thư mục này.

  3. Trên các máy chủ bạn muốn đồng bộ với trang chính, hãy đặt tập lệnh bên dưới vào thư mục cục bộ chứa các công cụ (và WGet nếu bạn chưa có nó).
  4. Cập nhật URL vào thư mục chính của bạn (ví dụ: https://my.site.com/ToolsFolder).

  5. Lên lịch cho tập lệnh chạy định kỳ và tất cả các công cụ cục bộ tồn tại trên trang chính sẽ được đồng bộ hóa.

Sử dụng thay thế

Mặc dù chúng tôi đã đề cập đến việc sử dụng thực tế mà quản trị viên hệ thống có thể có đối với loại tập lệnh này, nhưng có nhiều trường hợp khác trong đó tập lệnh này có thể hữu ích:

  • Sử dụng để cập nhật các tiện ích Sysinternals và Nirsoft trên các máy cục bộ (các URL được bao gồm trong tập lệnh).
  • Sử dụng trên hệ thống máy tính để bàn để giữ một bộ tài liệu được đồng bộ hóa với bản sao chính.

Tập lệnh hỗ trợ cả mã hóa cứng một URL cũng như cung cấp một từ dòng lệnh (ví dụ: UpdateFromWeb https://source.site.com/Stuff.zip), vì vậy hãy sử dụng trí tưởng tượng của bạn.

Kịch bản

@ECHO OFF TITLE Update From Web ECHO Update From Web ECHO Written by: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Place this script in the folder which contains the utilities to update. REM Requires WGet to be in the same folder as this script or in a location set in the PATH variable. REM URL to look for updates on in the event none is specified as a parameter. REM URL's of interest --- REM Sysinternals: https://live.sysinternals.com/tools REM NirSoft: https://www.nirsoft.net/panel SET URL=https://my.site.com/ToolsFolder REM If a parameter is specified, use that as the URL. IF NOT {%1}=={} SET URL=%~1 REM Set this value to 1 to restart tasks that are stopped during the update process. SET RestartKilledTasks=0 ECHO Detected directory: %~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) files. FORFILES /P. /C 'CMD /C IF @fsize==0 DEL /F /Q @path' SET StartWhenFinished='%TEMP%StartWhenFinished.tmp.txt' ECHO;Terminated tools > %StartWhenFinished% FOR /F %%A IN ('DIR /B') DO ( IF EXIST '%%A%NewFile%' ( ECHO Found new version of: %%A REM If the file is running, kill it so it can be replaced. FOR /F %%B IN ('TASKLIST') DO ( IF /I [%%A]==[%%B] ( ECHO %%B is currently running, killing process. ECHO %%A >> %StartWhenFinished% TASKKILL /IM '%%B' /T /F ) ) REM Replace with the new version. DEL /F /Q '%%A' RENAME '%%A%NewFile%' '%%A' ) ) IF {%RestartKilledTasks%}=={1} ( ECHO. ECHO Resuming killed tasks FOR /F 'usebackq skip=1' %%A IN (%StartWhenFinished%) DO ( ECHO Starting %%A START 'Restarting %%A' '%%A' ) ) IF EXIST '%StartWhenFinished%' DEL '%StartWhenFinished%' ENDLOCAL

Liên kết

Tải xuống UpdateFromWeb Script từ SysadminGeek.com

Tải xuống WGet

Đề xuất: