环境构建
兜兜转转,最后还是回到了双系统…
大一上:分别使用了Ubuntu18.04LTS和Deepin15,体验相当不爽
大一下&大二上:使用WSL2+HyperV,体验良好,但是仍然有不少小bug
现在:Manjaro-Kde+Windows双系统
WSL2使用记录
WSL与WSL2
WSL2相比WSL最大的优势在于速度的提高和一个完整的Linux内核
但是启用了WSL2后(使用了类似于Hyper-V的技术),VMware正式版将无法使用(测试版可以调用Hyper-V,类似于虚拟机套娃,但性能就emmm)
而WSL可以与VMware共存,这是两者的差别,也是WSL的优势
同时WSL2的网络部分与WSL不同,在一些设置上需要特别注意
启用WSL2
在 Windows 10 上安装适用于 Linux 的 Windows 子系统 (WSL)
以管理员身份运行powershell,启用WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
同样以管理员身份运行powershell,将WSL升级到WSL2
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
然后重启电脑
重启完成后,下载WSL2的Linux内核更新包并安装更新
至此,WSL2已经启用
- WSL的常用操作
1 | 关闭所有wsl发行版 |
在WSL2上安装系统
首先,前往Windows store下载Windows terminal
购买 Windows Terminal - Microsoft Store zh-CN
打开Windows terminal,在里面输入wsl --set-default-version 2
,将WSL2设置为默认发行版
- 通过Windows store下载Debian10(默认安装在系统盘)
购买 Debian - Microsoft Store zh-CN
下载完成,点击启动后,等待一到两分钟来完成初始化,然后输入用户名和密码
进入到Debian后,可以关闭启动产生的命令行窗口,使用Windows terminal,输入wsl
即可进入Debian
- 通过微软官方下载,可安装在其他位置
将下载得到的文件的后缀修改为.zip
,解压到安装位置,双击exe文件即可运行安装程序
等待一到两分钟来完成初始化,然后输入用户名和密码
进入到Debian后,可以关闭启动产生的命令行窗口,使用Windows terminal,输入wsl
即可进入Debian
Terminal美化(可选)
Windows Terminal Color Schemes
这是我的配置文件
1 | // This file was initially generated by Windows Terminal 1.4.3243.0 |
Linux换源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo rm /etc/apt/sources.list
sudo nano /etc/apt/sources.list
- Debian10阿里源
1 | deb http://mirrors.aliyun.com/debian/ buster main non-free contrib |
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
配置系统代理(clash)
- wsl1
在.bashrc
或者.zshrc
中添加如下内容
1 | export https_proxy="http://127.0.0.1:7890"; |
- wsl2
在.bashrc
或者.zshrc
中添加如下内容
1 | export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*'); |
完成后,输入source .bashrc
或者source .zshrc
- apt代理
sudo apt -o Acquire::http::proxy="http://172.27.176.1(此处ip为wsl的ip):7890/" install *********
ZSH&开发环境
- 安装zsh和基本开发软件
sudo apt install zsh gcc g++ gdb python python3 python-pip python3-pip
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
编辑~/.zshrc
将ZSH_THEME
的值改为agnoster
或保持默认(个人喜好
隐藏用户名DEFAULT_USER=$USER
安装 syntax-highlighting
& zsh-autosuggestions
1 | git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting && git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions && chmod -R 555 ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting && chmod -R 555 ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions |
编辑~/.zshrc
plugins=(git z colored-man-pages zsh-autosuggestions zsh-syntax-highlighting)
在切换shell后,.bashrc
中的代理设置要复制到.zshrc
中
使zsh配置生效source ~/.zshrc
- 配置pip清华源
1 | pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U |
或者在~/.pip/pip.conf
中添加(建议使用这种方式)
1 | [global] |
- clion&vscode链接wsl
在安装完clion和wsl2后以管理员身份运行powershell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
wget https://raw.githubusercontent.com/JetBrains/clion-wsl/master/ubuntu_setup_env.sh && bash ubuntu_setup_env.sh
P.S 如果使用的是zsh那么需要将bash中新增的关于自动链接到clion的配置复制到zsh中
在clion中配置wsl的链接
Developing in the Windows Subsystem for Linux with Visual Studio Code
在vscode中安装Remote-WSL插件
Remote - WSL - Visual Studio Marketplace
安装后在你要进行开发的目录下,如~/python_code
,输入code .
即可进行开发
一些bug
Windows要访问WSL2中的应用(如hexo生成的预览),有时不能直接通过localhost进行访问
有时候Windwos会因为网络原因无法链接到WSL2
WSL2的文件IO较慢
HyperV使用记录
使用原因
在开启WSL2后,VMware的正式版不能正常使用,所以我一开始尝试了VMware的测试版(现在的15.5版本已经可以支持了)
总的来说,在使用测试版时没有遇到特别大的问题,但是由于是虚拟机套娃,性能严重下降(没有使用过正式版,不清楚是否对其进行了优化),因此我把目光转向了Hyper-V
配置Hyper-V
Hyper-V使用感受
Hyper-V给我的感受是比VMware流畅,且资源占用较低,因为Hyper-V虚拟Windows系统(或者是快速构建中列出的系统)可以使用动态内存分配
而在使用增强模式后,除了拖动窗口有时存在掉帧现象,基本跟实体机没有太大的区别
启用Hyper-V
在BIOS中启用虚拟化选项
在控制面版中选择启用或关闭Windows功能,勾选Hyper-V,等待下载完成后,重启电脑
Ubuntu虚拟机
在任务栏的搜索框中输入Hyper-V,点击Hyper-V管理器
点击右边的快速构建,选择Ubuntu18.04.3LTS,等待下载完成即可(建议使用代理进行下载)(注意在设置用户名和密码时不要勾选自动登录)
然后在弹出的窗口大小确认框中点击确定即可,然后输入用户名和密码,即可使用增强模式
Windows虚拟机
快速构建中的Windows10开发环境使用的是企业评估版(emmmm….),PASS
首先,用MediaCreationTool下载Windows10的ISO镜像文件
在Hyper-V管理器中点击右边的构建,选择虚拟机,代数选择第二代,网络选择Default Switch,安装选项选择使用iso文件
点击新建的虚拟机,在右下角的设置中,先关闭安全启动,并将CPU的核数调整为你的CPU核数,点击链接然后启动即可
安装并初始化完成后,关机,重新开启安全启动
Windows默认使用增强模式,无需手动启用
Ubuntu配置
- 换源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo rm /etc/apt/sources.list
sudo nano /etc/apt/sources.list
Ubuntu18.04阿里源
1 | deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse |
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
- 常用工具配置
1 | sudo apt install vim gcc g++ gdb python python3 python-pip python3-pip git wget curl unzip binwalk file ruby-dev foremost aircrack-ng libgmp-dev libmpfr-dev libmpc-dev libssl-dev python-tk cmake python3-docopt python-docopt libgmp3-dev -y |
- 配置32位环境
1 | sudo dpkg --add-architecture i386 |
- 配置Java环境
Java SE Development Kit 8 Downloads
在 Java SE Development Kit 8u***
界面,选择 jdk-8u***-linux-x64.tar.gz
将下载得到的文件解压,并修改.zshrc
或者.bashrc
,在文件末尾添加
1 | JAVA_HOME=~/jdk1.8.0_*** |
修改完成后, source .zshrc
或者 source .bashrc
使配置生效
Windows配置
可能存在病毒,请勿在实体机上使用
Manjaro使用记录
注意事项
在安装时要找到Windows10的
efi
分区(100MB那个),选择保留,挂载点/boot/efi
,标记勾选boot
如果安装卡在了
93%
,可以直接断网,此时已经安装完成双系统对时
sudo timedatectl set-local-rtc true
换源
sudo pacman-mirrors -c China -m rank
安装基础包
sudo pacman -S base-devel
常用软件
yay sudo pacman -S yay
输入法&字体
yay -S fcitx5-im
nano ~/.pam_environment
1 | GTK_IM_MODULE DEFAULT=fcitx |
yay -S fcitx5-qt
yay -S fcitx5-gtk
yay -S fcitx5-rime
重启
在输入状态下点击F4更换为简体
思源字体
sudo pacman -S adobe-source-han-sans-cn-fonts
google-chrome yay -S google-chrome
typora yay -S typora
vscode yay -S visual-studio-code-bin
wireshark yay -S wireshark-qt
burpsuite yay -S burpsuite
docker yay -S docker
启动docker sudo systemctl start docker.service
开机自启动 sudo systemctl enable docker.service
将用户添加到Docker组中 sudo usermod -aG docker username
打开或创建/etc/docker/daemon.json
文件,将国内加速镜像填入到文件中
1 | { |
完成后重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
gcc yay -S gcc
gdb yay -S gdb
clion yay -S clion
pycharm yay -S pycharm
phpstorm yay -S phpstorm
binwalk yay -S binwalk
foremost yay -S foremost
zsteg yay -S zsteg
baidunetdisk yay -S baidunetdisk
upx yay -S upx
net-tools yay -S net-tools
010editor yay -S 010editor
notion yay -S notion-app
nodejs yay -S nodejs-lts-fermium
npm yay -S npm
motrix yay -S motrix
VMware
下载链接https://www.vmware.com/go/getworkstation-linux
当安装程序询问
System service scripts directory
的设置时,输入/etc/init.d
即可
可能需要安装内核
查看本机内核uname -a
查找内核sudo pacman -Ss linux headers
安装内核sudo pacman -S linux***-headers
VMware安装完成后,虚拟机无法启动,输入sudo /etc/init.d/vmware start