PowerVS IBM i 日記(39): PowerVS IBM i 1次言語の 2962 日本語に再挑戦

# PowerVS IBM i 1次言語の 2962 日本語に再挑戦

昨年「[PowerVS IBM i 日記(10): 一次言語を 2962 日本語にする (DST で日本語が化けるけど)](https://qiita.com/6onoda/items/55d0531a37c14a214fc9)」で、1次言語を 2962 日本語にすることに挑戦しました。
この時は、コンソールが日本語対応していなかったので、1次言語の変更には成功したものの、実用には問題がある状態でした。

先日「[PowerVS IBM i 日記(38): PowerVS IBM i で日本語コンソールを使う](https://qiita.com/6onoda/items/6827257a9d7bf571d66f)」で投稿したように、コンソールが日本語に対応したので、1次言語の 2962 日本語化に再挑戦しました。

## 基本方針

システム全体を、単純に 2962 日本語で稼働するようにしてもいいのですが、ポータルからコンソールを「037 英語」に設定してしまい、それが構成に反映されてしまうとか、何かの拍子にコンソールが英語端末で構成されてしまうかも知れません。
そんな時でもコンソールの利用ができるように、QCTL だけは 2次言語 2938 英語の下に稼働させるようにしたいと思います。

## 導入メディア を用意する

「[Entitled Systems Support](https://www.ibm.com/servers/eserver/ess/index.wss)」にログインします。

「無料・試用」リンクに進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/de36d4ad-678e-cc25-b4c4-8de60513550a.png)

### 2962 日本語メディアの入手

1次言語としての 2962 日本語メディアを用意します。

2962 は「グループ 3 アジア・パシフィック」に含まれています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/7913c5ff-f126-dfd6-b9be-298b16097e25.png)

USB 導入は行わないので、上の二つでいいでしょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/3fd67b67-78fe-e055-4d23-1c099eaa24dc.png)

以後、画面に従って「グループ 3 アジア・パシフィック」をダウンロードします。

### 2938 DBCS 英語(大文字) の2次言語を入手

QCTL 用の 2938 DBCS 英語(大文字)も入手します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/57c49cff-ab08-417e-a328-3cdbe3d0c47a.png)

「5938」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/61444767-1ad0-ac19-d758-23800af31f35.png)


以後、ガイドに従って2次言語 2938 DBCS英語をダウンロードします。

## コンソールを「930 日本語カタカナ」にする

今回は 1次言語を5026 日本語にしようと思います。
それに合わせてコンソールを「930 日本語カタカナ」に設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/d6057a38-f394-6fe9-69c5-ac0d20b90ffa.png)

英小文字が半角カナに化けています。今は 2924 英語なので当然ですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/a33a6bb5-c36b-95d6-d67b-cc664736c78d.png)

コンソールでも「Ctrl+F3」の代替表示が使えます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/bbeed103-749a-7118-7da9-91fb1a501542.png)


## SSH トンネル上の 5250 でアクセスできるようにする

