Mstation Tutorial

有时候Linux缓存过高导致程序无法分配有效的内存空间进行计算。下面提供一种清理缓存的方法。

进入Root账号,执行下面两步:

1. sync

2. echo 3 > /proc/sys/vm/drop_caches

1. 申请注册

申请页面:https://software.intel.com/zh-cn/qualify-for-free-software

2. 进入邮箱接收邮件

安装流程注册后,会受到intel的激活邮件,包括激活链接和激活密钥。激活链接是https://registrationcenter.intel.com,激活密码用于登陆。一般是passW0rd!

3. 下载licence和对应的软件

将下载的licence放置到/opt/intel/licenses

1. GPU信息查看

nvidia-smi



2. 内存状态

free -h



由于GPU驱动依赖系统内核,所以系统升级内核之后需要重新安装GPU驱动。因此需要到NVIDIA官网下载最新GTX900系列64位Linux显卡驱动。安装之前还请咨询我公司技术人员。这里还提供另外一种解决方法:修改启动内核。下面给出具体操作。


切换到/boot/grub2,修改grub.cfg文件,找到“### BEGIN /etc/grub.d/10_linux ###”,将menuentry和下面紧邻的”}”之间行开头添加#注释掉重启即可。下面给出文件修改部分的参考。

else

set timeout=5

fi

### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###

#menuentry 'CentOS Linux (3.10.0-327.3.1.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-123.el7.x86_64-advanced-3de802ed-61ea-4fc8-828e-2137f3d4ec49' {

# load_video

# set gfxpayload=keep

# insmod gzio

# insmod part_gpt

# insmod xfs

# set root='hd0,gpt2'

# if [ x$feature_platform_search_hint = xy ]; then

# search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 --hint='hd0,gpt2' ff699bd2-6972-4e02-ad7b-c1ec5abcf72d

# else

# search --no-floppy --fs-uuid --set=root ff699bd2-6972-4e02-ad7b-c1ec5abcf72d

# fi

# linux16 /vmlinuz-3.10.0-327.3.1.el7.x86_64 root=/dev/mapper/centos-root ro rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=centos/root crashkernel=auto vconsole.keymap=us rhgb quiet LANG=en_US.UTF-8

# initrd16 /initramfs-3.10.0-327.3.1.el7.x86_64.img

#}

menuentry 'CentOS Linux (3.10.0-229.20.1.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-123.el7.x86_64-advanced-3de802ed-61ea-4fc8-828e-2137f3d4ec49' {

load_video

set gfxpayload=keep

insmod gzio

insmod part_gpt

Fail2ban是Linux上一款安全工具,通过监控多个系统日志(一般是/var/log/auth.log或者/var/log/secure),并根据检查到的行为自动触发不同的防御行为。Fail2ban默认的安装位置是/etc/fail2ban,主要有两个配置文件fail2ban.conf和jail.conf。fail2ban.conf此文件中参数保持默认即可。主要修改jail.conf。关于jail.conf全部内容可以查看jail.local。对于jail.conf,下面给出配置参考。

[DEFAULT]

#忽略的IP,名单内的IP地址不会被屏蔽,多个IP地址之间用空格分隔

ignoreip = 127.0.0.1

#全局屏蔽时间,该时间内拒绝屏蔽IP的访问

bantime = 600

#监测时间,改时间内重试超过规定次数,会被屏蔽

findtime = 600

#重试次数

maxretry = 5

#日志修改监测机制

backend = auto

[ssh-iptables]

#激活,默认是未激活

enable = true

#filter的名字,对应filter.d目录下的sshd.conf

filter = sshd

#采用的行为,可以在action.d目录下找到对应的文件

action=iptables[name=SSH, port=ssh, protocal=tcp]

#sshd日志文件

logpath = /var/log/secure

#ssh服务被屏蔽访问的时间

bantime = 3600


根据以上配置,fail2ban会自动禁止最近10分钟内超过5次重试SSH登陆的任意IP地址。一旦被禁,这个IP地址在3600s内禁止访问。

配置完毕之后,启动服务

systemctl restart fail2ban.service

为了验证fail2ban成功运行,使用如下命令进行测试,如果返回“pong”响应,说明服务已经成功运行。

fail2ban-client ping

Server replied: pong

设置开机自启动

systemctl enable fail2ban

/var/log/fail2ban.log文件保存了各种信息,通过如下命令可以查看禁止访问的IP。

grep “Ban” fail2ban.log

解锁特定的IP,采用如下命令:

fail2ban-client set ssh-iptables unbanip xxx.xxx.xxx.xxx

MSTATION安装的是Torque5.1.2和maui3.3.关于Torque的使用命令如下:

(1) 用户命令

qsub

创建一个任务来向服务器提交可执行脚本。详见脚本设置

qstat [-c] [-C] [-f] [-a] [-e] [-i] [-r] [-n] [-l] [-s] -G] [-M] [-R] [-t] [-u] [-Q] [-q] [-B]

