Wingedox

自己记录学习笔记的地方

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

目录:

步骤:

  1. 从源安装DVD中提取原始安装包
    提取Lenovo 和 IBM 安装映像到Install.wim文件中,h:盘为Vista 20 合 1安装盘,lenovo映像的序列号为1,IBM为2
    Lenovo:
    imagex /export h:\sources\install.wim 1 d:\vistainstall\Vista\Install.wim "Vista Ultimate Lenovo"
     IBM:
    imagex /export h:\sources\install.wim 2 d:\vistainstall\Vista\Install.wim "Vista Ultimate IBM"

Vista备份的最佳实践

  • 备份
    只能用命令行工具Imagex,建立cmd脚本。在脚本运行时输入映像名称备注等
  • 还原
    用自动应答文件指定安装源地址,指向备份目录

一、Imagex

  • 从已有多个映像的wim文件中导出指定映像到新的wim文件中,如果目标wim文件存在则将导出的映像集成到目标wim文件中

命令行:imagex /export e:\back.wim 1 e:\32 位元零售版\sources\install.wim "64 位元免刷激活旗鑑版備份"

将e:\back.wim文件中的第1个映像导出并集成到e:\32 位元零售版\sources\install.wim文件中,将映像命名为"64 位元免刷激活旗鑑版備份"

  • 从 ASUS 恢复盘提取 ASUS Oem Vista Ultimate 版到指定目录中

命令行:imagex /apply X:\asus.swm 4 /ref X:\*.swm Y:\ASUS /check /verify

命令及参数说明:
将映像应用于指定的目录(也可以是驱动器)。本例中指将 X 盘的 asus.swm 文件中标识为 4 (Ultimate 版标识为4)的副本应用于 Y 盘的 ASUS 目录,应用之后 ASUS 目录被隐藏。
/apply [image_file image_number | image_name image_path] image_file 映像文件名 image_number 映像文件中副本的编号 image_path 映像路径
/ref splitwim.swm 引用拆分的 .wim 文件(SWM)。splitwim.swm 是其他拆分文件的名称和位置,可以使用通配符。本例中指 X 盘的所有.swm 文件(*.swm文件)。
/check 检查 .wim 文件的完整性。
/verify 检查错误和文件重复进行文件资源验证。

  • 从应用于指定目录的映像中重新捕获可安装的 Install.wim 文件

命令行:imagex /compress fast /flags "Ultimate" /check /scroll /capture Y:\ASUS Y:\Install.wim "Asus Vista Ultimate"

命令及参数说明:
将应用于指定目录的映像重新捕获,并使之成为可安装的 Install.wim 文件。本例中指将应用于 Y 盘 ASUS 目录中的“Ultimate”版文件重新捕获为可安装的 install.wim 文件。并标识为 "Asus Vista Ultimate" 。
/compress [maximum | fast | none] 指定最初的捕获操作使用的压缩类型。
maximum 最大值,提供了最佳压缩效果,捕获映像所用的时间最长。
fast 快速,是默认压缩类型。较快的映像压缩效果,生成的文件比使用最大值要大。
none 无压缩捕获映像。
/flags "EditionID" 指定要捕获映像的版本。因为要重新部署为可安装的 Install.wim,所以 /flags 值是必须使用的并且必须使用引号加入有效的 EditionID 值。
有效的 EditionID 值包括:
HomeBasic
HomePremium
Starter
Ultimate
Business
Enterprise
ServerDatacenter
ServerEnterprise
ServerStandard
/check 检查 .wim 文件的完整性。
/scroll 滚动输出进行重定向。
/capture image_path image_file image_path 映像路径 image_file 映像文件名 捕获到的新映像文件的名称及路径。

  • Vista_Ultimate备份
    imagex /compress fast /flags "ULTIMATE" /check /scroll /capture c: d:\install.wim "Vista_Ultimate备份",用imagex /info d:\vista\sources\install.wim 的命令查看install.wim 有Vista_Ultimate的备份,其ID为“2”;于是我格式化C盘后,进入安装程序,在安装选项中看到了Vista_Ultimate备份,选择这项Vista_Ultimate安装成功了。
  • 排除文件
    使用任意文本编辑器(例如记事本)创建名为 wimscript.ini 的配置文件。内容如下:
    [ExclusionList]
    ntfs.log
    hiberfil.sys
    pagefile.sys
    "System Volume Information"
    RECYCLER
    Windows\CSC


