#1# SCCM管理 - 包和應用程序
為讀者提煉SCCM涉及的基礎知識、註意事項、運行機制以及排錯方法等信息是本系列文章的初衷,對於SCCM各組件及功能部署步驟方面的信息,網絡中已有較多文章可以參考,因此本系列文章並不側重於提供類似Step-by-Step的部署指南,還請見諒。同時由於個人能力和知識水平的限制,文中不免有紕漏和出錯的地方,還望大家可以指正,非常感謝。
本篇文章主要討論ConfigMgr中包(Package)和程序(program)概念
包
包是ConfigMgr中的邏輯概念,其主要用於滿足企業向客戶端安裝軟件、執行特定程序等部署和管理上的需求,包主要由以下這些元素構成:
- 基本信息:名稱、版本、開發商、語言等
- 程序:具體見下文,一個包可以包含多個程序,也可以不包含任何程序
- 源文件:定義執行程序時所需要使用的文件位置
程序
程序是定義客戶端如何執行待安裝軟件程序的邏輯概念,包含以下主要定義:
- 命令行:定義ConfigMgr客戶端如何處理包中的源文件
- 開始於:定義命令行的執行位置,如果不指定則默認從包中源文件所在位置開始執行
-
最長允許運行時間:告訴ConfigMgr客戶端在執行命令行中指定命令所允許運行的最長時間
當客戶端運行命令行中指定命令實際時間超出此項定義時間後,客戶端並不會實際停止運行命令,而是不在等待此命令行運行的返回結果並認為命令行運行已失敗
- 運行模式:定義以當前登錄用戶權限還是系統賬戶權限運行命令行
部署
包部署的基本單位是程序,即如果包中含有多個程序時,我們必須明確指定一個程序部署到客戶端
應用程序
應用程序是ConfigMgr 2012開始引入的新模型,它不同於包的概念,主要簡化、降低了向客戶端分發程序的難度
應用程序是一個容器,在這個容器內包含了以下主要信息:
- 基本信息:名稱、開發商、版本等
- 應用程序目錄信息:包含用戶在應用程序目錄站點上看到此程序的信息,如:語言、本地化名稱、分類、描述、關鍵詞等
- 替代:如果此應用程序替代了其他應用程序(可能是一個舊版本的程序),可以定義先卸載被替代的應用程序後,再安裝此應用程序
- 部署類型:見下文,一個應用程序可以包含多個部署類型
部署類型
部署類型包含以下定義:
- 基本信息:此部署類型的描述
- 內容:定義此部署類型所需要的源文件位置
- 程序:定義安裝、卸載此部署類型時所調用的命令行
-
檢測方法:定義此應用程序在目標計算機上是否已存在的判定邏輯
檢測方法可以通過文件夾、文件、腳本、註冊表等方式進行判定
- 用戶體驗:定義安裝此部署類型使用系統還是當前登錄用戶憑據
- 要求:用於定義部署類型安裝前客戶端需要滿足的特定條件,如:操作系統版本、CPU頻率、磁盤空間大小、內存大小、Active Directory站點等
- 依賴:用於定義此部署類型是否依賴其他應用程序,如果有依賴關系的話,ConfigMgr會先安裝依賴的應用程序後,再安裝此應用程序
部署
應用程序部署的基本單位是應用程序本身,如果一個應用程序包含多個部署類型,則客戶端會按順序評估部署類型中定義的要求,一旦滿足某個部署類型中的要求,則運行此部署類型
包和應用程序的區別
-
基於應用程序的部署特點可以看出,應用程序模型適用於跨平臺程序的部署,比如說我們可以定義一個應用程序,如:Office 2016,並在其中添加3種類型的部署類型:
- Windows 10
- IOS
- Android
-
應用程序簡化了管理員向客戶端部署程序的難度,因為應用程序模型中自身已包含了檢測方法、要求、依賴等定義信息,而包如果要達到相同的效果,必須通過在命令行中指定腳本的方式進行判定,難度差別不言而喻
- 包由於自身沒有檢測程序是否已安裝的機制(應用程序通過檢測方法定義),適用於讓客戶端運行對自身狀態沒有特定要求的命令,比如定期復制一些特定文件到客戶端、清理客戶端上的某些文件、註冊表等
#1# SCCM管理 - 包和應用程序