前回はWindows11のPCにWindows Subsystem for Linux (WSL2)を使ってUbuntu (20.04LTS)をインストールしたことを紹介しました。
今回はこのUbuntuの環境を整備していきたいと思います。
Windows 10にWSL1でDebian GNU/Linuxを導入した事例については下記を参照してみてください。
Ubuntuのアップデート
Ubuntuを終了している場合はWindowsのスタートメニュー内にある「Ubuntu」を選択して、WSL2のUbuntuを開始してください。
Linuxをインストールしたあとはパッケージの状態を最新に更新することをお勧めします。
まず、デフォルトの利用レポジトリを確認しておきましょう。
$ grep ^deb /etc/apt/sources.list deb http://archive.ubuntu.com/ubuntu/ focal main restricted deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted deb http://archive.ubuntu.com/ubuntu/ focal universe deb http://archive.ubuntu.com/ubuntu/ focal-updates universe deb http://archive.ubuntu.com/ubuntu/ focal multiverse deb http://archive.ubuntu.com/ubuntu/ focal-updates multiverse deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse deb http://security.ubuntu.com/ubuntu/ focal-security main restricted deb http://security.ubuntu.com/ubuntu/ focal-security universe deb http://security.ubuntu.com/ubuntu/ focal-security multiverse
デフォルトでは「archive.ubuntu.com」と「security.ubuntu.com」に接続しに行きますが、これらのサーバはイギリスに存在しているようです。
地球を半周しては速度が出ませんので日本のサーバ(jp.archive.ubuntu.com)に替えておきましょう。
security.ubuntu.comについては替えないでおきます。
下記のコマンドを実行すればOKです。
$ sudo sed -i -e 's/http:\/\/archive.ubuntu.com/http:\/\/jp.archive.ubuntu.com/g' /etc/apt/sources.list
ここでパスワードの入力を要求されたら、セットアップ時に設定したパスワードを入力します。
あとはパッケージ一覧のデータベースを更新します。
$ sudo apt-get update Get:1 http://jp.archive.ubuntu.com/ubuntu focal InRelease [265 kB] Get:2 http://jp.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB] Get:3 http://jp.archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB] (中略) Get:48 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 c-n-f Metadata [536 B] Fetched 23.5 MB in 5s (4758 kB/s) Reading package lists... Done
エラーがないことを確認して更新されたパッケージをアップデートします。
$ sudo apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages have been kept back: base-files fwupd fwupd-signed libfwupd2 libfwupdplugin1 libgl1-mesa-dri libglapi-mesa libglx-mesa0 mesa-vulkan-drivers sosreport ubuntu-advantage-tools ubuntu-server The following packages will be upgraded: accountsservice alsa-ucm-conf apparmor apport apt apt-utils bash bcache-tools bind9-dnsutils bind9-host bind9-libs (省略) 239 upgraded, 0 newly installed, 0 to remove and 12 not upgraded. Need to get 120 MB of archives. After this operation, 32.5 MB of additional disk space will be used. Do you want to continue? [Y/n]
239個のパッケージに更新があるようです。問題がなければ「Y」を入力します。
更新されるパッケージ数が多いので時間がかかるかと思ったのですが、取得するサーバを国内にしたのと、WSL2になりディスクI/Oが早くなったので、数分で完了しました。
最後までいったら、もうダウンロードしたパッケージは不要なので削除しておきます。
$ sudo apt-get clean
タイムゾーン
WSL1でDebian GNU/Linuxをインストールしたときには、タイムゾーンが日本ではなかったのですが、WSL2 + Ubuntuでは日本になっているようです。
$ cat /etc/timezone Asia/Tokyo
このためタイムゾーンの修正は不要です。
もしタイムゾーンが日本(Asia/Tokyo)になっていない場合は、
$ sudo dpkg-reconfigure tzdata
を実行して、タイムゾーンを日本(Asia/Tokyo)に変更しておきましょう。
ロケール
デフォルトでは英語ロケールしかサポートしていなくていろいろ困りそうです。
日本語のロケール(ja_JP.UTF-8)用のデータも生成するように設定します。
$ sudo dpkg-reconfigure locales
下記のような画面になったらカーソルキーで「ja_JP.UTF-8」を探し、スペースキーで「*」マークをつけます。
「*」マークをつけたらTABキーで<OK>を選択したらリターンキーを押します。
次にデフォルトのロケールを聞かれますが「None」のままとしておきます。
あとはリターンキーを押せばロケールの選択画面が終了し、日本語のロケールデータが生成されます。
これでLANG環境変数を「ja_JP.UTF-8」にすればコマンド等の出力結果が日本語になります。
$ export LANG=ja_JP.UTF-8
例えばdateコマンドの場合は下記のように曜日が日本語で表示されるようになります。
$ date 2022年 2月 5日 土曜日 00:40:21 JST
問題がなければホームディレクトリの.bashrcに言語の設定を追加しておきましょう。
$ echo export LANG=ja_JP.UTF-8 >> ~/.bashrc
日本語環境の導入
ざっと試すとデフォルトの状態でも日本語のファイルの表示などもできそうでしたが、日本語向けのパッケージを追加しておきましょう。
ここではJapanese Teamsによるパッケージを利用します。
以下のコマンドを実行し、GPG鍵とレポジトリを追加します。
$ wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add - $ wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | sudo apt-key add - $ sudo wget https://www.ubuntulinux.jp/sources.list.d/focal.list -O /etc/apt/sources.list.d/ubuntu-ja.list $ sudo apt update
パッケージ情報の更新に成功したら次のコマンドを実行してインストール済みのパッケージをアップデートします。
$ sudo apt-get upgrade
さらに日本語向けの追加パッケージをインストールします。
$ sudo apt-get install ubuntu-defaults-ja パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の追加パッケージがインストールされます: adwaita-icon-theme at-spi2-core dconf-cli firefox-locale-ja fontconfig fonts-noto-cjk fonts-noto-cjk-extra gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gtk-3.0 gir1.2-ibus-1.0 gir1.2-pango-1.0 gtk-update-icon-cache hicolor-icon-theme humanity-icon-theme ibus ibus-data ibus-gtk ibus-gtk3 ibus-mozc im-config language-pack-gnome-ja language-pack-gnome-ja-base language-pack-ja language-pack-ja-base libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2 libdatrie1 libdouble-conversion3 libegl-mesa0 libegl1 libepoxy0 libevdev2 libgail-common libgail18 libgbm1 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgl1-mesa-dri libglapi-mesa libglx-mesa0 libgraphite2-3 libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libharfbuzz0b libibus-1.0-5 libinput-bin libinput10 libjbig0 libjpeg-turbo8 libjpeg8 liblcms2-2 libllvm12 libmtdev1 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0 libpcre2-16-0 libpixman-1-0 libprotobuf17 libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5svg5 libqt5widgets5 librest-0.7-0 librsvg2-2 librsvg2-common libsoup-gnome2.4-1 libthai-data libthai0 libtiff5 libwacom-bin libwacom-common libwacom2 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwebp6 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-render0 libxcb-shm0 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcursor1 libxkbcommon-x11-0 libxkbcommon0 libzinnia0 mozc-data mozc-server mozc-utils-gui poppler-data python3-ibus-1.0 qt5-gtk-platformtheme qttranslations5-l10n tegaki-zinnia-japanese ubuntu-mono 提案パッケージ: ibus-clutter ibus-doc colord cups-common gvfs liblcms2-utils qt5-image-formats-plugins qtwayland5 librsvg2-bin ibus-qt5 poppler-utils ghostscript fonts-japanese-mincho | fonts-ipafont-mincho fonts-japanese-gothic | fonts-ipafont-gothic fonts-arphic-ukai fonts-arphic-uming fonts-nanum 以下のパッケージが新たにインストールされます: adwaita-icon-theme at-spi2-core dconf-cli firefox-locale-ja fontconfig fonts-noto-cjk fonts-noto-cjk-extra gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gtk-3.0 gir1.2-ibus-1.0 gir1.2-pango-1.0 gtk-update-icon-cache hicolor-icon-theme humanity-icon-theme ibus ibus-data ibus-gtk ibus-gtk3 ibus-mozc im-config language-pack-gnome-ja language-pack-gnome-ja-base language-pack-ja language-pack-ja-base libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2 libdatrie1 libdouble-conversion3 libegl-mesa0 libegl1 libepoxy0 libevdev2 libgail-common libgail18 libgbm1 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgraphite2-3 libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libharfbuzz0b libibus-1.0-5 libinput-bin libinput10 libjbig0 libjpeg-turbo8 libjpeg8 liblcms2-2 libllvm12 libmtdev1 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0 libpcre2-16-0 libpixman-1-0 libprotobuf17 libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5svg5 libqt5widgets5 librest-0.7-0 librsvg2-2 librsvg2-common libsoup-gnome2.4-1 libthai-data libthai0 libtiff5 libwacom-bin libwacom-common libwacom2 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwebp6 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-render0 libxcb-shm0 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcursor1 libxkbcommon-x11-0 libxkbcommon0 libzinnia0 mozc-data mozc-server mozc-utils-gui poppler-data python3-ibus-1.0 qt5-gtk-platformtheme qttranslations5-l10n tegaki-zinnia-japanese ubuntu-defaults-ja ubuntu-mono 以下のパッケージはアップグレードされます: libgl1-mesa-dri libglapi-mesa libglx-mesa0 アップグレード: 3 個、新規インストール: 118 個、削除: 0 個、保留: 9 個。 285 MB のアーカイブを取得する必要があります。 この操作後に追加で 721 MB のディスク容量が消費されます。 続行しますか? [Y/n]
ちょっと不要そうなパッケージも出てきましたが、私は「Y」を入力して言われたとおりにインストールしておきました。
これで日本語関係のパッケージは軒並み入ったようですが、オンラインマニュアルのパッケージが入っていなかったので手動で追加しておきました。
$ sudo apt-get install manpages-ja manpages-ja-dev
これで一通りパッケージはインストールしたので不要なファイルを削除しておきます。
$ sudo apt-get clean
Beep音の消去
細かいことですがデフォルトのままだとしょっちゅうBeep音が鳴って鬱陶しいと思います。
これも消しておきましょう。
$ echo set bell-style none >> .inputrc
これでいったんUbuntuを終了して、再度起動させればBeep音はなくなるはずです。
まとめ
今回はWindows Subsystem for Linux(WSL2) + Ubuntu(20.04LTS)の最低限の環境整備を行いました。
インストール直後はパッケージの更新等がありますが、比較的少ないステップで、日本語の表示等が行えるようにできます。
以前、WSL1でDebianを使うときより楽だったような気がします。
次回はWindows Subsystem for Linuxのターミナル画面を設定します。
コメント