19年开始学习Linux的时候,老师介绍到windows10有个Linux的子系统(WSL),可供新手练习。当时图新鲜,也安装了WSL,不过当时WSL的bug很多,没有完整的Linux内核,用起来很困难,后面也就放弃使用了。最近听说WSL升级到了WSL2,重新设计WSL的架构,拥有完整的Linux内核,几乎具备Linux的所有功能。我也试着升级WSL2。
win10中安装Linux分发版的教程我就不写了,网上有很多教程,安装Ubuntu18.04就行。
1.版本准备
升级WSL2的前提是win10版本至少是版本2004,内部版本为19041及以上,可以按win徽标+R,弹出“运行”窗口,键入winver,点击“确定”,查看系统版本

win徽标+R

win10版本信息
2.组件启用
安装【适用于 Linux 的 Windows 子系统】和【虚拟机平台】可选组件,这里可以使用“命令行/PowerShell安装”或“直接在控制面版中勾选”,这里我用第二种方法,进入控制面板->程序->启用或关闭Windows功能,勾选红框中这两个选项,如果之前安装过WSL应该会知道第一个红框已经勾选了。然后系统会提示重启,直接重启就行了。

勾选【适用于 Linux 的 Windows 子系统】和【虚拟机平台】
3.升级WSL2
组件准备好后,升级WSL2,按win徽标+R,键入cmd,输入命令
wsl -l #查看安装的子系统分发版
wsl --set-version Ubuntu-18.04 2 #将原本的WSL1升级到WSL2 我执行第二条命令的时候,提示我WSL2需要更新其内核组件,通过提示,在官方文档
https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
那里找到 wsl_update_x64.msi 组件

下载wsl_update_x64.msi组件
下载完直接安装后,重新执行上面的命令,等待执行完毕,输入命令
wsl -l -v #检查是否已经成功转换成WSL2

version显示2,表示成功升级成WSL2
4.设置默认启动WSL2
接着上一步在命令行下键入
wsl --set-default-version 2 #将WSL2设置为默认启动版本 至此,WSL2升级完成。
在Windows的文件资源管理器中的路径输入:\\wsl$ 右键点击“映射到网络驱动器”,可以在我的电脑显示一个250G的磁盘,打开是Ubuntu的系统文件(最好不要在这里执行有关文件的操作,以免出现未知的错误)

5.修改WSL2默认安装目录的位置
在文件资源管理器里面输入下面路径:
C:\Users\改成用户名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState 会发现文件夹下有个ext4.vhdx的大文件,这是就安装的WSL,如何将其移动到其他盘,释放C盘的压力呢?
按 win徽标+R ,输入cmd,回车,键入
#查看已安装的子系统版本
wsl -l -v
#关闭wsl
wsl --shutdown
#导出分发版为tar文件到G盘
wsl --export Ubuntu-18.04 g:\wsl-ubuntu-18.04.tar
#注销当前分发版
wsl --unregister Ubuntu-18.04
#重新导入并安装wsl在G盘
wsl --import Ubuntu-18.04 g:\wsl-ubuntu-18.04 g:\wsl-ubuntu-18.04.tar --version 2
#设置默认登陆用户为安装时用户名
ubuntu1804 config --default-user USERNAME
#删除tar文件
del g:\wsl-ubuntu-18.04.tar 到这里,我们就可以愉快地打开我们的WSL了,准备配置环境。
6.配置Ubuntu镜像源
WSL里面已经拥有了apt ssh git等功能,首先,我们修改Ubuntu默认的镜像源,修改成清华源。先备份/etc/apt/sources.list这个文件,修改这些默认文件的时候,首先备份是一个好习惯。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 然后进入 /etc/apt/sources.list 这个文件
cd /etc/apt
vi sources.list 将默认的镜像源修改成清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse 修改完镜像源后保存退出,回到家目录下,输入
sudo apt-get update #更新软件包列表
sudo apt-get install openjdk-10-jdk #安装Java10
java -version #查看Java版本
7.安装miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh 等待下载完成,
sh Miniconda3-latest-Linux-x86_64.sh #如果这一步报错,请将sh换成bash 随后会显示miniconda的license,就一直按回车,直到出现yes/no,键入yes
最后一步会提示你是否初始化miniconda3,这一步就是是否将miniconda3写进环境变量。之前看过网上有说法,说把conda加入环境变量会污染到其他非conda安装的软件,但是我这个是全新的linux系统,没安装过软件,何来污染。所以直接yes,也省去后面手动加入的麻烦。
安装完成后,我们输入
source ~/.bashrc #重新激活环境变量
conda -h #检查conda是否安装成功 安装成功的话,键入命令的一行最前面会多出现(base)。
8.配置conda的镜像源
cd ~
vi .condarc 创建 .codarc文件(我记得应该得创建的)
进入 .condarc后
channels:
- bioconda
- conda-forge
- r
- defaults
show_channel_urls: true :wq 保存并退出
配置好镜像源,就可以安装我们需要的软件了,例如安装 fastqc 这个软件
conda search fastqc #搜素fastqc的版本
conda install fastqc #默认安装最新版本的fastqc
conda update fastqc #更新fastqc
conda remove fastqc #删除fastqc 如果要安装指定版本的软件,则在软件名后面加上版本号
conda install fastqc=版本号 大概就这样了,如果有什么错误或者需要改进的,欢迎评论。