SIG的猜想
这是一句没头没脑的话,在我解释清楚之前你肯定不知道我想说什么。
SIG其实是两个文件夹的名称的一部分,一个叫SMSSIG$,一个叫SMSPKGSIG,是不是很眼熟?没错,他们就是出现在SCCM 2007中的两个文件夹。
兄弟驽钝,却爱刨根问底,看到SCCM 2007出来一堆共享文件架,不免奇怪,觉得有点乱,这也可以说是一种IT洁癖,希望一个Tree就组织所有资源。打住,咱们回到话题,为啥要猜想SIG。
事情源于我一个‘很无聊’的操作,我把用于OSD的操作系统包的位置,挪了一下。我知道这会引发操作系统包的问题,需要重新指定源文件位置。我猜中了这开始,但是我没猜中这结局……兴冲冲的打开虚机,准备PXE启动以后来个网络定制安装,结果来了一堆错误代码。我这人爱瞎琢磨啊,用小沈阳的话说,‘这是为什么呢?’琢磨来琢磨去,觉得是不是权限的问题?检查了一遍,没事儿啊。看了看SMS_PXE_***的status,也正常啊,日志里有MAC,有GUID,就是没有报错。静下心,把整个控制台树溜了一遍。
嗯?!Install Pending?再一看,Version = 2?我想起来了,刚才不是改了包的原位置么?搞了半天,包还没就绪。。。不就是复制到DP么?为啥这么慢呢?
再次体现出我的臭毛病,一个文件夹一个文件夹看过来。SMSPKGC$?这里看不出什么问题,不论是文件数量还是总计大小。因为我只是搬了个家嘛。继续。。等等,看到都是一个Package ID的文件夹了。怎么还多个‘.1’啊?大小也不对啊,怎么大多是1k的?难道跟P2P下载类似,先用名字占个位置?
忽然想到,是不是所谓的二进制差异更新?嗯,有可能,很有可能~这个1k的同名文件里面可能就是MD5或者Hash之类的散列值~这样,一旦有文件被更新(举个例子,对原有XP安装介质应用集成SP3的update),系统将根据散列值信息决定哪些文件将做何种更新。然后,还将这些信息按照包和版本打包成tar文件,便于DP间同步。
到目前为止,以上全为我的猜测。如果你知道确切地答案,请不吝赐教。等项目空点时间,我再找产品组的牛人们请教一下。