Mac OS X 10.5 Fast System Deployment Practice
Mac OS X 10.5快速系統部署實踐
注:
前一篇在這里:[ Mac OS X 10.5快速系統部署實踐-計劃(2) v1](http://blog.csdn.net/afatgoat/archive/2009/08/10/4430257.aspx)
### 制作核心系統鏡象
Core System Image
[](http://docs.google.com/File?id=dfm3jbw9_218c68w9pcv_b)???我們這里使用的系統鏡象(SystemImage)概念是指:一個儲存電腦磁盤系統和配置的文件,并且從該文件恢復到磁盤后,電腦可以按照原來預定的方式運行。普通來說就是使用克隆方法復制系統的文件。在Windows中有以前的Ghost方式,后來微軟開發了基于文件方式的WIM文件結構。在Mac系統上一般使用DMG文件格式。當然了DMG文件不僅可以用于保存系統鏡象,而且可以用作好多其它用途,還可以加密內容。
???為什么要使用系統鏡象,不能從安裝盤重新安裝嗎?原因很簡單,重新安裝的系統還需要客戶化的設置并測試,之后用戶才能使用,客戶化這一點在企業中尤其突出。設想有1000臺計算機需要分配到不同的部門,如果是一臺一臺地安裝并配置,一是時間人力浪費,二是無法保證配置的前后一致性。聽上去好像和品牌機批量生產一樣,但那是另外一個故事了。總之,可以說有了系統鏡象技術,使得系統的部署和排錯變得簡易可行。(注:這一點在我的其它Blog中有專門的詳述)
???有了系統鏡象,還要有一套方法來恢復這個鏡象到目標機,從而獲得和原系統一樣并且可以使用的一個新系統。在Windows世界里Ghost一般是大家都了解的,還有好多其它第三方廠商產品可以選擇,也可以使用微軟提供的免費BusinessDeploy方法。對于Mac系統,也有眾多的軟件和方法,其中一般都是用Apple的ASR (Apple SoftwareRestore)作為基礎,ASR可以同時作為制作和恢復的手段. 在后面我們可能很少談及ASR,但是不意味著它沒有用途.
???為什么在標題中還要加一個“核心”的定語呢?在你了解和掌握了這里所說的系統鏡象制作后,很可能會想,我把公司所有軟件和配置都做好了,然后作一個系統鏡象,這樣如果機器需要重新格式化,不就簡單了?就我的經驗,在某些場合,這樣做是一個很好的方法,而且部署起來最快,也簡單有效。但是多數情景是,系統和軟件等等方面需要更新,這樣很多時候只是制作一個核心的系統鏡象,然后使用其它方式安裝應用軟件和更新等,是一個比較好的方式,可以減少對鏡象文件的維護工作,而經歷可以放在制作測試新的軟件包。
???在我的工作實踐和體會是,在一個企業中制作了一個核心鏡象之后,還有可能根據不同部門的需要(好多時候是技術原因,不得不),做一個部門的系統鏡象,以滿足部門特殊需要。就核心系統鏡象來說,它的制作是整體部署中非常關鍵的一步,也是需要知識面和經驗比較全面的部分,有可能需要要求制作人員具有一定的shell編程能力,還需要對不同版本的系統有比較深的了解,并能夠在不同系統版本中實現同一個目標。
??? 下面我們來一步一步地解釋制作核心系統鏡象文件的步驟,以及需要慎重考慮的最重要的部分,當然了難免有疏漏.
??? 當然了還有其他的方法可以用來制作核心系統鏡像文件,這在后面再提及。
### 軟硬件環境選擇
#### 電腦硬件
??? 在前面的計劃中已經提到了,針對Mac系統的特點,需要我們使用公司內最新的電腦硬件,以及可以找到的最新的操作系統,這樣可以最大地保證,制作完的系統鏡象可以被普遍應用于其它電腦上。
??? 當然,有的時候可能也不能這樣,尤其是在企業內部使用硬件年代跨度比較大的情況時,有可能需要在最新系統已經不支持的系統上,制作舊版本操作系統的一個鏡象,以用于陳舊的系統。比如, Mac OS X 10.5 Leopard操作系統,要求CPU是PowerPC G4 867MHz以上的,對于舊的硬件,如iMac G3等系統,就需要準備一個10.4甚至10.3的系統鏡象,直到企業替換完最后一批舊系統之后,才可以放棄對那個舊系統的系統鏡象維護。
#### 系統和分區
???找到硬件,首先要做的就是重新安裝系統。建議對磁盤內容刪除并重新分區,這樣可以確保可以得到一個干凈的系統。Mac的系統鏡象制作是基于分區的,所以如果是一個大磁盤,簡易分三個分區,一個是系統鏡象分區,系統鏡象就從這個分區得到,為了后面簡單敘述,我們使用Mac默認的分區名:MacintoshHD. 一個是數據分區,我們叫它: Data. 最后一個是制作磁盤鏡象的工作分區,叫做:Work. 其中Macintosh HD和Work兩個分區都要安裝Mac OS X操作系統,而且最好是相同版本的系統.
??? 分區類型建議使用Mac OS Extended(Journaled), 不建議使用Mac OS Extended(Case-Sensitive, Journaled), 原因很簡單,大小寫敏感的有可能造成有的程序運行失敗。尤其是編寫不嚴格規范的腳本程序。
???就目前Mac OS X Leopard的系統來說,一個磁盤鏡象的大小從7GB到10多個GB不等-這要根據具體情況差異會很大.安裝完后系統占至少9GB左右的磁盤空間,所以那兩個分區的磁盤空間至少要10GB左右,而制作磁盤鏡象的過程中需要生成中間文件等,所以需要幾乎是2倍系統所占磁盤空間的大小,也就是說,如果最終要制作系統鏡象的磁盤,有12GB被系統和數據占用,那么保存磁盤鏡象文件的分區至少要有24GB的空余空間可用。
??? 在安裝Mac OS X系統的時候,有可選的安裝包,用戶根據需要選擇安裝,比如字體,打印機,X11和語言的選擇。在保證系統最大適應性的同時,盡量少地安裝各種軟件,這樣既避免空間浪費,也避免部署的資源占用浪費.
#### 系統更新
???一般來說,Mac的升級都是通過系統更新包的方式提供更新,有的是combo的更新包,這種更新包可以跨越不同的版本直接升級到最新的版本。在準備系統鏡象的時候,找到最新的系統安裝盤,使用系統更新功能,下載更新包,或者到Apple.com官方網站去檢查系統更新,并下載保留。
[](http://docs.google.com/File?id=dfm3jbw9_219gjr75jcf_b)
???Mac OS X帶有系統更新功能,從屏幕左上角的?菜單的第二項就是Software Update,點擊運行,默認地它會到Apple的更新服務器去查找相關本機硬件和系統軟件的更新,其中有個選項可以保留下載的更新包,見下圖。后面我們可以講到如何配置系統到制定的提供更新服務的企業服務器尋找更新。
[](http://docs.google.com/File?id=dfm3jbw9_220g27dfzg9_b)
??? 如果企業內部使用Mac OS X Server提供的Update Server服務,從而實現對更新的統一管理,那么可以在Workgroup Manager里面進行設置。
??? 對于制作一般的核心鏡像,應該禁止自動更新,采用手動(Manual)方式。
?
### 本地用戶
??? 對于本地帳戶,我建議盡量少用,甚至不用。因為對于本地帳戶的管理,可能會花費管理員更多的時間精力,而且也不太利于遠程管理,也不易實現遵守企業安全規范. 但是還是有些情況需要使用本地用戶的。
#### 使用GUI圖形界面
??? 使用Mac OS X提供的圖形界面生成一個普通帳戶是最簡單的方式了,下面只給出一個屏幕截圖,相信都知道怎么建立。
[](http://docs.google.com/File?id=dfm3jbw9_223pfqctsdv_b)
?
#### 使用shell命令
??? 完全可以用shell命令來完成初步的帳戶建立:
<table id="n8it" style="width: 100%;" border="1" cellspacing="0" cellpadding="3" bordercolor="#000000"><tbody><tr><td width="100%"><p>sudo -s</p><p>dscl . -create /Users/zhangsan</p><p>dscl . -create /Users/zhangsan UserShell /bin/bash</p><p>dscl . -create /Users/zhangsan RealName "Zhang San"</p><p>dscl . -create /Users/zhangsan UniqueID 1000</p><p>dscl . -create /Users/zhangsan PrimaryGroupID 20</p><p>dscl . -create /Users/zhangsan NFSHomeDirectory /Users/zhangsan</p><p>dscl . -passwd /Users/zhangsan "SysAdm1n"</p><p>dscl . -append /Groups/staff GroupMembership zhangsan</p><p>?</p><p>cp -R /System/Library/User/ Template/English.lproj /Users/zhangsan</p><p>chown -R zhangsan /Users/zhangsan</p></td></tr></tbody></table>
??? 上面的bash腳本創建了真實姓名是"張三",Unix用戶名是zhangsan的,Unix唯一ID是1000的,普通的本地帳戶。
?
?
### 登陸選項
???一般地,我們不使用自動登錄(Automatic Login)功能,而且登陸界面也不使用用戶列表(List of Users)功能,禁止Fast User Switching. 上面都可以在System Preferences->Accounts里的LoginOptions找到設置。或者使用下面的命令行命令來設置:
<table id="ho46" style="width: 100%;" border="1" cellspacing="0" cellpadding="3" bordercolor="#000000"><tbody><tr><td width="100%">sudo defaults delete /Library/Preferences/com.apple.loginwindow autoLoginUse<br/>sudo defaults write /Library/Preferences/com.apple.loginwindow SHOWFULLNAME/ -bool true<br/>sudo defaults write /Library/Preferences/com.apple.loginwindow showInputMenu/ -bool true<br/>sudo defaults write /Library/Preferences/.GlobalPreferences/ MultipleSessionEnabled -bool False<br/></td></tr></tbody></table>
注:在10.5.7版本中添加了一個"Allow network users to login to this computer",默認是選擇的,這個選項對于一般情況要選上。
??? 上面推薦的設置對于不同的需求會有不同的配置要求,比如作為公共Lab或者Kiosk機的時候,自動登錄和禁止"Allow network users to login to this computer"就有可能是必需的選項了。
?
續:[Mac OS X 10.5快速系統部署實踐-制作核心系統鏡像(2) v1](http://blog.csdn.net/afatgoat/archive/2009/08/17/4455406.aspx)
?
?
?
Tony Liu
2009 Calgary
- 前言
- Mac OS X:如何將個人文件夾從默認卷移到其他卷(適合OSX10.5 Leopard)
- Mac OS X:Finder菜單中的Connect to Server選項禁止和打開
- Mac OS X: 蘋果機支持的分區表類型及問題解決
- Mac OS X: 偏好Preferences基礎(1)
- Mac OS X: 如何變更Office for Mac的注冊碼
- Mac OS X: 禁止/防止網絡用戶復制app程序到桌面
- Mac OS X: 用戶帳戶的選擇
- Mac OS X: 實用腳本程序(bash scripts)系列
- Mac OS X: 共享iPhoto圖片
- Mac OS X: 實用腳本程序(bash scripts)系列-2
- Mac OS X: 實用腳本程序(bash scripts)系列-3
- Mac OS X: 實用腳本程序(bash scripts)系列-4
- Mac OS X: 實用腳本程序(bash scripts)系列-5
- Mac OS X: 實用腳本程序(bash scripts)系列-6
- Mac OS X:升級rsync和同步應用實例
- Mac OS X: XAMP在Mac上的實現
- Mac OS X瘦身多法
- Mac OS X 10.5快速系統部署實踐-計劃(2) v1
- Mac OS X 10.5快速系統部署實踐-制作核心系統鏡像(1) v1
- Mac OS X數據備份方案一例
- Mac OS X數據備份方案一例(2)
- Mac OS X 10.5快速系統部署實踐-制作核心系統鏡像(2) v1
- Mac OS X: 打印系統治療
- Mac OS X:禁止崩潰報告
- Mac OS X:Snow Leopard的幾個改動(管理員相關)
- Mac OS X排錯:雪豹的最新更新Airport可能不支持無線802.11n網絡
- Mac OS X:雪豹內置支持讀寫NTFS卷
- Mac OS X:定制生成新用戶的程序包
- Mac OS X:在Windows里面使用命令行設置啟動系統
- Mac OS X: 實用腳本程序(bash scripts)系列-7
- Mac OS X:一種從APP中獲得PKG的方法
- Mac OS X: bash腳本實現添加無線SSID(Update2009-10-09)
- Mac OS X: 實用腳本程序(bash scripts)系列-8
- Mac OS X 10.5快速系統部署實踐-制作核心系統鏡像(4) v1
- Mac OS X: 徹底刪除GeekTool(bash腳本)
- Mac OS X: 實用腳本程序(bash scripts)系列-9
- 把你的Leopard變成Mac OS X的系統發布服務器(1)
- 把你的Leopard變成Mac OS X的系統發布服務器(2)
- 把你的Leopard變成Mac OS X的系統發布服務器(3)
- Mac OS X: 訪問控制遠程CUPS服務
- Mac &amp; Win混合平臺訪問和工具
- Mac OS X: DeployStudio更新v1.0rc16
- Mac: 想當Apple菜鳥不容易(1)
- Mac: 想當 Apple菜鳥不容易(2)
- Mac: 想當 Apple菜鳥不容易(3)
- Mac: 想當 Apple菜鳥不容易(4完)
- Mac電腦上處理攝像機上的存儲內容
- Mac OS X: Google自動更新程序的卸載
- 雪豹系統和SMB不兼容的問題的解決匯總
- Mac OS X: 實用腳本程序(bash scripts)系列-10
- Mac OS X:MagicPrefs介紹
- Mac OS X: 系統部署后程序安裝的用戶提示
- Mac OS X:開啟單程序模式
- Mac OS X: 在腳本里關閉Airport
- Mac筆記本電池:十點建議和其它
- Mac OS X: Launchd執行程序的一個例子
- Mac OS X:修改SMART Utility期限限制
- Mac OS X:網絡用戶環境個性配置實例
- Mac OS X:強制退出CD/DVD盤
- Mac OS X: launchd plist在線編輯器
- Mac OS X: 實用腳本程序(bash scripts)系列-11
- Mac OS X: 實用腳本程序(bash scripts)系列-12
- Mac: 卸載Safari 5.0.2
- Mac OS X: 實用腳本程序(bash scripts)系列-13
- Mac OS X: 文件圖標制作和變更(Resource Fork)
- Mac OS X 10.6.6更新之后NTFS只讀的解決
- Mac: 網絡用戶遇到Adobe Reader 9.x/10.x異常退出的解決
- Mac OS X: airport命令的參數
- Mac OS X的Spotlight綜述
- Mac OS X:AFP和SMB共享配置詳細配置
- Mac OS X:詳細解讀Munki和應用
- Mac OS X:顯示/設置分辨率的命令(源程序)
- Mac OS X: 是否升級到Lion?
- OSX: 禁止Flash Player 10.3自動更新
- OSX腳本:禁止系統自動添加AppStore圖標到用戶Dock上
- 獅子GM版本的安裝
- OS X Lion獅子安裝盤的初步研究
- OS X Lion獅子的恢復盤的刪除二法
- OSX: Finder的側邊欄(Sidebar)不顯示已裝載的網絡共享
- OSX:隱藏文件或文件夾
- OS X: 實用腳本程序(bash scripts)系列-13
- OS X: 實用腳本程序(bash scripts)系列-14
- OSX:Lion支持登錄窗口的Policy Banner
- OSX: 讓獅子說中文