准备工作

使用集群做计算之前,需要在办公电脑上安装SSH客户端(连接服务器,执行shell命令)、SFTP客户端(连接服务器,上传/下载文件)。

操作系统命令终端上传/下载
Putty 免费Winscp 免费
WindowsPowerShell win10自带PowerShell win10自带
xshell 教育版免费xshell - xftp 教育版免费
LinuxShell终端,使用ssh登录Shell终端,使用scp命令

Linux指令

目录文件处理

命令说明备注
-建立目录示例:mkdir -p test
用法:mkdir [option] dirctory
mkdir tmp在当前目录下建立子目录tmp
mkdirmkdir /opt/tmp在/opt下创建子目录tmp
mkdir /opt/tmp/sub-p参数用于创建多级目录。若/opt/tmp目录不存在,无参数-p则指令报错
mkdir -p /opt/tmp/sub
-列出目录下内容-l 列表显示,-a 显示所有文件,包括隐藏文件;-t 按时间排序,从新到旧;-r 逆序排列
ls用法:ls [option] dirctory
ls -lrt按照时间排序,从后往前列表显示
ls -al test列表显示test目录下所有文件
-显示当前工作目录
pwd用法:pwd
-切换工作目录/ 根目录,目录起点,含系统目录usr、var、home、opt等
用法:cd dirctory$HOME 主目录,用户家目录,默认/home/username
cdtest账户,家目录为/home/test,切换回家目录的几种方法
cd ~
cdcd $HOME
cd /home/test
cd -回到前一个目录
-复制(重命名)文件或目录-r 递归复制,复制目录以及包含的子目录文件
用法:cp [option] source dest-a 递归复制,尽可能保持文件结构和属性(比如软链接)
cpcp file1 /tmp/复制file1到目录/tmp下
cp file1 /tmp/file2复制file1到目录/tmp下,并重命名为file2
cp -r dir1 /tmp/复制dir1到目录/tmp下,须加参数-r
-cp -r dir1 /tmp/dir2复制dir1到目录/tmp下,并重命名为dir2
移动(重命名)文件或目录src,源文件或目录;dst,目标文件或目录
用法:mv [option] src dstsrc为目录,则dst必须为目录
mvmv dir1 /tmp/dir2/tmp/dir2存在,则移动dir1到/tmp/dir2;不存在,则移动dir1到/tmp下并重命名为dir2
mv file1 /tmp移动文件file1到目录/tmp下
mv file1 /tmp/file2/tmp/file2存在,则移动file1到/tmp下并覆盖file2;不存在,则移动file1到/tmp下并重命名为file2
-删除文件或目录-f 强制删除;-r 删除目录以及目录内所有内容
rm用法:rm [option] ...file...
-rm /tmp/test.log删除/tmp下test.log

文本处理

命令说明备注
显示或拼接文件内容输出文件内容并打印到终端
cat用法:cat [option] file...
cat -n file1 file2显示file1、file2内容,并显示行号
-查看文件内容,一页暂停,空格继续,q退出相较于cat,分页显示
more用法:more [option] file...
more /tmp/test.log查看test.log内容
headhead filepath
head -n 20 filepath
tail filepath
tailtail -n 20 filepath
tail -f filepath

系统管理

命令说明备注
-进程查看命令
ps用法:ps [option]查看系统当前运行程序,可获取进程ID、用户、具体程序等
-ps aux查看a所有用户、x执行程序、并显示u用户信息
-删除运行的作业或者程序
kill用法:kill [option] pid-l 查看信号列表,比如:9) SIGKILL
-kill -9 1234给进程号为1234的程序发送停止运行信号,停止运行
-查看目录或文件所占空间大小
du用法:du [option] [file]...
-du -h /tmp查看/tmp目录大小,并以K、M、G等显示

服务器作业管理指令

提交作业

qsub 作业脚本 
如:qsub test.pbs

使用submit-g16.sh脚本提交任务:
qsub -N jobname.gjf submit-g16.sh

使用qg16脚本提交任务:
qg16 jobname.gjf
注意:下列脚本对应不同cpu数队列,脚本和输入文件均需tiaoz
qg16用于提交任务到16CPU队列(nprocshared=16)
qg1612用于提交任务到12CPU队列(nprocshared=12)。

以下为脚本内容和解释:

##指定SHELL类型
#PBS -S /bin/sh 

##指定作业名称
#PBS -N JobName

##标准输出到文件stdout
#PBS -o stdout 

##错误输出到文件stderr
#PBS -e stderr 

##指定作业优先级
#PBS -p 0

##指定作业队列,不指定使用默认队列
#PBS -q batch 

##指定所用节点数nodes:每个节点处理器数ppn:指定节点属性(可选)
#PBS -l nodes=1:ppn=16 

##指定任务运行最大时间
#PBS -l walltime=10000:00:00 

##进入工作目录
cd $PBS_O_WORKDIR

# 设置应用程序,环境变量(g09d01)
source /opt/local/g09d01/g09/setenv.sh

##临时文件写入计算节点/data/tmp
export GAUSS_SCRDIR=/data/tmp

##获取参数
nproc=$(wc -l < $PBS_NODEFILE)
env > env
 
##执行应用程序
##输入文件gjf须设置%nproc=nodes*ppn,比如%nproc=16
##使用*匹配任意名称gjf文件,确保计算目录只有一个输入文件
g09 *.gjf
 
if [ -f *.chk ]; then
  $g09root/g09/formchk *.chk
fi

查看作业

# 查看作业,左侧第一列为作业ID
qstat
 
# 查看指定作业
qstat JOBID
 
# 查看指定作业,详细信息
qstat -f JOBID
# 状态说明:Q 排队、R 运行、C 完成
 
# 查看所有用户的作业(排队情况)
showq

删除作业

# 停止&删除任务
qdel JOBID
qdel JOBID1 JOBID2 ...

查看节点

# 查看作业系统节点信息及状态
pbsnodes 或者qnodes
 
# 状态介绍
# free,节点空闲,可以提交任务;
# down,节点不能提交任务(如果不是管理员设置,则该节点网络服务不正常);
# job-exclusive,节点已满

新建账户/节点磁盘写满时删除临时文件(略)
服务器配置(略)

文章目录