Armbinaに乗り換え

Orangepi謹製のUbuntuはユーザー名がorangepiになってしまい、変更するに結構手間がかかるところがあまり好きではなかったのですが、他のDistributionにするとGPUが使えなくなるので仕方なく使っていました。

ところが最近ArmbianでもGPUを使うようになったので、乗り換えてみます。

 

以下、手順のメモです。

  1. ダウンロードしたイメージファイルをbalenEtherなどで書き込みます
  2. 再起動します。(SDカードから立ち上がります。)
  3. rootのパスワード、デフォルトユーザー名、そのユーザー名のパスワードを聞かれるので入力します
  4. その後タイムゾーンを聞かれますがUCTにし、ロケールは設定なしにします。これはデスクトップ環境になった時のフォルダ名を英語名にしたいからです。
  5. デスクトップが立ち上がるのでログインします。
  6. ターミナルを立ち上げ、sudo apt update と sudo apt upgrade をかけます。
  7. ブラウザを立ち上げ、もう一度armbianのイメージをダウンロードします。
  8. ダウンロードしたフォルダでターミナルを立ち上げてxz形式で圧縮されているものを解答します。
    • xz -dv Armbian_24.2.1_Orangepi5_jammy_legacy_5.10.160_xfce-amazingfated_desktop.img.xz
  9. SSDに解答したイメージを書き込みます。
    • sudo dd bs=1M if=/dev/zero of=/dev/nvme0n1 count=2000 status=progress

    • sudo dd bs=1M if=Orangepi5_1.0.6_ubuntu_jammy_desktop_xfce_linux5.10.110.img of=/dev/nvme0n1 status=progress

  10. シャットダウンしてSDカードを抜き、電源を入れ、上記の3〜6をもう一度行います。
  11. sudo armbian-configでタイムゾーンをtokyoにし、ロケールにja_JP.UTF-8 UTF-8を追加し、armbian-configを終了した後、再起動します。
  12. 立ち上がるとフォルダ名を日本語に変更するか聞かれるので、そのままにしておく指定をします。
  13. ターミナルを立ち上げ、日本語入力ができるようにするため下記を実行します。
    • sudo apt install task-japanese im-config ibus-mozc

  14. スタートメニュー⇒設定⇒キーボードからOADG 109Aを選択

これで最低限日本語入力のできる環境となると思います。

 

ユーザーIDの変更

※警告※

この記事の内容に従ってユーザーIDを変更すると、起動したときに必ずエラーが出るようになってしまいます。原因不明です。したがって、この記事に従ってユーザーIDを変更することはおすすめしません。



個人的にはorangepiというユーザーIDを使い続けるのは気持ち悪いので、次のような手順で変更しました。

orangepiユーザーの設定のままユーザーIDのみ変更するにはusermodコマンドを使うのですが、変更するユーザーのプロセスが一つでも起動していると変更できません。

しかし、orangepiのユーザーで自動ログインする設定になっているため、orangepiユーザーのプロセスが必ず残ってしまいます。

そこで、まずorangepiではなく、rootユーザーで自動ログインするように設定を変更します。これはorangepiのuser manualにかかれています。

orangepi@orangepi5:~$ sudo auto_login_cli.sh root

orangepi@orangepi5:~$ sudo desktop_login.sh root

orangepi@orangepi5:~$ reboot

再起動がかかった後はrootユーザーでログインした状態となります。

 

orangepiユーザーのプロセスは一つも無い状態なので、次のようにorangepiユーザーをmynameユーザーに変更します。

root@orangepi5:~# usermod -l myname orangepi

root@orangepi5:~# groupmod -n myname orangepi

root@orangepi5:~# usermod -d /home/myname -m myname

root@orangepi5:~# chfn -f myname myname

root@orangepi5:~# desktop_login.sh myname

root@orangepi5:~# auto_login_cli.sh myname

root@orangepi5:~# reoobt

再起動がかかった後はmynameユーザーで自動ログインされているはずです。

 

ユーザー名を変更するとhomeディレクトリへのパスが変わるので、アプリケーションごとに個別の設定変更が必要になる可能性があります。

ファイルマネージャーのショートカットがその内の1つで、設定が必要になります。

ユーザーIDの変更

※警告※

この記事の内容に従ってユーザーIDを変更すると、起動したときに必ずエラーが出るようになってしまいます。原因不明です。したがって、この記事に従ってユーザーIDを変更することはおすすめしません。

 

個人的にはorangepiというユーザーIDを使い続けるのは気持ち悪いので、次のような手順で変更しました。

