Windows

Windows

Windows

cmd修改主机名

wmic computersystem where "name='%computername%'" call rename "xxx" 如果要改注册表应该也是可以的, 可以参考下这个博客的实现 如果是这种状态(重启才会显示,但是名字已经改了),可以通过 过reg query "HKLM§YSTEM\CurrentControlSet\Control\ComputerName\ComputerName" 查询

windows密码复杂度

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  密码必须符合复杂性要求。

  此安全设置确定密码是否必须符合复杂性要求。

  如果启用此策略,密码必须符合下列最低要求:

  不能包含用户的帐户名,不能包含用户姓名中超过两个连续字符的部分
  至少有六个字符长
  包含以下四类字符中的三类字符:
  英文大写字母(A 到 Z)
  英文小写字母(a 到 z)
  10 个基本数字(0 到 9)
  非字母字符(例如 !、$、#、%)
  在更改或创建密码时执行复杂性要求。



  默认值:

  在域控制器上启用。
  在独立服务器上禁用。

  注意: 在默认情况下,成员计算机沿用各自域控制器的配置。

可以发现还是比较严格的,主要是密码中不能包含用户名

enable nfs

注意powershell可以tab补齐, 用户是否有对应管理员权限(是否只是普通远程用户)

powershell:

1
2
3
4
5
  PS C:\Users\root> Install-WindowsFeature nfs-client

  Success Restart Needed Exit Code      Feature Result
  ------- -------------- ---------      --------------
  True    No             Success        {NFS 客户端}

nfs cygwin下挂载

1
2
# cygwin建议这样挂载
mount //xxx/cfs-xxx/some/path /cygwin_path

或者net use 挂载

还有一个比较好的办法是

1
2
3
4
5
6
7
  # cygwin下执行命令
  PowerShell -Command "net use x: \\\\xxx\\cfs-xxx"
  $ df -HT
  文件系统                                              类型   容量  已用  可用 已用% 挂载点
  //xxx/cfs-xxx/path smbfs  422G   31G  391G    8% /data
  C:/cygwin64                                           ntfs   161G   45G  117G   28% /
  X:                                                    smbfs  422G   31G  391G    8% /cygdrive/x

这样最终结果是cygwin下会有对应的/cygdrive/x了,如果用net use没有哈

mount和powershell两个命令可以一起在cygwin下执行

命令行添加注册表

reg -h可以查看对应帮助

reg add 注册表父项目 /v 注册表数据名字 /t 注册表数据类型 /d 注册表数据的值

1
2
3
4
PS C:\Users\root> reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default /v AnonymousUid /t REG_DWORD /d 0
操作成功完成。
PS C:\Users\root> reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default /v AnonymousGid /t REG_DWORD /d 0
操作成功完成。

设置文件权限

1
2
3
PowerShell -Command 'icacls "x:/xxx" /grant:r everyone:F /t'
# or
takeown /f "x:\xxx\*" /r

copy文件xcopy

xcopy xxx\\xxx xxx\\yyy /Y /E /I 如果出现无效的参数数量说明用了""或者'', /Y表示不用确认 /-Y表示需要确认 /S表示递归 /I表示默认是copy到目的目录(否则会让选择目标目录还是文件)

iso下载

https://uupdump.net/

win kvm安装可以参考houge这个视频

记得选择完会给你一个zip运行对应的zip就可以了,速度很快,是先下载再打包的

注意要先下一个包,否则报错, 这个包怎么查出来呢

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
./files/convert.sh:行403: wimlib-imagex:未找到命令
UUP Converter v0.6.8
Note: This script does not and cannot support the integration of updates.
Use the Windows version of the converter to integrate updates.

CAB -> ESD: microsoft-windows-mediaplayer-package-amd64
./files/convert.sh:行437: wimlib-imagex:未找到命令
Failed to create microsoft-windows-mediaplayer-package-amd64.esd
liuliancao@liuliancao:~/Downloads/22000.160_amd64_zh-cn_professional_8457f286_convert$ sudo apt-file search wimlib-imagex
wimtools: /usr/bin/wimlib-imagex
1
2
sudo apt-get install wimtools
sudo bash xxx.sh

默认无法识别iso,还需要继续绑定一个iso https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.208-1/virtio-win-0.1.208.iso

然后进windows里面找磁盘的时候选择对应的amd64即可

windows抓包

wireshark下载,有对应的dumpcap和tshark cli工具和wirshark gui工具 tshark -i Ethernet -f "tcp or udp"

sc报错The specified service has been marked for deletion

退出服务面板即可

cygwin安装with ssh

注意下载完以后如果需要ssh

选择包openssh

进入cygwin terminal执行ssh-host-config和cygrunsrv –start sshd或者去服务里面启动下

windows虚拟内存

ansible关掉虚拟内存

1
2
3
4
5
6
7
# used for open or disable windows virtual memory by liuliancao at 20211223.
# notice:
# after this, you should stop battle and reboot the computer manually

- name: open virtual memory
  shell: wmic computersystem set AutomaticManagedPagefile=true
  when: action == "enable"

ansible打开虚拟内存

1
2
3
4
5
6
7
8
- name: disable system auto managed pagefile
  shell: |
    wmic computersystem set AutomaticManagedPagefile=false
  when: action == "disable"
- name: delete pagefile.sys
  shell: |
    [ -f /cygdrive/c/pagefile.sys ] && wmic pagefileset where "name='C:\\\\pagefile.sys'" delete
  when: action == "disable"

cygwin建议安装的包

如下是cygwin下需要安装的包,备忘

  • python27
  • python27-pip
  • openssh
  • wget
  • curl
  • rsync
  • procps-ng
  • vim
  • jq

重启进入cygwin cmd ssh-host-config

sc start cygsshd

cygwin强力卸载

打开powershell

1
2
3
4
5
6
sc stop cygsshd
sc stop cygrunsrv
taskkill /IM bash
takeown /f "c:\cygwin64" /r /d Y
icacls "c:\cygwin64" /T /Q /C /reset
Remove-Item C:\cygwin64 -Recurse -Force

用户添加到administrator组

1
net localgroup Administrators root /add

cygwin 把用户修改到xxx

最好在root账户下执行,如果是administrator账户,后续请chown -R root /cygdrive/c/cygwin64避免权限问题

添加到管理员的用户还是无管理员权限

重启,重启,重启

windows计划任务优先级

默认是低的 建议调成0实时最高或者1(高) https://aavtech.site/2018/01/windows-task-scheduler-changing-task-priority/

powershell install telnet

Install-WindowsFeature telnet-client

windows service相关

windows服务我一般用sc操作,也可以用Powershell的service相关命令

sc官方文档

常用命令

1
2
3
4
5
6
sc start SERVICE
sc config SERVICE xxx=xxx # sc config SERVICE start=auto
sc stop SERVICE
sc query SERVICE
# sc create example, 注意空格
sc create "consul" binPath= "c:/cygwin64/usr/local/bin/consul.exe agent -config-dir=c:/cygwin64/etc/consul.d/"  DisplayName= consul start= auto

windows重启命令

windows只有登录的时候ssh才会正常,否则提示认证失败

原因是因为cygssh的服务必须要设置用户名密码才行,否则需要登录,服务-登录,设置用户名密码即可

windows统计信息

net statistics WORKSTATION

关闭windows自动更新

from https://gist.github.com/mikebranstein/7e9169000a6555c195043e1755fbee7e

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# set the Windows Update service to "disabled"
sc.exe config wuauserv start=disabled

# display the status of the service
sc.exe query wuauserv

# stop the service, in case it is running
sc.exe stop wuauserv

# display the status again, because we're paranoid
sc.exe query wuauserv

# double check it's REALLY disabled - Start value should be 0x4
REG.exe QUERY HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv /v Start

修改remote desktop(rdp)的默认端口 powershell

https://docs.microsoft.com/en-GB/windows-server/remote/remote-desktop-services/clients/change-listening-port

1
2
3
4
5
6
7
8
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber"

$portvalue = 3390

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value $portvalue 

New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort $portvalue 
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort $portvalue

防火墙

1
netsh advfirewall firewall add rule name="Allow office and jump ssh" dir=in protocol=tcp remoteip="1.1.1.1,2.2.2.0/24" localport=22 action=allow

防火墙remote desktop(rdp)规则禁用,3389仍然能被外部访问

搜索allow app ../images/windows/firewall-app.png◎ ../images/windows/firewall-app.png

发现app被默认放行了,关闭即可

powershell gallery pieces

cygwin path to windows path

cygpath命令

1
2
$ cygpath.exe  -m /data
C:/cygwin64/data

set cpu affinity

https://poweradm.com/set-cpu-affinity-powershell/ powershell

wmi tools wmic process where name="some.exe" call setpriority ProcessIDLevel

powershell probe tcp port

1
2
3
4
5
6
7
$ Powershell -Command "Test-NetConnection 127.0.0.1 -Port 8500" 2>/dev/null
ComputerName     : 127.0.0.1
RemoteAddress    : 127.0.0.1
RemotePort       : 8500
InterfaceAlias   : Loopback Pseudo-Interface 1
SourceAddress    : 127.0.0.1
TcpTestSucceeded : True

环境变量设置

1
Powershell -Command "setx /M path \"%path%;c:\rclone\""

一键安装chrome

cygwin一键安装rsync

1
2
3
4
New-Item -Path C:\cygwin64 -ItemType Directory -Force
$exePath = "C:\cygwin64\setup-x86_64.exe"
(New-Object Net.WebClient).DownloadFile('https://cygwin.com/setup-x86_64.exe', $exePath)
cmd /c start /wait $exePath -qnNdO -R C:/cygwin64 -s http://cygwin.mirror.constant.com -l C:/cygwin64/var/cache/setup -P rsync

windows蓝屏无限重启的一个解决办法

一般来说如果磁盘系统损坏,有时候会无限重启,这里介绍下几个修复命令,可 能会有帮助,首先要选择进系统的cmd里面执行, 修复启动方式

1
2
3
bootrec /rebuildbcd
bootrec /fixmbr
bootrec /fixboot

扫描系统错误

1
sfc /scannow

修复磁盘错误

1
chkdsk c: /f

这个类似linux的e2fsck

windows下载firefox或者其他软件的一种方式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
PS C:\Windows\system32> winget search firefox
名称                       ID                         版本     匹配              源
---------------------------------------------------------------------------------------
Mozilla Firefox            Mozilla.Firefox            116.0.1  Moniker: firefox  winget
Mozilla Firefox ESR        Mozilla.Firefox.ESR        102.14.0 Command: firefox  winget
Mozilla Firefox (Beta)     Mozilla.Firefox.Beta       109.0    Command: firefox  winget
Firefox Nightly            Mozilla.Firefox.Nightly    116.0a1  Tag: firefox      winget
Firefox Developer Edition  Mozilla.Firefox.Developer… 117.0b5  Tag: firefox      winget
MozBackup                  JasnaPaka.MozBackup        1.5.1    Tag: firefox      winget
PWAsForFirefox             filips.FirefoxPWA          2.7.3    Tag: firefox      winget
Mypal                      Feodor2.Mypal              29.3.0   Tag: firefox      winget
Profile Switcher for Fire… nulldev.ProfileSwitcherfo… 0.1.1                      winget
I2P Easy Install Bundle    i2p.firefox                beta                       winget
ffsend                     TimVisee.ffsend            0.2.76   Tag: firefox-send winget
Pale Moon                  MoonchildProductions.Pale… 32.1.1   Tag: firefox-fork winget
LibreWolf                  LibreWolf.LibreWolf        116.0-1  Tag: firefox-fork winget

PS C:\Windows\system32> winget install "Mozilla Firefox ESR"
已找到 Mozilla Firefox ESR [Mozilla.Firefox.ESR] 版本 102.14.0
此应用程序由其所有者授权给你。
Microsoft 对第三方程序包概不负责,也不向第三方程序包授予任何许可证。
正在下载 https://download-installer.cdn.mozilla.net/pub/firefox/releases/102.14.0esr/win64/en-US/Firefox%20Setup%20102.14.0esr.msi
  ██████████████████████████████  53.9 MB / 53.9 MB
已成功验证安装程序哈希
正在启动程序包安装...
已成功安装

esxi安装megacli

windows下面的工具

工具集合 https://devtoys.app/

windows用户密码过期

打开powershell执行,如果有ssh

1
Set-LocalUser -Name "root" -PasswordNeverExpires $true