Win10 配置 Linux Ubuntu 子系统:使用教程及技
前言
在最新版的 win10 中,Linux 子系统 Windows Subsystem for Linux (WSL) 已经去掉了 Beta 标签,成为正式版(1709 版本开始),可以在 Microsoft Store 里像应用一样快速安装和卸载 Linux 子系统。
相比于安装双系统,在商店里一键安装 Linux 简直不要太爽,能够直接在 win 上的一个窗口里运行 Linux 也方便了不少。本文就介绍下如何使用 win10 的 Linux 子系统和相关技巧。
![](https://img.haomeiwen.com/i3334975/61d85676dc48897a.png)
安装 Linux 子系统
启用 WSL
在任务栏的搜索框中搜索并打开 “启用或关闭windows功能”,勾选 “适用于 Linux 的 Windows 子系统”,确定后按提示重启计算机。
![](https://img.haomeiwen.com/i3334975/6ee631027e0d3ab0.png)
![](https://img.haomeiwen.com/i3334975/903066ce70b5b255.png)
安装 Ubuntu 子系统
在 Microsoft Store 中搜索 “Linux”,进入 WSL 专题,现在有五个版本可供我们选择:Ubuntu、openSUSE、SUSE Linux、Debian、Kali Linux。
![](https://img.haomeiwen.com/i3334975/052eee61b5ac18b3.png)
初学者建议使用 Ubuntu 或者 Debian,这里以 Ubuntu 为例,点击 “获取” 安装 Ubuntu 子系统。
![](https://img.haomeiwen.com/i3334975/62c66acc492e0c29.png)
安装完成后,子系统会出现在开始菜单中,就和普通应用一样,安装和卸载都很方便。
初始化
第一次打开 Ubuntu 子系统,会自动进行初始化安装,稍等片刻。
安装完成后,按提示设置用户名和密码,完成初始化。输入密码时不会显示出来,直接输入,然后回车确认就好。
![](https://img.haomeiwen.com/i3334975/8443db34dd622546.png)
设置 root 密码:sudo passwd root
;
完成!到这里已经可以在 Windows 中使用 Ubuntu 子系统了。
更换源和更新
默认为 Ubuntu 的官方源,国内速度可能不太稳定,更换为阿里云的源。
备份并编辑源文件,
# 备份 sources.list
sudo cp /etc/apt/sources.list /etc/apt/sources.list.old
# 编辑
sudo vim /etc/apt/sources.list
将文件中内容替换为阿里云的源,
# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
完成后保存退出,更新,
# 更新源
sudo apt-get update
# 更新已安装的包
sudo apt-get upgrade
用户切换
打开 Ubuntu 默认以初始化时创建的普通用户账户登陆,但一些命令需要 root 权限才可以运行。
我们可以使用直接在命令前加 sudo
的方式,也可以切换账户:
- 切换到 root 账户:
sudo -i
,输入密码 - 切换回普通账户:Ctrl + d 或
exit
或su 用户名
更改显示样式
默认的显示外观有点 “简陋”,我们可以自定义成更舒服的样式。(ps. 外观党必备!)
属性设置
右键窗口标题栏 -> 属性,可以对字体、外观、窗口透明度等进行设置。
![](https://img.haomeiwen.com/i3334975/2851813303328d46.png)
字体默认为新宋体,建议更换为 Microsoft YaHei Mono (下载),安装新字体后在属性设置选中该字体,字号 18~22,看起来舒服多了。
建议:
- 字体:20 号,Microsoft YaHei Mono
- 不透明度:85% +
自定义 Bash 终端提示符
修改命令提示符即修改变量 PS1 的值,打开配置文件 .bashrc
。
vi ~/.bashrc
在配置文件末尾加入以下内容:
PS1="\[\033[38;5;134m\]>\[\033[38;5;15m\] \[\033[38;5;45m\]\u\[\033[38;5;15m\] \[\033[38;5;7m\]@\[\033[38;5;15m\] \[\033[38;5;40m\]\h\[\033[38;5;15m\] \[\033[38;5;7m\]:\[\033[38;5;15m\] {\[\033[38;5;11m\]\w\[\033[38;5;15m\]} \[\033[38;5;7m\]-\[\033[38;5;15m\] \[\033[38;5;7m\]\t\[\033[38;5;15m\] \n\[\033[38;5;9m\]\\$ \[\033[0m\]"
保存退出,刷新配置:source ~/.bashrc
更换主题配色
默认的配色主题可能不够美观,我们可以手动安装 solarized 配色方案。
安装方法:下载解压后,主要是三个 .reg
注册表文件,双击 solarized-dark
导入注册表,即可安装该主题配色。windows-default
还原默认配色。
![](https://img.haomeiwen.com/i3334975/5f137f37a40ee0a5.png)
重启 Ubuntu 使方案生效。
![](https://img.haomeiwen.com/i3334975/1b5425029130d81a.png)
通过 Xshell 连接子系统
配置 ssh server
自带的 ssh server 不知怎的,使用 Xshell 一直连不上,后来卸载掉自带的 ssh server,重新安装后成功了。
# 卸载自带的 ssh server
sudo apt-get remove openssh-server
# 安装 ssh server
sudo apt-get install openssh-server
# 修改 ssh server 配置
sudo vim /etc/ssh/sshd_config
修改如下几项:
Port 2222 # 默认 22 已占用,换为 2222
UsePrivilegeSeparation no # yes -> no
# 允许 root 账户登陆,需要使用 Xshell 登陆 root 账户的话修改为 yes
PermitRootLogin yes
PasswordAuthentication yes # no -> yes
启动 ssh server
sudo service ssh --full-restart
连接
保持 Ubuntu 开启状态!打开 Xshell 或其它 ssh 工具,填入账户信息连接:
- ip:127.0.0.1
- 端口:2222
- 用户名 & 密码
![](https://img.haomeiwen.com/i3334975/7edef7e989c27b18.png)
Tips
设置默认登陆用户
子系统默认登录账户为我们初始化时设置的普通账户,我们可以把默认账户更改为 root。
打开 windows 的 PowerShell,修改默认账户为 root:
ubuntu config --default-user root
需要修改为其它账户的话,把命令中的 root 改为其它用户名即可。
WSL 访问本地文件
本地文件系统的各磁盘挂载在 /mnt
目录下,如 C 盘在子系统中的位置是:/mnt/c
本地访问 WSL 文件
Ubuntu 子系统的根目录位置:
[C:\Users\username\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs]
需要将子系统中的文件拷贝到本地时可以直接访问;但不建议在外部手动更改子系统里的文件。
恢复
如果不小心把子系统搞崩溃了怎么办?这里有两种方法。
1、直接右键卸载,再从 Microsoft Store 重新安装。
2、推荐!打开 PowerShell,运行 ubuntu clean
,该命令会清除 Ubuntu 的所有文件和配置,但是不会卸载应用,相当于重置,省得重新安装应用了。
![](https://img.haomeiwen.com/i3334975/dcaee6dd5ebc4d62.png)
输入 ubuntu help
可以查看更多指令。
粘贴
在 Ubuntu 窗口中不能用 Ctrl + V,复制内容后,直接在窗口中点击右键即可进行粘贴。
结语
Linux 子系统已经脱离了 Beta 阶段,算是比较成熟了,虽然难免还有些坑要踩,不敢说可以完全取代双系统,但是一般使用问题不大。
网上的各种教程和解决方案也日益丰富,包括配置开发环境、安装图形界面等方法也很容易查到。
尤其是对于日常以 Windows 为主的用户来说,像个应用一样开个窗口,一边 Windows 查资料,一边 Linux 操作,简直不要太爽!
Have a try !