前言
实验室电脑先是搜索栏失灵,然后打更新的时候突然卡死,然后就开始无限重启。然后就只能重装系统,重装过程中,安装界面都能蓝屏,好不容易重装完发现还是会不定期突然关机重启。最后把机箱打开,研究半天,发现是内存条的问题,卸掉两根后装的内存条就没问题,白瞎了一下午的功夫重装系统。
- 2023.12.18 更新软件列表,更新
WSL配置。
不过系统反正也已经重装了,就好好记录一下重装以后的软件安装流程,方便以后快速重新部署。果然系统大版本升级还是全新安装最方便,从 windows 10 升级上去的 windows 11,确实总会有乱七八糟的问题。
一、系统设置
Windows 系统,默认的文档、图片、桌面这些都在 C 盘,一旦重装系统文件就全没了,所以个人一般喜欢将用户目录下的主要文件全部迁移至 D 盘。同时每块硬盘对应一个盘符,硬盘内部不再分区。具体迁移盘符自定,跟系统安装所在物理硬盘不在一起最好。同时由于长期拼团 Office 365,故而 Onedrive 的 1T 存储空间也是常用,多设备文档同步真的很好。
- 更改用户文件存储位置:
开始 - 设置 - 系统 - 存储 - 高级存储设置 - 保存新内容的地方。
新的应用、离线地图仍保留在C 盘不动,其余新的文档、新的音乐、新的照片和视频、新的电影和电视节目几项,全部更改到D 盘。此时D 盘根目录会生成新用户名目录,名称为在系统安装过程中登录的微软账号前五位,这里也建议全部系统都用同样的账号登录,可以保证用户目录一致,方便多设备同步设置,尤其是涉及到用户目录的环境变量。 - 更改用户目录路径:(存储位置改完以后,系统快速访问的目录还是原始路径,需要额外修改)
资源管理器 - 本地磁盘
C-用户-用户名。将该目录除OneDrive以外的文件夹全部迁移,迁移方式为右键单击文件夹-属性-位置,将C:\User改为D:。 - 迁移
OneDrive路径:(Onedrive默认保存在C 盘用户目录中,严重占用C 盘空间)首先关闭
OneDrive应用,随后在前一步提到的目录中直接删除OneDrive,然后再次打开OneDrive。此时会要求重新登录,登录后在提示框下方有修改存储路径的选项,将存储路径改到D 盘对应用户名目录,随后再次修改桌面、文档、图片三项,将存储目录直接转移到OneDrive中,这样可以多设备同步数据,同时可以间接做到微信聊天记录的迁移,新设备只需要完全下载wechat目录下的文件,然后安装登录微信就可以无缝保留全部聊天记录。
二、软件安装
之前由于经常折腾电脑导致重装,我有备份所有安装软件的习惯,但是随着 windows 11 的推进,winget命令成为了我安装软件的首选。该命令类似 win 下的 choco,linux 下的 yum 和 apt,不过是微软第一方提供的。可以直接安装大部分软件,唯一的缺点就是全脚本化的安装方式,导致所有软件直接装在了 C 盘,同时不能自己设置安装选项。不过在大容量固态降价的现在,软件全装 C 盘也方面运行和管理。全部软件安装,以 winget 为主,少部分无法搜索到的软件从官网安装,坚决不用各种 腾讯软件管家、360 软件管家 之类的软件,特定几个软件直接从 微软应用商店 安装。
2.1 常用工具
-
火绒安全 (安全工具)
shell1winget install HuorongSysdiag -
IDM 下载器 (下载工具,付费)
shell1winget install Tonec.InternetDownloadManager -
Iobit uninstall(软件安装监控工具,付费)
shell1winget install IObit.Uninstaller -
Hash TabOpenHashTab(文件哈希校验)shell1winget install namazso.OpenHashTab -
Everything(搜索工具)
shell1winget install voidtools.Everything -
7-Zip(压缩工具)
shell1winget install 7zip.7zip -
Adguard(广告拦截工具,付费)
shell1winget install AdGuard.AdGuard -
TrafficMonitor(网速/内存/CPU/GPU 监控)
-
RustDeskToDesk(远程桌面)shell1winget install youqu.todesk -
KeePassBitwarden(密码管理工具)shell1winget install Bitwarden.Bitwarden -
PotPlayer(播放器)
shell1winget install Daum.PotPlayer -
qBittorrent(BT 下载器)
shell1winget install qBittorrent.qBittorrent -
OBSStudio(录屏工具)
shell1winget install OBSProject.OBSStudio
2.2 效率&通讯工具
-
微信
shell1winget install Tencent.WeChat -
QQ~~(推荐 TIM)~~
shell1winget install Tencent.QQ.NT -
腾讯会议
shell1winget install Tencent.TencentMeeting -
钉钉
shell1winget install Alibaba.DingTalk -
飞书
shell1winget install ByteDance.Feishu -
Discord
shell1winget install discord.discord -
Telegram
shell1winget install Telegram.TelegramDesktop --source winget -
Office 365(文档工具,付费)
install by
Office Tool Plus -
Visio(流程图,付费)
install by
Office Tool Plus -
Xmind(思维导图)
shell1winget install XMind.XMind -
Adobe Acrobat DC(PDF 阅读器,付费)
shell1winget install Adobe.Acrobat.Reader.64-bit -
Zotero(文献管理工具)
shell1winget install Zotero.Zotero -
网易有道翻译
shell1winget install Youdao.YoudaoTranslate -
Qsync(威联通同步工具)
shell1winget install QNAP.Qsync -
MikTex(Latex 工具)
shell123winget install MiKTeX # support for latex generate winget install StrawberryPerl.StrawberryPerl -
Pandoc(文档工具)
shell1winget install JohnMacFarlane.Pandoc -
Obsidian(笔记工具)
shell1winget install Obsidian.Obsidian -
腾讯会议
shell1winget install Tencent.TencentMeeting -
腾讯文档
shell1winget install Tencent.TencentDocs -
阿里云盘
shell1winget install Alibaba.aDrive
2.3 娱乐工具
-
Steam
shell1winget install Valve.Steam -
Wallpaper Engine(动态桌面壁纸,付费)
from steam
-
Epic
shell1winget install EpicGames.EpicGamesLauncher -
网易云音乐
shell1winget install NetEase.CloudMusic.Beta
2.4 开发工具
-
oh-my-posh(命令行美化工具)
shell1winget install JanDeDobbeleer.OhMyPosh -
PowerToys
shell1winget install Microsoft.PowerToys -
Termius(终端工具)
shell1winget install Termius.Termius -
OpenVPN(内网工具)
shell1winget install OpenVPNTechnologies.OpenVPNConnect -
Clash(内网工具) -
Git
shell1winget install git.git -
NVS(nodejs 版本管理)
shell1winget install jasongin.nvs -
MiniConda(python 版本管理)
shell1winget install Anaconda.Miniconda3 -
Go
shell1winget install GoLang.Go -
Java
shell1winget install EclipseAdoptium.Temurin.21.JDK -
Docker
shell1winget install Docker.DockerDesktop -
Postman
shell1winget install Postman.Postman -
JetBrain
shell1winget install JetBrains.Toolbox -
VisualStudio
shell1winget install Microsoft.VisualStudio.2022.Community -
vscode
shell1winget install Microsoft.VisualStudioCode
2.5 其他工具
-
Nvidia GeForceExperience(显卡工具)
shell1winget install Nvidia.GeForceExperience -
GHUB,Option+(罗技驱动工具)
shell123winget install Logitech.GHUB winget install Logitech.OptionsPlus -
DisplayManager(Dell 显示器管理)
shell1winget install winget install Dell.DisplayManager -
小米云服务
shell1winget install Xiaomi.XiaomiCloud -
小米电脑管家
shell1自行参考酷安教程 -
Office Tool Plus(Office 安装工具)
2.6 微软应用商店
- AV1 Video Extension
- MPEG-2 视频扩展
- 原始图像扩展
- MicroSoft 远程桌面
- Dolby Atmos for headphones
- Dolby Access
- Windows Subsystem for Linux Preview
- Ubuntu
三、软件设置
默认安装的软件,大部分都是开箱即用,少部分需要进行一定的配置。
-
oh-my-posh
参考 Windows 终端美化
-
NVS
bash12nvs add lts nvs link lts -
MiniConda
参考 镜像源修改。
注:如试图安装 Stable Diffusion,请不要切换 pip 软件源,会找不到部分软件。 -
WSL
bash1234567891011121314151617181920212223242526# for system info sudo apt install screenfetch # for proxy(WSL2 版本小于 2.0) sudo vi /etc/profile.d/proxy.sh host_ip=$(cat /etc/resolv.conf |grep "nameserver" |cut -f 2 -d " ") export http_proxy="http://$host_ip:yourport" export https_proxy="http://$host_ip:yourport" # for node.js vi ~/.bashrc export NVS_HOME="$HOME/.nvs" source nvs.sh nvs add lts nvs default lts # for java sudo apt install zip unzip curl -s "https://get.sdkman.io" | bash sdk install java 21.0.1-zulu sdk install maven # for rust curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shWSL2 2.0版本及以上,修改用户目录下.wslconfig文件,开启网络镜像模式即可。sh12345678910[wsl2] processors=24 # CPU 调用数量 memory=16GB # WSL 内存分配数量 swap=16GB # WSL 虚拟内存数量 localhostForwarding=true # 启动本地端口转发 [experimental] networkingMode=mirrored # 启动镜像模式网络,支持 IPV6 dnsTunneling=true firewall=true autoProxy=true # 启动自动代理切换,系统设置全局代理,WSL 环境会自动配置相关变量 -
vscode(settings.json)
以下中文注释部分需要自行修改
json123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153{ // config for ignore "settingsSync.ignoredSettings": [ "z-reader.fileDir", "projectManager.git.baseFolders" ], // config for terminal "terminal.integrated.fontFamily": "JetBrainsMono NF", "terminal.integrated.inheritEnv": false, // config for windows terminal "terminal.integrated.profiles.windows": { "PowerShell": { "source": "PowerShell", "icon": "terminal-powershell" }, "Command Prompt": { "path": [ "${env:windir}\\Sysnative\\cmd.exe", "${env:windir}\\System32\\cmd.exe" ], "args": [], "icon": "terminal-cmd" }, "Git Bash": { "source": "Git Bash" } }, "terminal.integrated.defaultProfile.windows": "PowerShell", "terminal.integrated.env.windows": {}, // config for linux terminal "terminal.integrated.profiles.linux": { "bash": { "path": "bash", "icon": "terminal-bash" }, "zsh": { "path": "zsh" }, "fish": { "path": "fish" }, "tmux": { "path": "tmux", "icon": "terminal-tmux" }, "pwsh": { "path": "pwsh", "icon": "terminal-powershell" } }, "terminal.integrated.defaultProfile.linux": "bash", "terminal.integrated.automationProfile.linux": null, // config for java "redhat.telemetry.enabled": false, "java.errors.incompleteClasspath.severity": "ignore", "java.project.importOnFirstTimeStartup": "automatic", //java 工作环境目录,视自身安装路径设置 "java.jdt.ls.java.home": "d:\\Workspace\\Environment\\Java\\jdk-11", "java.configuration.runtimes": [ { "name": "JavaSE-1.8", "path": "d:\\Workspace\\Environment\\Java\\jdk1.8.0_261" }, { "name": "JavaSE-11", "path": "d:\\Workspace\\Environment\\Java\\jdk-11", "default": true } ], "java.completion.favoriteStaticMembers": [ "org.junit.Assert.*", "org.junit.Assume.*", "org.junit.jupiter.api.Assertions.*", "org.junit.jupiter.api.Assumptions.*", "org.junit.jupiter.api.DynamicContainer.*", "org.junit.jupiter.api.DynamicTest.*", "org.mockito.Mockito.*", "org.mockito.ArgumentMatchers.*", "org.mockito.Answers.*" ], //摸鱼插件 Z-reader 设置,未安装可删除 //文件路径视需求设置 "z-reader.fileDir": "D:\\Workspace\\Notebook\\Z-reader", "z-reader.onlineSite": "笔趣阁", "z-reader.encoding": "utf8", "z-reader.chapterOrder": "顺序", "z-reader.cookies": [], // config for python "python.defaultInterpreterPath": // username 改为自己的用户名 "C:\\Users\\username\\miniconda3\\python.exe", "python.languageServer": "Pylance", //config fot editor "diffEditor.wordWrap": "off", "editor.suggestSelection": "first", "editor.fontFamily": "'Cascadia Code',Consolas, 'Courier New', monospace", "editor.codeLensFontFamily": "JetBrainsMono NF", "editor.fontLigatures": true, "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue", "editor.guides.indentation": false, "editor.guides.bracketPairs": false, "editor.inlayHints.enabled": "on", "editor.fontSize": 16, "editor.defaultFormatter": "esbenp.prettier-vscode", "[python]": { "editor.defaultFormatter": "ms-python.python" }, "editor.inlineSuggest.enabled": true, "editor.unicodeHighlight.nonBasicASCII": false, "editor.wordWrap": "off", "editor.tokenColorCustomizations": {}, "editor.semanticTokenColorCustomizations": {}, "editor.codeActionsOnSave": {}, //config for workbench "workbench.iconTheme": "vscode-icons", "workbench.colorTheme": "GitHub Dark Dimmed", "workbench.editorAssociations": { "*.ipynb": "jupyter-notebook" }, "workbench.colorCustomizations": { "editor.lineHighlightBackground": "#1073cf2d", "editor.lineHighlightBorder": "#9fced11f" }, //config for search & flie "search.exclude": { "**/build/*": true, "**/bazel-out/*": true, "**/bazel-ray/*": true, "**/bazel-testlogs/*": true }, "files.exclude": { "**/.classpath": true, "**/.project": true, "**/.settings": true, "**/.factorypath": true }, "files.autoSave": "afterDelay", "files.eol": "\n", //config for git "git.ignoreLegacyWarning": true, //config for latex-workshop "latex-workshop.view.pdf.viewer": "tab", //config for cmake "cmake.configureOnOpen": true, //config for privacy "telemetry.telemetryLevel": "off", //项目管理器插件配置,需改为自己的目录 "projectManager.git.baseFolders": ["D:\\Workspace\\My Project"], "blockman.n01LineHeight": 0, //系统代理配置,需根据需求自行修改 "http.proxy": "http://127.0.0.1:7890", "git.autofetch": true } -
Obsidian
四、总结
在采用 winget 方式并且大范围使用免费软件和支持云同步的软件以后,重装系统到完全恢复工作环境,在网速可靠的情况下,只需要半天时间。远快于之前动辄一天的安装流程。