玩命加载中🤣🤣🤣

wsl-note


系统安装与启动

wsl --install  	# 安装后重启计算机
wsl -l -o  		# 查看可用发行版列表

wsl -l -v	# 查看当前的wsl版本以及状态

wsl --shutdown  # 立即终止所有正在运行的分发和WSL2轻型工具虚拟机
wsl --terminate <Distribution Name>  # 关闭指定发行版
wsl -d Ubuntu # 启动

迁移系统位置

wsl -l --all -v  # 查看所有分发版本
wsl --export Ubuntu D:\ubuntu.tar	# 导出分发版为tar文件到D盘
wsl --unregister Ubuntu		# 注销当前分发版
wsl --import Ubuntu D:\develop\wsl\ubuntu D:\ubuntu.tar --version 2  # 重新导入并安装分发版在D:\wsl\ubuntu
Ubuntu config --default-user {dee}		# 设置默认登陆用户为安装时用户名
del D:\ubuntu.tar		# 删除导出的tar文件(可选)

基础配置

设置apt国内镜像源可以加速下载

sudo vim /etc/apt/sources.list

替换全部

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

apt 命令

sudo apt update # 列出所有可更新的软件清单命令
sudo apt upgrade # 升级软件包
apt list --upgradeable # 列出可更新的软件包及版本信息
sudo apt update && sudo apt upgrade -y # 组合命令

sudo apt install <package_name>=<version_number>  # 安装指定版本
sudo apt remove <package_name> # 删除软件包
sudo apt autoremove # 清理不再使用的依赖和库文件
sudo apt purge <package_name> # 移除软件包及配置文件
sudo apt search <keyword> # 查找软件包
apt list --installed # 列出所有已安装的包
apt list --all-versions # 列出所有已安装的包的版本信息

开机自启

  1. win+R 运行 shell:startup

  2. 在目录中创建 wsl-startup.vbs文件

    set ws=wscript.CreateObject("wscript.shell")
    ws.run "wsl -d Ubuntu", vbhide
  3. 重启电脑

mysql安装

apt search mysql-server # 搜索版本
sudo apt install mysql-server -y # 安装
systmctl start mysql # 启动

mysql登录

sudo vim /etc/mysql/debian.cnf # 查看密码(注意vim中要 ctrl+shift+c是全局复制)
    user     = debian-sys-maint
    password = vkOJolrKJqv950Hj
mysql -u root -p # 登录
	复制密码后登录

更改密码

use mysql;
update user set authentication_string='' where user='root';  --将字段置为空
alter user 'root'@'localhost' identified with mysql_native_password by 'root';

更改访问权限

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 注释下面这段
# bind-address          = 127.0.0.1

sudo systemctl restart mysql # 重启

linux端登录mysql

select host,user from user;  -- 查询各用户放开权限
update user set host = '%' where user = 'root';  -- 修改成%表示,所有主机都可以通过root用户访问数据库
flush privileges;

windows访问wsl文件

资源管理器输入

\\wsl$

暴露端口至局域网(以ssh为例)

1. wsl下重装ssh

sudo apt-get remove openssh-server
sudo apt-get install openssh-server

2. 编辑sshd_config文件

sudo vi /etc/ssh/sshd_config
  • Port 22
  • PermitRootLogin yes
  • PasswordAuthentication yes

3. 编辑sudo vim /etc/hosts.allow,添加一行

sudo vim /etc/hosts.allow
  • 添加的内容为 sshd: ALL

4. 重启ssh服务

sudo service ssh --full-restart

5. 查看wsl IP地址

ifconfig

6. windows终端中转发WSL2

## 添加端口映射
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=22 connectaddress=<xxx.xxx.xxx.xxx> connectport=22
## 删除端口
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=22
## 同理转发mysql
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=13306 connectaddress=<xxx.xxx.xxx.xxx> connectport=3306
## 通过主机IP:13306连接即可

7. 连接windows端口

转载至: [如何用笔记本ssh连接局域网内其他电脑上的wsl2 ubuntu - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/357038111#:~:text=在windows下管理员权限打开cmd,输入命令将端口转发到WSL2 netsh interface portproxy add v4tov4,listenaddress%3D0.0.0.0 listenport%3D22 connectaddress%3Dxxx.xxx.xxx.xxx connectport%3D22 此处 xxx.xxx.xxx.xxx 替换成wsl的IP地址,如172.18.195.3)

开启hyper-v

控制面板 - 程序 - 启用或关闭Windows功能 - Hyper-V

如果没有打开终端, 输入 systeminfo 命令

末尾Hyper-V要求, 如果可以支持

新建文本, 复制如下代码

pushd "%~dp0"

dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt

for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"

del hyper-v.txt

Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

用批处理 .bat 以管理员身份运行, 代码结束后重启电脑即可


文章作者: 👑Dee👑
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 👑Dee👑 !
  目录