第一篇推送就是整理手头关于新工作站的配置工作的笔记。方便自己以后建站以及其他有需求的同学。
而工作站是每一个做流体的同学非常迫切需要的装备,不管是做数值还是实验,流体问题中要处理的数据量都是巨大的。恰巧,实验室最近新购置了几台服务器,我也跟着学习了一下,并且在大佬的帮助下,一边学习一边摸索地完成配置。下面就这次学习过程的笔记整理分享给大家,当然也有不太准确的地方,也恳请各位大佬指正。
如果已经安装了合适的 Ubuntu 版本,请忽略
进入系统的第一件事情就是连网,换 apt 源。如果在学校里面,就连校园网,最好把 ipv4 与 ipv6 都连上。
sudo cp /etc/apt/sources.list /etc/apt/source.list.bak
sudo vi /etc/apt/sources.list
清除原来文件中的内容,在命令形式,依次执行 gg(将光标至文件首行),dG,清空内容。另外一个比较笨的方法,就是 dd(删除行)一行行删除即可。
sudo apt update
sudo apt install openssh-server
sudo systemctl status ssh
会输出
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-07-04 09:49:37 CST; 1 weeks 6 days ago
...
说明正常运行,并且开机自启动.执行 q 返回命令行。
sudo ufw allow ssh
ip a
sudo apt install gcc g++ gfortran gdb gcc-10 g++-10 gfortran-10
sudo apt install lcov cmake make git tldr htop
sudo apt install paraview python3-paraview clang vim
sudo groupadd students
sudo useradd -s /bin/bash -d /home/<username> -m -G students <username>
sudo passwd <username>
UUID=643003f8-88b3-48d0-bba7-926a334276bd /mnt/disk1 auto nosuid,nodev,nofail,x-gvfs-show 0 0
sudo blkid
可以得到类似输出
/dev/sdb: UUID="e60b32da-b2a0-48a9-9905-e480238975e2" BLOCK_SIZE="4096" TYPE="ext4"
/dev/sda: UUID="2b47f275-d9c3-4dd3-a64d-d500427f16a7" BLOCK_SIZE="4096" TYPE="ext4"
注意,建议硬盘的类型为 ext4
有时候,硬盘的格式不是 ext4。这时 blkid 可能并不能输出 UUID。可以通过
sudo fdisk -lh
查看对应的盘的文件路径,比如/dev/sdc
如果是新盘,可以直接对其进行格式化
sudo mkfs.ext4 /dev/sdc
静静等待格式完成即可,重复 blkid 重新查询
有时候,无法格式化,原因是已经自动挂载,我们先通过 df 查询,然后卸载
df -lh
自动挂载,一般都是/media/路径,卸载
sudo umount /media/<name of directory>
sudo mount -a
可以通过 df,查看挂载情况
df -lh
有时候,有些盘无法挂载,原因是已经自动挂载,我们先通过 df 查询,然后卸载
df -lh
自动挂载,一般都是/media/路径,卸载
sudo umount /media/<name of directory>
然后重新挂载
sudo mount -a
sudo chmod 777 /mnt/disk1
sudo chmod 777 /mnt/disk2
dd bs=1M count=128 if=/dev/zero of=test conv=fdatasync
实测发现,在 ubuntu 系统下,ext4 格式的读写速度要比 ntfs 快两倍到三倍。
大部分情况下,自动安装的软件全局都可使用,这个时候无需配置。但有时候要根据自己的需求配置一些环境,比如是用 intel mpi 还是 openmpi 等等。下面给出一些基本配置要求:
vim ~/.bashrc
ulimit -c unlimited
ulimit -s unlimited
ulimit -m unlimited
ulimit -d unlimited
ulimit -t unlimited
ulimit -v unlimited
如果要使用 Intel PSXE, 包含了 ifort,intel mpi,mkl 等等,自己上官网查
source /opt/intel/bin/compilervars.sh intel64
如果要使用 anaconda、matlab、tecplot 等,类似 (具体安装路径根据自己机器安装情况定)
export PATH=/opt/anaconda3/bin:/opt/matlab/r2020b/bin:/opt/tecplot360ex2020r1/bin:$PATH
如果要使用 openfoam, 前提安装了 openfoam
source /opt/openfoam8/etc/bashrc
同时不用 openfoam 时又需要使用 intel 的 mpi(注:openfoam 只支持 openmpi,因此 mpirun 会与 intel mpi 的 mpirun 冲突),定义 openfoam 专用的 mpirun 为 ofmpirun 以后直接用 ofmpirun 代替 mpirun,或者用 mpirun.openmpi
alias ofmpirun='/usr/bin/mpirun'
或者
alias ofmpirun='/usr/bin/mpirun.openmpi'
source ~/.bashrc
如果加载了 openfoam 一般会出现提醒
gcc: error: unrecognized command-line option ‘--showme:link’
这个可以忽略,原因是加载 openfoam 环境变量的时候,使用的默认的 mpirun。 而默认的 mpirun 又被之前的 intel 的环境变量给覆盖成 intel mpi. 但我们定义了ofmpirun,用ofmpirun 处理 openfoam 的并行问题没有影响。如果想要消除这个提醒,可以将 intel 环境变量加载顺序换到openfoam的后面。
有时候,我们需要用图形界面。比如在安装一些软件,比如 matlab 需要使用图形界面。采用的方案一般有两种,一种是远程桌面,另一个是用 X11 服务。远程桌面配置起来比较麻烦,这里介绍 X11 服务 在 window 系统下,我们可以使用MobaXterm(https://mobaxterm.mobatek.net/)对远程工作站进行连接。具体操作很简单,傻瓜式操作。
MoTTY X11 proxy: Unsupported authorisation protocol
Unable to init server: Broadway display type not supported: localhost:12.0
Error: cannot open display: localhost:12.0
解决方案是把自己目录下的.Xauthority 复制到/root/目录下即可
sudo cp ~/.Xauthority /root/
另外,在安装 matlab 的时候,请选择网络版安装,不要使用清华邮箱激活安装,否则只能是安装的用户可以打开 matlab, 其他用户不能打开。安装网络版后,再将 licenses 中的 network.lic 文件删除即可,这样就可以让其他用户通过自己清华账户激活并离线使用。网络版安装流程(网络版必须联网才能使用,不方便),见清华 matlab 安装手册(仅校园内网访问)。
-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lmkl_intel_thread
ipv4/ipv6填要联网电脑的IP地址.ipv4与ipv6均可
passwd 填写自己的校园网账号的密码
一定要选校外!校外!校外!
登录即可,可以通过准入功能-准入在线查看。成功率还比较高。
export LANG=en_US
xdg-user-dirs-gtk-update
export LANG=zh_CN