Ubuntu 24.04LTSの初期設定 on WSL2

動画版_

注:このページで説明されていることのうち、動画の方が理解しやすいものだけ用意しています。

Ubuntuのログインパスワードの設定_

初回起動時は下記の図のようなメッセージがでて、初期設定が行われる(私の環境だと5~6分かかった)。

初期設定が終わるとログイン名が求められる。このUbuntu上で使うログイン名を入力する(半角英数字、空白不可)。特に思いつかなければ自分の名前(First name)か名字(Family name)のローマ字 or 英語表記にするとよい。たとえば、私は後藤祐一(ごとう ゆういち)なので、gotoh や yuichiをユーザ名として使っている。

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: gotoh

続いて、ログインパスワードを入力する。Windowsのログインパスワードと異なるもので良い。なお、パスワードを入力している際に画面上には何も表示されないが、キー入力は受け付けているので気にせずパスワードを入力し、Enterキーを押すこと。

New password:

上で設定したものと同じパスワードを入力する。入力したパスワードが1度目に入力したものと異なると、再度パスワードの入力が求められる。

Retype new password:

1度目と2度目のパスワードが一致すると「passwd: password updated successfully」というメッセージが表示される。

「Installation successful!」と表示されインストール終了となる。以下、この開いているウィンドウのことを「ターミナル」と呼ぶこととする。

トラブルシューティング:Ubuntuの起動時のアカウントがrootの場合_

上述のユーザアカウントの作成がうまくいかなかった場合、UbuntuのアイコンからUbuntuを起動したときのアカウントがrootになってしまう場合がある。今のアカウントが誰なのかを調べる場合はターミナルで以下のコマンドを実行する。rootと表示された場合は、rootユーザになっている。

% whoami
root

rootユーザの場合は以下の手順で一般ユーザアカウントを作成する。

rootでなければ、以下へ進む。

フォントおよびターミナルサイズの変更_

WSL上にUbuntuをインストールした場合に、Ubuntuのアイコンをクリックして起動するウィンドウのことをターミナルと呼ぶことにする。余談ながら、このターミナルはWindowsターミナルというソフトウェアである。

ターミナルでフォントやフォントサイズを変更する際の手順は次のとおりである。まず、Ubuntuを起動する。次に起動したウィンドウの上部(タブが展開するスペース)で右クリックし、「設定」をクリックする。

開いた「設定」タブにおいて「プロファイル」の「規定値」をクリックする。次に「外観」をクリックする。

ここでフォントやフォントサイズの変更をする。変更したら「保存」を押して、変更を保存する。

以下はこの手順を動画で説明したものである。

Ubuntu上での操作の留意点_

CUIとGUI_

Ubuntuを始めとするLinuxは 主にCUI (Character User Interface) で操作を行う。CUIは命令(コマンド)を文字列の形で入力し操作する方法である。一方で、WindowsやMacOSのようにアイコンをマウスでクリックすることで操作する方法をGUI(Graphic User Interface)という。

WindowsアプリとUbuntuターミナル間でのコピー&ペースト_

以下の操作では基本的にCUIで操作を行う。このとき、コマンドを打ち間違えるとうまく動かない。そこで、このページのコマンド例をコピー&ペーストして実行することをお勧めする。

しかし、Ubuntu側のターミナルの種類によって、コピー&ペーストのやり方が異なる。自分の環境に合わせてコピー&ペーストすること。

以下では、UbuntuのターミナルがPowershellの場合を記載する。2024年6月1日現在、Ubuntuのターミナルから起動するとUbuntuのターミナルがPowershellとなる。現在のターミナルがPowershellかどうかは以下のように設定を開くと確認できる。

Ubuntuインストール直後のターミナルの場合_

ターミナルのタブの部分でマウスの右クリックをする。

そして、プロパティを選ぶ。

開いたウィンドウの上部(赤枠で囲っている部分)でPowershellかどうか確認できる。

Ubuntu 24.04のアイコンからUbuntuを起動したときのターミナルの場合_

ターミナルのタブの部分でマウスの右クリックをする。そして、設定を選ぶ。

設定が新たなタブで開くので、以下のような画面ならばPowershellである。

Powershellでのコピー&ペースト方法_

WindowsからUbuntuターミナルへのコピー&ペースト

  • Windows上でコピーしたい文字列を選択し(マウスで選んで反転させる)、そして、Ctrl+c(あるいはマウスの右クリックで)「コピー」する。
  • Ubuntu上で張り付けたい場所にマウスカーソルを移動させ、マウスを右クリックしてペーストする。

