Linux ターゲット コンピューターのセットアップ
ターゲット コンピューター
ターゲット コンピューターとして使用できるものは次のとおりです。
Linux x86_64 マシン | Windows Subsystem for Linux (WSL2) | Linux ARM64 マシン |
MATLAB® インストールをサポートする x86_64 アーキテクチャをもつ任意の Linux マシン。 詳細については、https://in.mathworks.com/support/requirements/matlab-linux.htmlを参照してください。 | Windows マシンにインストールされた Windows Subsystem for Linux。
WSL のインストールの詳細については、https://learn.microsoft.com/en-us/windows/wsl/installを参照してください。 | ARM64 プロセッサ ベースの Linux マシン。
|
ターゲット コンピューターの要件
サポート パッケージを使用してターゲット コンピューターにサービス指向アーキテクチャ アプリケーションを展開するには、次の要件を満たしていなければなりません。
Docker ソフトウェア version 20.10 以降がインストールされている必要があります。
zip
コマンドとunzip
コマンドがインストールされている必要があります。SSH サーバーが実行中の状態である必要があります。
ターゲット コンピューターのユーザー名に Docker コマンドを実行する権限がある必要があります。詳細については、https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-userを参照してください。
既定以外のポートを使用するための手順
fastDDS
通信モードでは、ホストとの通信に既定ではターゲット側でポート番号 5555 と 5556 が使用されます。ポート番号を変更するには、<Support-Package-root>/toolbox/coder/linux/host/ContainerConfig.json
ファイルでポート番号を更新します。サポート パッケージのルートは、次のコマンドを使用して取得できます。matlabshared.supportpkg.getSupportPackageRoot
ポート番号 22255 はターゲットでの用途に予約されているため、このポートは構成できません。
SSH
通信モードでは、既定ではポート番号 22 が使用されます。ポート番号を変更するには、setSSHPort
関数を使用します。
既定以外の SSH ポートを構成する手順
SSH の場合、ターゲットとの通信に既定ではポート番号 22 が使用されます。別のポートを使用するには、ターゲットで次の手順に従います。
ファイル
/etc/ssh/sshd_config
をマシンからテキスト エディターで開きます。Port 22
の行の下に行を追加します。たとえば、ポート 22345 を使用するには次の行を追加します。Port 22345
メモ
Port 22
の行は変更したり削除したりしないでください。その下に新しい行を追加します。変更を保存し、ファイルを閉じます。
次のコマンドを使用して SSH デーモンを再起動します。
systemctl restart sshd
再起動が正常に完了すると、SSH デーモンでポート 22 またはポート 22345 が通信用にリッスンされるようになります。
ターゲットをセットアップする手順
Linux ターゲット コンピューターの接続、切断、追加、削除、更新は、Linux ランタイム マネージャーを使用して行います。
Linux オペレーティング システムを実行しているターゲット コンピューターに接続するには、次のようにします。
Linux ランタイム マネージャーを開きます。
linuxRuntimeManager
[ターゲット ツリー] ペインで [ターゲット コンピューター] を選択し、プラス ボタンをクリックしてターゲット コンピューターを追加します。[ターゲットの構成] セクションで、ターゲット コンピューターの詳細を入力します。
プログラムで行う場合は次のようにします。
tgs = linux.Targets(); tg = tgs.addTarget(<targetName>, <ipAddress>, <userName>, <password>);
新規に追加したターゲット コンピューターについて、アプリケーションを展開する場所の絶対パスを次のコマンドを使用して入力します。
tg.setDeploymentLocation(<Deployment location>);
一時フォルダーはシステムの再起動時に消去されることがあるため、一時フォルダーを展開場所として設定することは避けてください。WSL ターゲットの場合は、WSL Linux ファイル システムのストレージを展開場所として指定します。
RTI Connext を使用して構成した DDS アプリケーションを展開するには、ホスト側の環境変数 "NDDSHOME_LINUX" の値を Linux ターゲット マシン上の
RTI Connext
ソフトウェアのフォルダー パスに設定します。以下に例を示します。setenv('NDDSHOME_LINUX', '<Path for the software>')
setenv('NDDSHOME_LINUX', '/home/user/RTIDDS/glnxa64/rti_connext_dds-6.0.1_gcc7.3.0')
DDS Blockset での RTI Connext の使用の詳細については、RTI Connext® DDS connectivity framework for DDS Blockset - File Exchange を参照してください。
ターゲットを選択し、[Linux ターゲット] 、 [ターゲットに接続] 、 [接続] ボタンをクリックします。
プログラムで行う場合は次のようにします。
tg.connect();
メモ
ターゲット コンピューターの展開場所がまだ設定されていない場合、この手順で指定するように求められます。
ターゲット コンピューター上のソフトウェアを更新するには、ターゲット コンピューターを選択し、[Linux ターゲット] 、 [ターゲットに接続] 、 [Update Target] をクリックします。
プログラムで行う場合は次のようにします。
tg.updateTarget();
ターゲット コンピューターを切断するには、ターゲット コンピューターを選択し、[Linux ターゲット] 、 [ターゲットに接続] 、 [切断] をクリックします。
プログラムで行う場合は次のようにします。
tg.disconnect();
ターゲット コンピューターのファイルとそのストレージを完全に削除するには、次のコマンドを使用します。
tgs.uninstallTarget();
ターゲット コンピューターを削除するには、ターゲット コンピューターを選択し、削除ボタンをクリックします。この操作により、ターゲット コンピューターが [ターゲット ツリー] から削除されますが、ターゲット コンピューターに展開されたアプリケーションとその Docker イメージはストレージに残ります。
プログラムで行う場合は次のようにします。
tgs.removeTarget(<Target Name>);
このアプリケーションを使用すると、複数のターゲット コンピューターに同時に接続できます。
参考
linux.Targets
| addTarget
| connect
| setDeploymentLocation