orangepiユーザーの設定のままユーザーIDのみ変更するにはusermodコマンドを使うのですが、変更するユーザーのプロセスが一つでも起動していると変更できません。

しかし、orangepiのユーザーで自動ログインする設定になっているため、orangepiユーザーのプロセスが必ず残ってしまいます。

そこで、まずorangepiではなく、rootユーザーで自動ログインするように設定を変更します。これはorangepiのuser manualにかかれています。

orangepi@orangepi5:~$ sudo auto_login_cli.sh root

orangepi@orangepi5:~$ sudo desktop_login.sh root

orangepi@orangepi5:~$ reboot

再起動がかかった後はrootユーザーでログインした状態となります。

 

orangepiユーザーのプロセスは一つも無い状態なので、次のようにorangepiユーザーをmynameユーザーに変更します。

root@orangepi5:~# usermod -l myname orangepi

root@orangepi5:~# groupmod -n myname orangepi

root@orangepi5:~# usermod -d /home/myname -m myname

root@orangepi5:~# chfn -f myname myname

root@orangepi5:~# desktop_login.sh myname

root@orangepi5:~# auto_login_cli.sh myname

root@orangepi5:~# reoobt

再起動がかかった後はmynameユーザーで自動ログインされているはずです。

モニター解像度の設定

今使っているモニターはWUXGA(1920 x 1200)の解像度ですが、HDMI端子がないのでVGAコネクタの変換アダプタを噛まして使っています。

そのためなのか、orangepiからの出力はFHD(1920 x 1080)となっていて、細い線が微妙に滲んだ感じになります。

そこでWUXGAの解像度を次のようにして追加しました。

まず、WUXGAのパラメータを作ってくれるソフトをインストールします。

orangepi@orangepi5: ~$ sudo apt install -y xcvt

現在の選択できる解像度の設定を確認すると、

orangepi@orangepi5:~$ xrandr

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
HDMI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1920x1080     60.00*+  50.00  
   1280x720      60.00    50.00  
   720x576       50.00  
   720x480       59.94  
DP-1 disconnected (normal left inverted right x axis y axis)

と表示されました。現在の解像度は 1920x1080で、1920x1200の設定は無いことがわかります。そこで1920x1200のパラメータを作ってもらいます。

orangepi@orangepi5:~$ cvt 1920 1200

# 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz
Modeline "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync

"1920x1200〜 の部分をコピーして次のように設定します。

orangepi@orangepi5:~$ xrandr --newmode "1920x1200_60.00" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +vsync

orangepi@orangepi5:~$ xrandr --addmode HDMI-1 1920x1200_60.00

orangepi@orangepi5:~$ xrandr --output HDMI-1 --mode 1920x1200_60.00

最後のコマンドを入力したあと一旦画面が真っ黒になり、再び表示された後はWUXGAの解像度になりました。

もう一度解像度の設定を確認してみます。

orangepi@orangepi5:~$ xrandr

Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 16384 x 16384
HDMI-1 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1920x1080     60.00 +  50.00  
   1280x720      60.00    50.00  
   720x576       50.00  
   720x480       59.94  
   1920x1200_60.00  59.88* 
DP-1 disconnected (normal left inverted right x axis y axis)

追加したモードだけ_60.00がくっついてしまいましたね。--newmodeのところで名前をコピペのままにせず、削ったほうが良かったかもしれません。いずれにせよ、ちゃんと1920x1200の設定に変更できました。

ただ、このままだとPCを再起動すると元に戻ってしまいます。

再起動しても設定した解像度が保たれる方法を検索すると様々なやり方が出てきますが、私は次のように設定しました。*1

orangepi@orangepi5:~$ nano ~/.xprofile

このファイル名は存在しないので、空の状態でエディタが立ち上がりますので、次の3行を入力し、Ctrl+X ⇒ Y ⇒ [Enter] とキーを押すとこのファイルが作成されます。

ウインドウを起動したときにこのファイルが読まれるようです。

xrandr --newmode "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync
xrandr --addmode HDMI-1 1920x1200_60.00
xrandr --output HDMI-1 --mode 1920x1200_60.00

実際に再起動してみると、WUXGAの解像度で表示されるようになりました。

 

 

*1:様々なやり方はほとんど成功しませんでした。。。

画面上部に表示されている時計表示変更

画面上部のパネルに表示されている日付と時計の表示ですが、並び順がいまいちなので変更します。

時計表示されているところを右クリック ⇒ プロパティ

