Papp2

papp_cloud 使用手册 #

1 简介 #

papp_cloud 是一个登录超算的命令行工具,具备 ssh、scp、rsync、sftp、sshfs 的基础功能,支持 IPv4 和 IPv6 两种协议。

1.1 功能 #

  • ssh:登录超算
  • scp:上传/下载文件
  • rsync:同步文件
  • sftp:加密的 ftp 文件传输
  • sshfs:挂载远程目录

1.2 支持的平台 #

  • Linux x86_64
  • Linux i686
  • Linux arm
  • Darwin amd64
  • Darwin arm64

1.3 支持的超算 #

简称全称超算中心
gzguangzhou广州超算
lllvliang吕梁超算
cschangsha长沙超算
jnjinan济南超算
pg1paragrid1并行网格 1 区
wxwuxi无锡超算
eraera中科院网络信息中心
cg2cngrid2中国国家网格 2 区
sz-ygshenzhen-yg深圳超算 YG 分区
sz-ggshenzhen-gg深圳超算 GG 分区
cstc9cstc9超算云 9 区
cg12cngrid12中国国家网格 12 区
cstc13cstc13超算云 13 区
bscc-abscc-a北京超级云计算中心 A 分区
bscc-tbscc-t北京超级云计算中心 T 分区
bscc-t6bscc-t6北京超级云计算中心 T6 分区
bscc-mbscc-m北京超级云计算中心 M 分区
bscc-a2bscc-a2北京超级云计算中心 A2 分区
bscc-a3bscc-a3北京超级云计算中心 A3 分区
bscc-a5bscc-a5北京超级云计算中心 A5 分区
bscc-a6bscc-a6北京超级云计算中心 A6 分区
bscc-iobscc-io北京超级云计算中心 IO 分区
bscc-n22bscc-n22北京超级云计算中心 N22 分区
bscc-n22bscc-n22北京超级云计算中心 N22 分区
bscc-n26bscc-n26北京超级云计算中心 N26 分区
bscc-n28bscc-n28北京超级云计算中心 N28 分区
bscc-albscc-al北京市超级云计算中心 AMD 实验室
bscc-qh1bscc-qh1北京超级云计算中心 QH1 分区
gz-v100guangzhou-v100广州 V-100GPU
zkxdzkxd中科先导 1 号
nc-lnc-l宁夏超算云 L 分区
nc-enc-e宁夏超算云 E 分区
nc-n30nc-n30宁夏超算云 N30 分区
zc-m6zc-m6浙江超算云 M6 分区
cc-e6cc-e6长沙超算云E6分区
bscc-n32-ebscc-n32-e北京超级云计算中心N32-E分区

2 快速开始 #

本章节将带您快速上手 papp_cloud,以下操作都是在 linux/macOS 系统的命令行中完成。接下来请您打开一个命令行界面,跟着本节教程一起完成以下操作。

2.1 下载 papp_cloud 安装包 #

如果您已经获取到 papp_cloud 的安装包,可以跳过这一步,进入下面的安装步骤。

  • 点击下载 进入 papp_cloud 下载页面。

2.2 安装 papp_cloud #

进入到 papp_cloud 安装包所在的目录,开始下面的步骤。

  • 解压 papp_cloud 安装包
unzip papp_cloud-2.10.3.zip
  • 进入 papp_cloud 安装包目录
cd papp_cloud-2.10.3
  • 安装
./install.sh install

下面将以超算云 9 区超算为例,做简单的使用说明 账号:sc10001密钥文件:sc10001.id

2.3 设置密钥文件权限 #

进入到您密钥文件所在目录,设置文件权限为 0600

chmod 0600 sc10001.id

2.4 ssh 登录超算 #

papp_cloud ssh -i sc10001.id sc10001@cstc9

2.5 sftp 登录超算 #

papp_cloud sftp -i sc10001.id sc10001@cstc9

2.6 scp 上传本地文件到超算 #

papp_cloud scp -i sc10001.id file1 sc10001@cstc9:/home/sc10001

2.7 scp 下载超算文件到本地 #

papp_cloud scp -i sc10001.id sc10001@cstc9:/home/sc10001/file1 /tmp

2.8 rsync 同步本地文件到超算 #

