空空如也的WSL如何配置?Linux起步记录


发行版为Ubuntu 22.04

换源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup # 备份sources.list
sudo vim /etc/apt/sources.list # vim 编辑

删除原来的配置,复制清华的源

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

:wq保存并退出vim。
更新:

sudo apt-get update
sudo apt-get upgrade

连接github

配置git信息

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

.ssh目录生成ssh公钥私钥

ssh-keygen -t rsa -C "youremail@example.com"

将公钥添加到github,验证

ssh -T git@github.com

Vim

  1. .vimrc的优化设置
    参考:

    https://github.com/yangyangwithgnu/use_vim_as_ide

    对本弱鸡,自带的vim就够用了,真需要写代码还是vscode简单。贴出我的~/.vimrc:

" vim开启256色支持
set t_Co=256
" 设置 gvim 显示字体
set guifont=YaHei\ Consolas\ Hybrid\ 16
" 高亮第80列
set cc=80
" 开启语法高亮功能
syntax enable
" 允许用指定语法高亮配色方案替换默认方案
syntax on
" 自适应不同语言的智能缩进
filetype indent on
" 设置编辑时制表符占用空格数
set tabstop=4
" 设置格式化时制表符占用空格数
set shiftwidth=4
" 将制表符扩展为空格
set expandtab
" 让 vim 把连续数量的空格视为一个制表符
set softtabstop=4
" 显示光标当前位置
set ruler
" 总是显示状态栏
set laststatus=2
" 开启行号显示
set number
" 开启实时搜索功能
set incsearch
" 搜索时大小写不敏感
set ignorecase
" 关闭兼容模式
set nocompatible
" vim 自身命令行模式智能补全
set wildmenu
" 高亮显示搜索结果
set hlsearch
set showmatch
" 禁止光标闪烁
set gcr=a:hor100-blinkon0
" 禁止显示滚动条
set guioptions-=l
set guioptions-=L
set guioptions-=r
set guioptions-=R
" 禁止显示菜单和工具条
set guioptions-=m
set guioptions-=T
set showmode
" 命令模式下显示输入命令
set showcmd
" 高亮当前行
set cursorline
" 禁止折行
" set nowrap
" 基于缩进或语法进行代码折叠
" 操作:za,打开或关闭当前折叠;zM,关闭所有折叠;zR,打开所有折叠
"set foldmethod=indent
set foldmethod=syntax
" 启动 vim 时关闭折叠代码
set nofoldenable
" 配色方案
set background=dark
colorscheme molokai
" an alternative scheme under development for color terminals which attempts
" to bring the 256 color version as close as possible to the the default (dark) GUI version
" let g:rehash256 = 1
" 开启文件类型侦测
filetype on
" 根据侦测到的不同类型加载对应的插件
filetype plugin on
" 让配置变更立即生效
autocmd BufWritePost $MYVIMRC source $MYVIMRC
" 打开文件时恢复光标位置
autocmd BufReadPost *
    \ if line("'\"") > 1 && line("'\"") <= line("$") |
    \   exe "normal! g`\"" |
    \ endif
