dav*_*avy 15 windows-subsystem-for-linux
我有一个现有的 Ubuntu 发行版,我想要一个新的 Ubuntu 映像的第二个发行版。
我怀疑我可以:
wsl.exe --exportwsl unregisterwsl --import那应该给我 2 个发行版,我现有的加上一个新的。有没有更简单/更好的方法?
这是最新的(撰写本文时)Windows 10 Build 19035
Bis*_*iyo 23
重要提示:以下过程仅适用于Windows 10 Build 18305
或更高版本。请确保在命令行中wsl.exe有--import选项。对于较旧的 Windows 10 版本,请尝试此替代方法。
首先,我们需要来自 Ubuntu 的 rootfs tarball。 在 Web 浏览器中打开https://cloud-images.ubuntu.com/releases/。转到具有所需 Ubuntu 版本的文件夹。
下载ubuntu-x.x-server-cloudimg-amd64-wsl.rootfs.tar.gz文件(xx 用作版本号)。确保文件名有amd64-wsl并且文件类型是.tar.gz(GZIP tarball)。例如,直接链接将如下所示:
https://cloud-images.ubuntu.com/releases/eoan/release/ubuntu-19.10-server-cloudimg-amd64-wsl.rootfs.tar.gz
Run Code Online (Sandbox Code Playgroud)
wsl.exe命令行安装它。打开命令提示符。实际的命令格式如下:wsl.exe --import <Distribution Name> <Install Folder> <.TAR.GZ File Path>
Run Code Online (Sandbox Code Playgroud)
wsl.exe --import DistroA FolderA ubuntu-x.x-server-cloudimg-amd64-wsl.rootfs.tar.gz
wsl.exe --import DistroB FolderB ubuntu-x.x-server-cloudimg-amd64-wsl.rootfs.tar.gz
Run Code Online (Sandbox Code Playgroud)
wsl.exe -d DistroA。该过程可用于任何 GNU/Linux 发行版用户空间。
这不使用 Windows 应用商店。因此,Windows 应用商店既不显示名称也不更新安装。
在 Windows 10 ARM64 (AArch64) 中,使用arm64-wsl适用于 Ubuntu的云映像。
在此过程中,同一台机器上的其他用户可以访问安装文件夹。如果您使用的是共享机器,请使用适当的权限。
如果您愿意与同一台机器的其他用户共享安装,那么只需导出此注册表即可HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss。然后将其导入到同一台机器的其他用户中。
yob*_*cus 18
Biswapriyo 的回答效果很好,但需要额外的步骤来更改默认用户。请注意,这需要build 18980 及更高版本。
通过adduser命令添加非root用户:
PS C:\Users\Username> wsl -d DistroA
root@DESKTOP:/mnt/c/Users/Username# NEW_USER=username
root@DESKTOP:/mnt/c/Users/Username# adduser "${NEW_USER}"
Adding user `username' ...
Adding new group `username' (1000) ...
Adding new user `username' (1000) with group `username' ...
Creating home directory `/home/username' ...
Copying files from `/etc/skel' ...
New password: ****
Retype new password: ****
passwd: password updated successfully
Changing the user information for username
Enter the new value, or press ENTER for the default
Full Name []: User Name
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n]
Run Code Online (Sandbox Code Playgroud)
启用 sudoer 权限${NEW_USER}:
adduser ${NEW_USER} sudo
Run Code Online (Sandbox Code Playgroud)
在 /etc/wsl.conf 中添加设置默认用户:
tee /etc/wsl.conf <<_EOF
[user]
default=${NEW_USER}
_EOF
Run Code Online (Sandbox Code Playgroud)
通过 退出 WSL logout,然后发出 WSL 关闭命令以使更改生效:
wsl --shutdown DistroA
Run Code Online (Sandbox Code Playgroud)
下次wsl -d DistroA调用时,${NEW_USER}用户将处于活动状态。
| 归档时间: |
|
| 查看次数: |
12789 次 |
| 最近记录: |