[CompressionExclusionList]
*.mp3
*.zip
*.cab
\WINDOWS\inf\*.pnf

  • 将安装好驱动、应用程序做成Vista安装光盘

1. apply 類似 ghost
2. append 是 apply 的逆向動作; 等於把備份 ghost 到安裝盤裏. 既是 ghost, 當然無法安裝! (讓廠商作更新用)
3. capture 也是 apply 的逆向動作, 但它有二種不同作法:
一. 和 append 一樣
二. 加上 flags 變成可任意安裝 (不過很奇特的, 如果用 apply 的話卻只能 ghost 回原始處, 否則路徑不同會導致安裝失敗)
4. 把不同版本集成一起會用到優化, 也就是相同的文件只複製一份. 所以您的備份系統如果裝有很多程式, 比方說一共 4 GB, 那麼 append 之後, 安裝盤體積變成
2.5 GB + 4 GB (+ 休眠 + pagefile.sys + $Recycle.Bin + TEMP + System Volume Information).... 非瞠目結舌不行. 總之, 除非您先控制程式容量, 並且手動刪除上述垃圾檔, 否則 append 絕對不適合您.
5. 這麼辦吧. 在 D:\VISTA 執行 D:\Windows\System32\Sysprep\sysprep.exe /oobe /generalize /shutdown, 然後重新開機回到 C:\XP. 下指令 imagex /compress fast (或 Maximum) /flags "ULTIMATE" /check /scroll /capture d: e:\back.wim "我的最愛備份" "愛人生日紀念版", 再下指令集成到零售版去: imagex /export e:\back.wim 1 e:\install.wim "我的最愛備份"
叮嚀二聲:
1.D:\Vista 所安裝程序如果非 "為所有者" 安裝則通過封裝再安裝後程序是在系統裏, 可是不會出現出來喔.
2. /flags 之後的 "版本 ID" 請務必自行視實際版本書寫, 否則又是 GHOST (沒有可用系統, 不能安裝, 只能 apply 回原始分區) !!!

sysprep

  • 在參照電腦上安裝 Windows
  • 在安裝完成後,重新開機並安裝任何其他裝置驅動程式或應用程式
  • 更新 Windows 安裝之後,請執行 sysprep /oobe /generalize/generalize 選項會指示 Sysprep 從 Windows 安裝移除系統特定的資料。系統特定資訊包括事件記錄、唯一的安全性識別元 (SID) 以及其他唯一的資訊。在移除唯一的系統資訊後,就會關閉電腦。/oobe 選項會指示 Windows 安裝在下次電腦開機時執行 Windows 歡迎畫面。
  • 在電腦關機後,您可以開機成 Windows PE 或電腦上的另一個作業系統
  • 接著使用 ImageX 來擷取 Windows 安裝以建立參照映像,供使用相同硬體設定的電腦來安裝。

imagex /compress fast /check /flags "Ultimate" /scroll /capture c: c:\myimage.wim " Vista Ultimate" "My Custom Vista Image 1"

sysprep所在目录:“C:\windows\system32\sysprep\sysprep.exe”

安装应用程序时要选择“所有人使用”,不然新建用户后没有快捷方式