-f 显示任务完整信息

-a 显示所有的任务信息

-e 显示可执行队列正在运行的任务信息

-i 显示不在运行的任务信息

-r 显示正在运行任务的信息

-n 显示节点信息

-s 列出管理员与scheduler给出的信息

-G 以GB显示大小信息

-M 以MB显示大小信息

-R 列出磁盘预留信息

-t 输出所有队列信息

-B 列出服务器信息

qdel jobID

取消jobID的作业

(2) 脚本设置

PBS作业脚本是一个shell脚本,注释以“#”开头,PBS运行参数以“#PBS”开头。

#PBS -e path :表示将标准错误信息重定向到path

#PBS -j join: 表示将标准输出信息和标准错误信息合并到一个文件join中去

#PBS -l resource_list: 表示自定义的资源列表,一般包括如下几种

#PBS -l cput=hh:mm:ss 表示任务的所有进程拥有的最大cpu执行时间

#PBS -l mem=kb|mb|gb 表示任务请求的内存大小

#PBS -l nodes=N:ppn=M 表示任务请求的节点数N,每个节点M个处理器

#PBS -l ncpus=N 表示任务请求的cpu数

#PBS -l walltime=hh:mm:ss 表示任务可以处于运行状态的最大时间

#PBS -l ncpus=N

#PBS -N taskname 设置任务名称

#PBS -q queue 设置提交队列名称,如不设置,提交到默认队列

下面提供一个供参考的脚本:

#!/bin/csh

# Job name job

#PBS -N just_a_test

# resource limits: amount of memory and CPU time ([[h:]m:]s).

#PBS -l mem=100mb

#PBS -l walltime=01:00:00

#PBS -l nodes=1:ppn=1

# Output files to where you submitted your batch file

#PBS -e ./pwmat.err

#PBS -o ./pwmat.log

# Queue name (small, medium, long, verylong)

#PBS -q test

# End of PBS scriptings

#Start of shell scripting

echo "This job was submitted by user: $PBS_O_LOGNAME"

echo "This job was submitted to host: $PBS_O_HOST"

echo "This job was submitted to queue: $PBS_O_QUEUE"

echo "PBS job id: $PBS_JOBID"

echo "PBS job name: $PBS_JOBNAME"

echo "PBS environment: $PBS_ENVIRONMENT"

echo " "

### This job's working directory

echo Working directory is $PBS_O_WORKDIR

cd $PBS_O_WORKDIR

echo Running on host `hostname`

echo Time is `date`

echo Directory is `pwd`

#set environment

export PATH=/opt/openmpi/1.8.6/bin:/opt/pwmat/bin:$PATH

export LD_LIBRARY_PATH=/opt/openmpi/1.8.6/lib:$LD_LIBRARY_PATH

#

mpirun –np 1 PWmat

(1) PWmat

可执行文件/opt/pwmat/bin

赝势文件/opt/pwmat/pseudopotential

执行命令(使用2GPU并行)mpirun -np 2 PWmat

(2) Quantum Espresso(CPU版)

可执行文件/opt/espresso/5.1.2/bin

赝势文件/opt/espresso/upf

执行命令(使用8cpu并行)mpirun -np 8 pw.x < input.file

(3) LAMMPS(GPU版)

可执行文件/opt/lammps/src

执行命令(使用8cpu4GPU并行)mpirun -np 8 lmp_mpi.gpu -sf gpu -pk gpu 4 –i input.file

(4) CP2K(CPU版)

可执行文件/opt/cp2k/2.6.1/exe/Linux-ia64-intel

执行命令(使用8cpu并行)mpirun –np 8 cp2k.popt –i input.file

进入终端,定位到目录/etc/sysconfig/network-scripts。


建立back文件夹,将ifcfg开头的文件移动到back目录中。

mkdir back

mv ifcfg* back


如果需要动态IP,建立ifcfg-dhcp内容如下:

TYPE=Ethernet

BOOTPROTO=dhcp

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

NAME="Ethernet connection 1"

ONBOOT=yes

保存,重启计算机即可。


如果需要静态IP,建立ifcfg-static内容如下:

TYPE=Ethernet

BOOTPROTO=static

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

NAME="Ethernet connection 1"

ONBOOT=yes

# 下面几行需要根据使用的网络环境进行设置,此处供参考

# IP Address

IPADDR=192.168.199.112

# Sub Mask

NETMASK=255.255.255.0

# Gateway

GATEWAY=192.168.199.1

# DNS Server

DNS1=192.168.199.1

保存,重启计算机即可。