Ubuntu 20.04.2 LTS (GNU/Linux 5.4.72-microsoft-standard-WSL2 x86_64)

WSL 2 全局设置

你可以通过将 .wslconfig 文件放置在用户文件夹的根目录下(即 C:\Users\.wslconfig)来配置全局 WSL 选项。此文件中许多配置与 WSL 2 有关,你需要运行 wsl —shutdown 来关闭 WSL 2 虚拟机,重启 WSL 2 ,以确保这些配置生效。

  1. [wsl2]
  2. # 自定义 Linux 内核的绝对路径
  3. kernel=<path>
  4. # 给 WSL 2 虚拟机分配的内存大小
  5. memory=<size>
  6. # 为 WSL 2 虚拟机分配的处理器核心数量
  7. processors=<number>
  8. # 为 WSL 2 虚拟机分配的交换空间,0 表示没有交换空间
  9. swap=<size>
  10. # 自定义交换虚拟磁盘 vhd 的绝对路径
  11. swapFile=<path>
  12. # 是否允许将 WSL 2 的端口转发到主机(默认为 true)
  13. localhostForwarding=<bool>
  14. # `<path>` 必须是带反斜杠的绝对路径,例如 `C:\\Users\\kernel`
  15. # `<size>` 必须在后面加上单位,例如 8 GB 或 512 MB

设置默认用户为 root

  1. # cmd 执行一下命令
  2. Ubuntu config --default-user root

切换阿里镜像源

参考:https://developer.aliyun.com/special/mirrors/notice?spm=a2c6h.13651102.0.0.3e221b11GR7vju

  1. # 先备份
  2. sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
  3. 编辑 /etc/apt/sources.list 文件 写入以下内容
  4. # ----------- 阿里源
  5. deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
  6. deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
  7. deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
  8. deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
  9. deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
  10. deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
  11. deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
  12. deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
  13. deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
  14. deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
  15. # ----------- 阿里源
  16. # 更新
  17. sudo apt-get update
  18. sudo apt-get -f install
  19. sudo apt-get upgrade

安装python3-pip

  1. sudo apt-get install python3-pip

安装宝塔面板

  1. curl -sSO http://download.bt.cn/install/install_panel.sh && bash install_panel.sh

xfce4桌面

安装xfce4桌面

  1. # 安装
  2. sudo apt-get install xfce4 xfce4-terminal
  3. # 移除屏保等无用项
  4. sudo apt-get purge xscreensaver gnome-screensaver
  5. sudo apt-get purge xscreensaver gnome-screensaver light-locker i3lock

启动 xfc4桌面

windows10 上先安装并启动x-server软件 如:x410

  1. # 在 /etc/profile.d 目录下 新建文件 cof-xfce4.sh 写入以下配置
  2. export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2; exit;}'):0.0
  3. # 完整启动
  4. startxfce4
  5. # 仅启动核心
  6. xfsettingsd --sm-client-disable; xfce4-panel --sm-client-disable --disable-wm-check &

xfce4桌面美化

https://www.xfce-look.org/ 搜索想要的主题和图标
主题放置路径: /usr/share/themes
图标放置路径: /usr/share/icons

安装拼音输入法

  1. # 先卸载 ibus
  2. sudo apt-get remove ibus
  3. sudo apt-get autoremove
  4. # 安装
  5. sudo apt-get install fcitx-pinyin
  6. # 在 /etc/profile.d 目录下 新建文件 cof-fcitx.sh 写入以下配置
  7. export XMODIFIERS=@im=fcitx
  8. export GTK_IM_MODULE=fcitx
  9. export QT_IM_MODULE=fcitx

浏览器安装

安装火狐浏览器

  1. sudo apt-get install firefox

安装谷歌浏览器

  1. # 下载
  2. wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
  3. # 安装
  4. sudo dpkg -i google-chrome-stable_current_amd64.deb

谷歌浏览器允许 root 用户运行

  1. vim /opt/google/chrome/google-chrome
  2. # 找到最后一行修改为:
  3. exec -a "$0" "$HERE/chrome" "$@" --no-sandbox
  4. # 然后:w保存,就能正常启动google浏览器了

