tiny11builder:让 Windows 11 安装镜像瘦掉近一半的 PowerShell 脚本
【免费下载链接】tiny11builderScripts to build a trimmed-down Windows 11 image.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder
tiny11builder 是一套用 PowerShell 编写的脚本,借助系统自带的 DISM 工具从官方 Windows 11 镜像中移除预装应用和冗余组件,再重新封装成可启动的 tiny11.iso。效果比较直观:镜像体积大约从 5.5GB 降到 3.2GB,安装后占用的磁盘空间也能减少四成到五成左右。它适用于任意 Windows 11 版本、任意语言和 x64 / arm64 架构。
两种精简模式:一种保留更新,一种不留余地
项目里实际有两个脚本,思路完全不同:
- tiny11maker.ps1(标准精简):移除 20 多个预装应用——Clipchamp、News、天气、Xbox、纸牌、Office Hub、地图、媒体播放器、OneDrive 等,但系统仍然可以正常接收更新、安装组件。日常使用推荐这一版。
- tiny11coremaker.ps1(核心精简):在标准版移除内容的基础上,连 Windows 组件存储(WinSxS)、WinRE 一起删掉,Windows Update 也随之失效,Defender 被禁用(需要时可以重新打开)。镜像更小,代价也很明确。
重要限制:核心版镜像不可更新,制作完成后无法再添加语言包、功能组件,也没有任何手段找回已删除的功能。它本质上是一次性测试镜像,只建议用于虚拟机、开发测试这类临时场景。
项目自带 autounattend.xml,这是无人值守安装用的应答文件:OOBE 阶段跳过微软账户验证,部署镜像时带上/compact标志做压缩部署,进一步压缩安装后的磁盘占用。
两个脚本的具体差异,对照 README.md 更清楚:
| tiny11maker.ps1 | tiny11coremaker.ps1 | |
|---|---|---|
| 定位 | 日常使用、办公、家庭 | 虚拟机、测试环境、开发 |
| 移除范围 | 20+ 预装应用,含 Edge、OneDrive | 标准版全部 + WinSxS、WinRE、Windows Update |
| 制作后能否更新 | 可以 | 不行 |
准备工作:先把三件事做对
跑脚本之前,需要备齐三样东西:
- 从微软官网下载最新版 Windows 11 镜像,用资源管理器挂载(记住盘符,比如 E);
- 工作盘预留至少 10GB 空闲空间,脚本要在这里展开中间文件;
- 拿到项目文件:
git clone https://gitcode.com/GitHub_Trending/ti/tiny11builder以管理员身份打开 PowerShell,再临时放开执行策略:
cd tiny11builder Set-ExecutionPolicy Bypass -Scope Process-Scope Process表示设置只在当前会话生效,不动系统原有策略。如果之后遇到策略相关的权限报错,也可以改用Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,让修改只作用于当前用户。脚本自身也带了检查:发现策略是 Restricted 时会提示并询问是否切换为 RemoteSigned;如果不是管理员运行,会自动以提权方式重新打开窗口。
开始精简:挂载镜像后跑一条命令
脚本用法很简单,传两个参数:挂载镜像的盘符(只写字母,不带冒号)和工作盘的盘符:
.\tiny11maker.ps1 -ISO E -SCRATCH D之后按提示选择目标 SKU(比如 Windows 11 Pro),剩下的交给脚本:
- 解析原始镜像结构;
- 逐个移除目标应用,并做注册表层面的优化;
- 用 DISM 对镜像做处理与压缩;
- 最后由 oscdimg.exe(Windows ADK 提供的工具)封装出 tiny11.iso,落在脚本所在目录。
全程大约 15~30 分钟,取决于磁盘速度。参数说明可以用get-help查看。
标准版和核心版怎么选:先想"用多久"
选择逻辑其实一句话就能说清:
- 系统要长期用、要继续打 Windows Update → 用 tiny11maker.ps1;
- 镜像只用于临时测试、基准测量或做虚拟机模板 → 可以用 tiny11coremaker.ps1;
- 拿不准就先做标准版。多留几个应用没有坏处,不能更新才是真麻烦。
跑核心版时,脚本还会询问是否启用 .NET 3.5 支持:测试环境里有依赖它的应用就勾上,没有就省掉这块空间。
另外再强调一次:核心版没有"撤销"这一说,删掉的东西回不来。上生产之前,务必先在虚拟机里完整验证一遍。
几个"怪现象"其实是正常的
有几类情况提前知道,就不用慌:
- arm64 上闪过一条报错:arm64 镜像的 System32 里根本没有 OneDriveSetup.exe,脚本处理 OneDrive 时抛出错误但会自动跳过,不影响最终结果;
- 设置页里残留 Edge 条目:Edge 应用本体已经删干净了,剩下的是纯视觉残留;
- winget 暂时装不了应用:装应用前可能需要先在 Microsoft Store 里更新一次 winget;
- Outlook 或 Dev Home 又冒出来:脚本更新已加强处理,但偶尔还是会回弹,看到再手动删一次即可。
另外建议宿主架构与镜像架构保持一致,运行期间临时关掉第三方杀毒,避免干扰 DISM 的工作。
精简后的预期变化
按标准版的实测口径,主要变化如下(均为约数):
- 镜像文件:约 5.5GB → 约 3.2GB;
- 安装耗时:18~25 分钟 → 9~12 分钟;
- 安装后磁盘占用:25~30GB → 12~18GB;
- 后台进程:150+ → 85~110 个;
- 预装应用:20+ 款 → 只剩核心组件。
对内存偏小的旧机器,这种瘦身带来的体感更明显。也要说清楚:脚本移除的是预装应用和冗余组件,不是基础功能。标准版系统缺的东西还能在"Windows 功能"里找回来;核心版不行。
常见坑位与对应处理
实际使用中被问得最多的三件事:
- 执行策略权限报错:确认窗口是管理员 PowerShell;仍报策略错误时,按准备一节的方法切到
RemoteSigned -Scope CurrentUser。 - 构建失败:按顺序检查四样——工作盘空间是否够 10GB、ISO 文件是否完整(可换一台机器验证)、盘符参数是否只写了字母、PowerShell 版本是否 5.1 及以上。
- 精简后功能缺失:标准版先去"启用或关闭 Windows 功能"里找;如果做的是核心版,缺功能属于该镜像的设计特性,只能用标准脚本重做一份。
最后两句提醒:制作前备份好重要数据;tiny11.iso 做好后先在虚拟机里装一遍、确认满足需求,再用于真实环境。精简只是镜像制作环节里的一步,不是赶工的借口。
【免费下载链接】tiny11builderScripts to build a trimmed-down Windows 11 image.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考