我的笔记
Syncthing - Windows安装配置开机自启与后台服务
Windows的后台服务常驻机制还是非常爽的,通常是流氓软件后台常驻,而我们自己的软件想配置后台自启却没有简洁的设置方式
Syncthing是一款同步文件工具,虽然有CLI版本,但我更喜欢命令行版本
CMD运行syncthing,CMD关闭就结束运行了,Syncthing如何常驻后台是个问题
计划任务是个不错的方法,但开机自启动需要重启验证(个人经验是不同版本的Windows计划人物可靠性不一致,不算是个非常保险的方法)
所以我还是更喜欢能把软件注册成服务的nssm工具,具体文档可以参考nssm的说明,文档短且易学,注册成系统服务之后也具备开机自启的特性
下载syncthing与nssm之后,可以使用如下指令注册成后台服务
.\nssm.exe install syncthing "C:\Programs\syncthing-windows-amd64-v1.13.1\syncthing.exe" '-home="C:\Programs\syncthing-windows-amd64-v1.13.1\config"'
.\nssm.exe start syncthing
具体操作例子(使用管理员身份的Powershell)
PS C:\Programs\nssm-2.24\win64> .\nssm.exe install syncthing "C:\Programs\syncthing-windows-amd64-v1.13.1\syncthing.exe" '-home="C:\Programs\syncthing-windows-amd64-v1.13.1\config"'
Service "syncthing" installed successfully!
PS C:\Programs\nssm-2.24\win64> .\nssm.exe start syncthing
syncthing: START: The operation completed successfully.
有 syncthing: START: The operation completed successfully. 提示就说明后台服务注册成功了
Operating System Windows 2021-02-22 10:43:39
Proxmox - 物理机Windows10如何虚拟化成虚拟机(P2V)
Windows10重装系统是非常简单的事情,但如何拷贝迁移旧系统数据是个难题,如果你有虚拟化的软件,那么把现有的Windows虚拟化成虚拟机是个保留资料的最佳方案
大意步骤
- 使用分区助手DiskGenius(免费版即有这个功能)热迁移当前操作系统成VMDK格式的虚拟机磁盘文件
- 创建一个硬件上类似于当前物理机器配置的虚拟机
- 将VMDK文件上传至你的PVE中,再转换VMDK磁盘文件成PVE能识别使用的QCOW2磁盘文件
- 导入磁盘文件到PVE的存储卷中,新建虚拟机并使用这个磁盘文件
首先,我们下载可以将当前操作系统热迁移成VMware磁盘格式的DiskGenius免费版
随后打开软件,在菜单栏-工具中选中 将当前操作系统迁移至VMware虚拟机中,选好输出格式与输出内容即可,这里假设输出文件名为 Windows10.vmdk
输出文件之后上传至PVE中,此步随意,可以用scp/smb等方式上传,上传成功之后,使用如下方法转换文件格式
qemu-img convert -O qcow2 Windows10.vmdk ../sdd/Windows10.qcow2
创建一个硬件上类似于当前物理机器配置的虚拟机,无需创建虚拟机硬盘(光驱也不需要)
最后,导入已转换完成的文件到存储卷中,102是新创建的虚拟机ID, local-Thin为卷名
qm importdisk 102 Windows10.qcow2 local-Thin
注:部分Windows10是UEFI方式启动,在PVE中要设置好以UEFI方式启动,否则可能识别不到硬盘
Virtualization Technology Windows 2021-01-26 13:04:06
Widnows - HTTPS双向认证客户端证书无法正常显示问题
因为工作项目牵扯到一个客户端认证,网站做了一个基本的HTTPS双向认证,测试没有问题,测试效果如下
结果正式使用之后发现部分Windows7无法在访问网站的时候正确出现证书选择,明明证书已经安装了,Google了很久也没有查到相关资料(可能自定义客户端证书用的人不多)
访问网站之后直接被判定为没有证书,效果如下
这个问题困扰了整整一周,连chrome都差编译出来看看到底里面为什么没调到证书,最后发现一个规律
在重启之后的前半分钟(不太固定)证书是能正确显示的,这个线索很重要,提示了应该是某个服务破坏了证书的验证机制,遂逐个逐个服务关掉
在关掉一个服务之后果然证书就正常了,如图
至于原因还没有找到,后面再详细看看这个服务是做什么的(但其实应该是某些流氓软件篡改了系统设置,因为测试正常安装的Windows7并没有这个问题)
Operating System Windows 2019-12-20 17:14:45
Windows - 快速定位占用端口程序
使用netstat -aon|findstr
使用tasklist|findstr
PS C:\Users\ycs10> netstat -aon|findstr "3389"
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 1380
TCP 192.168.11.193:9434 192.168.11.155:3389 ESTABLISHED 4088
TCP 192.168.11.193:11526 192.168.11.214:3389 ESTABLISHED 4088
TCP [::]:3389 [::]:0 LISTENING 1380
UDP 0.0.0.0:3389 *:* 1380
UDP [::]:3389 *:* 1380
PS C:\Users\ycs10> tasklist|findstr "1380"
svchost.exe 1380 Services 0 15,464 K
chrome.exe 13808 Console 1 13,440
Network Windows 2019-10-12 14:14:25
Windows - 路由追踪
指令:tracert
通过路由追踪可以清晰的得到我们的网络请求中断位置,是常用于判断网络异常/服务器异常问题的利器
PS C:\WINDOWS\system32> tracert 45.12.109.68
通过最多 30 个跃点跟踪到 45.12.109.68 的路由
1 1 ms 1 ms 2 ms 192.168.11.1
2 28 ms 11 ms 12 ms 1.72.137.219.broad.gz.gd.dynamic.163data.com.cn [219.137.72.1]
3 18 ms 13 ms 18 ms 119.145.81.157
4 17 ms 9 ms 9 ms 61.144.3.30
5 * 9 ms 13 ms 202.97.94.142
6 20 ms 10 ms 16 ms 202.97.94.102
7 204 ms 206 ms 206 ms 202.97.89.138
8 203 ms 228 ms 204 ms ae3.paloalto2.pao.seabone.net [195.22.206.169]
9 189 ms 186 ms 189 ms ae14.losangeles2.loa.seabone.net [89.221.35.144]
10 184 ms 188 ms 179 ms profuse.losangeles2.loa.seabone.net [89.221.35.147]
11 * * * 请求超时。
12 * * 1775 ms 104.149.2.158
13 179 ms 178 ms * 185.232.15.196
14 * * * 请求超时。
15 * * * 请求超时。
16 * * * 请求超时。
17 * * * 请求超时。
18 * * * 请求超时。
19 * * * 请求超时。
20 * * * 请求超时。
21 * * * 请求超时。
22 * * * 请求超时。
23 * * * 请求超时。
24 * * * 请求超时。
25 * * * 请求超时。
26 * * * 请求超时。
27 * * * 请求超时。
28 * * * 请求超时。
29 * * * 请求超时。
30 * * * 请求超时。
跟踪完成。
Network Windows 2019-10-12 14:14:34
Windows的全局代理设置异常?
在折腾Python爬虫代码的时候发现一直跑之前一个代理端口(已废弃),看了看了IE跟注册表都没有问题,检查了许久才发现是环境变量里设置了代理
- IE设置
- 注册表设置
- 环境变量http_proxy
Network Windows 2019-08-06 15:50:06
Windows Server 开启ftp后外网无法访问?
需要在防火墙授权以下端口
- 20
- 21
- 1433
并允许下列程序例外(重点)
- C:\windows\system32\svchost.exe
Network Windows 2019-08-06 15:47:24
Windows远程桌面 - 凭据无法工作?
在连接远程桌面时会显示凭据无法工作,尝试了修改组策略、windows凭据均无效后,终于找到了解决办法,可在连接时加上机器名
如:机器名\帐户名(注意是斜杠不是反斜杠)
例如我的电脑 chancel-pc 用户名称administrator,远程时使用账户 chancel-pc\administrator
Operating System Windows 2019-08-06 15:47:24