表示形式 ⇒ カスタムに変更し

%Y/%m/%d(%a) %H:%M

と入力して閉じると

こんな感じになります。

ヘルプボタンをクリックすると表示形式一覧に飛びます。

日本語入力ができるまで

パスワードの変更が終わったら次は日本語入力ができるように設定していきます。*1

 

まずは左上のApplication ⇒ Settings ⇒ OrangePi config を開きます。

パスワードを聞かれるので、入力するとメニューが表示されます。

Personalを選択してEnterキーを押すとPersonal settingsのメニューが表示されます。

すべてのキャプチャーを貼ると長くなるので、ここから文字だけにします。

Timezone ⇒ Asia ⇒ Tokyo で最初上海に設定されていたタイムゾーンが東京になります。

Locales ⇒ (下にスクロールしていき) ja_JP.UTF-8 UTF-8 のところに来たらスペースキーを押して[*]マークをつけEnterキーを押す ⇒ (上にスクロールしていき)ja_JP.UTF-8 を選択した状態でEnterキーを押す

初期状態ではen_US.UTF-8 UTF-8にも[*]がついていますが、これを消してはいけません。これを消すと何故か日本語入力できなくなります。

しばらく待つと最初のメニュー画面に戻り、(en)に設定されていた言語設定が(ja)になります

Keyboard ⇒ Generic 105-key PC ⇒ Japanese ⇒ Japanese - Japanese (OADG 109A) ⇒ キーボード配置のデフォルト ⇒ <OK> ⇒ コンポーズキーなし ⇒ <No> となるよう入力します。 OADGを選択したあとはEnterキーを押していくだけです。

最初のメニューに戻って来るとKeyboardの設定が(jp)に変わっています。

ここTabキーを押して< Back >にハイライトを移してEnterキー、もう一度Tabキーを押して< Exit >にハイライトを移してEnterキーを押します。

ここまできたらApplication ⇒ Log Out ⇒ Restart で再起動します。

 

再起動するとフォルダ名を日本語に変更するか聞かれます。これは好みで決めればよいですが、ここではフォルダ名は英語のままにするるため、Keep Old Namesのボタンをクリックします。

毎回聞かれないようにDon't ask me this againに事前にチェックを入れておきます。

 

画面左上のボタンがApplicationからアプリケーションに変わっています。

アプリケーション ⇒ 設定 ⇒ 言語サポート で表示されるダイアログの言語のインストールと削除ボタンをクリックします。

言語のリストが表示されるので、日本語だけチェックを入れて、他の言語は全て外し、Applyボタンをクリックします。

パスワードを聞かれるので入力し、しばらく待つとEnglishと日本語が残った状態が表示されます。ダイアログを閉じてもう一度再起動します。

 

再起動すると右上の時刻表示の隣にキーボードアイコンが表示されます。

アイコンを右クリック ⇒ 設定 ⇒ 入力メソッド で表示されるダイアログで

日本語 - Mozcのみになるように追加・削除をします。

 

これで日本語入力ができるようになります。

念の為再起動し、アプリケーション ⇒ アクセサリ ⇒ Mousepad でテキストエディタを開き、半角/全角キーを押して日本語が入力できることを確認します。

 

 

*1:確実に日本語入力ができる設定手順を見つけるまでにかなり苦労しました。aptコマンドでパッケージを追加してみたり、fcitxやfcitx5の設定方法を探し回ったり、orangepi-configを繰り返してみたり。。。en-US.UTF-8を消すことが元凶でした。結局余計なことをしなければ良いだけだったのですがね。

パスワード変更

最初に立ち上げたときのパスワードはrootもorangepiもどちらも「orangepi」になっています。デフォルトのままではパスワードなしに等しいので、まずはパスワードを変更します。

$ sudo passwd root

と入力すると、orangepiのパスワードを聞かれるので orangepi と入力します。

続けてこんどはrootの新しいパスワードを聞かれるので、類推されにくいパスワードを決めて入力します。確認のためもう一度聞かれるので、正しく入力できればrootのパスワードの変更完了です。

$ su -

と入力するとrootのパスワードを聞かれます。先程変更したパスワードを入力し、rootとしてログインできれば、問題なく変更ができたことがわかります。

# exit

と入力しrootからログアウトしたら、こんどはorangepiユーザーのパスワードを変更します。

$ passwd

と入力すると、現在のパスワード、新しいパスワード、確認のためもう一度新しいパスワードを聞かれるので、順次入力していけば変更完了です。