![]() |
||
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2001 您的住址: Cape Crozier
文章: 6,122
|
![]() 這篇是接續「更新 NAV 病毒另一種方式 (適合喜歡每日更新)」,不過因為內容會有差異,為了避免有網友搞錯,所以重發一篇,請見諒。
主要的目的是為了「能隨自己的喜好定期更新」,也許有人會問,防毒軟體不是會自動定期 Update 嗎?是的,沒錯,不過也許會有人不清楚 Symantec 的病毒碼更新有兩種: 1. Intelligent Updater:在工作週期間,Intelligent Updater 每日更新。 2. LiveUpdate:每個星期更新,除非爆發大流行,這時定義檔就會更新的比較頻繁。 (詳細可參考:何時使用 Intelligent Updater 代替 LiveUpdate) 以今天為例 (5/26 21:30),LiveUpdate 的病毒碼是 5/19;Intelligent Updater 的病毒碼是 5/25。但說實在去點選下載,實在有點麻煩,所以,以下利用官方提供的批次檔,經過修改與熱心網友的協助,完成比上次提出來更簡易的方式。 四個步驟: 1. 下載 WGET (檔案傳輸軟體),並解到一個目錄中 (例如 C:\NAV\)。 WGET 檔案下載: ftp://ftp.sunsite.dk/projects/wget/...1b-complete.zip WGET 網站: http://www.gnu.org/software/wget/wget.html (事實上只需要 wget.exe、libeay32.dll 與 ssleay32.dll) 2. 下載 FCOM (檔案比對軟體),並解到與上者「相同」的目錄中 (例如 C:\NAV\)。 FCOM 檔案下載: http://www.topcatcomputing.com/downloads/fcom.zip 網站: http://www.topcatcomputing.com/arti...le.asp?DocId=16 (事實上只需要 FCOM32.exe) 3. 將以下文字存成 *.bat 批次檔,與上者「相同」的目錄中 (例如 C:\NAV\NAV.bat): 代碼:
@Echo Off cls wget -N ftp://ftp.symantec.com/public/english_us_canada/antivirus_definitions/norton_antivirus/static/symcdefsi32.exe FCOM32 symcdefsi32.exe symcdefsi32.bak /Q if errorlevel=1 goto Install if errorlevel=0 goto No_Need else goto Error :Install symcdefsi32.exe /Q copy symcdefsi32.exe symcdefsi32.bak /Y > NUL echo Update complete. goto End :No_Need echo No update needed. goto End :Error echo Error occured. :End @Echo On 4. 檔案管理員點選 .bat 執行。 (或在 CMD 中執行亦可) 說明: 1. 點選 .bat 即可自動執行 (要將 .bat 排程亦可)。 2. 會下載 symcdefsi32.exe,並備份一份為 symcdefsi32.bak。 3. 會比對官方伺服器的 symcdefsi32.exe 與本地端 symcdefsi32.exe 是否相同。若相同就不會下載。 4. 若使用 Server 版,請將批次檔中「symcdefsi32.exe」改為「symcdefsx86.exe」。 5. 事實上「symcdefsi32.exe」就是官方病毒碼下載網頁中的「yyyymmdd-0aa-i32.exe」;而「symcdefsx86.exe」就是網頁中的「yyyymmdd-0aa-x86.exe」。 PS:感謝網友阿豐大大的大力協助,與其他網友的測試 (就不一一具名囉~ ![]() 此文章於 2004-05-26 10:25 PM 被 adelies 編輯. |
|||||||
![]() |
![]() |
Golden Member
![]() ![]() ![]() ![]() 加入日期: Mar 2003 您的住址: 我家
文章: 2,584
|
給個好
![]() 幫推 讚呀~~繼續加油 ![]()
__________________
● |
||
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2001 您的住址: Cape Crozier
文章: 6,122
|
補一下
![]() 若您的網路需要使用 Proxy,可將 .bat 修改成支援 Proxy!例如假設 Proxy 為:WWW.XXX.YYY.ZZZ:Port (例如:140.116.155.989:8080)。 代碼:
@Echo Off cls set ftp_proxy=WWW.XXX.YYY.ZZZ:Port wget --proxy=on -N ftp://ftp.symantec.com/public/english_us_canada/antivirus_definitions/norton_antivirus/static/symcdefsi32.exe ...(以下都一樣) PS: 剛把上一篇的 quote 改為 code,這樣網址連結應該就不會被簡略化了~ ![]() |
![]() |
![]() |
Advance Member
![]() ![]() 加入日期: Dec 2002 您的住址: 海底基地
文章: 342
|
![]() 我上了一課....感恩大大的指教
|
![]() |
![]() |
Advance Member
![]() ![]() 加入日期: Dec 2002
文章: 381
|
剛剛測試了一下
真的可以^^ 謝謝 那再請問一下 是不是CMD跑完 就可以把剛下載完的 新的病毒檔 刪除 另外 那個 FCOM 比對的作用是? |
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2001 您的住址: Cape Crozier
文章: 6,122
|
引用:
不能砍,因為需要 .exe 檔與伺服器的檔案比對。 置於 FCOM32 的目的是比對 .exe 與 .bak,看是否需要安裝新的病毒檔。為何要這樣麻煩,因為要兼顧以下兩種可能: 1. WGET 比對檔案,發現一樣 → 不需下載 → FOM32 比對 .exe 與 .bak 會相同 → 因此不會再次安裝算是舊的病毒檔 2. WGET 比對檔案,發現伺服器已更新 → 下載 → FCOM32 比對 .exe 與 .bak 會不同 → 會安裝新的病毒檔 [edited]對了,上面有一個地方沒有寫清楚,server 是指 symantec antivirus "server" 版,不是指 windows server~ ![]() 此文章於 2004-05-26 11:36 PM 被 adelies 編輯. |
|
![]() |
![]() |
Advance Member
![]() ![]() 加入日期: Dec 2002
文章: 381
|
引用:
恩! 瞭解了! 謝謝您的詳細說明^^ |
|
![]() |
![]() |
Master Member
![]() ![]() ![]() ![]() 加入日期: Nov 2003 您的住址: 關弓.玄英宮
文章: 2,194
|
adelies 大:
若比對不同就會下載檔案,第一次執行因為沒有bak檔,所以應該也會下載。 但是好像不會自動執行安裝 ![]() 是不是應該再加上黃色這一條呢,讓下域完後自動執行安裝呢? :Install symcdefsi32.exe /Q copy symcdefsi32.exe symcdefsi32.bak /Y > NUL echo Update complete. symcdefsi32.exe
__________________
「十二国記」紅蓮之標 黃塵之路--按我短片欣賞 |
![]() |
![]() |
Advance Member
![]() ![]() 加入日期: Dec 1999 您的住址: Taipei
文章: 438
|
真的很詳細~ 已經 Mark 起來了~
![]() |
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2001 您的住址: Cape Crozier
文章: 6,122
|
:Install
symcdefsi32.exe /Q ^^^^^^^^^^^^ 這行應該就已經安裝完了,因為加了 /Q 參數只是螢幕不會出現任何訊息,也不會要求按任何鍵~ ![]() (edited:以下順便加進來~ ![]() 附註: 給 norton/symantec antivirus "SERVER" 版用的版本,要替換所有的 .exe 與 bak 部分,大致如下: 代碼:
@Echo Off cls wget -N ftp://ftp.symantec.com/public/english_us_canada/antivirus_definitions/norton_antivirus/static/symcdefsx86.exe FCOM32 symcdefsx86.exe symcdefsx86.bak /Q if errorlevel=1 goto Install if errorlevel=0 goto No_Need else goto Error :Install symcdefsx86.exe /Q copy symcdefsx86.exe symcdefsx86.bak /Y > NUL echo Update complete. goto End :No_Need echo No update needed. goto End :Error echo Error occured. :End @Echo On * 給 norton/symantec antivirus server 用的批次檔是直接用替換檔名的方式,小弟沒有做過太多測試,所以如果這部分有誤請告知 + 見諒~ ![]() ** 一般的版本應該用第一篇附的即可,因為其檔案比較小,不用佔太多頻寬。 ![]() 此文章於 2004-05-27 12:21 AM 被 adelies 編輯. |
![]() |
![]() |