安装配置pyenv

  1. # 安装
  2. curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
  3. # 配置
  4. export PATH="$HOME/.pyenv/bin:$PATH"
  5. eval "$(pyenv init -)"
  6. eval "$(pyenv virtualenv-init -)"

终端安装配置

安装tilix

  1. sudo apt-get install tilix

安装zsh

  1. # 安装
  2. sudo apt-get install -y zsh
  3. # 设置默认
  4. chsh -s /bin/zsh

安装及配置Oh My Zsh

  1. # 自动下载并安装
  2. sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

自定义Oh My Zsh主题

  1. # Clean, simple, compatible and meaningful.
  2. # Tested on Linux, Unix and Windows under ANSI colors.
  3. # It is recommended to use with a dark background.
  4. # Colors: black, red, green, yellow, *blue, magenta, cyan, and white.
  5. #
  6. # Mar 2013 Yad Smood
  7. # VCS
  8. YS_VCS_PROMPT_PREFIX1=" %{$fg[white]%}on%{$reset_color%} "
  9. YS_VCS_PROMPT_PREFIX2=":%{$fg[cyan]%}"
  10. YS_VCS_PROMPT_SUFFIX="%{$reset_color%}"
  11. YS_VCS_PROMPT_DIRTY=" %{$fg[red]%}x"
  12. YS_VCS_PROMPT_CLEAN=" %{$fg[green]%}o"
  13. # Git info
  14. local git_info='$(git_prompt_info)'
  15. ZSH_THEME_GIT_PROMPT_PREFIX="${YS_VCS_PROMPT_PREFIX1}git${YS_VCS_PROMPT_PREFIX2}"
  16. ZSH_THEME_GIT_PROMPT_SUFFIX="$YS_VCS_PROMPT_SUFFIX"
  17. ZSH_THEME_GIT_PROMPT_DIRTY="$YS_VCS_PROMPT_DIRTY"
  18. ZSH_THEME_GIT_PROMPT_CLEAN="$YS_VCS_PROMPT_CLEAN"
  19. # HG info
  20. local hg_info='$(ys_hg_prompt_info)'
  21. ys_hg_prompt_info() {
  22. # make sure this is a hg dir
  23. if [ -d '.hg' ]; then
  24. echo -n "${YS_VCS_PROMPT_PREFIX1}hg${YS_VCS_PROMPT_PREFIX2}"
  25. echo -n $(hg branch 2>/dev/null)
  26. if [ -n "$(hg status 2>/dev/null)" ]; then
  27. echo -n "$YS_VCS_PROMPT_DIRTY"
  28. else
  29. echo -n "$YS_VCS_PROMPT_CLEAN"
  30. fi
  31. echo -n "$YS_VCS_PROMPT_SUFFIX"
  32. fi
  33. }
  34. local exit_code="%(?,,C:%{$fg[red]%}%?%{$reset_color%})"
  35. # Prompt format:
  36. #
  37. # PRIVILEGES USER @ MACHINE in DIRECTORY on git:BRANCH STATE [TIME] C:LAST_EXIT_CODE
  38. # $ COMMAND
  39. #
  40. # For example:
  41. #
  42. # % ys @ ys-mbp in ~/.oh-my-zsh on git:master x [21:47:42] C:0
  43. # $
  44. PROMPT="%(#,%{$fg[yellow]%}%n%{$reset_color%},%{$fg[cyan]%}%n)%{$fg[white]%}@%{$fg[green]%}%m%{$fg[white]%}:%{$terminfo[bold]$fg[yellow]%}%~%{$reset_color%}\
  45. ${hg_info}\
  46. ${git_info}\
  47. \
  48. %{$fg[white]%}[%*] $exit_code
  49. %{$terminfo[bold]$fg[red]%}$ %{$reset_color%}"

安装配置ssh

生成公钥私钥

  1. ssh-keygen -t rsa
  2. ssh-keygen -m PEM -t rsa -b 4096
  3. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  4. chmod 600 ~/.ssh/authorized_keys
  5. chmod 700 ~/.ssh

重新生成主机密钥文件

  1. ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
  2. ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
  3. ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key

ssh一些配置

  1. #允许 root用户登录
  2. PermitRootLogin yes
  3. # 允许密码登录
  4. PasswordAuthentication yes

部分错误的解决方案

  • 安装mysqlclient报错
    1. sudo apt-get install libmysqlclient-dev