使用windows子系统操作记录
准备工作
windows相关服务设置
win + i选择隐私和安全性,打开开发者模式
win + r 输入
optionalfeatures
打开windows功能面板,启用适用于Linux的windows 子系统和虚拟机平台
安装wsl,Windows Subsystem for Linux(简称WSL)是一个在Windows10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层,官方地址链接:https://docs.microsoft.com/zh-cn/windows/wsl/install
wsl --install
下载windows下的ubantu子系统
官网链接:https://docs.microsoft.com/en-us/windows/wsl/install-manua,一般选择16版本,可以选择你喜欢的,下载到一个目录,然后将后缀修改为.zip,请打开中文翻译,官网文档有说明
安装和配置
安装子系统
解压ubantu系统压缩包到D盘的某个位置,随你喜欢,双击.exe安装,按步骤设置用户名和密码,
打开cmd窗口输入bash
验证
切换软件源
所用源,清华大学
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse
编辑/etc/apt/sources.list
文件修改源,然后apt update
更新源
配置ssh连接
- 默认没有开启ssh服务,先修改配置文件
vim /etc/ssh/sshd_config
# 主要修改内容
PasswordAuthentication no # 将 no 改为 yes 表示使用帐号密码方式登录
- 启动才能远程连接,而且每启动一次子系统,都需要重启
sudo /etc/init.d/ssh start
# 或者 sudo service ssh start
配置windows启动 运行子系统
win+r输入
shell:startup
,打开启动文件夹
通过cmd窗口输入bash登录子系统,在ubantu系统内编写自启动文件
init.wsl
,放置在/etc
目录下,并给予权限,下一步会用到
#!/bin/bash
# order
sudo /etc/init.d/ssh start # 远程服务,不用的话不用写
# 或者 sudo service ssh start
给予文件权限
sudo chmod +x init.wsl
编写批处理文件,保存到启动文件夹开机启动,也可放到别处手动点击
文件内容
rem 强制获得管理员权限运行
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
rem 启动linux脚本
wsl -d Ubuntu-16.04 -u root /etc/init.wsl
rem 给linux设置静态ip
wsl -d Ubuntu-16.04 -u root ip addr add 192.168.50.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1
rem 给windows 设置ipv4 的ip 192.168.50.99,要在wsl中访问宿主机就用此ip 【这段脚本一定要放到最后一行执行】
netsh interface ip add address "vEthernet (WSL)" 192.168.50.99 255.255.255.0
脚本执行后的效果
windows端会新增一个网卡信息
linux端会新增一个网卡信息
重启系统验证,远程连接登录
windows关闭开启子系统
需要admin运行cmd
彻底关闭:
net stop LxssManager
和开启:net start LxssManager
指定版本关闭:
wsl -t Ubuntu-16.04
和开启:wsl --distribution Ubuntu-16.04
,这样启动后需要重新配置ip,手动执行之前的bat脚本即可
先查看正运行的版本wsl --list --verbose
关闭所有版本:wsl --shutdown
参考文档
魔仙大佬:https://blog.csdn.net/qq_42166929/article/details/109047967
牧码ya:https://tiancixiong.blog.csdn.net/article/details/88891840?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-88891840-blog-107105578.pc_relevant_vip_default&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-88891840-blog-107105578.pc_relevant_vip_default&utm_relevant_index=1
杨and玉:https://blog.csdn.net/qq_44678350/article/details/126381061?ops_request_misc=&request_id=&biz_id=102&utm_term=wsl%20%E8%87%AA%E5%8A%A8%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-6-126381061.142v62pc_search_tree,201v3control_2,213v1control&spm=1018.2226.3001.4187
dz45693:https://blog.csdn.net/ma_jiang/article/details/89421129?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166728279016782425112070%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=166728279016782425112070&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-3-89421129-null-null.142v62pc_search_tree,201v3control_2,213v1control&utm_term=win10%20%E5%AD%90%E7%B3%BB%E7%BB%9F%20%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%90%AF%E5%8A%A8&spm=1018.2226.3001.4187