操作系統安裝與維護札記(一)
近期給公司組裝了不少開發用臺式機,系統安裝、配置都是我來做的,特整理一下,備忘。
本篇札記參考了眾多資料,進行了適當修改,以更易于閱讀。本著研究的態度看待系統激活機制與相關知識,請勿用于商業用途,后果自負。
因為是開發用,所以配置很高,內存加到了8G。
一、操作系統的選擇
有很多人喜歡用XP做開發,甚至用Win7,但是在我看來,開發人員應該使用服務器操作系統。目前Windows Server 2003是絕對的主流,以前公司的開發人員均使用該系統。在穩定性、性能上服務器操作系統是唯一的選擇。現在新安裝的機子我都是安裝Windows Server 2008 R2 企業版。
二、OEM、ODM、OBM
「原廠委托制造」OEM( Original Equipment Manufacturer )是受托廠商按原廠之需求與授權,依特定的條件而生產。所有的設計圖等都完全依照下游廠商的設計來進行制造加工。
「原廠委托設計」ODM ( Original Design Manufacturer )則是在產品設計與發展的活動上,經由高效能的產品開發速度與具競爭力的制造效能,滿足買主需求。技術能力足夠以後設計能力提升,進而能夠開始接案并處理設計開發的相關事務。
「建立品牌」OBM(Original Brand Manufacturer):發展出自己的企業形象,進而獲取最大的經濟利益。
所謂OEM激活其實是仿冒微軟的OEM合作伙伴,在BIOS里添加OEM廠商的信息。
三、SLIC
SLIC全稱是Software Licensing Internal Code,即軟件許可內部碼。微軟公司用SLIC來控制用戶對OEM版本的非法使用。微軟為特定的合作伙伴發放操作系統的OEM版本,以滿足合作雙贏的需求。這些OEM版本的操作系統隨機器預安裝,并采用批量許可的授權模式。這樣的批量許可難以有效識別合法用戶和非法用戶,可能被濫用而導致版權問題。為了控制這個問題,微軟規定在安裝每一個操作系統時將其激活。OEM可在安裝過程中根據OEM和批量許可的媒體安裝映像。OEM銷售的大部分系統包括由制造商預激活的Windows 系統。
SLIC一般是寫在SLDT(Software Licensing Description Table,軟件許可描述表)中的,SLDT長374字節。而SLDT寫在ACPI(Advanced Configuration and Power Management Interface,高級配置和電源管理接口)。
Windows XP OEM版激活,使用的是微軟SLP 1.0。SLP(Software Licensing and Protection,軟件許可和保護)服務是一項軟件激活服務,使獨立軟件開發商為他們的用戶采取靈活的軟件許可條款。該1.0版本的激活技術并未使用數字簽名技術,而是一段明文標識,比較容易被破解。
Windows Vista,取消了其他大客戶版本,僅保留OEM版激活。其并使用的是微軟SLP 2.0,公鑰取代了明文,給破解造成一定的困難。
Windows 7仍然保留OEM激活策略,采用的是SLP 2.1版。
根據之前流出的消息,BIOS SLIC 激活方式對即將發布的Windows 8無效,Windows 8將采用OA 3.0(OEM Activation 3.0)。
破解SLIC一般有硬件破解和軟件破解兩種思路,并已經有相應的實現。
硬件修改就是所謂"刷BIOS",將OEM機器里的BIOS信息提取出來,并復制到其它機器上。這樣做的優點是,對操作系統而言,幾乎無異于合法的OEM機器。但缺點也是技術難度高、風險大,如果不是老手,或刷BIOS時出現停電或讀寫故障,系統將無法正常啟動,通常需要返廠處理。
軟件修改就是利用操作系統只讀取從BIOS載入內存的副本而不是BIOS本身這一弱點,在啟動Vista之前,修改內存上的副本,使之無異于OEM機器。這樣做的優點是,風險小。缺點是內存的信息和BIOS中的信息不同,當計算機休眠后,BIOS信息會被重新寫入內存,原有的破解會被覆蓋。
可以使用BIOS之家的SLIC Toolkit 來查看本機SLIC的信息:
四、KMS、MAK
KMS (Key Management Service) 密鑰管理服務,這個功能是在Windows Vista中的Enterprise版本和Windows Server 2008中的一種新型產品激活機制,目的是為了Microsoft更好的反盜版。
KMS出現的原因
Windows XP和Server 2003要想避開激活機制的最好辦法就是去下載VOL版或者MSDN的操作系統,只要輸入正確的序列號,甚至有的根本不需要序列號,安裝完以后也根本不用激活,并且只要運行一個腳本程序,一個免費的正版Windows就誕生了。為什么我們能這么容易的下載到MSDN或VOL版的XP和2003?其實Windows XP系列系統的MSDN版是Microsoft內部使用的系統,而VOL版是企業版,所以都不需要激活。'然而這些版本最終被泄露,導致XP的盜版風無法停住,即使WGA也無能為力。
但是在Vista時代,Microsoft早已吸取了這個教訓,所以Vista根本沒有VOL版,而為企業設計的Windows Vista Enterprise也照樣需要激活,并且還有了一個特殊的激活機制——KMS。
KMS的工作原理
由于Windows Server 2008和Windows Vista Enterprise都是為公司而設計,所以在一個公司中肯定會有很多臺配置相等的計算機,并用一個服務器建立起一個局域網(LAN),而KMS正好利用這一點,它要求局域網中必須有一臺KMS服務器,KMS服務器的作用是給局域網中的所有計算機的操作系統提供一個有效的產品序列號,然后計算機里面的KMS服務就會自動將系統激活。每一個由KMS Server提供的序列號的有效期只有180天,而不是其他版本的永久使用一個序列號。所以操作者必須在快到期的時候在此手動連接KMS服務器讓它提供一個新的序列號,否則180天以后就會回到試用版本狀態。
MAK(Multiple Activation Key)多次激活密鑰,為了使得用戶可以多次激活統一產品,有最多激活次數的限制。
MAK激活之后產品在重裝之前可以在同一計算機中永久使用,用戶下次安裝也可直接使用MAK密鑰進行再次激活(不扣點)。微軟會通過一定的算法確認 用戶是否在同一計算機中進行安裝,如果用戶更換磁盤或主板等PC大件,微軟可能會識別并判斷為用戶在另一臺計算機中進行激活,從而再次扣點。
五、BIOS
BIOS(Basic Input/Output System)基本輸出輸入系統,是加載在電腦硬件系統上的最基本的軟件代碼。BIOS這個字眼是第一次由CP/M操作系統中出現,描述在開機階段加載CP/M與硬件直接溝通的部份。(CP/M機器通常只有ROM里面的一個簡單開機加載程序)最早的DOS版本有個文件叫做"IBMIO.COM"或是"IO.SYS",類似于CP/M的磁盤BIOS。
當電腦的電源打開,BIOS就會由主板上的閃存(flash memory)運行,并將芯片組和存儲器子系統初始化。BIOS會把自己從閃存中,解壓縮到系統的主存;并且從那邊開始運行。PC的BIOS代碼也包含診斷功能,以保證某些重要硬件組件,像是鍵盤、磁盤設備、輸出輸入端口等等,可以正常運作且正確地初始化。幾乎所有的BIOS都可以選擇性地運行CMOS存儲器的設置程序;也就是保存BIOS會訪問的用戶自定義設置數據(時間、日期、硬盤細節,等等)。IBM技術參考手冊中曾經包含早期PC和AT BIOS的80x86源代碼。
現代的BIOS可以讓用戶選擇由哪個設備啟動電腦,如光盤驅動器、硬盤、軟盤、USB 閃存盤等等。這項功能對于安裝操作系統、以LiveCD啟動電腦、以及改變電腦找尋開機媒體的順序特別有用。
有些BIOS系統允許用戶可以選擇要加載哪個操作系統(例如從第二顆硬盤加載其他操作系統),雖然這項功能通常是由第二階段的開機管理程序(boot loader)來處理。
目前全球只有四家獨立BIOS供應商,曾經的Award Software與General Software均被Phoenix Technologies收購,Microid Research被Unicore Software收購,SystemSoft被Insyde Software收購。
Phoenix Technologies,美國鳳凰科技。
American Megatrends,美國安邁科技,目前為全球最大的BIOS供應商。之前曾被鳳凰科技超過。
Insyde Software,臺灣系微公司。
Byosoft,新興廠商,中國大陸的百敖軟件公司。
六、UEFI
UEFI(Unified Extensible Firmware Interface)統一可擴展固定接口, 是一種詳細描述全新類型接口的標準。這種接口用于操作系統自動從預啟動的操作環境,加載到一種操作系統上,從而使開機程序化繁為簡,節省時間。
EFI(Extensible Firmware Interface)可擴展固件接口是 Intel 為全新類型的 PC 固件的體系結構、接口和服務提出的建議標準。 其 UEFI中圖形化的硬件設置界面主要目的是為了提供一組在 OS 加載之前(啟動前)在所有平臺上一致的、正確指定的啟動服務,被看做是有近20多年歷史的PC BIOS的繼任者。
UEFI是由EFI1.10為基礎發展起來的,它的所有者已不再是Intel,而是一個稱作Unified EFI Form的國際組織,貢獻者有Intel,Microsoft,AMI,等幾個大廠,屬于open source,目前版本為2.3。與BIOS 相比,最大的幾個區別在于:
1. 編碼99%都是由C語言完成;
2. 一改之前的中斷、硬件端口操作的方法,而采用了Driver/protocol的新方式;
3. 將不支持X86實模式,而直接采用Flat mode(也就是不能用DOS了,現在有些 EFI 或 UEFI 能用是因為做了兼容,但實際上這部分不屬于UEFI的定義了);
4. 輸出也不再是單純的二進制code,改為Removable Binary Drivers;
5. OS啟動不再是調用Int19,而是直接利用protocol/device Path;
6. 對于第三方的開發,前者基本上做不到,除非參與BIOS的設計,但是還要受到ROM的大小限制,而后者就便利多了。
7.彌補BIOS對新硬件的支持不足的毛病。
UEFI將是近3年的趨勢,到時候對于PC的利用以及維護都將步入一個新的時代。

浙公網安備 33010602011771號