UbuntuターミナルからWindowsへのコピー&ペースト

  • Ubuntu上でコピーしたい文字列を選択する(マウスで選んで反転させる)
  • マウスを右クリックする(これでコピー状態になる)。
  • Windows上で張り付けたい場所にマウスカーソルを移動させ、Ctrl+v(あるいはマウスの右クリックで)「貼り付け」する。

本ページでのLinux/Unixコマンドの表記方法_

本ページではターミナル上で入力する命令(Linux/Unixコマンド、あるいはコマンドという)をパーセント記号(%)の後ろに表記する。たとえば以下のように表記する。

% Linux/Unixコマンド

Linux/Unixコマンドの一つであるlsを表記する場合は以下のようにあらわす。これはターミナル上でlsという文字列を入力し、その後Enterキーを押すという意味である。

% ls 

また、必要に応じてLinux/Unixコマンドを実行した際の出力結果も例として示す。出力結果は冒頭にパーセント記号がついていない文字列である。以下の表記例は ls -1 というコマンドを実行した結果としてgotohという文字列が表示されたことを表す。

% ls -1
gotoh

これとは別に、次で説明するroot権限でコマンドを実行する場合には冒頭にパーセント記号の代わりにシャープ記号(#)を用いて表記する。

管理者(root)権限とsudoコマンド_

WindowsやMacOSと同様にLinuxでも新しいソフトウェアをインストールする際には管理者権限(以後、root権限と呼ぶ)が必要となる。

Ubuntuでは初期設定でroot権限を持つユーザ(rootやsuper userという)が作成されていない。このため、root権限で操作を行う場合には、一般ユーザ(インストール時に設定したユーザ)の状態で、実行したいコマンドの前に「sudo」という特別なコマンドつけて実行する。「sudo」をつけてコマンドを実行する際には一般ユーザのパスワードの入力が要求される。

たとえば、lsというコマンドをroot権限で実行するときには以下のように入力する(これ以降のコマンド入力例ではコマンドの前に「%」や「#」がついている。%や#は入力しないこと。%がついているコマンドは一般ユーザ権限での実行を表し、#がついているコマンドはroot権限での実行を示す。)以下のようにパスワードの入力が求められるのでパスワードを入力する。

% sudo ls
[sudo] **** のパスワード:

初期設定_

/etc/apt/sources.list.d/ubuntu.sources のリポジトリを日本国内に変更する (修正:2024/6/14 23:00)_

お詫び(2024/6/14 23:00) /etc/apt/source.list 関連の記述は Ubuntu 22.04の際の設定の話であり、 Ubuntu 24.04からは/etc/apt/sources.list.d/ubuntu.sources に変更となりました。 本項には 22.04の話と24.04の話が混ざっており、混乱させてしまい申し訳ございません。

Ubuntuではソフトウェアをパッケージという名前で管理している(プログラム&設定ファイルをひとまとめにしてパッケージと呼んでいる)。パッケージは /etc/apt/source.list /etc/apt/sources.list.d/ubuntu.sources に記載されているリポジトリで提供されている。標準設定では海外のリポジトリにアクセスするようになっている。海外のリポジトリにアクセスすると時間がかかるため、日本国内のリポジトリにアクセスするように変更する。

以下のコマンドを実行する。コピー&ペースト推奨!

% cd /etc/apt/sources.list.d

% ls 
(ubuntu.sourcesというファイルがあるかどうかを確かめる)

% sudo sed -i.bak -e "s/http:\/\/archive\.ubuntu\.com/http:\/\/jp\.archive\.ubuntu\.com/g" ubuntu.sources
(上のコマンドの意味は ubuntu.sources中の「http://archive.ubuntu.com」という文字列を「http://jp.archive.ubuntu.com」という文字列に置き換える。
  元のファイルは ubuntu.sources.bak という名前でバックアップをとっている)

% ls 
(ubuntu.sourcesとubuntu.sources.bakいうファイルがあるかどうかを確かめる)

% diff ubuntu.sources.bak ubuntu.sources
(二つのファイルの差分を表示するコマンド。 
「<」記号が1つ目のファイルの記述、「>」の記号が2つ目のファイルの該当部分
上のコマンドの実行結果は以下のようになる。archive.ubuntu.comがjp.archive.ubuntu.comに置き換えられていればよい。)
45c45
< URIs: http://archive.ubuntu.com/ubuntu
---
> URIs: http://jp.archive.ubuntu.com/ubuntu

これでパッケージをダウンロードするリポジトリの変更ができた。

インストールされているソフトウェアの更新(apt update, apt upgrade)_

次にインストールされているソフトウェアを最新版に更新する。これは、WindowsでいうWindows Updateと同じような処理である。Windows Subsystem for Linux上にインストールしたUbuntuでは適宜、手動で行う必要がある。

以下のコマンドを定期的に(1週間に1度くらい)実行する必要がある。では、以下を実行する。インターネット環境やお使いのパソコンの性能によってしばらく時間がかかる。

% sudo apt update
% sudo apt upgrade -y

アップグレード途中で選択肢が表示された場合は、基本的に「Yes」を選択し、続ければよい(慣れてきたら検討すること)。

updateやupgradeがうまくいかない場合は以下を参照のこと。

インストールしたいソフトウェア(パッケージ)の検索_

Ubuntuに新しいソフトウェアを追加したい場合(たとえばプログラミング言語Pythonとか)は、まずはパッケージが存在するかどうかを調べる必要がある。

パッケージの検索は以下のコマンドで行う。

% sudo apt search 検索したい文字列

たとえば、日本語設定用パッケージlanguage-pack-ja が存在するか調べたい場合は、以下のように入力する。該当するパッケージが存在する場合には以下のように検索結果が表示される。

% sudo apt search language-pack-ja
Sorting... Done
Full Text Search... Done
language-pack-ja/noble 1:24.04+20240419 all
  translation updates for language Japanese

language-pack-ja-base/noble 1:24.04+20240419 all
  translations for language Japanese

ソフトウェアのインストール(apt install)_

パッケージのインストールは以下の書式になっている。

% sudo apt install パッケージ名, ...

たとえば、language-pack-ja をインストールする場合は以下のようにする。自動的に関連するソフトウェアもインストールしてくれる。

% sudo apt install -y language-pack-ja
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  language-pack-ja-base
The following NEW packages will be installed:
  language-pack-ja language-pack-ja-base
0 upgraded, 2 newly installed, 0 to remove and 5 not upgraded.
Need to get 1571 kB of archives.
After this operation, 7304 kB of additional disk space will be used.
Get:1 http://jp.archive.ubuntu.com/ubuntu noble/main amd64 language-pack-ja-base all 1:24.04+20240419 [1569 kB]
Get:2 http://jp.archive.ubuntu.com/ubuntu noble/main amd64 language-pack-ja all 1:24.04+20240419 [1896 B]
Fetched 1571 kB in 2s (702 kB/s)
Selecting previously unselected package language-pack-ja-base.
(Reading database ... 40692 files and directories currently installed.)
Preparing to unpack .../language-pack-ja-base_1%3a24.04+20240419_all.deb ...
Unpacking language-pack-ja-base (1:24.04+20240419) ...
Selecting previously unselected package language-pack-ja.
Preparing to unpack .../language-pack-ja_1%3a24.04+20240419_all.deb ...
Unpacking language-pack-ja (1:24.04+20240419) ...
Setting up language-pack-ja (1:24.04+20240419) ...
Setting up language-pack-ja-base (1:24.04+20240419) ...
Generating locales (this might take a while)...
  ja_JP.UTF-8... done
Generation complete.

今回はオプション「-y」をつけているが、このオプションを外すと対話的にインストールが進む。対話的にインストールする場合は、あるパッケージが必要なその他のパッケージが合わせて表示される。その後、インストールする場合にはYのキーを、インストールを止める場合はNのキーを押す。

インストール済みのソフトウェアを調べる_

whichコマンドで使いたいLinuxコマンドがあるかどうかを確認できる。

% which 調べたいLinuxコマンド

たとえば、データ分析や自然言語処理でよく使われているプログラミング言語 Python バージョン3 がインストールされているか調べたいときには以下のコマンドを実行する。

% which python3
/usr/bin/python3

コマンドがインストールされている場合はインストールされているディレクトリ(Windowsでいうフォルダ)が表示される。

インストールされている場合は何も表示されない。たとえば、which hogehogeを実行してみる。

% which hogehoge

日本語環境の設定_

Ubuntuをインストールした直後は英語環境になっている。たとえば、日付を表示するコマンドdateコマンドを打つと英語メッセージが表示される。(%表示はコマンドを表すためのもの。入力しなくてよい)

% date
Sat Jun  1 11:33:08 JST 2024

日本語環境に設定を変更する。The modern stone age.:【Windows10/WSL Ubuntu】日本語のロケールとタイムゾーンの変更を参考に設定をする。

language-pack-jaがインストールされているとする。インストールしていない場合は以下のコマンドでインストールする。

% sudo apt install -y language-pack-ja

まず、メッセージなどを日本語にする。以下のコマンドを実行する。

% sudo update-locale LANG=ja_JP.UTF-8

一度、Ubuntuを終了する。

% exit

Ubuntuを再起動し、日本語環境になっているかを確認する。

% echo $LANG
ja_JP.UTF-8

日付表示が日本語表記になっていることを確認する。

%  date
2024年  6月  1日 土曜日 11:34:04 JST

タイムゾーンを日本(JST)にする_

標準時間帯を変更する。日本標準時(JST)はグリニッジ標準時から9時間進んでいる(UTC+9)。

% sudo dpkg-reconfigure tzdata

上の画面で方向キーを使って「アジア」を選択する。Tabキーを押して「了解」を選択し、Enterキーを押す。

上の画面で上の画面で方向キーを使って「東京」を選択する。Tabキーを押して「了解」を選択し、Enterキーを押す。うまくいくと以下のメッセージがターミナルに表示される。

$  sudo dpkg-reconfigure tzdata
[sudo] gotoh のパスワード:

Current default time zone: 'Asia/Tokyo'
Local time is now:      Sat Jun  1 11:34:35 JST 2024.
Universal Time is now:  Sat Jun  1 02:34:35 UTC 2024.

dateコマンドの結果の末尾がJSTになっていたらタイムゾーンの設定の変更が成功である。

Manの日本語化_

オンラインマニュアル(Linuxのコマンドのマニュアル)を表示するコマンドmanのマニュアルを日本語化する。

現状は英語マニュアルになっている。確認する。ページ送りはEnterキーかスペースキー。manの終了はqキーを押す。

% man ls

日本語マニュアルをインストールする。

% sudo apt install -y manpages-ja manpages-ja-dev

確認する。ページ送りはEnterキーかスペースキー。manの終了はqキーを押す。

% man ls

X Windowの起動(Windows側からLinuxソフトウェアを別画面表示する)_

X Windows System_

詳しくはWikipedia参照→ja.Wikipedia: X Window System

現時点ではざっくりと「UbuntuにインストールしたGUIアプリケーションを別ウィンドウで開くための仕組み」と覚えておけばよい。

2024年6月1日現在、最新のWSLにしていれば、追加の手順なしで、Windows 10および11でも、X Window Systemを利用することができる。

テキストエディタ geditのインストール_

テキストエディタ(エディタ)とは、文字列のみで構成されるファイル(テキストファイル)を作成するためのソフトウェアである。Windowsでは「メモ帳」というソフトが標準のテキストエディタである。

プログラムや設定ファイルを記載する場合には、テキストエディタを用いる。Unix/Linuxで有名なエディタとしてemacs や vim (vi)があるが、ここでは別ウィンドウで起動するソフトウェアの例としてgeditをインストールする。

以下のコマンドでインストールできる。

% sudo apt install gedit
% which gedit
/usr/bin/gedit (このようにパスが表示されていればインストールは成功している、何も表示されなければ失敗している)

GUI用の日本語フォントもインストールする。

% sudo apt install -y fonts-ipafont

Ubuntuのターミナル上で以下のクリックする。

% gedit &
 MESA: error: ZINK: failed to choose pdev
glx: failed to create drisw screen

上記のようなエラーがでるが、しばらくまっていると起動する。 以下のようなウィンドウが起動したら成功。ただし、この状態では日本語入力はできない。

起動を確認したらgeditを終了する。

X11アプリのインストール_

以下を実行する。

% sudo apt install -y x11-apps

マウスがどこにあるかを目線で示してくれるアプリ xeyesを起動してみる。

% xeyes &

以下の画像はgeditとxeyesが起動している様子。

UbuntuとWindowsでファイルをやりとりする方法_

ファイルシステム_

LinuxやWindowsなどのオペレーティングシステム(OS)がOS上のファイルやディレクトリ/フォルダを管理する仕組みのことをファイルシステムという。各OSごとにファイルシステムが異なるため、基本的には他のOSのファイルシステムで管理されているファイルやディレクトリ/フォルダにはアクセスできない。このため、異なるOSで使っていた記録媒体(HDDやSSDなど)を別のOSにつないでもそのままではファイルは読み込めない。

Windows subsystem for Linux(WSL)では、Windows側からWSL上にインストールしたLinuxのファイルにアクセスする仕組み、WSL上にインストールしたLinuxからWindows側のファイルにアクセスする仕組みが用意されている。

Windows側からWSL上のファイルを閲覧する_

Windows側からWSL上のファイルを閲覧する場合は、Windows 10のバージョンが1903より新しくないといけない。(参考:Windows 10のバージョンの確認方法

まず、WSL上のUbuntuを起動しておくこと。

スタートメニューから「エクスプローラー」を開く。

エクスプローラーにおいて、パス(path, コンピュータ上でどこにファイルやフォルダ/ディレクトリがあるのかを表す表記)の欄に「\\wsl$」(バックスラッシュ2つ、半角小文字でwsl、最後に半角文字でドルマーク)を入力し、Enterキーを押す。

するとWSL上にインストールしているLinuxの一覧が表示される。今回はUbuntu-18.04が表示されている。このアイコンをクリックするとUbuntu上のファイルやディレクトリにアクセスできる。

WSL上のLinux側からWindowsのファイルを閲覧する_

WSL上のLinux(今回の例ではUbuntu)からWindows側のファイルを閲覧するときには、Linux側はWindowsのドライブ名を利用して閲覧できるようにしている。ドライブ名とはWindows上で記録媒体の塊ごとに割り振られている識別子のことである。

たとえば、私の環境では下のようにCドライブとDドライブという2つのドライブがある。Windowsではどの環境においてもCドライブは必ず存在するが、Dドライブ移行は使用しているパソコンの環境によって異なっている。

Ubuntuを起動し、ターミナル(UbuntuターミナルでもGnomeターミナルでもどちらでもよい)上で以下のコマンドを実行する。このdfコマンドはLinux上の記憶領域(ハードディスクドライブ、メインメモリなど)の占有率とその記憶領域がLinux上でどういうディレクトリ名で認識されているのかを表示するコマンドである。

% df -h
Filesystem      Size  Used Avail Use% Mounted on
none            3.9G  4.0K  3.9G   1% /mnt/wsl
drivers         454G  152G  302G  34% /usr/lib/wsl/drivers
none            3.9G     0  3.9G   0% /usr/lib/wsl/lib
/dev/sdc       1007G  1.7G  954G   1% /
none            3.9G   96K  3.9G   1% /mnt/wslg
rootfs          3.9G  1.9M  3.9G   1% /init
none            3.9G  4.0K  3.9G   1% /run
none            3.9G     0  3.9G   0% /run/lock
none            3.9G     0  3.9G   0% /run/shm
none            3.9G     0  3.9G   0% /run/user
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
none            3.9G  244K  3.9G   1% /mnt/wslg/versions.txt
none            3.9G  244K  3.9G   1% /mnt/wslg/doc
drvfs           454G  152G  302G  34% /mnt/c
drvfs           449G  402G   48G  90% /mnt/d

上記のdfコマンドの出力結果のうち「/mnt/c」と「/mnt/d」という表記があるがこれがWindows上のCドライブおよびDドライブに該当する。試しにCドライブの中身を確認してみる。

% cd /mnt/c
% ls

lsやcp, mvコマンドを用いてファイルのコピーや移動を行うことができる。

注意:Windowsの「ドキュメント」「デスクトップ」「ダウンロード」へのアクセス_

Windowsの「ドキュメント」「デスクトップ」「ダウンロード」というフォルダは、基本的にCドライブの下の「ユーザ」フォルダの下にある個人ユーザフォルダの下にある。このため、Linux側からアクセスするときには正しくパスを入力する必要がある。

Windows側でパスを確認する場合は、エクスプローラーのパス欄をクリックすると表示される。たとえばエクスプローラーで「ダウンロード」フォルダに移動してみる。

この「ダウンロード」フォルダのパスはエクスプローラーのパス欄をクリックすると表示される「C:\Users\gotoh\Downloads」である。基本的には「C:\Users\Windowsのユーザ名\Downloads」というパスになる。

この「ダウンロード」フォルダにLinux側からアクセスする場合は以下のパスになる。

% ls /mnt/c/Users/gotoh/Downloads/

おわりに_

これでUbuntuの基本設定が終わった。

戻る_