papp_cloud rsync -i sc10001.id file1 sc10001@cstc9:/home/sc10001/

2.9 rsync 同步超算文件到本地 #

papp_cloud rsync -i sc10001.id sc10001@cstc9:/home/sc10001/file1 /tmp

2.10 sshfs 挂载远程主机目录到本地 #

papp_cloud sshfs -i sc10001.id sc10001@cstc9:/home/sc10001/file1 /localdir

3 安装设置 #

3.1 安装 #

  • 解压 papp_cloud-2.10.3.zip
unzip papp_cloud-2.10.3.zip
  • 进入 papp_cloud-2.10.3 目录
cd papp_cloud-2.10.3
  • 执行 install.sh 脚本安装 papp_cloud
 ./install.sh install

3.2 升级 #

 ./install.sh update 

3.3 卸载 #

 ./install.sh remove 

4 设置密钥文件权限 #

注意:若您是使用密钥的方式登录超算,密钥文件的权限一定要修改为 0600,才能正常使用

进入到您密钥文件所在目录,设置文件权限为 0600

chmod 0600 sc10001.id

5 配置 ~/.ssh/config #

配置实例如下:

vim ~/.ssh/config
forwardx11 yes
forwardx11trusted yes
serveraliveinterval 60
forwardx11timeout 596h

Host cstc9
    HostName cstc9
    User sc10001
    IdentityFile /home/sc10001/sc10001.id

需要修改的参数:

  • Host: 主机别名,建议写超算中心的名称,方便记忆
  • HostName: 这里写需要登录的超算名称,比如超算云 9 区超算:cstc9
  • User: 登录超算的用户名
  • IdentifyFile: 登录超算的密钥文件路径,根据实际情况填写

6 ssh 的使用 #

6.1 ssh 登录超算 #

  • 命令格式
papp_cloud ssh [<flags>] <destination> [<command>...]
  • 例1:使用 sc10001 帐号登录超算云 9 区超算(密码方式登录)
papp_cloud ssh sc10001@cstc9 
  • 例2:使用 sc10001 帐号登录超算云 9 区超算(密钥方式登录)
papp_cloud ssh -i sc10001.id sc10001@cstc9
  • 例3:使用 sc10001 帐号登录超算云 9 区超算(ssh_config 登录)
papp_cloud ssh cstc9

7.scp 的使用 #

  • 命令格式
papp_cloud scp [<flags>] <source ... target>...

7.1 上传本地文件到超算 #

  • 例1:使用 sc10001 帐号上传 file1、file2 文件到吕梁超算的 sc10001 用户家目录(密码方式)
papp_cloud scp file1 file2 sc10001@ll:/home/sc10001/
  • 例2:使用 sc10001 帐号上传 file1、file2 文件到超算云 9 区超算的 sc10001 用户家目录(密钥方式)
papp_cloud scp -i sc10001.id file1 file2 sc10001@cstc9:/home/sc10001
  • 例3:使用 sc10001 帐号上传 file1、file2 文件到超算云 9 区超算的 sc10001 用户家目录(ssh_config 方式)
papp_cloud scp file1 file2 cstc9:/home/sc10001/

7.2 下载超算文件到本地 #

  • 例1:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(密码方式)
papp_cloud scp sc10001@cstc9:/home/sc10001/file1 /data
  • 例2:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(密钥方式)
papp_cloud scp -i sc10001.id sc10001@cstc9:/home/sc10001/file1 /data
  • 例3:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(ssh_config 方式)
papp_cloud scp cstc9:/home/sc10001/file1 /data

8 sync 功能(支持断点续传) #

  • 命令格式
papp_cloud rsync [<flags>] <source ... target>...

8.1 同步本地文件到超算 #

  • 例1:使用 sc10001 帐号同步 file1、file2 文件到吕梁超算的 sc10001 用户家目录(密码方式)
papp_cloud rsync file1 file2 sc10001@ll:/home/sc10001/
  • 例2:使用 sc10001 帐号同步 file1,file2 文件到超算云 9 区超算的 sc10001 用户家目录(密钥方式)