" 在 Vim 8 中安装matchit
packadd! matchit
" 括号匹配高亮颜色
hi MatchParen ctermbg=16 ctermfg=226 guibg=lightblue
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 定义快捷键的前缀,即<Leader>
let mapleader=";"
" 定义快捷键到行首和行尾
" nmap LB 0
" nmap LE $
" 设置快捷键将选中文本块复制至系统剪贴板
vnoremap <Leader>y "+y
" 设置快捷键将系统剪贴板内容粘贴至 vim
nmap <Leader>p "+p
" 定义快捷键关闭当前分割窗口
nmap <Leader>q :q<CR>
" 定义快捷键保存当前窗口内容
nmap <Leader>w :w<CR>
" 定义快捷键保存所有窗口内容并退出 vim
nmap <Leader>WQ :wa<CR>:q<CR>
" 不做任何保存,直接退出 vim
nmap <Leader>Q :qa!<CR>
" 依次遍历子窗口
nnoremap fw <C-W><C-W>
" 跳转至右方的窗口
nnoremap <Leader>lw <C-W>l
" 跳转至左方的窗口
nnoremap <Leader>hw <C-W>h
" 跳转至上方的子窗口
nnoremap <Leader>kw <C-W>k
" 跳转至下方的子窗口
nnoremap <Leader>jw <C-W>j
" 定义快捷键在结对符之间跳转
nmap <Leader>M %
" 正向遍历同名标签
nmap <Leader>tn :tnext<CR>
" 反向遍历同名标签
nmap <Leader>tp :tprevious<CR>
" 通过快捷键 ctrl-] 将光标所在单词匹配的所有标签压入标签栈中,
" 若没跳转至需要的标签,再键入 tn 往后或者 tp 往前遍历
" 当分析完函数实现后,我需要返回先前调用处,可以键入 vim 快捷键 ctrl-t 返回,
" 如果想再次进入,可以用前面介绍的方式,或者键入 ctrl-i
" 自动补全
inoremap ( ()<ESC>i
inoremap { {}<ESC>i
inoremap [ []<ESC>i
""inoremap " ""<ESC>i
""inoremap ' ''<ESC>i
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" vundle 环境设置
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
" vundle 管理的插件列表必须位于 vundle#begin() 和 vundle#end() 之间
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tomasr/molokai'
Plugin 'octol/vim-cpp-enhanced-highlight'
Plugin 'Lokaltog/vim-powerline'
Plugin 'Yggdroot/indentLine'
Plugin 'nathanaelkane/vim-indent-guides'
" 插件列表结束
call vundle#end()
filetype plugin indent on
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""indentLine setting
let g:indentLine_enabled = 0
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" vim-indent-guides setting
" 随 vim 自启动
let g:indent_guides_enable_on_vim_startup=1
" " 从第二层开始可视化显示缩进
let g:indent_guides_start_level=2
" " 色块宽度
let g:indent_guides_guide_size=1
" " 快捷键 i 开/关缩进可视化
:nmap <silent> <Leader>i <Plug>IndentGuidesToggle
  1. 先下载vundle,根据.vimrc里的设置安装插件
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

在vim中执行:PluginInstall,具体仍参考上述链接。
molokai颜色主题插件安装后会报错,需将颜色配置文件移到~/.vim

cp -r ~/.vim/bundle/molokai/colors ~/.vim

~/.vimrc的配置对sudo无效,以root登录,在/root/下对vim重新配置。
sudo passwd root设施root密码,su输入密码登录为root。
直接赋值/home/user/目录下的.vim/.vimrc/root目录即可。

啪的一下很快啊,基本可以食用。

软件安装

简单命令

软件命令
gcc, g++sudo apt install build-essential
gfortransudo apt install gfortran

没法直接安装

tldr

报错:No tldr entry for xxx,解决办法

$ sudo apt install tldr
$ tldr ls
No tldr entry for
$ sudo apt update
$ tldr -u
tldr: /home/user/.local/share/tldr: createDirectory: does not exist (No such file or directory)
$ mkdir -p ~/.local/share/tldr # 没有文件夹就创建文件夹
Cloning into 'tldr'...
......
$ tldr ls
- List files one per line:
   ls -1
......

https://blog.csdn.net/qq_40371773/article/details/129287948

MPICH

参考链接:

https://blog.csdn.net/qq_33067925/article/details/125370039
https://www.mpich.org/static/downloads/4.1.2/mpich-4.1.2-installguide.pdf

确保gccg++gfortran已安装。

编译安装

wget https://www.mpich.org/static/downloads/4.1.2/mpich-4.1.2.tar.gz # 下载源码
tar xfz mpich-4.1.2.tar.gz # 解压缩
mkdir ~/mpich-install # 创建安装路径
mkdir /tmp/username/mpich-4.1.2 # 临时文件夹
cd /tmp/username/mpich-4.1.2
/home/you/libraries/mpich-4.1.2/configure \
-prefix=/home/you/mpich-install 2>&1 | tee c.txt # 设置安装路径
make 2>&1 | tee m.txt # 编译mpich
make install 2>&1 | tee mi.txt # 安装

设置环境变量

vim ~/.bashrc
export PATH=/home/you/mpich-install/bin:$PATH # 环境变量
source ~/.bashrc # 设置生效

测试单机环境

which mpicc
which mpiexec
mpichversion
mpicc --version
cd ~/libraries/mpich-4.1.2/examples/
mpicc -o cpi cpi.c
mpirun -np 2 /home/username/libraries/mpich-4.1.2/examples/cpi

OpenFOAM

安装

参考链接:

https://openfoam.org/download/windows/

尴尬的是OpenFOAM不支持MPICH而支持OPENMPI,所以上面刚装完MPICH,后续配置OpenFOAM会报错:

gcc: error: unrecognized command line option '--showme:link'

解决方法:修改/opt/openfoam10/etc/bashrcexport WM_MPLIB=SYSTEMOPENMPIexport WM_MPLIB=OPENMPI

参考链接:

https://blog.csdn.net/tedahaobaojian/article/details/128432459

WSL调用Windows下的ParaView对OpenFOAM进行后处理

  1. 官网下载并安装windows版的paraview
  2. 将windows版的paraview路径添加到环境变量,重新打开terminal
  3. 编辑paraFoam脚本,vim paraFoam
pre_para='basename $PWD'
para_file=${pre_data}.foam
>${para_file}
cmd.exe /c "paraview ${para_file}"
rm ${para_file}
  1. 为自己写的paraFoam添加可执行权限
sudo chmod +x paraFoam
  1. 查找OpenFOAM自带的paraFoam位置,备份并替换
$ which paraFoam
/opt/openfoam10/bin/paraFoam
$ sudo cp /opt/openfoam10/bin/paraFoam /opt/openfoam10/bin/paraFoam.bk # 备份
$ sudo cp ./paraFoam /opt/openfoam10/bin/paraFoam # 替换
  1. 输入paraFoam即可启动windows下的ParaView对OpenFOAM计算结果进行处理,目测windows版的paraView只能选择windows下的路径,所以需要拷贝一下wsl的文件到win的文件系统?但是如果文件拷贝过去了,就直接操作win版的ParaView就好了,没必要从wsl启动。

参考链接:

https://www.cnblogs.com/liusuanyatong/p/11259638.html

图形界面(GUI)

参考链接:

https://www.iamkyun.com/2020/07/25/WSL2-Ubuntu-GUI/
https://blog.csdn.net/swordsm/article/details/107777377

  1. 安装xrdp
sudo apt-get purge xrdp
sudo apt install xrdp 
  1. 配置xrdp
sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.backup # 备份原配置
# 修改位/像素(bpp)
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
  1. 安装GUI桌面(xface4)
sudo apt install -y xfce4
sudo apt install -y xfce4-goodies
  1. 配置 xfce4
# 指定 x windows system 启动使用我们安装的 xfce4 
echo xfce4-session > ~/.xsession 
# 修改 xrdp 的窗口管理器的启动脚本 
sudo vim /etc/xrdp/startwm.sh 
## 注释掉最后两行(test 和 exec 开头),并添加 
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession 
#exec /bin/sh /etc/X11/Xsession 
# xfce 
startxfce4 
  1. 启动xrdp
sudo /etc/init.d/xrdp start 
  1. 用微软远程桌面连接
    WSL_IP:33893389为默认端口,ip可用ifconfig查看。
    WSL的用户名和密码登录。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值