Bugs solutions
即自己遇到的问题以及相应的解决方法。
I Unix¶
I.1 ssh to WSL¶
- 从 macOS 到 Windows WSL
- ubuntu:
sudo systemctl start ssh
- ubuntu:
- SSH 访问 Windows 的 WSL2 Ubuntu
- kali-linux:
sudo /usr/sbin/service ssh start
- kali-linux:
- windows 上执行
netsh interface portproxy show all查看开放端口
I.2 Wsl default user¶
I.2.1 法 1(通用)¶
I.2.2 法 2(终端中能运行对应发行版程序)¶
基本失效,一般都使用
wsl -d <Distro>。
I.3 Wsl 磁盘转移 ¶
Wsl 越用越大,默认在 C 盘,如何移动到 D 盘自己指定的位置呢?
显然迁移是需要打包、迁移、解包的,那么当然是发行版越小的时候迁移越方便。
20250714 更
wsl --list -v # 获取发行版名称,此处以Ubuntu-24.04为例
$targetPath = "D:\Ubuntu-24"
if (!(Test-Path $targetPath)) { New-Item -Path $targetPath -ItemType Directory | Out-Null }
wsl --shutdown
wsl --manage Ubuntu-24.04 --move "$targetPath"
原方案
windows 上 docker 的迁移
可以参考 Windows 11 Docker Desktop 更换默认 C 盘存储路径,释放 C 盘空间;
原文为(但是迁移上面文件夹的同时迁移了 docker 的 *.vhdx ,所以看上面的文章即可
I.4 wsl 磁盘压缩 ¶
wsl 不主动释放使用过的空间,可以使用 WSL2 虚拟磁盘文件 (.vhdx) 占用过大处理办法 解决。
I.5 忘记了 wsl root 权限密码 ¶
I.6 忘记 Vmware-machine 密码 ¶
I.7 change version of JAVA in linux¶
sudo update-alternatives --config java
I.8 change version of GCC in linux¶
- https://blog.csdn.net/qq_39779233/article/details/105124478
- https://lindevs.com/install-gcc-on-ubuntu/
I.9 WSL (0x80190193)¶
解决方案:关闭代理,参考 wsl 安装问题。
I.10 Kali linux install¶
I.11 内网服务器的网络问题 ¶
pip 安装 python 包缓慢 / 失败
使用清华源安装:
vsc 插件的网络访问问题
【20260304 更新】这里是原来的版本
- https://blog.csdn.net/qq_40620465/article/details/152000104
- 在 ssh 连接时使用
RemoteForward 7890 localhost:7890 - 在服务器的 setting.json 中添加下列选项(前两条是关键)
按照上面的配置,很多时候是可用的(如果没问题用上面的做法即可
$ export https_proxy=http://127.0.0.1:7890
$ curl -I https://www.google.com
HTTP/1.1 200 Connection established
curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to google.com:443
经过对日志的排查以及借助 gemini-3.1-pro 的分析,猜测是:由于服务器是多人共用的(或者说我自己就是两台电脑RemoteForward 17890 localhost:7890
{
"http.useLocalProxyConfiguration": false,
"http.proxy": "http://127.0.0.1:17890",
"http.proxySupport": "override",
}
重新构建连接后测试:
$ export https_proxy=http://127.0.0.1:17890
$ curl -I https://www.google.com
HTTP/1.1 200 Connection established
HTTP/2 200
content-type: text/html; charset=ISO-8859-1
...
II windows¶
II.1 电脑假死 ¶
我的电脑的鼠标可以移动,针对键盘也有响应,但是鼠标无法点击屏幕上的任何东西。
虽然不知道为什么,但是成功在 reddit 上找到了“在我的情况下”可行的方式(原理不详
- Ctrl+Alt+Delete ,选中“资源管理器”
- 按下 Esc,似乎无事发生,但是此时发现可以点击了……
II.2 oh-my-posh 显示 python 虚拟环境 ¶
PowerShell 显示 Module 相关问题
注意 json 文件中实际不能够有注释:
{
"type": "python",
"foreground": "#ffffff",
"style": "plain",
"properties": {
"home_enabled": true,
"fetch_version": true,
"fetch_virtual_env": true,
"display_mode": "context",
"display_virtual_env": true,
"dispplay_default": true,
"display_version": false
},
"template": "(\uE235 {{ if .Error }}{{ .Error }}{{ else }}{{ if .Venv }}{{ .Venv }}{{ else }}{{ .Full }}{{ end }}{{ end }})"
},
II.3 windows 文件资源管理器中的 “网盘图标” 移除 ¶
注册表中:
计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\
也有些可能在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\
II.4 电脑不使用后两分钟锁屏自动锁屏 ¶
- https://www.zhihu.com/question/55617612
II.5 在 Windows11 上隐藏任务栏中的 copilot ¶
最近在 windows 11 更新后,任务栏中出现了一个 copilot ,基于仍然是试用期,而且大陆不能直接访问,懒得用了,放那也碍眼:
II.6 windows 多任务处理 edge 浏览器标签页显示过多 ¶
温知识
在 windows 上按住 Alt 同时按 Tab 键会进入“多任务处理”,展示当前打开的软件界面,点按 Tab 可以进行切换,松开 Alt 则聚焦对应界面。
我对多个浏览器都有使用,发现 Edge 浏览器在“多任务处理”界面中会展示多个标签页,对于我想要切换至其他软件非常不友好(需要多按几下 Tab
- 进入 “设置 > 系统 > 多任务处理”
- 调整“对齐或按 AIt+Tab 时显示应用中的标签页”为“不显示选项卡”
此时虽然说“不显示”,但还是会保留基本的 edge 的页面的。
Docker 未安装在指定位置导致 compose 插件无法被找到 ¶
Question
我使用 windows 上的 docker desktop 并默认安装在了 D 盘;在启动容器时出现下面的错误:
Cannot start Docker Compose application. Reason: compose [start] exit status 125. unknown flag: --project-name Usage: docker [OPTIONS] COMMAND [ARG...] Run 'docker --help' for more information
但是在管理员权限下执行下面命令之后可以正常:
C:\..\system32
> new-Item -ItemType SymbolicLink -Path "$HOME\.docker\cli-plugins\docker-compose.exe" -Target "D:\Docker\docker_desktop\resources\bin\docker-compose.exe"
目录: C:\Users\xxxxx\.docker\cli-plugins
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---l 2026/2/25 10:53 0 docker-compose.exe
问题和这个 issue 类似,最后翻到可以在 $HOME\.docker\config.json 添加(路径结合实际修改
III Network¶
III.1 macOS clash 系统代理打开无效 ¶
III.2 missing cap_net_raw+p capability or setuid¶
$ ping github.com
ping: socktype: SOCK_RAW
ping: socket: Operation not permitted
ping: => missing cap_net_raw+p capability or setuid?
$ curl https://baidu.com
curl: (35) GnuTLS, handshake failed: The TLS connection was non-properly terminated.
ping 权限不够,sudo setcap cap_net_raw+ep /usr/bin/ping 提供权限。
III.3 From xxxx icmp_seq=n Destination Host Unreachable¶
WSL ping <domain>/<ip>时出现无法找到的问题,但是宿主机是可以正常访问的,unreachable 似乎将问题指向了 DNS,最后通过修改 /etc/resolv.conf 中的 nameserver 后的 DNS 服务器 ip 解决(修改至与宿主机一致即可
III.4 连接需要登录的 wifi 时重定向界面错误 ¶
在登入企业 / 学校 wifi 时,需要账号登入;但是发现只是跳转到 http://www.msftconnecttest.com/redirect 之后显示失败了,在这里 找到了答案。
简而言之,先把 VPN 什么的关了,否则影响上述链接重定向。
III.5 vscode 中使用 copilot 登录失败 ¶
在更换学生认证包后,vscode 上的 copilot 突然间登入不上,体现在点击登陆后自动跳转到认证界面,确定后 vscode 这边却没反应。
搜索后有人指向了 setting.json,打开搜索,确实发现了:
"github.copilot.chat.localeOverride": "zh-CN",
"github.copilot.preferredAccount": "...", // 此处省略我的 GitHub 邮箱地址
"github.copilot.enable": {
"*": true,
"plaintext": false,
"markdown": false,
"scminput": false
},
尝试删除后重试,问题解决;建议 Ctrl x 剪切,万一问题不在这,也能复原。
IV Other¶
IV.1.1 如何获取 Google 安全码?¶
- 热夏的博客
- 有些手机没有 google 官方给出的获取安全码的方式,我们可以在 google play 中下载 "google" 这个应用。
IV.1.2 Tab Foucs in Vscode¶
- Q: 在 VSCode 中,Tab 键变成了在各选项间跳跃(即焦点切换
) ,而不是接受 AI 插件给出的建议。 - A: 使用
Ctrl M快捷键切换了这一模式。
IV.1.3 obsidian 文件保存失败?¶
IV.1.4 Obsidian 调整 mermaid 宽度 ¶
IV.1.5 Syncthing 跨设备同步工具 ¶
IV.1.6 Deskflow¶
- Q:
NOTE: cursor is locked to screen, check scroll lock key -
(windows) 键盘上的
ScrLk按键。 -
Q: MacOS 上 Deskflow 反复索要 accessibility,哪怕已经给到
- (MacOS) 参考 #8028,之前卸载过 deskflow,导致重新安装后 accessibility 出了问题,只要将选项移除后重新启动 deskflow 并赋权即可。