WinPE

  • Shell
    在windows\system32 下面写一个Winpeshl.ini,内容如下
    [LaunchApp]
    AppPath = %SYSTEMDRIVE%\myshell.exe
  • 自定义桌面背景
    在mount\windows\system32\中保存一个名为 winpe.bmp 的bmp图像即可。
  • 创建可启动 UFD
    在运行 Windows Vista 操作系统或 Windows PE 会话过程中,插入 UFD 设备。
    在命令提示符下,使用 Diskpart 将设备格式化为跨越整个设备的 FAT32,然后将此分区设置为活动状态。例如,
    diskpart
    select disk 1
    clean
    create partition primary size=<size of device>
    select partition 1
    active
    format fs=fat32
    assign
    exit

    其中,disk 1 的值等于 UFD。
    在计算机上,将 \ISO 目录中的所有内容复制到 UFD 设备中。可以手动创建目录结构或使用 xcopy 命令自动构建相应的文件并将其从技术人员计算机复制到 UFD 设备中。例如,
    xcopy c:\winpe\iso\*.* /s /e /f f:\
    其中,c: 是指计算机的硬盘,f: 是指 UFD 设备。
  • 创建可启动 CD-ROM
    在技术人员计算机上,在提示符下,使用 Oscdimg 创建 .iso 文件。例如,
    oscdimg -n -bc:\winpe\etfsboot.com c:\winpe\ISO c:\winpe\winpe.iso
    对于 ia64 体系结构,使用 efisys.bin 替换 etfsboot.com。
    将映像 (Winpe.iso) 刻录到 CD-ROM。
  • 生成
    单击“开始”,依次指向“所有程序”、“Windows OPK”或“Windows AIK”,然后单击“Windows PE 工具命令提示符”

    copype.cmd x86 d:\winpe

    添加其他程序包通过使用 Peimg 工具,您将使用 /install 选项来安装 Windows 功能。Windows 功能包括在基本映像 (Winpe.wim) 中,但未安装。也可以导入程序包并添加驱动程序和语言包。
    使用 peimg /install 命令将 Windows 功能添加到基本映像中。例如,

    peimg /install=<pkg> c:\winpe\mount\Windows

    其中,<pkg> 表示程序包名称。使用 /list 命令可以获得可用程序包及其名称的列表。指定程序包名称时可以使用通配符。将安装与名称匹配的所有程序包。例如,
    peimg /install=WinPE-HTA-Package c:\winpe\mount\Windows

    peimg /install=*winpe* c:\winpe\mount\Windows
    其中,通配符表示程序包名称中含有 winpe 的任何程序包。
    通过使用 peimg /list 命令查看当前映像中的所有程序包,验证这些程序包是否已安装。例如,
    peimg /list c:\winpe\mount\Windows
    在 INS 列中,(+) 表示已安装的程序包,(-) 则表示未安装的程序包。
  • 输入法
    以微软五笔86为例,我们仔细分析了一下,它共需要winwb86.IME、winwb86.MB和输入法指示器internat.exe(借用2000的),我们把这些文件放到system32里面,然后把五笔的注册表信息+进去,最后启动internat.exe,为此我们编写了一个批处理来完成(这里先假设3个文件已经手工加进去了)
    reg add HKLM\SYSTEM\ControlSet001\Control\Keyboard Layouts\E0100804
    reg add HKLM\SYSTEM\ControlSet001\Control\Keyboard Layouts\E0100804 /v IME file /t REG_SZ /d winwb86.ime
    reg add HKLM\SYSTEM\ControlSet001\Control\Keyboard Layouts\E0100804 /v Layout file /t REG_SZ /d kbdus.dll
    reg add HKLM\SYSTEM\ControlSet001\Control\Keyboard Layouts\E0100804 /v Layout Text /t REG_SZ /d 王码五笔型输入法86版
    %systemroot%\system32\internat.exe
    于是我们熟悉的输入法指示器出来了

    另外的有:
    全拼         键: E0010804 输入法文件:winpy.ime
    双拼              E0020804                 winsp.ime
    郑码              E0030804                 winzm.ime
    智能ABC        E0040804                  winabc.ime
    国标              E0050804                  wingb.ime
    微软拼音        E00E0804                  pintlgnt.ime
    五笔86          E0100804                winwb86.ime
    其他的就不提了(有些输入法不仅仅只有一个ime文件,记得拷全了)

    也谈谈PE输入法,以加载微软五笔86为例

