前言
开源库 https://github.com/globus/globus-toolkit 已于2018年1月停止维护,但是提供付费版 Globus
基于现实因素,现对基于GT6的社区维护版进行预研
代码库:GitHub - gridcf/gct: Grid Community Toolkit
社区网站:Overview # | Grid Community Forum
使用文档:Grid Community Toolkit Official Documentation
运行环境
VMware 17 Pro + Ubuntu 22.04.2 LTS
运行过程
- 在terminal中运行 sudo apt install git gcc sed make libssl-dev perl pkg-config libtool libltdl-dev autoconf openssl openssl-devel libedit libedit-devel pam-devel default-jdk ant,安装编译代码所需的库,编译过程中若还缺少其它库,请根据提示信息安装。
- 下载代码到本地:git clone https://github.com/gridcf/gct.git
- 运行nano ~/.bashrc,在文件末尾添加export GLOBUS_LOCATION=/home/globus/grid_install(/home/globus/grid_install为GCT即将要安装到的目录,可自行修改),按Ctrl+O保存,按Ctrl+X退出,运行source ~/.bashrc 更新环境变量
- 切换路径到源码根目录并运行 autoreconf -i,该命令生成configure文件
- 运行./configure --prefix=$GLOBUS_LOCATION命令,生成makefile,并设置安装目录为GLOBUS_LOCATION
- 运行make指令,要构建Globus全部组件直接运行make,只安装GridFTP模块运行make GridFTP,安装其它模块同理。若想生成编译过程的日志文件,请使用make gridftp 2>&1 | tee build.log命令,会生成一个名为build.log的文件。
- 运行make install,等待完成后可以在配置的GLOBUS_LOCATION路径中查看是否安装完成。
- 运行nano ~/.bashrc,在文件末尾添加source $GLOBUS_LOCATION/share/globus-user-env.sh,保存后退出并运行source ~/.bashrc 更新环境变量,这个命令是使用脚本自动配置GCT运行所需的环境变量。
- 开两个terminal作为本地测试
- 一个为服务端,运行 globus-gridftp-server -control-interface 127.0.0.1 -aa -p 5000 ,其中-aa为启动匿名模式,允许任何客户端访问服务。
- 另一个为客户端,运行globus-url-copy -v file:///etc/group ftp://localhost:5000/tmp/group。
- 若想在不同计算机之间传输文件,请将服务端命令中的127.0.0.1改为其它电脑可访问的IP地址,并将客户端命令中localhost替换为服务端IP。
- 若想了解更多GridFTP相关配置信息,可访问GCT 6.2 GridFTP : System Administrator’s Guide