使⽤LxRunOffline实现WSL⾃定义安装、备份本⽂初衷是想在⾮默认⽬录下安装WSL,查阅资料后⽤LxRunOffline了解并实现了WSL⾃定义安装
前⾔
虽说⽬前的 WSL 在 Windows 10 ⽣态中已经越发成熟,但在实际使⽤中依旧存在⼀些不⾜之处,⽐如⽬前 WSL 的 Linux 发⾏版必须通过 Windows Store 或者旁加载安装包的形式安装到系统中。另外市⾯上 WSL 发⾏版也只有寥寥⼏款,且 WSL 只能默认安装到系统盘中,如果原本系统盘容量较⼩,就很容易造成 Windows 的系统盘空间不⾜。虽然可以修改windows应⽤安装位置,或者使⽤ wsl --export 和 wsl --import 这两个命令对 WSL 进⾏打包再⾃定义⽬录安装,但依靠本⽂提到的实⽤ WSL 管理软件:LxRunOffline,可以实现安装任意发⾏版到任意⽬录、转移已安装的 WSL ⽬录、备份 WSL、设置默认⽤户和修改环境变量等操作,完全碾压 wsl、wslconfig 这些简陋原⽣管理命令。
安装 LxRunOffline
LxRunOffline 与其说是软件,实际上只有两个⽂件,安装⽅式可以使⽤类似 choco 或者 scoop 这样的 Windows 包管理系统进⾏安装scoop 安装
scoop bucket add extras
scoop install lxrunoffline
choco 安装
choco install lxrunoffline
⼿动安装
当然最为简单的安装办法则是直接在其 上下载安装,⽂件下载并解压缩之后,直接拷贝到 C:\Windows\System32即可,如果需要未来可以通过右键菜单功能执⾏某些功能操作,则需要以管理员权限打开终端,再执⾏regsvr32 LxRunOfflineShellExt.dll ,完成功能注册。
值得注意的是,开发者并没有在 GitHub 上给出任何选项参数说明,你需要在终端内直接输⼊ lxrunoffline 查看。
使⽤ LxRunOffline 安装 WSL
如果你没有使⽤过 WSL ,⾸先以管理员⾝份运⾏ Pow e r S hell (WIN+X , A),输⼊下⾯的命令开启 “适⽤于 Linux 的 Win d ows ⼦系统” 功能,并重启计算机。
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
下载 ,你会得到⼀个后缀为.appx的⽂件,改后缀名为.zip,解压后⽂件夹中会有名为 的⽂件。
本⽂安装的是ubuntu2004,其它版本没有实测,但⽅法会在后⾯讲到
Ubuntu2004
输⼊以下命令进⾏安装:
lxrunoffline i -n <WSL名称> -d <;安装路径> -f <;安装包路径>.
加⼊-s参数可在桌⾯创建快捷⽅式。
Others Linux
⾸先我们可以通过 LxRunOffline 的 Wiki 页⾯来查看如何到各种发⾏版的下载路径,实际上 WSL (
特指第⼀代)并⾮是完整版的Linux 环境,可以将其理解成⼀个基于微软订制的 Linux 内核加上各种 Linux 发⾏版软件的结合体,因此我们想要安装其他发⾏版,其实就是到各个发⾏版推出的基于 Docker 或者 核⼼版 ,⽽⽆需关⼼ Linux 内核部分。
1. 在 中下载⼤佬们提供的镜像⽂件(从其它途径下载也可以)。
2. 下载完毕之后,将其保存到⼀个全英⽂的⽬录中,接下来执⾏安装,这⾥直接打开终端执⾏以下的命令:
lxrunoffline i -n <WSL名称> -d <;安装路径> -f <;安装包路径>.
例如:
LxRunOffline install -n CentOS -d D:\linux\centos -f D:\softbackup\centos-7.8.2003-x86_ -s
这⾥的执⾏的命令意思是,将位于D:\softbackup\的 centos-7.8.2003-x86_镜像以 WSL 形式安装到 ⽬录D:\linux\centos⾥⾯,并且创建桌⾯快捷⽅式。
vscode配置maven环境3. 当桌⾯出现快捷⽅式之后双击就可以启动当前的 WSL 的 Bash 了
以此类推,我们也可以就此安装⽐如 Fedora、ArchLinux 等 Linux 发⾏版
使⽤ LxRunOffline 设置默认⽤户
当修改过 WSL 的名称或⽬录后就⽆法通过设置默认⽤户。这时可以使⽤ LxRunOf f line 进⾏设置。
设置普通⽤户为默认⽤户
使⽤ LxRunOf f line 新安装的 WSL 默认是以 root ⽤户登录,如果你需要默认以普通⽤户进⾏登录,就需要进⾏下⾯的操作。
⾸先运⾏ WSL ,输⼊以下命令创建⽤户:
useradd -m -s /bin/bash <⽤户名>
然后对该⽤户设置密码,输⼊命令后会提⽰输⼊两次密码。
passwd<⽤户名>
授予该⽤户 sudo 权限。
usermod -aG sudo<⽤户名>
查看⽤户 UID ,⼀般是 1000。
id -u <⽤户名>
按 Ctrl+D 退出 WSL ,在 Pow e r S hell 中输⼊以下命令:
lxrunoffline su -n <WSL名称> -v 1000(UID)
设置 root 为默认⽤户
异步电动机和步进电机的区别root ⽤户的 UID 为 0,所以可以直接在 Pow e r S hell 输⼊以下命令进⾏设置:
lxrunoffline su -n <WSL名称> -v 0
使⽤ LxRunOffline 转移 WSL 安装⽬录
默认情况下,如果你通过 Microsoft Store 下载发⾏版安装 WSL 都会默认安装到系统盘,如果你的系统盘较⼩很容易造成后⾯的容量紧张,LxRunOffline 的好处在于你可以将 WSL 转移到⾮系统盘中,从⽽降低 WSL 对系统盘的空间占⽤。
1. ⾸先我们需要确定安装了哪些 WSL
LxRunOffline l
类似于wsl -l。LxRunOf f line 不会显⽰默认 WSL ,查看默认 WSL 需要使⽤ lxrunoffline gd命令。
2. 确定需要转移⽬录的发⾏版的名字 ,⽐如截图中我安装的 Ubuntu。
输⼊命令对 WSL 的⽬录进⾏移动。
lxrunoffline m -n <WSL名称> -d <;路径>
⽐如我将 Ubuntu 转移到我的 D 盘下的 D:\Linux\Ubuntu中:
LxRunOffline m -n Ubuntu -d D:\Linux\Ubuntu
3. 最后查看路径,进⾏确认。
lxrunoffline di -n <WSL名称>
例如
LxRunOffline di -n Ubuntu
如果终端返回 D 盘的位置表⽰转移⽬录成功,这个功能⽀持所有的 WSL 安装模式,当然包括从 Microsoft Store 安装或者通过LxRunOffline 安装。
使⽤ LxRunOffline 备份和恢复 WSL
备份
实际上你可以将备份看作是 LxRunOffline 安装 WSL 的「逆操作」,⽐如我⽬前电脑中只安装了 Ubuntu 发⾏版,然后需要将其备份到移动存储或者备份⽂件服务器中,那么命令就是:
lxrunoffline e -n <WSL名称> -f <;压缩包路径>.
例如:
lxrunoffline e -n Ubuntu -f D:\dev\backupwsl\ubuntu_
其中D:\dev\backupwsl\ubuntu_为保存的备份⽂件和对应的路径,并且备份路径下还会⽣成 xml 格式的配置⽂件,⽤于在后⾯进⾏还原。
类似但不等同于wsl --export <WSL名称> <;压缩包路径>.tar。LxRunOf f line 备份完会⽣成⼀个.xml后缀的同名配置⽂件,⽐
如l。
还原
还原⼯作就类似安装过程,只不过 LxRunOffline 会读取同⽬录下的 xml ⽂件并写⼊相关的配置:
lxrunoffline i -n <WSL名称> -d <;安装路径> -f <;压缩包路径>.
⽐如我需要还原我安装的 Ubuntu,那么命令就是:
lxrunoffline i -n Ubuntu -d D:\Linux\ubuntu -f D:\dev\backupwsl\ubuntu_
其中D:\Linux\ubuntu就是安装的路径,这样之前的备份就会被正式还原了。
类似但不等同于wsl --import <WSL名称> <;安装路径> <;压缩包路径>.tar。LxRunOf f line 会读取备份时⽣成的配置⽂件并写⼊配置,前提是同⽬录且同名。否则你需要加⼊-c参数指定配置⽂件。
使⽤ LxRunOffline 运⾏ WSL
在 LxRunOffline 管理 WSL 要⽐原⽣ WSL ⽅便快捷的多,当然也包括了原⽣ WSL 命令⾏⼯具的⼀些功能。
使⽤命令运⾏指定 WSL
在有多个 WSL 的情况下,可以指定运⾏某个发⾏版。
lxrunoffline r -n <WSL名称>
等同于wsl -d <WSL名称>
innovated是什么意思取消注册已安装的 WSL 发⾏版
lxrunoffline ur -n <WSL名称>
例如取消注册我安装的 WSL 发⾏版 CentOS 的命令就是:
lxrunoffline ur -n CentOScentos和ubuntu
不过取消注册并⾮删除⽂件,如果删除⽂件还需要进⼊原来的安装⽬录⼿动删除。
创建快捷⽅式
lxrunoffline s -n <WSL名称> -f <;快捷⽅式路径>.lnk
LxRunOffline 还可以实现⼀个功能就是⽣成 WSL 的桌⾯快捷⽅式,尤其是安装的 WSL 发⾏版⼀多,除⾮使⽤类似 Microsoft Terminal 的多标签页终端进⾏管理启动,否则启动某⼀个发⾏版必须要在命令⾏执⾏,所以我们可以使⽤ LxRunOffline 来为某⼀款发⾏版⽣成桌⾯快捷⽅式,⽐如我安装的 Ubuntu 希望⽣成桌⾯快捷⽅式,那么命令就是:
lxrunoffline s -n Ubuntu -f C:\Users\NB-PM\Desktop\Ubuntu.lnk
当然默认快捷⽅式是没有logo 的,这⾥你也可以⼿动在更改发⾏版的 Logo ⽂件然后让他看上去更像是⼀款独⽴应⽤。设置默认 WSL
设置默认 WSL 后,可以在 cmd 和 powershell 中输⼊ wsl 直接调⽤默认的 WSL 。
lxrunoffline sd -n <WSL名称>
等同于wsl -s <WSL名称>
使⽤ LxRunOffline 修改 WSL 名称
查看 WSL 名称
wsl -l
查看 WSL 安装⽬录
lxrunoffline di -n <WSL名称>
transformer位置编码为啥用sin和cos导出指定的 WSL 配置⽂件到⽬标路径
lxrunoffline ec -n <WSL名称> -f <;配置⽂件路径>.xml
配置信息可以输⼊lxrunoffline sm -n <WSL名称>查看
取消注册(这个操作不会删除⽬录)
lxrunoffline ur -n <WSL名称>
smtp服务器有哪些使⽤新名称注册
lxrunoffline rg -n <WSL名称> -d <WSL路径> -c <;配置⽂件路径>.xml
参考资料
[1]. -by化学⼼情下2
[2]. -by P3TERX
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论