Vista

  • 启动
    在Windows 2000/XP/2003 启动过程是这样的
    POST (系统自检)->BIOS读取MBR->找到硬盘分区表中Active的分区->读取Boot Sector.-> 加载Boot code.-> 加载NTLDR

    Windows Vista 引入了Boot Manager的概念和BCD的概念. 
    POST (系统自检)->BIOS读取MBR->找到硬盘分区表中Active的分区->读取Boot Sector-> 加载BOOTMGR (Boot Manager). Boot Manager 读取BCD信息然后列出启动菜单

    -如果Windows Vista 被选中的话. BOOTMGR将控制权交给Winload.exe 然后启动系统. 并开始核心加载
    -如果是XP/2000/2003被选中的话, BOOTMGR将控制权交给NTLDR, 然后开始普通的Windows 加载.
  • bootsect.exe
    这个命令的用途是这样的.(假设在Windows Vista之后我们安装了Windows XP)

    1. 首先启动到Windows XP下, 运行bootsect.exe /NT60 启用BootMGR.
    2. 在BCD Store下创建一个Windows XP的Store
    Bcdedit -create ntldr -d"Windows XP"
    3. 将store 加入启动菜单 (因为Vista 不知道Windows XP的存在)
    bcdedit -set ntldr path\ntldr
    bcdedit /displayorder ntldr /addast

    path是NTLDR所在的路径
    然后启动就可以选择多系统的

  • Bcdedit 命令不完全解析

    实现PE2.0与Vista安装盘双引导的方法

    工具:VISTA MSDN原版光盘,VISTA AIK
    平台:XP PRO SP2
    步骤:
    一、准备工作
    1、从VISTA系统中提取bcdedit.exe、bootmgr.exe.mui、memtest.exe.mui到E盘根目录下
    2、定制WinPE.wim
    在命令提示符下执行下列命令
    QUOTE:
    c:
    cd "C:\Program Files\Windows AIK\Tools\PETools\"
    copype.cmd x86 e:\pe
    imagex /apply e:\pe\winpe.wim 1 e:\pe\mount
    copy "c:\program files\Windows AIK\Tools\x86\imagex.exe" e:\pe\mount\Windows\System32
    copy e:\bcdedit.exe e:\pe\mount\Windows\System32
    peimg /prep e:\pe\mount\Windows
    输入yes继续执行
    imagex /unmount /commit e:\pe\mount
    copy e:\pe\winpe.wim e:\winpe.wim
    二、修改光盘引导菜单
    1、用UltraISO打开VISTA MSDN原版光盘,提取boot目录的bcd(无扩展名)到E盘
    2、在命令提示符下执行下列命令
    QUOTE:
    e:
    ren bcd tmp
    bcdedit /import tmp
    bcdedit
    bcdedit /timeout 15
    bcdedit /set {bootmgr} locale zh-CN
    bcdedit /set {default} locale zh-CN
    bcdedit /set {memdiag} locale zh-CN
    bcdedit /set {default} description "安装 Vista ULTIMATE"
    bcdedit /copy {default} /d "启动 Windows PE 2.0"
    执行完毕后,会返回下列信息
    The entry was successfully copied to {6eb5d89a-0822-11dc-89f2-005056c00008}
    注意:{6eb5d89a-0822-11dc-89f2-005056c00008}是由系统随机生成的菜单ID标识,不同机子可能会不相同。
    继续执行下列命令:
    QUOTE:
    bcdedit /set {6eb5d89a-0822-11dc-89f2-005056c00008} device ramdisk=[boot]\boot\winpe.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
    bcdedit /set {6eb5d89a-0822-11dc-89f2-005056c00008} osdevice ramdisk=[boot]\boot\winpe.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
    bcdedit /displayorder {6eb5d89a-0822-11dc-89f2-005056c00008} -addlast
    bcdedit /export bcd
    del tmp
    三、制作完毕
    用UltraISO打开VISTA MSDN原版光盘,将e盘下的bcd、winpe.wim添加到光盘boot目录下,将bootmgr.exe.mui、memtest.exe.mui添加到光盘boot\zh-cn目录下,然后保存并刻盘即可。

posted on 2007-08-08 19:11  想飞的黄牛  阅读(697)  评论(0编辑  收藏  举报