最近更换了开发用的 Windows 台式机电脑,本文主要记录其开发环境配置的过程。
1 系统初始化、基本设置
1.1 系统初始化跳过联网离线安装
Windows 11 新系统开机后会进入安装初始化过程,其中有一个步骤要求联网且无法跳过。由于内网 wifi 有认证机制,无法法直接简单联网使用。
可通过如下方法启用离线模式:
- 按快捷键
Shift + F10
(或者Fn+Shift+F10
)可以打开cmd
窗口 - 鼠标点击一下它获取焦点,然后输入命令:
oobe\BypassNRO.cmd
- 回车执行命令,此时Win11会重启,再进入联网的界面时,会有一个暂时跳过的选项
BypassNRO.cmd
里的命令主要就是修改注册相关项然后重启,所以也可直接执行如下命令:
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v BypassNRO /t REG_DWORD /d 1 /f shutdown /r /t 0
1.2 C 盘分区
由于预装系统整个磁盘只有一个 C 盘(512GB),于是将它分为了 C、D 两个逻辑分区。主要方法步骤为:
- 打开资源管理器,在
此电脑
上右键并选择管理
,会打开计算机管理
应用界面。 - 展开值
存储 -> 磁盘管理
,在磁盘分区列表右键,选择压缩卷..
。 - 在弹出的
压缩卷
界面,输入压缩空间大小(给新分区的大小)。建议给 C 盘预留200G
以上空间。我这里输入了204800
,给 C 盘留了255G
。 - 在压缩出来的分区上右键选择
新建简单卷
,按默认步骤继续操作即可创建一个新的 D 盘逻辑分区。
1.3 激活为专业版
系统预装了 windows 11 家庭版,如果你有专业版的秘钥,在系统->激活
界面输入序列号就可以激活为专业版。
这里是使用了内网的 kms
激活方案,首先找了一个专业版的秘钥,在激活页面升级为专业版并重启,然后打开管理员权限的 CMD 命令行,依次执行如下命令使用 KMS 激活:
cd C:\WINDOWS\system32 # 查看当前激活信息、系统版本 slmgr /dlv # 卸载已注册的序列号 slmgr /upk # 安装 GVLK 秘钥 slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX # 设置 MKS 服务器地址 # 这里只是一个示例,实际使用了内网企业购买和搭建的KMS激活服务器 # 需要替换为你实际可用的 KMS 服务器网址或 IP 地址(如 kms.0t.net.cn、kms.msguides.com、kms.03k.org 等) slmgr -skms 192.168.10.100 # 执行激活请求 slmgr /ato # 查询过期时间 slmgr /xpr
KMS 是微软为企业级批量许可服务提供的方案。更多关于 KMS 激活为不同系统版本的信息可从如下链接了解:
https://learn.microsoft.com/zh-cn/windows-server/get-started/kms-client-activation-keys
1.4 更改应用、文档等默认保存位置
由于存在被 C 盘膨胀支配的历史,应用、文档等都习惯放在其它分区,个人文档放在其它磁盘。修改方法:
依次点开 系统设置 -> 存储 -> 高级 -> 保存新内容的地方
,将所有选项都修改至非 C 盘盘符即可。
1.5 旧电脑开启局域网共享复制文件
旧电脑为 Windows 10 系统,可以在网络共享设置中启用局域网共享以复制文件到新电脑中。步骤参考:
网络 -> 高级共享设置 -> 所有网络 -> 启用共享以便可以访问网络
- 在希望共享的文件夹或磁盘上右键,选择
共享 -> 特定用户 -> Everyone -> 读取
- 也可以在这里统一添加文件夹共享:
计算机管理 -> 系统工具 -> 共享文件夹 -> 共享 -> 新建共享
- 记得复制完毕后及时关闭共享设置、移除重要的共享目录,否则应设置需密码访问的共享方式
我这里将新电脑的 D 盘设置为共享,并在旧电脑里映射为本地 Z 盘驱动器。由于有数十个 git
仓库需要同步过去,之间简单的 Copy 是行不通的。正好用上了之前写的一个小工具lzwme/dir-fast-copy,效果参考下图:
2 应用安装与开发环境配置
2.1 更新 PowerShell 至最新版
系统默认的 PowerShell 为 5.1 版本,在使用 Scoop
安装有些软件时可能会报错。
- 参考:在 Windows、Linux 和 macOS 上安装
PowerShell
- 打开
应用商店
并搜索PowerShell
,可以直接安装7.x
版本 - 也可以使用
Scoop
安装(见后文,需先安装Scoop
):scoop install powershell
- 打开
配置 PowerShell
如果你喜欢 oh-my-posh
风格,可以参考该文:安装与配置 oh-my-posh
但实际体验过程中 oh-my-posh
带来的延迟太严重,所以不再考虑它,改为自定义部分配置,参考如下。
执行命令 notepad $PROFILE
,在打开的配置文件中填写如下内容(参考):
# 设置预测文本来源为历史记录 Set-PSReadLineOption -PredictionSource History # 设置 Tab 键补全 Set-PSReadlineKeyHandler -Key Tab -Function Complete # 设置 Ctrl+d 为菜单补全和 Intellisense Set-PSReadLineKeyHandler -Key "Ctrl+d" -Function MenuComplete # 设置 Ctrl+z 为撤销 Set-PSReadLineKeyHandler -Key "Ctrl+z" -Function Undo # 设置向上键为后向搜索历史记录 # Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward Set-PSReadLineKeyHandler -Key UpArrow -ScriptBlock { [Microsoft.PowerShell.PSConsoleReadLine]::HistorySearchBackward() [Microsoft.PowerShell.PSConsoleReadLine]::EndOfLine() } # 设置向下键为前向搜索历史纪录 # Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward Set-PSReadLineKeyHandler -Key DownArrow -ScriptBlock { [Microsoft.PowerShell.PSConsoleReadLine]::HistorySearchForward() [Microsoft.PowerShell.PSConsoleReadLine]::EndOfLine() } # 自定义 prompt 格式 function prompt { Write-Host "🍡 $pwd>" -ForegroundColor:green return " " }
2.2 安装 Git 及 Visual Studio 或 MSVC 工具集
在开发的过程中,很多时候都可能需要 MSVC 工具集支持。
Git 下载
: https://git-scm.com/download/win- Visual Studio(一般 Community 版本即可)
- Microsoft C++ 生成工具(安装了 Visual Studio 的话就不用了)
2.3 安装和配置 Scoop
首先自定义 Scoop
安装路径(软件安装位置在 C
盘,这里指定到其他盘符)。打开 PowerShell
并执行如下命令:
# 修改当前用户应用的安装路径 $env:SCOOP='D:\scoop\user-apps' [environment]::setEnvironmentVariable('SCOOP',$env:SCOOP,'User') # 修改全局应用的安装路径(需要管理员权限的应用一般需全局安装,尽量保持放在 C 盘) $env:SCOOP_GLOBAL='C:\scoop\apps' [environment]::setEnvironmentVariable('SCOOP_GLOBAL',$env:SCOOP_GLOBAL,'Machine')
然后执行如下命令安装和配置 Scoop
:
# install Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser # irm -useb get.scoop.sh | iex irm https://ghproxy.com/raw.githubusercontent.com/lzwme/scoop-proxy-cn/master/install.ps1 | iex # config scoop config SCOOP_REPO https://ghproxy.com/github.com/ScoopInstaller/Scoop scoop bucket rm main # scoop bucket add main https://ghproxy.com/github.com/ScoopInstaller/Main scoop bucket add spc https://ghproxy.com/github.com/lzwme/scoop-proxy-cn # show help scoop help # 安装必备应用: scoop-search、aria2... scoop install spc/scoop-search spc/aria2 spc/sudo
这里使用了我个人定制的同步加速仓库作为软件安装源 lzwme/scoop-proxy-cn,详细了解可参考该文:Scoop 的安装、使用与软件源定制。
2.3 使用 Scoop 安装应用
使用 Scoop 直接安装常用软件(不需要的行删除即可):
7zip
压缩解压缩工具
–TortoiseGit
Git 小乌龟。 sourcetree 也是一个可替代选项chrome
chrome 浏览器FiraCode
为编程而生的等宽字体JetBrains-Mono
为编程开发设计的无衬线等宽字体3270-NF
A font for the nostalgicvscode
vscode 编辑器nvm
nvm-windows (这里也可以换为使用fnm
)finalshell
SSH 终端。如果你不喜欢它,推荐安装开源免费的NxShell
,在应用商店即可搜索和安装switchhosts
Hosts 切换管理fiddler
抓包工具,开发助手openssl
TLS/SSL toolkitdocker
nginx
rust
android-studio
python2
python 2python
python 3 最新版qq
tim
wechat
微信WeChatWork
企业微信RevokeMsgPatcher
微信/QQ/TIM防撤回补丁DingTalk
钉钉feishu
飞书ADrive
阿里网盘BaiduNetDisk
百度网盘Tencent-Meeting
腾讯会议WPSOffice-cn
WPSffmpeg
音视频编辑的基础支持工具hub
USE GITHUB FROM THE COMMAND-LINEact
Github Actions 脚本本地执行工具everything
文件与目录索引,文件快速查找treesize
磁盘占用分析:空间去哪儿了wiztree
treesize 同类工具vlc
开源的直播视频观看工具Clash-for-Windows_Chinese
你懂的
可将以下安装命令保存为 D:\scoop-install.ps1
然后在 PowerShell
中执行它。有部分应用可能会因为更新信息不匹配报错无法安装,可以先删除掉再重新执行,已经安装成功的会自动跳过。
# 全局安装的工具或应用 sudo scoop install -g ` openssl ` JetBrains-Mono ` FiraCode ` 3270-NF # 无需管理员权限安装的应用 scoop install ` 7zip ` TortoiseGit ` chrome ` vscode ` nvm ` finalshell ` switchhosts ` fiddler ` docker ` nginx ` rust ` android-studio ` python2 ` python ` qq ` tim ` wechat ` WeChatWork ` RevokeMsgPatcher ` DingTalk ` feishu ` ADrive ` BaiduNetDisk ` Tencent-Meeting ` WPSOffice-cn ` ffmpeg ` hub ` act ` everything ` treesize ` wiztree ` vlc ` Clash-for-Windows_Chinese
一些你想安装的工具软件可能在 scoop
仓库中是可以搜的(当前 spc 仓库源收集有 1.6w+ 应用),可通过 scoop-search
命令搜索,选择合适的版本进行安装。示例:
scoop-search jdk scoop info jdk scoop install orcalejdk8
2.4 使用 nvm
安装 Node.js
nvm node_mirror https://npmmirror.com/mirrors/node/ nvm npm_mirror https://npmmirror.com/mirrors/npm/ nvm install 18 && nvm use 18 # 安装 Node.js 18 版本 npm set registry https://registry.npmmirror.com # 安装包管理工具 npm i -g @lzwme/nrm yarn pnpm # 示例:nrm 添加内网 npm 私有仓库配置 # nrm add lzw https://registry.demo.me https://lzw.me # 安装个人开发辅助工具 npm i -g tsx npm-check-updates @lzwme/git-helper @lzwme/m3u8-dl
3 其他配置
3.1 git
配置
# 默认账号与邮箱 $ git config --global user.name "renxia" $ git config --global user.email "邮箱" # 生成 ssh 公私钥 ssh-keygen -t rsa # 查看公钥(复制并配置至 gitlab、github 等) cat ~/.ssh/id_rsa.pub
3.2 python
使用国内镜像
在当前用户目录下新建 pip/pip.ini
文件,内容为:
[global] index-url = https://mirrors.aliyun.com/pypi/simple/ [install] trusted-host=mirrors.aliyun.com
3.3 恢复右键菜单显示所有项
使用管理员权限打开 cmd,然后执行命令,然后重启系统或重启资源管理器(explorer.exe
)即可:
reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve
若需恢复 win11 右键模式,可重新执行如下命令:
reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /va /f
4 小结
整个过程还是挺费时间的。由于内网限制了下载速度为 1M
以内,在使用 Scoop
批量安装应用时耗非了较多的时间。可以在旧电脑上使用 mstsc
远程协助方式连接,在工作的空隙去间歇性的配置。
在此记录以上流程备忘,也希望能对有类似情况的同学提供些许帮助。