记录一次装系统

固态硬盘价格正香,笔记本的存储不够用了,就买了一块 2TB 的西数 SN770,给笔记本换上,原来的硬盘放入硬盘盒,做成移动硬盘。

正巧,也受不了 Windows11 的卡顿了,决定重装回 Win10。

每次重装系统都是一个大工程,特以此贴记录一下,以备查用。

下载镜像

直接用浏览器打开 下载 Windows 10 (microsoft.com) 只能下载到「下载工具」,但按下 F12 后,在开发工具中,切换为其它设备(非 Windows)就可以下载最新的 ISO 镜像包了。

image.png

准备工作

备份导出:

  • 输入法自定义短语
  • 浏览器插件
  • 环境变量 Path
  • 桌面壁纸、桌面布局、开始屏幕
  • Directory OPUS
  • 启动项

下载安装包:

免安装软件:

PE 制作:

  • WePE,干净的 PE
  • Ventoy,U 盘引导制作工具

安装镜像

我的 U 盘已经安装了 Ventoy,里面放入了 WePE。给电脑换上了新硬盘,进入 PE 后,先分区。

第一次从头装,犯了个错,给硬盘做了 MBR 分区,装上系统后,无法引导启动,才发现有好多不懂的地方。尤其是一些名词缩写,于是查阅了一下 ChatGPT

MBR(Master Boot Record)和 GPT(GUID Partition Table)是两种常用的磁盘分区表格格式。它们都记录了磁盘的分区信息,包括每个分区的起始位置、大小、文件系统类型等信息。

MBR(Master Boot Record)是一种较老的分区表格格式,被广泛应用于传统 BIOS(Basic Input Output System)系统中。它最多支持 4 个主分区或 3 个主分区加 1 个扩展分区,每个分区最大支持 2TB 的容量。MBR 存在一些限制,例如它不能支持超过 2TB 的磁盘容量,也不能支持更多的分区。此外,由于 MBR 只存储了分区表的第一个扇区,所以它也容易受到病毒攻击和磁盘损坏等问题的影响。

GPT(GUID Partition Table)是一种新一代的分区表格格式,被广泛应用于 UEFI 系统中。GPT 可以支持更大的磁盘容量,最多支持 128 个分区,每个分区最大支持 9.4 ZB 的容量。此外,GPT 还可以存储分区表的备份,增强了磁盘的容错能力。

GUID 是 Globally Unique Identifier 的缩写,中文翻译为全球唯一标识符。GUID 是一种由 Microsoft 开发的标识符格式,它是一个 128 位的数字,通常用 16 进制表示。GUID 具有极高的唯一性和随机性,几乎不可能发生重复。

在计算机领域中,GUID 可以被用作唯一标识符,例如用于标识磁盘分区、软件应用程序等。在 GPT 分区表格格式中,每个分区都有一个唯一的 GUID 标识符,用于标识该分区。这种唯一性可以保证在整个计算机系统中,不会存在相同的分区标识符。

UEFI(Unified Extensible Firmware Interface)是一种新一代的固件接口标准,取代了传统的 BIOS。UEFI 支持 GPT 分区表格,可以启动多个操作系统,支持更多的硬件接口和设备驱动程序。UEFI 还提供了更加友好的用户界面,支持鼠标、图形化界面等功能。

在 UEFI 系统中,可以通过 UEFI BIOS 的设置来选择启动模式。

  • 如果选择 UEFI 模式启动,系统会检测 GPT 分区表格格式
  • 如果选择 Legacy BIOS 模式启动,则系统会检测 MBR 分区表格格式

但需要注意的是,由于 MBR 分区表格的一些限制,如最大支持 2TB 的容量、只能有 4 个主分区或 3 个主分区和 1 个扩展分区等,如果您的磁盘容量超过了 2TB 或者您需要更多的分区,那么使用 GPT 分区表格会更加适合。另外,UEFI 还提供了更多的高级功能和性能优势,建议您尽可能地使用 UEFI 模式来启动计算机。

我的笔记本是 UEFI 系统的,所以分区表最好用 GPT 格式。

我给 C 盘分了 200GB,用于装系统;剩下的都给 D 盘。数据盘最好和系统盘分开,这样好管理。

在新建分区时,另外还有个选项,自动生成 EFI 和 MSR 分区。

分区完成后,有:

  • EFI 分区,300MB
  • MSR 分区,16MB
  • C 盘
  • D 盘

image.png

EFI 分区是指在使用 UEFI 固件的计算机系统中,专门用于存储启动程序和引导文件的一种特殊分区。这个分区通常是被格式化为 FAT32 文件系统,并被标记为 EFI 系统分区、EFI 系统分区、EFI 系统分区(ESP)或者 EFI 引导分区(EFI Boot Partition)等。

