Linux常见操作和PBS使用

一些PBS学习时总结

PBS(Portable Batch System)最初由NASA的Ames研究中心开发,主要为了提供一个能满足异构计算网络需要的软件包,用于灵活的批处理,特别是满足高性能计算的需要,如集群系统、超级计算机和大规模并行系统。PBS的主要特点有:代码开放,免费获取;支持批处理、交互式作业和串行、多种并行作业,如MPI、 PVM、HPF、MPL;PBS是功能最为齐全, 历史最悠久, 支持最广泛的本地集群调度器之一. PBS的目前包括openPBS, PBS Pro和Torque三个主要分支. 其中OpenPBS是最早的PBS系统, 目前已经没有太多后续开发, PBS pro是PBS的商业版本, 功能最为丰富. Torque是Clustering公司接过了OpenPBS, 并给与后续支持的一个开源版本。

常用指令

Linux代码大全|CSDN代码大全

文件操作

ls 显示当前文件夹所有非隐藏文件

llls -l显示ls的详细信息

ls -a显示隐藏文件夹

pwd显示当前目录

cd切换目录

mkdir创建文件夹

rmdir删除文件夹

touch创建空白文件

cp复制

mv移动

rm删除

rm -r 删除所有

rm -i逐个询问删除

rm -f强制删除慎用

ln -s建立文件和文件软链接(快捷方式)

cat 显示文件cat file1 file2 >file文件合并

echo显示输入的内容 追加文件echo "hello world" >> script.txt

安装操作

打包解包

1
2
3
4
5
6
7
8
tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b <区块数目>][-C <目的目录>][-f <备份文件>][-F <Script文件>][-K <文件>][-L <媒体容量>][-N <日期时间>][-T <范本文件>][-V <卷册名称>][-X <范本文件>][-<设备编号><存储密度>][--after-date=<日期时间>][--atime-preserve][--backuup=<备份方式>][--checkpoint][--concatenate][--confirmation][--delete][--exclude=<范本样式>][--force-local][--group=<群组名称>][--help][--ignore-failed-read][--new-volume-script=<Script文件>][--newer-mtime][--no-recursion][--null][--numeric-owner][--owner=<用户名称>][--posix][--erve][--preserve-order][--preserve-permissions][--record-size=<区块数目>][--recursive-unlink][--remove-files][--rsh-command=<执行指令>][--same-owner][--suffix=<备份字尾字符串>][--totals][--use-compress-program=<执行指令>][--version][--volno-file=<编号文件>][文件或目录...]
-z参数将归档后的归档文件进行gzip压缩以减少大小。
-c:创建一个新tar文件
-v:显示运行过程的信息
-f:指定文件名
-z:调用gzip压缩命令进行压缩
-t:查看压缩文件的内容
-x:解开tar文件

具体

1
2
3
4
5
6
7
# touch a.c       
# tar -czvf test.tar.gz a.c //打包 a.c文件为test.tar.gz
a.c
# tar -tzvf test.tar.gz //显示包
-rw-r--r-- root/root 0 2010-05-24 16:51:59 a.c
# tar -xzvf test.tar.gz //解包文件
a.c

其他

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName

.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName

.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知

.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
.Z
解压:uncompress FileName.Z
压缩:compress FileName

.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName

.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName

编译

1
2
3
$ gcc test.c
$ ./a.out
Hello, world! //c编译
1
2
3
$ ./configure
$ make
$ make install

文件编辑查看

vi/vim 文件编辑

vi/vim

工作模式

PBS命令介绍

qsub —— 用于提交作业脚本

1
2
3
4
5
6
7
>命令格式:
>qsub [-a date_time] [-c interval] [-C directive_prefix]
>[-e path] [-I] [-j join] [-k keep] [-l resource_list] [-m mail_options]
>[-M user_list][-N name] [-o path] [-p priority] [-q destination]
>[-r c][-S path_list] [-u user_list][-v variable_list] [-V]
>[-W additional_attributes] [-z]
>[script]

