PowerVS IBM i 日記(38): PowerVS IBM i で日本語コンソールを使う

# PowerVS IBM i で日本語コンソールが使えるようになっていました。

「コンソールのオープン」を選びます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/682670ce-9965-71c8-4ddf-03cb25ac39f3.png)

「コンソール言語」を選べるようになっています。今回は「e1399」を選びました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/50be7e16-b9d1-e072-a869-1e47d3a04e26.png)

言語を確認し「コンソールのオープン」をクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/bbdd6862-be42-c33f-7dad-8db0ce03417a.png)

起動してきたコンソールに QSECOFR でサインオンし、パスワードを変更、ライセンス条項の受け入れを行った後、コンソールの DEVD を確認します。

```
DSPDEVD DSP01
```
タイプが「3179」で日本語コンソールになっていませんね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/9ec0b953-fe3a-fbfc-64be-ec85c46263b8.png)

このようなプログラムを作成します。
コンソールをオフにして日本語コンソールとして作り直し、オンにします。

```
MONMSG     MSGID(CPF0000)     
DLYJOB     DLY(30)                           
VRYCFG     CFGOBJ(DSP01) CFGTYPE(*DEV) STATUS(*OFF)   
DLYJOB     DLY(30) 
DLTDEVD    DEVD(DSP01)
CRTDEVDSP  DEVD(DSP01) DEVCLS(*LCL) TYPE(5555) +
             MODEL(F01) PORT(0) SWTSET(0) +
             CTL(CTL01) KBDTYPE(JPB) IGCFEAT(2424J0)                                                                      
VRYCFG     CFGOBJ(DSP01) CFGTYPE(*DEV) STATUS(*ON)    
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/f6ee9618-6d03-5145-25d1-4c3dce66bf35.png)




作成したプログラムを SBMJOB します。

```
SBMJOB CMD(CALL PGM(YASLIB/RSTDSP01))
```

一度目の DLYJOB の間(今回の例では 30 秒間)にコンソールからサインオフします。
(DSP01 にサインオンしている場合は、DSP01 を *OFF に変更できないので)

サインオン画面が現れたらコンソールの DEVD を確認します。

```
DSPDEVD DSP01
```

日本語コンソールとして作成されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/707ce89f-9aab-9463-7806-18020999b5eb.png)

今回は、すべての作業がコンソールで完結するように SBMJOB で作業を行いましたが、SSH トンネルを張って、コンソール以外の対話型端末から作業をしてもかまいません。
また、そちらの方がリカバリーが効くので安全でしょう。

## コンソールを 2次言語 2930 環境に切り替える。

IBM 提供のイメージには、2930 日本語が導入されています。

コンソールで日本語が使えるか確認してみます。

```
CHGJOB CCSID(1399)
CHGSYSLIBL LIB(QSYS2930)
```

メインメニューを F3 でリセットすると、コンソールに日本語が表示されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/9fd54adb-cb0f-f74d-3e8f-dfefc6687f18.png)


## システム全体を2次言語 2930 環境に切り替える。

QCCSID を 1399 にします。
本当は QLANGID など他のシステム値も変更すべきなのですが、テストのための最低限の項目として QCCSID だけを変更します。

```
CHGSYSVAL SYSVAL(QCCSID) VALUE(1399)
```

QSYSLIB に QSYS2930 を追加します。

```
WRKSYSVAL SYSVAL(QSYSLIBL) 
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/330c2ac2-1b9b-e68c-f652-40c4009ea48e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/0ea96e62-8d5c-f8d4-55aa-b63d7929a085.png)

制御サブシステムのサインオン画面を日本語のものに変更します。
今回はテストのため、QBASE のままコンソールのサインオン画面も日本語にしましたが、実際に利用する場合は、QCTL と QINTER に分離し、コンソールのQCTLは英語のサインオン画面のまま、通常の対話型の QINTER のサインオン画面だけを日本語にするという


```
CHGSBSD SBSD(QBASE) SGNDSPF(QSYS2930/QDSIGNON2)  
```

再起動します。

```
PWRDWNSYS OPTION(*IMMED) RESTART(*YES) 
```

コンソールにサインオン画面が日本語になりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/ccf3d439-87aa-d6d1-510b-486bc1e7b8ba.png)

サインオンするとメインメニューが日本語で表示されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/402a60e0-e46f-cf42-a79e-9358367fa0c5.png)

## 重要!!! コンソールは、安全のために英語モードで起動できるようにしておくか代替機能を用意しておくこと

今回はテストのために雑な単純な方法でのコンソールの日本語化を試しました。
しかし、ポータルから「037 英語」のコンソールを選び、そのせいでコンソールの DEVD が英語用になってしまうかもしれません。
そうすると、今回のように QSYSLIBL のレベルで日本語化してしまうと、コンソールからサインオンできなくなってしまいます。

実運用環境では、下記の手法をとるべきでしょう。

* 制御サブシステムをQCTLにし、QINTER と分割する。
* QCTL は英語モードで起動するようにし、QINTER のみを日本語モードにする(QSYS2930 は QSYSLIBL に追加するのではなく、SBSD QINTER の追加する)
* SSHD や TELNET の自動起動を設定し、コンソールからログインできない場合でも、QINTER から作業できるようにしておく。 

## おまけ。DBCS 入力機能

コンソールには DBCS 入力機能があるようです。
ボタンをクリックすると入力欄が現れます。
そこでカナ漢字変換をして、実際の 5250 に転送する作業エリアのようですが IME の起動方法が分かりませんでした。
このタイプの IME はサーバー側のものを使うので、IBM Cloud のコンソールインフラで利用可能になっていない場合利用できません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/615880d3-8588-e27d-0b86-e851a7b80ebc.png)

---
2021/10/29 作成

---
当日記のIndexは[こちら](https://qiita.com/6onoda/items/f146c78c0c1bbe905a42)です。

---
許可の無い転載を禁じます。
この記事は筆者の個人的な責任で無保証で提供しています。
当記事に関してIBMやビジネスパートナーに問い合わせることは、固くお断りします。