在 UEFI 引导过程中,计算机会首先检测 EFI 分区,并加载其中的引导程序和引导文件,然后进一步加载操作系统内核和驱动程序,最终启动操作系统。因此,EFI 分区在 UEFI 引导系统中具有非常重要的作用。

需要注意的是,EFI 分区通常只有一个,并且它必须被设置为活动分区,以确保计算机能够正常引导。在安装操作系统时,通常会自动创建 EFI 分区,并将引导程序和相关文件写入该分区。在某些情况下,例如在多重引导系统中,用户可能需要手动创建 EFI 分区并安装引导程序。


MSR(Machine Specific Registers)分区是一种特殊的分区类型,用于存储 CPU 中的机器特定寄存器信息。MSR 分区通常是由操作系统在启动时自动创建,并用于管理和调整 CPU 的性能设置和电源管理功能。

在现代计算机系统中,CPU 通常包含许多机器特定寄存器,用于控制和管理 CPU 的不同功能。这些寄存器通常包含一些重要的系统配置信息,例如电源管理、CPU 性能和功耗等信息。为了更好地管理这些寄存器,操作系统可以通过 MSR 分区来访问和设置这些寄存器。

MSR 分区通常是隐藏的、只读的分区,并且通常被格式化为 FAT 文件系统。在 Windows 操作系统中,MSR 分区通常被标记为 Microsoft 预留分区,大小通常为 16 MB。由于 MSR 分区包含了一些重要的系统配置信息,因此在进行磁盘操作时,需要特别注意不要误删或修改该分区。

需要注意的是,MSR 分区只对操作系统和系统管理员可见,一般用户无法直接访问和管理 MSR 分区中的信息。


在 Windows 操作系统中,BCD(Boot Configuration Data)是一个重要的引导配置数据文件,它存储了操作系统的引导配置信息,包括系统启动程序的位置、启动菜单的信息、默认操作系统等。

在安装 Windows 操作系统时,BCD 引导通常是通过操作系统安装程序自动创建的。在安装过程中,操作系统会检测系统中的其他操作系统和可引导分区,并将它们的引导信息添加到 BCD 数据库中。这样,在系统启动时,BCD 数据库就会被加载并读取启动配置信息,从而正确地启动系统。

在某些情况下,例如在更换硬盘或重新安装系统后,BCD 数据库可能会损坏或丢失,导致系统无法启动。此时,可以通过一些工具,如 Windows PE 系统或 Bootrec 命令等,来修复 BCD 数据库,从而使系统能够正常启动。

使用 WindowsNT 安装器,选择下载的 Windows10_22H2 镜像,版本选择专业版,引导盘选择 EFI 分区,安装盘选择 C 盘,勾选上无人值守,安装。

传统的安装 Windows 系统后,第一次开机,会有一个 OOBE(Out-of-Box Experience)设置向导,引导用户完成一些基本的配置和设置,包括语言选择、许可协议接受、网络配置、用户账户创建等步骤。这个过程又臭又长。

无人值守就是用 Unattended 应答文件,使用预选配置的 xml 文件让 OOBE 自动完成,节省大量时间。

Windows NT 安装器自带了无人值守配置文件。

image.png

安装完成后,重启,不到 5 分钟,没有繁杂的配置过程,开机就完成了。

遵循无人值守应答文件,系统使用 Administrator 这一内置帐户登陆,并设置自动登陆。

迁移 Users 目录

Users 目录中保存了用户、应用数据,如 AppData、Desktop、Downloads 等,随着软件的增多,这个文件夹会变得非常大,C 盘这点小空间是不够放的。

因此,我要把 C:\Users 迁移到 D:\Users 目录。除了可以缓解 C 盘空间,还有另外一个好处,即重装系统无需备份用户资料(因为用户资料不在 C 盘了)。

趁还没有装软件,现在迁移是最快的。

按住 Shift,点击「重启」,进入高级重启界面,疑难解答、高级选项、命令提示符,选择用 Administrator 帐户进入。

首先,把 C 盘的 Users 目录复制到 D 盘:

xcopy C:\Users D:\Users /e /v /i /g /h /k /o /x /b /c

然后删除 C 盘的 Users 目录:

rmdir /s /q C:\Users

再创建目录联结(或者映射):

mklink /j C:\Users D:\Users

大功告成。

新建帐户

使用 Administrator 帐户有些别扭,我还是新建自己名字的帐户吧。

打开设置,帐户,就可以添加帐户了,我添加了一个新帐户,并给它加入了 Administrators 用户组。

然后要禁用内置帐户 Administrator,只保留一个可登陆帐户,用如下命令:

net user administrator /active:no

由于我用了自动部署,在注册表里会开启 Admin 的自动登陆,这也需要我手动禁用,regedit 打开注册表,找到 HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\WinlogonAutoAdminLogon 改为 0

