2016年4月17日 星期日

Windows Update (Windows 7 CPU 100%)

好吧!很多人會遇到Win7 記憶體莫名多2G使用量
CPU RAM 使用率達100%滿值,關多少吃多少,

並且打開工作管理員發現沒有程序或程式在使用資源
通常這種時候第一個懷疑是不是中毒


嗯,還不急,

首先先點開始>電腦右鍵>管理

點選效能>資源監視器


可以看到所有程序的CPU使用量

接下來所需的是找到兇手是誰,如果不是木馬或病毒等
通常兇手會是Svchost.exe(netsvcs)

原因是Windows Update的檢查與更新
方法一,停止讓使用者手動更新(有需要時再自行啟用更新)

方法二、MIS可以架設WSUS由主機指定派送。


方法三、更新Windows 7 套件。

詳情請見以下連結

svchost.exe狂吃記憶體

1.

「開始」→「執行」→ 輸入 services.msc 並按enter

(可以用win鍵+R叫出執行命令)

找到 Windows Update 這個服務,先把它停止。

2.

進入 C:\Windows\SoftwareDistribution 這個資料夾

看要把它重新命名或是直接刪除

接著啟動 Windows Update 服務


3.

下載 KB3102810 更新檔並安裝

下載地址為:

https://www.microsoft.com/zh-tw/download/details.aspx?id=49540

安裝完後重新開機


4.

用 Windows Update 試著搜尋可用的更新,

應該就可以搜尋到了,且svchost.eve不會再一直佔用CPU和記憶體。









2016年4月6日 星期三

Linux scp rsync多網段管理

當MIS總是會管理到很多台主機
一台兩台還沒甚麼感覺,但是當數量變二十幾台後就相當有感

為此寫了支SSH與RSYNC組合應用的BASH檔作為管理上版與收集資訊用


#!/bin/bash
# Program:
#       SCP佈檔設定變更
# History:
# 2016/04/06 Edwin.Chen

#今天的日期
nowDate=`date +"%Y%m%d"`

#DMZ位置
dmzdir="/tmp/edwin/dmz/";
#資料來源
SOURCE="/tmp/edwin/source/";
#目的資料夾
REMOTEDIR="/tmp/edwin/";
#要執行的BASH
pullsh=mv.sh
#接收資料位置
collect="/tmp/edwin/collect/";

cd /tmp/edwin
test ! -d ${collect} && mkdir "collect"
test ! -d ${SOURCE} && echo "SOURCE資料夾不存在"
test ! -d ${dmzdir} && echo "DMZ資料夾不存在"
test ! -d ${dmzdir} && exit;
#檢查今日日期的目錄是否存在,如果不存在就建一個(!代表反面語意)
cd ${REMOTEDIR}

echo '1)DMZ1'
echo '2)DMZ2'
echo '3)DMZ3'
echo '4)DMZ4'
echo '5)TEST'
read -p "請輸入DMZ區段:" -t 30 dmz

#將DMZ檔案讀入陣列
READFILE=${dmzdir}dmz${dmz}.txt
while read line; do
      declare i=${i}+1
      host[$i]=${line}
done < ${READFILE}

#SCP佈檔
A=1;
declare -i MAX=${i}-1;
while [ ${A} -le ${MAX} ]; do
        #佈檔
        rsync -arvz --rsh=ssh ${SOURCE} ${host[$A]}:${REMOTEDIR}
        #遠端執行
        ssh ${host[$A]} 'bash -s' < ${SOURCE}${pullsh}
        #拉檔回傳
        rsync -arvz --rsh=ssh ${host[$A]}:${REMOTEDIR}/. ${collect}
        A=`expr ${A} + 1`;
        #exit為測試用註解,代表執行1迴圈即離開。
        #exit;
done;