给网站做cdn,大型网站建设优化排名,网站建设与维护就业前景,如何做微信小程序游戏Windows11安装Linux子系统#xff0c;并实现服务自启动#xff0c;局域网访问#xff0c;磁盘挂载 一、准备工作二、安装Linux子系统(wsl2)三、为Linux子系统设置桥接网络检查wsl版本在 Hyper-V 管理器中创建虚拟交换机创建 WSL 配置文件启动wsl 四、设置Windows开机自启动L… Windows11安装Linux子系统并实现服务自启动局域网访问磁盘挂载 一、准备工作二、安装Linux子系统(wsl2)三、为Linux子系统设置桥接网络检查wsl版本在 Hyper-V 管理器中创建虚拟交换机创建 WSL 配置文件启动wsl 四、设置Windows开机自启动Linux子系统服务五、挂载物理磁盘先决条件挂载未分区磁盘挂载分区磁盘设置Windows开机自动挂载磁盘 环境windows 11 专业版 一、准备工作
在安装Linux子系统之前需要开启Windows功能开启步骤如下
打开控制面板点击程序点击程序和功能-启用或关闭Windows功能在弹出的界面中勾选适用于Linux的Windows子系统勾选Hyper-V如果需要桥接网络则需要开启
注桥接网络可以使得Linux子系统与windows在同一个网段中从而使得局域网站中的其他电脑可以直接访问Linux子系统中的服务。
完成后重启电脑
二、安装Linux子系统(wsl2) 打开Microsoft store 搜索Windows Subsystem for Linux点击获取Windows Subsystem for Linux允许开发人员直接在Windows上运行GNU/Linux环境(包括大多数命令行工具、实用程序和应用程序)无需修改无需传统虚拟机或双引导设置的开销。 安装完成后继续搜索Linux选择自己需要的Linux发行版安装
等待成功安装后在开始-所有程序中就能看到对应的Linux子系统了初次运行需要输入用户名和密码。
三、为Linux子系统设置桥接网络
桥接网络需要安装的为wsl2默认情况下新安装的一般都为wsl2可通过在cmd或PowerShell中输入命令wsl -l -v来检查当前wsl的版本
检查wsl版本
若当前版本为wsl1则需要先更新wsl
更新wsl --update检查版本wsl --version输入如下内容
WSL version: 0.70.0.0
Kernel version: 5.15.68.1
WSLg version: 1.0.45
MSRDC version: 1.2.3575
Direct3D version: 1.606.4
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22621.675使用wsl --set-version distro name 2 命令将 distro name 替换为要更新的 Linux 发行版的名称。 例如wsl --set-version Ubuntu-20.04 2 会将 Ubuntu 20.04 发行版设置为使用 WSL 2。关闭wslwsl --shutdown
在 Hyper-V 管理器中创建虚拟交换机 运行 Hyper-V 管理器 在左侧选择您的电脑在右侧选择虚拟交换机管理器在管理器中选择“新建虚拟网络交换机”在右侧选择“外部”然后单击“创建虚拟交换机”在“名称”下输入独特的名称例如“WSL_external”确保选择确切的物理适配器WiFi、LAN 等并且由于这很可能是您唯一的适配器因此选中“允许管理操作系统共享此网络适配器”下的复选框申请、是、确定 创建 WSL 配置文件 在 PowerShell 提示符下继续(如果出现错误则需要以管理员方式打开) cd ~
New-Item .wslconfig
.\.wslconfig选择文本编辑器以打开文件如果你忘记了你的虚拟交换机的名称请在PowerShell中运行以下命令 Get-VMSwitch -SwitchType External | Select Name, SwitchType, NetAdapterInterfaceDescription, AllowManagementOS我的电脑输出示例 Get-VMSwitch -SwitchType External | Select Name, SwitchType, NetAdapterInterfaceDescription, AllowManagementOSName SwitchType NetAdapterInterfaceDescription AllowManagementOS
---- ---------- ------------------------------ -----------------
WSL_external External Killer(R) Wi-Fi 6 AX1650x 160MHz Wireless Network Adapter (200NGW) True现在像这样添加到您的文件文本中.wslconfig [wsl2]
networkingModebridged
vmSwitchWSL_external注意.wslconfig文件的名称一定不能错误否则可能导致配置不生效
当然还可以在配置文件中指定分配的cpu核数和内存大小等详细信息请见官方文档
WSL 中的高级设置配置 | Microsoft Learn
启动wsl
执行wsl即可启动若系统安装了多个发行版则需要指定发行版的名称如wsl -d Ubuntu检查网络在终端中输入ifconfig检查IP地址是否和Windows在同一网网段中新开一个cmd窗口输入ping xx.xx.xx.xx其中xx.xx.xx.xx为上述命令显示的ip地址例如192.168.1.6检查是否能够正常连接关闭Linux子系统并重新启动它应该保持相同的ip地址
exit
wsl --shutdown
wsl
ifconfig四、设置Windows开机自启动Linux子系统服务
进入需要自启动服务的wsl发行版中创建并编辑/etc/init.wsl文件
sudo vim /etc/init.wsl #执行命令创建并打开文件
#输入以下内容
#! /bin/sh
/etc/init.d/ssh $1
#保存并退出
在文件中我们启动了ssh服务如果需要启动其他服务也可以添加到文件中一行启动一个服务 赋予文件可执行权限sudo chmod x /etc/init.wsl 使用sudo /etc/init.wsl [start|stop|restart]来验证是否能正常执行例如
sudo /etc/init.wsl start #启动服务
sudo /etc/init.wsl stop #停止服务
sudo /etc/init.wsl restart #重启服务在Windows中设置开机启动开始-运行输入shell:startup 在打开的文件夹中新建vsb文件如wsl.vbs输入以下内容 Set ws CreateObject(Wscript.Shell)
ws.run wsl -d xxx -u root /etc/init.wsl start, vbhide
#注意xxx需要替换为你安装的wsl发行版名称如Ubuntu-20.04保存重启电脑不出意外ssh服务已经启动起来了
五、挂载物理磁盘
先决条件
你需要Windows 11版本 22000 或更高版本或者运行 WSL 的 Microsoft Store 版本。 若要检查 WSL 和 Windows 版本请使用 命令wsl.exe --version
挂载未分区磁盘 标识磁盘 - 要列出 Windows 中的可用磁盘使用PowerShell请运行 GET-CimInstance -query SELECT * from Win32_DiskDrive磁盘路径位于“DeviceID”列下。 通常采用 \\.\PHYSICALDRIVE* 格式。 装载磁盘 - 使用 PowerShell可以使用上面发现的磁盘路径装载磁盘请运行 wsl --mount DiskPath
#DiskPath为第一步标识出来的磁盘路径例如wsl --mount \\.\PHYSICALDRIVE0挂载分区磁盘 标识磁盘 - 要列出 Windows 中的可用磁盘请运行 GET-CimInstance -query SELECT * from Win32_DiskDrive磁盘路径列在“DeviceID”之后通常采用 \\.\PHYSICALDRIVE* 格式。 列出并选择要在 WSL 2 中装载的分区 - 确定磁盘后运行 wsl --mount DiskPath --bare这将使磁盘在 WSL 2 中可用。 在我们的示例中DiskPath 为 \\.\PHYSICALDRIVE*。 附加后可以通过在 WSL 2 中运行以下命令来列出分区 lsblk这会显示可用的块设备及其分区。 在 Linux 中块设备被标识为 /dev/DevicePartition。 例如/dev/sdb3 是磁盘 sdb 的分区号 3。
装载所选分区
wsl --mount DiskPath --partition PartitionNumber --type Filesystem
#DiskPath 为磁盘标识 PartitionNumber 为分区号 Filesystem为磁盘类型
#例如 wsl --mount \\.\PHYSICALDRIVE0 --partition 1 --type ext4其他挂载方式请查看官方文档
关于在 WSL 2 中安装 Linux 磁盘的入门 | Microsoft Learn
设置Windows开机自动挂载磁盘
挂载磁盘需要管理员权限因此不能像自动启动服务一样在启动菜单shell:startup中添加脚本来挂载但是可以使用Windows任务计划程序来完成
新建bat脚本例如wsl-mont.bat放在任意位置但需要保证不被删除填入以下内容
wsl --mount \\.\PHYSICALDRIVE0 --partition 1 --type ext4
#这里以挂载分区磁盘举例开始-搜索任务计划程序点击进入左侧选择任务计划程序库右侧选择创建任务名称随意描述随意勾选不管用户是否登录都要运行、使用最高权限运行点击触发器选项卡新建-开始任务-启动时-确定点击操作选项卡新建-操作-启动程序点击浏览选择上述保存的脚本点击确定点击确定计划任务创建完成
重启电脑进入wsl发行版即可查看到挂载的磁盘