重启,用新帐户登陆。

配置注册表权限,阻止第三方应用添加右键菜单

许多第三方软件非常不老实,在安装后,总会在右键菜单、资源管理器中夹带私货,例如:

  • 安装百度网盘后,它会在右键菜单中添加「上传到百度网盘」,在资源管理器中添加「百度网盘」
  • 安装 QQ 后,它会在右键菜单添加「发送到百度网盘」
  • 每次启动 OneDrive 它都会在右键菜单添加「移动到 OneDrive」
  • ……

眼花先不说,许多软件的右键菜单项目,竟然还会影响右键弹出速度,甚至这些添加项都没有任何选项禁用掉,是可忍,孰不可忍。

这些软件是通过修改注册表,实现添加右键菜单和资源管理器图标的。为了不让这些软件随便糟蹋我的电脑,我决定一步到位,修改注册表权限,断了他们的路。

首先,我希望右键菜单中能有压缩软件,所以先安装 7zip,添加右键菜单,关联格式。

然后,系统自带有一些我不需要的右键菜单,例如,桌面上的「个性化、显示设置」,我使用 ContextMenuManager 清除掉。

接着就要开始修改注册表权限了。要修改两部分:

  • HKEY_CLASSES_ROOT 系统级别,「普通用户」只能查看,「管理员用户」可以修改。
  • HKEY_CURRENT_USER 用户级别,当前用户既可以查看,又可以修改。

HKEY_CLASSES_ROOT

对于 HKEY_CLASSES_ROOT 部分是系统级别,为了修改权限,要以管理员权限打开注册表。

对于这一部分,如果你发现有些地方连管理员都设置不了权限,或者管理员身份设置的权限没有用时,可以使用「SYSTEM 身份」(Windows 下的最高权限)进行权限管理,即以 SYSTEM 权限打开注册表,来自 Sysinternals 的 PsExec 工具能以系统权限运行程序,下载 PsExec 之后,将其复制到 C:\Windows\System32 目录下,以管理员权限运行 cmd,在里面执行:

psexec -i -s -d regedit.exe

PsExec 工具用于在本地系统或远程系统上执行命令。具体含义如下:

  • -i: 将进程运行在交互模式下。如果未指定此标志,则进程无法显示 GUI。
  • -s: 将进程运行在系统帐户的上下文中,即该进程具有系统帐户的权限。
  • -d: 不要等待运行结束,在另一个窗口中运行程序。
  • regedt.exe: 注册表编辑器。

这样,就以 SYSTEM 身份打开注册表了。

image.png

然后修改以下项目的权限:

然后修改以下项目的权限:

# 文件右键,针对所有类型文件
HKEY_CLASSES_ROOT\*\shell
HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers

# 快捷方式右键,OneDrive 钟爱
HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers

# URL 快捷方式右键,OneDrive 钟爱
HKEY_CLASSES_ROOT\IE.AssocFile.URL\shellex\ContextMenuHandlers

# 目录右键
HKEY_CLASSES_ROOT\Directory\shell
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers

# 目录背景右键
HKEY_CLASSES_ROOT\Directory\Background\shell
HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers

# 文件夹扩展菜单
HKEY_CLASSES_ROOT\Folder\shell
HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers

# 桌面右键
HKEY_CLASSES_ROOT\DesktopBackground\Shell
HKEY_CLASSES_ROOT\DesktopBackground\Shellex\ContextMenuHandlers

# 所有对象
HKEY_CLASSES_ROOT\AllFilesystemObjects\shell
HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers

# 磁盘右键
HKEY_CLASSES_ROOT\Drive\shell
HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers

在 Windows 系统的注册表编辑器中,有五个主要的根目录(也称为注册表分支),每个根目录都存储了与系统和应用程序相关的设置和配置信息。它们分别是:

  1. HKEY_CLASSES_ROOT:存储文件类型和关联程序信息,包括文件类型的图标、打开方式等。
  2. HKEY_CURRENT_USER:存储当前用户的个人设置,如桌面背景、鼠标指针、浏览器选项等。
  3. HKEY_LOCAL_MACHINE:存储计算机上所有用户的系统设置和配置信息,如硬件信息、安装的程序等。
  4. HKEY_USERS:存储所有用户的设置和配置信息,每个用户都有一个对应的子键。
  5. HKEY_CURRENT_CONFIG:存储计算机硬件配置信息,如显示器、打印机等。u 关

关键字解释:

  • shell 存储了操作系统定义的右键菜单项,比如“打开”、“编辑”、“复制”、“剪切”等操作。
  • shellex\ContextMenuHandlers 控制的是上下文菜单处理程序(context menu handler),用于添加或修改文件夹的右键菜单项。
  • shellex\-ContextMenuHandlers 控制的是需要禁用的上下文菜单处理程序。