qstat —— 用于查询作业状态信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
>命令格式:
>qstat [-f][-a][-i][-n][-s][-R][-Q][-q][-B][-u]
>参数说明:
>-f jobID 列出指定作业的信息
>-a 列出系统所有作业
>-i 列出不在运行的作业
>-n 列出分配给此作业的结点
>-s 列出队列管理员不scheduler 所提供的建议
>-R 列出磁盘预留信息
>-Q 操作符是destination id,指明请求的是队列状态
>-q 列出队列状态,并以alternative 形式显示
>-au userid 列出指定用户的所有作业
>-B 列出PBS Server 信息
>-r 列出所有正在运行的作业
>-Qf queue 列出指定队列的信息
>-u 若操作符为作业号,则列出其状态。若操作符为destination id,
>则列出运行在其上的属于user_list 中用户的作业状态

qdel —— 用于删除已提交的作业

1
2
3
4
5
>命令格式:
>qdel [-W 间隔时间] 作业号
>命令行参数:
>qdel -p 强制清除某个作业号,一般不建议使用
>例:# qdel -W 10 555 10秒后删除作业号为555的作业

qhold & qrls —— 作业挂起 & 作业释放

1
>qhold&qrls jobID

PBS脚本文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
PBS作业脚本选项 (若无-C选项,则每项前面加 '#PBS')
-a date_time date_time格式为:[[[[CC]YY]MM]DD]hhmm[.SS]
表示经过date_time时间后作业才可以运行。
-c interval 定义作业的检查点间隔,如果机器不支持检查点,则忽略此选项。
-C directive_prefix 在脚本文件中以directive_prefix开头的行解释为qsub的 命令选项。若无此选项,则默认为 '#PBS'
-e path 将标准错误信息重定向到path
-I 以交互方式运行
-j join 将标准输出信息不标准错误信息合并到一个文件join中
-k keep 定义在执行结点上保留标准输出和标准错误信息中的哪个文件。
keep为o表示保留前者,e表示后者,oe戒eo表示二者都保留,
n表示皆不保留。若忽略此选项,二者都不保留。
-l resource_list 定义资源列表,几个常用的资源种类:
cput=N 请求N秒的CPU时间,也可以是hh:mm:ss的形式。
mem=N[K|M|G][B|W] 请求N {k|m|g}{bytes|words}大小的内存。
nodes=N:ppn=M 请求N个结点,每个结点M个处理器。
-m mail_option mail_option为a:作业abort时给用户发信
为b:作业开始运行发信
为e:作业结束运行时发信
若无此选项,默认为a。
-M user_list 定义有关此作业的mail发给哪些用户
-N name 作业名,限15个字符,首字符为字母,无空格。
-o path 重定向标准输出到path
-p priority 任务优先级,整数,[-10241023],若无定义则为0
-q destination destination有三种形式:
queue;
@server
queue@server
-r y|n 指明作业是否可运行,y为可运行,n为不可运行。
-S shell 指明执行运行脚本所用的shell,须包含全路径。
-u user_list 定义作业将在运行结点上以哪个用户名来运行。
-v variable_list 定义export到本作业的环境变量的扩展列表。
-V 表明qsub命令的所有环境变量都export到此作业。
-W additional_attributes 作业的其它属性
-z 指明qsub命令提交作业后,不在终端显示作业号。

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
a)
#PBS -N D10
#PBS -o log/D10.out
#PBS -e log/D10.err
#PBS -q old
#PBS -l nodes=5:ppn=4
#PBS -r y
cd /newlustre/home/liaolanjie/yc/12_01_ecard
sh gatk.js D10
b)
#PBS -N test_GAPE2
#PBS -o /newlustre/home/zhangmao511/workdir/jar_second/jar/my.out
#PBS -e /newlustre/home/zhangmao511/workdir/jar_second/jar/my.err
#PBS -q fat
#PBS -l nodes=1:ppn=10
#PBS -r y
cd /newlustre/home/zhangmao511/workdir/jar_second/jar
java -jar /newlustre/home/zhangmao511/workdir/jar_second/jar/GAPE_fat_zebrafish_Liunx_Beta_V2.jar -c /newlustre/home/zhangmao511/workdir/jar_second/jar/zebrafish_parameters.txt

TOP


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!