papp_cloud rsync -i sc10001.id file1 file2 sc10001@cstc9:/home/sc10001
  • 例3:使用 sc10001 帐号同步 file1、file2 文件到吕梁超算的 sc10001 用户家目录(ssh_config 方式)
papp_cloud rsync file1 file2 ll:/home/sc10001/

8.2 同步超算文件到本地 #

  • 例1:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(密码方式)
papp_cloud rsync sc10001@cstc9:/home/sc10001/file1 /data
  • 例2:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(密钥方式)
papp_cloud rsync -i sc10001.id sc10001@cstc9:/home/sc10001/file1 /data
  • 例3:使用 sc10001 帐号下载超算云 9 区超算 sc10001 用户家目录下的 file1 文件到本地的 /data 目录下(ssh_config 方式)
papp_cloud rsync cstc9:/home/sc10001/file1 /data

9 sftp 的使用 #

9.1 sftp 登录超算 #

  • 命令格式
papp_cloud sftp [<flags>] <destination>...
  • 例1:使用 sc10001 帐号登录超算云 9 区超算(密码方式)
papp_cloud sftp sc10001@cstc9
  • 例2:使用 sc10001 帐号登录超算云 9 区超算(密钥方式)
papp_cloud sftp -i sc10001.id sc10001@cstc9
  • 例3:使用 sc10001 帐号登录超算云 9 区超算(ssh_config 方式)
papp_cloud sftp cstc9

10 sshfs 的使用 #

10.1 sshfs 登录超算 #

  • 命令格式
papp_cloud sshfs <[user@]host:[dir]> <mountpoint>
  • 例1:使用 sc10001 帐号挂载超算云 9 区超算目录 /home/sc10001 到本地挂载点 /localdir(密码方式)
papp_cloud sshfs sc10001@cstc9:/home/sc10001 /localdir
  • 例2:使用 sc10001 帐号挂载超算云 9 区超算目录 /home/sc10001 到本地挂载点 /localdir(密钥方式)
papp_cloud sftp -i sc10001.id sc10001@cstc9:/home/sc10001 /localdir
  • 例3:使用 sc10001 帐号挂载超算云 9 区超算目录 /home/sc10001 到本地挂载点 /localdir (ssh_config 方式)
papp_cloud sftp cstc9:/home/sc10001 /localdir

11 选择超算连接链路 #

  • 默认情况下,不加 ‘-s’ 参数,papp_cloud 会自动选择一条 ping 延时最小的链路,如果需要手动选择,需添加 ‘-s’ 参数。
  • 支持 ssh、scp、rsync、sftp、sshfs 功能的链路选择,使用时在 papp_cloud 后加 ‘-s’ 参数就开启了手动选择链路的功能

11.1 命令格式 #

papp_cloud -s ssh [<flags>] <destination> [<command>...]
papp_cloud -s scp [<flags>] <source ... target>...
papp_cloud -s sftp [<flags>] <destination>...
papp_cloud -s rsync [<flags>] <source ... target>... 
papp_cloud -s sshfs [<flags>] <source ... target>... 

11.2 使用实例 #

➜  papp_cloud git:(master) ✗ papp_cloud -s  ssh -i ~/.ssh/sc10001.id sc10001@cstc9
Super Computing link list:
[0]. 华北1区 (1157)
[1]. 华北1区 (1164)
[2]. 华北1区 (1158)
[3]. 华北1区 (1166)
[4]. 华北1区(ln2) (1159)
[5]. 美西区 (98)
[6]. 欧洲中部 (92)
Please input a nubmer continue or enter 'q' to quit:2
Last login: Thu Nov 30 15:41:04 2017 from 172.18.14.10

12 debug 功能 #

在 ssh、scp、sftp、rsync、sshfs 命令前添加 ‘-D’ 参数

12.1 命令格式 #

papp_cloud -D ssh [<flags>] <destination> [<command>...]
papp_cloud -D scp [<flags>] <source ... target>...
papp_cloud -D sftp [<flags>] <destination>...
papp_cloud -D rsync [<flags>] <source ... target>... 
papp_cloud -D sshfs [<flags>] <source ... target>... 
  • 例1:sc10001 用户不能正常登录超算云 9 区超算,需要查看登录失败详情,使用以下命令
papp_cloud -D ssh -i sc10001.id sc10001@cstc9