在開始部署前,需確保遠程Ubuntu服務器具備運行Fortran程序的基礎環境:
apt
包管理器安裝GNU Fortran(gfortran
),這是Ubuntu下最常用的Fortran編譯器。sudo apt update
sudo apt install gfortran -y
安裝完成后,通過gfortran --version
驗證安裝是否成功。sudo apt install libopenmpi-dev openmpi-bin -y
將本地編寫的Fortran源代碼(如hello.f90
)上傳至服務器(可通過scp
命令),然后使用gfortran
編譯為可執行文件:
# 上傳源代碼(本地終端執行)
scp hello.f90 username@remote_server_ip:/path/to/server/directory/
# 服務器終端編譯(假設源代碼在/home/username/fortran/目錄)
cd /home/username/fortran/
gfortran -o hello hello.f90 # 生成可執行文件hello
若程序需要并行計算,可使用mpif90
(MPI Fortran編譯器)編譯:
mpif90 -o mpi_hello mpi_hello.f90 # 生成支持MPI的hello程序
~/.bashrc
文件,添加以下內容(以LD_LIBRARY_PATH
為例):echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc # 使配置立即生效
# 本地終端生成SSH密鑰(若已有密鑰可跳過)
ssh-keygen -t rsa
# 將公鑰復制到遠程服務器
ssh-copy-id username@remote_server_ip
# 測試免密登錄
ssh username@remote_server_ip
ssh username@remote_server_ip
cd /path/to/program/
./hello # 運行普通Fortran程序
mpirun
或mpiexec
命令指定進程數,運行并行程序:mpirun -np 4 ./mpi_hello # 使用4個進程運行MPI程序
若需將程序分發給其他用戶或服務器,可將程序及依賴打包為壓縮文件:
myprogram/
)。install.sh
):自動化復制文件到系統目錄(如/opt
)并設置權限:#!/bin/bash
sudo mkdir -p /opt/myprogram
sudo cp myprogram/hello /opt/myprogram/
sudo chmod +x /opt/myprogram/hello
echo "Installation completed. Run with /opt/myprogram/hello"
tar
命令將目錄打包為.tar.gz
文件:tar -czvf myprogram.tar.gz myprogram/
scp
將壓縮包傳輸至目標服務器,用戶解壓后運行安裝腳本即可完成部署。.so
庫)。chmod +x
),安裝目錄(如/opt
)需有寫入權限(通過sudo
執行)。./hello > output.log 2>&1
)記錄運行狀態,便于排查問題。