WindowsのWSLでFortranプログラムを実行する方法
MobaXtermで公開鍵認証を利用したサーバーにログインする方法


WindowsのWSLでFortranプログラムを実行する方法

はじめに

 Windows上でLinux環境を使用できるWindows Subsystem for Linux (WSL)を使って、 Fortranプログラムを実行する方法を説明します。 Fortranプログラムは、Fortran 2008に準拠するとし、プログラムのファイル名をprogram.f08、パラメータファイルをparamとします。 Fortran 90やFortran 95に準拠して書かれたプログラムは、拡張子の「f08」を「f90」や「f95」と読み替えてください。

GNU Fortranのインストールとプログラムの実行

 まず、PowerShellを管理者として起動し、
wsl --install
を実行して再起動します。Windows 11では、このコマンドでWSLとUbuntuをまとめて導入できます。
 次に、UbuntuにGNU Fortran(GFortran)をインストールします。
sudo apt update
sudo apt install gfortran
 その後、プログラムをコンパイルし、実行します。
gfortran -O3 program.f08 -o program
./program param

Windows上のディレクトリへのシンボリックリンクの作成

 Windows上(ここでは、デスクトップとします)にあるファイルをUbuntu上で簡単に参照するには、Ubuntu上のホームディレクトリで、新しいディレクトリ(例えば、「windows」という名前のディレクトリ)を作成し、そのディレクトリへのシンボリックリンクを作成すると便利です。
 以下では、Windowsの「デスクトップ」フォルダの絶対パスが「/mnt/c/Users/xxx/Desktop」であるとします。通常、このようなパスですが、/最上位のディレクトリである「/mnt」から辿って確認してください。
username@machinename:~$mkdir windows
username@machinename:~$ln -s /mnt/c/Users/xxx/Desktop windows
 そして、以下のようにするとシンボリックリンクが作成されていることがわかり、実際に「windows」のディレクトリに移動すると、Windowsのデスクトップにあるファイルを見ることができます。
username@machinename:~$ls -l
lrwxrwxrwx [中略] masaki → /mnt/c/Users/xxx/Desktop
username@machinename:~$cd windows
username@machinename:~/windows$ls -l

ファイルを編集するためのエディター

 もしファイルを編集・保存するためのエディターが入っていない場合は、Windows上でメモ帳などを使って編集するか、Ubuntuにemacsなどをインストールします。
sudo apt install emacs

MobaXtermで公開鍵認証を利用したサーバーにログインする方法

はじめに

 Windows用のターミナルエミュレーターであるMobaXtermを使って公開鍵認証を利用したサーバーにログインする方法です。
 MobaXtermの最もよいところは、あらかじめX11 Serverが入っているので、X Windowが「飛ばせる」(接続先のコンピューターのアプリケーション、例えば、Ghostscriptなどの画面を表示できる)ことです。MobaXtermがあると、PuTTY(パティ)やTera TermWinSCPなどのクラシカルなソフトのインストールは不要です。
 MobaXtermは大学・研究所の大型計算機センターや情報リテラシー教育などでも広く使われています。
 九州大学:https://www.cc.kyushu-u.ac.jp/scp/system/ITO/02_login/3-4.html
 電気通信大学:https://joho.g-edu.uec.ac.jp/joho/sgd_win/
 京都大学:https://web.kudpc.kyoto-u.ac.jp/manual/ja/login/mobaxterml
 分子科学研究所:https://ccportal.ims.ac.jp/quickstartguide/mobaxterm
 名古屋大学:https://icts.nagoya-u.ac.jp/ja/sc/pdf/ssh.pdf

MobaXtermのインストール

 MobaXtermの公式サイトのこちらから、「Installer edition」をダウンロードしてインストールする。

鍵の作成

 WindowsのPowerShellのssh-keygen.exeを使って作成する。以下のように、PowerShellを起動して「ssh-keygen -t ed25519」を入力する。passphraseを訊かれるが何も入力せずにエンターキーを押して進める。
PS C:\Users\ユーザー名> ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\ユーザー名/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\ユーザー名/.ssh/id_ed25519
Your public key has been saved in C:\Users\ユーザー名/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:xxx xxx@xxx
The key's randomart image is:
…
PS C:\Users\Masaki>

作成した鍵の確認

 まず、Windowsで隠しフォルダを表示するために、エクスプローラーの「表示」タブから「隠しファイル」にチェックを入れる。
 そして、「C:\Users\ユーザー名\.ssh」の隠しフォルダに、id_ed25519(秘密鍵)と、id_ed25519.pub(公開鍵)の二つのファイルがあるか確認する。

ログイン

 まず、id_ed25519.pub(公開鍵)の内容を接続先のコンピューターに登録する。
 (1) MobaXtermを起動し、「Sesson」から「SSH」を選ぶ。
 (2) 「Remote host」に接続先のドメイン名を入力し、「Username」に接続先の管理者から与えられたユーザー名を入力する。
 (3)次に、「Adbanced SSH Settings」のタブを開き、「Use private key」にチェックして、上記のid_ed25519(秘密鍵)のファイルを読み込む。
 最後に、「OK」を押すと、接続先のコンピューターにログインできる。