上述的每一项,都给 Administrators 用户组添加禁止权限:

image.png

image.png

image.png

这样,第三方应用即便获取了管理员权限,也无法往右键菜单里随便加东西了。

当然,上面的 HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers ,管理的只是通用格式,在其中添加上菜单项后,在所有格式的文件上右键,都会出现那个菜单项。我们只是禁用了这一种流氓的添加方式。

而比如 HKEY_CLASSES_ROOT\.mp4\shellex\ContextMenuHandlers ,管理的就是 .mp4 格式,在其中添加上菜单项后,只有在 .mp4 格式的文件上右键,才会出现那个菜单项。对于这一种添加方式,我们没有禁用。即,第三方程序还是可以对其指定的格式增加菜单项,例如 PotPlayer 依然可以为 .mp4 添加右键菜单项「用 Potplayer 打开」。

HKEY_CURRENT_USER

资源管理器的盘符,在这一部分管理,HKEY_CURRENT_USER 的所有者是当前用户,所以直接运行 regedit 打开注册表,就可以编辑权限了。

我们主要修改的是:

# 资源管理器盘符图标
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\

# 选择文件夹窗口盘符图标
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace

在上述条目上右键,修改权限,禁止当前用户修改即可,可能有些软件会在管理员身份运行的时候修改这里,保险起见,也可以把 Administrators 用户组的修改权限禁用:

image.png

那么现在就不担心第三方软件对右键菜单、资源管理器捣乱了。

简单配置新帐户

  1. 安装 Listary,方便查找文件
  2. 调整输入法,导入事先备份的个性短语
  3. 打开事先下载的 Windows Update Blocker V1.7 ,一键禁用「Windows 自动更新」
  4. 安装华为智能管家,更新驱动,卸载华为智能管家
  5. 安装 Intel 蓝牙驱动
  6. .config .ssh .vscode 文件夹复制到用户目录
  7. 登陆微软帐户,设置开机密码、Pin 码、录入指纹
  8. 登陆 Edge 帐户,同步插件、密码、收藏夹
  9. 安装 WGesture、Clash for Windows、Quicker、Notepad3
  10. 安装 QQ,用于接收手机消息、截图,在设置中关闭声音
  11. 在控制面板 -> 电源管理,关闭「自动睡眠」;在高级电源设置中,关闭「自动休眠」
  12. 重命名电脑名称
  13. 设置桌面背景

备份镜像

此时,C 盘总大小 17.6GB,也没有装乱七八糟的软件,应当做一个备份。

image.png

备份有两种方式:

  • Dism++ 备份 wim 镜像,支持增量备份(当选择的映像已存在时)
  • DiskGenius 备份 pmf 镜像,支持增量备份、排除文件夹

二者都可以不用进 PE,直接备份,不到 1 分钟就备份完了,备份出的镜像大概 7GB 左右。

image.png

image.png

继续配置

  1. 把旧硬盘上的用户文件、OneDrive 文件夹复制到新硬盘

    • 我的笔记本 USB 接口速度只有 5Gbps,接上移动硬盘的顺序读,只能达到 420MB/s ,
    • 我有总计 500G+ 的零碎文件要复制,用 Windows 自带复制平均只有 30MB/s 的速度
    • 用了 FastCopy,只用了 24 分钟就复制完了,全程 360MB/s 的高速
  2. 把免安装的软件复制到 C 盘

  3. 登陆 OneDrive

  4. 配置环境变量 Path

  5. 把拖动处理的脚本放入 SendTo 文件夹

  6. 安装 IDM、Directory OPUS

  7. 安装 Office365、Chrome、火绒

  8. 开启硬盘共享和远程控制

这个时候大部分软件都还是比较干净的,做一个增量系统备份。

继续:

  1. 安装各种软件:微信、音乐、视频播放器、虚拟机、IDE……
  2. 开启 Hyper-V、WSL2、沙盘
  3. 用 Shexview 和 ContextMenuManager 再管理下右键菜单、壳扩展
  4. 调整启动项

这下系统就算装完了,再来一次增量备份,Over。

  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    215 引用 • 462 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • Goojoe 1 评论

    迁移 USERS 目录完全失败啊 😭

    咋了,xcopy 没复制过去?
    HaujetZhao
  • 其他回帖
  • MN02K 1 评论

    Dism++ 也支持增量备份和文件夹排除的

    原来可以啊,我以为不支持
    HaujetZhao
  • kryptos42

    我感觉直接迁移 users 文件夹有点危险,正确不知道怎么着突然删除哪个软连接,直接照成系统登不进去,我是每次重装系统后把下载,图片啥的文件夹地址改下,user 文件夹就放在原地,不知道大佬有什么创建系统还原点的方法,每次重装系统还要配置老半天