「[PowerVS IBM i 日記(30): PowerVS IBM i 初期設定まとめ － ssh 鍵認証と日本語環境](https://qiita.com/6onoda/items/0f8ae5d58b6c64c0bb42)」に従い、SSH トンネル上の 5250 でアクセスできるようにします。
ここでは、QINTER を2次言語 2930 の下で動くようにしています。今回もそうしたので、後から外すステップが必要になりました。

## TELNET で接続しコンソールタイプを日本語に変更する。

今回は TELNET で接続できるようになっているので TELNET 端末から接続し DSP01 を作りなおします。
「[PowerVS IBM i 日記(38): PowerVS IBM i で日本語コンソールを使う](https://qiita.com/6onoda/items/6827257a9d7bf571d66f)」のように、バッチで強引に変更する必要がないので、安心して作業できますね。

```
VRYCFG CFGOBJ(DSP01) CFGTYPE(*DEV) STATUS(*OFF) 
DLTDEVD DEVD(DSP01)
CRTDEVDSP DEVD(DSP01) DEVCLS(*LCL) TYPE(5555) MODEL(F01) PORT(0) SWTSET(0) CTL(CTL01) KBDTYPE(JKB) IGCFEAT(2424J0 68FE)
VRYCFG CFGOBJ(DSP01) CFGTYPE(*DEV) STATUS(*ON) 
```

DSP01 のタイプが 5555 になっています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/56a5ba32-0edb-4b89-ce36-432ef48d3ed9.png)

コンソールからログインして、QSYS2930 をSYSLIBL に追加し、F3 で日本語画面になることを確認します。

```
 CHGSYSLIBL LIB(QSYS2930)
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/129e8c2a-dc3c-d79b-a830-839457af9712.png)

## 二次言語 2938 を導入し、QCTL に設定する

何かの拍子にコンソールか 5555 DBCS から 英語端末になった時でもコンソールからのログインができるように、QCTL を強制的に 2次言語 2938 英語(大文字)で動くように構成しておきます。

「[PowerVS IBM i 日記(8): 2962 日本語を二次言語として導入する](https://qiita.com/6onoda/items/62d2d4fbb2de09442a91)」と同様の方法で2次言語 2938 を導入します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/f6d8406a-6cc8-812e-b7d6-3520891a5d09.png)

導入されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/8a6f4c0f-934a-3164-bd26-37e610ae6554.png)

コンソールが 2次言語 2938 で動くように設定します。

```
CHGSBSD SBSD(QCTL) SGNDSPF(QSYS2938/QDSIGNON2) SYSLIBLE(QSYS2938)
```

コンソールでサインオンします。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/cac2ffd5-9626-7eb1-7a50-cf0d396b916f.png)

サインオン画面では、まだ英小文字が使われていますが、これは QCTL が再起動していないためです。
システムを再起動すれば、2938 の大文字だけのサインオン画面になります。 

サインオン後は 2938 環境なので、すべて英大文字で表示されます。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/a3b07647-5100-417d-5915-b3ad5fb96b47.png)

```
DSPLIBL
```

QSYS2938 がライブラリーリストの先頭にあるのが確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/31c6a897-b88a-f387-771d-755b7ce9b8ff.png)

## 1次言語の変更

やることは「[PowerVS IBM i 日記(10): 一次言語を 2962 日本語にする (DST で日本語が化けるけど)](https://qiita.com/6onoda/items/55d0531a37c14a214fc9)」と同じです。
今回、違うのは、コンソールが日本語になっている事です。

イメージカタログに、2962 日本語が含まれる グループ3 のメディア・イメージをセットします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/c26aab86-fd28-983e-9d56-9efd5bdab4cf.png)

起動モードを「B モード - 手動」にセットします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/604451da-5a35-d474-08f9-229e20e63afb.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/ef06bf9b-70f7-180d-50d8-495b2c5266ab.png)

再起動します。

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

一次言語の変更手順は[こちら](https://www.ibm.com/docs/ja/i/7.4?topic=partition-changing-primary-language)にあります。

起動してきました。
表示に英小文字で表示されるので「Ctrl+F3」で代替表示に切り替えるのがいいでしょう。

「2 (オペレーティング・システムの導入) 」を選びます。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/43eea262-0c6d-7e86-de47-1afd383870b7.png)

今回はイメージカタログから導入するので「3 (仮想装置 - 事前選択されたイメージ・カタログ) 」を選びます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/dfdfaddd-3d85-1836-332e-188fb10d3006.png)

確認のために「Enter」を押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/8a674ede-423b-357d-8e39-9d4a8141cec0.png)

もともとの一次言語の「2924」が表示されました。
今回は「2962 日本語」に変更したいので「2962」で上書きします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/6687ed52-0056-1839-9482-3a9b8e94c38a.png)

素晴らしい。日本語が文字化けせずに、表示されました。
[前回](https://qiita.com/6onoda/items/55d0531a37c14a214fc9)とは違い、コンソールが日本語になっているので、文字化けがなく安心して作業できます。

確認のために「Enter」を押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/2d4c904e-5382-4187-25ec-c88a0e1a0cd4.png)

IPL が進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/52152ac3-c6da-0176-37ec-84c46d67b812.png)

「2(導入オプションの変更)」を選びます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/0a02f036-6a64-3a85-3a9d-df28d4d306d9.png)

今回は導入用のメディアをセットしているので「3 (現行のメディア・セットから言語オブジェクトだけを復元する)」を選びます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/2ca1abd5-760b-6f00-d7ad-cdd26ab93c83.png)

導入が進行します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/0244d0eb-7bea-1ab2-cf3a-52138cebe7b8.png)

せっかく、QCTL を 2938 で動くようにしたのに、QCONSOLE では日本語で表示されますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/c35173de-070e-6020-453a-708c67a6eb3d.png)

サイノン後、ENTER で進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/d008b016-1971-a229-7675-ad7cb03890ae.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/e12c263e-130c-ed35-1f07-16f1df808568.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/1c833778-cf9a-1ed4-eee1-c97c80cb8b32.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/e765e7ec-a121-5fb5-b1e6-369a653ae78f.png)

1次言語が何になっているか確認します。

```
GO LICPGM
```

「20. 導入済み２次言語の表示」を選びます。
「2962 日本語」が1次言語になっています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/4947fd1d-9c22-8e2a-5436-8dc0da74f94b.png)


QCTL は構成したと通り 2次言語 2938 英語(大文字)で動いています。

```
DSPSBSD SBSD(QCTL) 
```

「1. 操作属性 」

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/b49fa43d-a7d3-ad16-9799-7803bee34b6c.png)


QINTER は 2次言語 2930 日本語を構成していました。

```
DSPSBSD SBSD(QINTER) 
```

「1. 操作属性 」

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/fb1ce607-6369-5743-5df0-af3466fca193.png)

QINTER の 2次言語を外します。

```
CHGSBSD SBSD(QINTER) SYSLIBLE(*NONE) 
```

ブートモードを「B-ノーマル」に変更します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/3db981d0-631b-5ec8-16dc-dfa8abdf4e2e.png)


再起動します。

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

IPL が進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/32341582-04ea-4c48-767c-6c813b5907b8.png)

コンソールは記述通り 2938 で起動しました。すべて 英大文字で表示されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/aa885441-3f47-a34d-7315-49733e4a5412.png)

sshd が自動開始していませんでした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/c14fbe5d-9764-49a9-0d1b-f89304fc922b.png)

確認すると言語変更の影響でシステム値 QCCSID が 65535 に変更されていました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/1f1171a8-d7e7-a603-96a5-71c9a09e2510.png)

CCSID 5026 の環境では sshd は起動しません。また、2962 環境でのCCSID 65535の場合 デフォルトCCSID は 5026 のため、そのままでは sshd は実行できません。

sshd の実行環境だけ、CCSID 5035 や 1399 で稼働させる方法もありますが、今回は、QCCSID を 1399 にして再起動しましょう。

```
CHGSYSVAL SYSVAL(QCCSID) VALUE(1399)
CHGSYSVAL SYSVAL(QLOCALE) VALUE('/QSYS.LIB/JA_JP_1399.LOCALE')
PWRDWNSYS OPTION(*IMMED) RESTART(*YES) CONFIRM(*NO) 
```

再起動の結果 sshd も起動してきました。
sshトンネル経由でTELNET 5250 を接続します。
日本語のサインオン画面が出ます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/8137d704-6c8d-1181-355d-6fb068e6f749.png)


日本語が表示されながら2次言語がSYSYLIBLに追加されていません。
このことからも、1次言語が日本語化されたいるのが分かります。

```
DSPLIBL
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184930/a87392dc-3ed6-370f-8284-3a342f6f509b.png)


## 補足

今回、一番大変だったのは、メディアのイメージを IBM i に転送するところでした。
scp での転送を何度か試みたのですが、途中で切断されたり、一見正常に転送されてもイメージが壊れたりしていました。
パブリックの ssh 接続は管理用だから仕方がないのかもしれません。

最終的には、いったん IBM Cloud Object Storage に Aspera で転送し「[PowerVS IBM i 日記(16): Cloud Storage Solutions for i で IBM i から IBM Cloud Object Storage にアクセスする](https://qiita.com/6onoda/items/5b738f1d705876d5666c)」で述べた方法で取り込みました。

---

2021/10/31 作成

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

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