Linux
 Computer >> コンピューター >  >> システム >> Linux

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

Chrome OS 69以降、対応しているChromebookではLinuxアプリのインストールと利用が可能になりました。これは「Crostini(クロスティーニ)」と呼ばれるプロジェクトによるもので、LXDコンテナ内でLinuxオペレーティングシステムを動かす仕組みです。仮想マシンに似たこの環境により、サンドボックス化された安全な環境内でLinuxアプリを実行できます。

Crostiniでデフォルトとして採用されているのはDebianという安定性に定評のあるディストリビューションです。しかし、Debianのソフトウェアが古いことに不満がある方は、Ubuntuに切り替えることも可能です。本記事では、その具体的な手順を詳しく解説します。

作業前の注意点

この切り替え作業ではターミナルを開き、多くのコマンドを入力する必要があります。コマンドライン操作に慣れていない方には難易度が高いため、注意して進めてください。それでは、Chrome OSでUbuntuコンテナを実行する方法を見ていきましょう。

1. Croshシェルを起動し、Terminaを開始する

まずChromebookを起動します。この時点ではLinuxアプリは開かないでください。Chromeブラウザを開いたら、Ctrl + Alt + T を押してCroshシェルを起動します。

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

以下のコマンドでターミナルを開始します。

vmc start termina

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

2. デフォルトのDebianコンテナのラベルを変更する

デフォルトのDebianコンテナには「penguin」というラベルが付けられており、Chrome OSのファイルシステムとの連携に使われています。Debianを置き換えるため、まずこの「penguin」ラベルをDebianから外します。

lxc stop penguin --force
lxc rename penguin debian

3. 新しいUbuntuコンテナを作成する

次に、「penguin」という名前で新しいUbuntuコンテナを作成します。

lxc launch ubuntu:18.04 penguin

インターネットからイメージをダウンロードするため、この処理にはある程度時間がかかります。

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

4. 新しいコンテナにログインする

作成が完了したら、以下のコマンドで新しいコンテナに入ります。

lxc exec penguin -- bash

5. システムを更新する

システムの更新とアップグレードを行います。

apt update
apt upgrade

6. Crostiniパッケージのリポジトリを追加する

Crostiniパッケージをネイティブファイルシステムと連携させるため、cros-packagesリポジトリを追加します。以下のコマンドを入力してください。

echo "deb https://storage.googleapis.com/cros-packages stretch main" > /etc/apt/sources.list.d/cros.list
if [ -f /dev/.cros_milestone ]; then sudo sed -i "s?packages?packages/$(cat /dev/.cros_milestone)?" /etc/apt/sources.list.d/cros.list; fi
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1397BC53640DB551
apt update

続いて依存関係をインストールします。

apt install binutils

7. Crostiniパッケージをインストールする

リポジトリを追加しても、Crostiniパッケージを直接インストールすることはできません。ここで回避策を使います。

まず、以下のコマンドでCrostiniパッケージをダウンロードします。

apt download cros-ui-config

警告メッセージが表示されますが、無視して構いません。

ChromeOSでUbuntuコンテナを実行する方法【Crostiniの切り替え手順を解説】

ダウンロードしたパッケージを展開します。

ar x cros-ui-config_0.12_all.deb data.tar.gz
gunzip data.tar.gz
tar f data.tar --delete ./etc/gtk-3.0/settings.ini
gzip data.tar
ar r cros-ui-config_0.12_all.deb data.tar.gz
rm -rf data.tar.gz

debファイルからCrostiniパッケージをインストールします。

apt install cros-guest-tools ./cros-ui-config_0.12_all.deb

8. ダウンロードしたパッケージを削除する

最後に、ダウンロードしたパッケージを削除します。

rm cros-ui-config_0.12_all.deb

9. アイコンテーマをインストールする

adwaita-icon-theme-fullパッケージをインストールします。このパッケージがないと、GUIのLinuxアプリでカーソルが極端に小さく表示されることがあります。

apt install adwaita-icon-theme-full

10. ユーザー名をGmailアカウントに変更する

コンテナのデフォルトユーザーは「ubuntu」になっています。これを削除し、自分のGmailユーザー名に置き換えましょう。Chromebookへのサインインに使用しているGmailアカウントのユーザー名を使うことが重要です。これを行わないと、ファイルマネージャーからLinuxファイルへアクセスできなくなります。

killall -u ubuntu
groupmod -n gmail-username ubuntu
usermod -md /home/gmail-username -l gmail-username ubuntu
usermod -aG users gmail-username
loginctl enable-linger gmail-username
sed -i 's/ubuntu/gmail-username/' /etc/sudoers.d/90-cloud-init-users

注意:「gmail-username」はご自身のGmailユーザー名に置き換えてください。

11. コンテナをシャットダウンし、再起動する

以上の作業が完了したら、コンテナをシャットダウンします。

shutdown -h now

その後、Chromebookを再起動してください。再起動後、ランチャーからターミナルアプリを起動します。起動に失敗した場合は、もう一度試してみてください。

12. システムを再度更新する

改めてシステムの更新を試みます。

sudo apt update

もし以下のようなエラーメッセージが表示された場合は、

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7638D0442B90D010 NO_PUBKEY 04EE7237B7D453EC

Crostiniパッケージの秘密鍵がシステムに見つからないことが原因です。以下のコマンドで鍵を追加しましょう。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010 8B48AD6246925553

これでapt updateが問題なく実行できるようになります。

これでapt installコマンドを使ってLinuxアプリをインストールできるようになりました。例えば、最新版のFirefoxをインストールするには以下のコマンドを使用します。

sudo apt install firefox

Debianコンテナの削除方法

Debianコンテナが不要になった場合は、ストレージ容量を空けるために削除できます。

1. Chromeブラウザで Ctrl + Alt + T を押してCroshシェルを起動します。

2. ターミナルを開始します。

vmc start termina

3. Debianコンテナを削除します。

lxc delete debian

まとめ

安定性とセキュリティを重視するなら、デフォルトのDebianコンテナを使い続けるのが最善の選択です。一方、より柔軟性と豊富なソフトウェア選択肢を求めるなら、Ubuntuへの切り替えがおすすめです。また、利用できるLXDイメージは多数あるため、Ubuntu以外を選ぶことも可能です。Arch Linuxがお好みなら、そちらも利用できます。ぜひ自分に合ったディストリビューションを見つけてみてください。

  1. Raspberry PiでUbuntu 18.04/18.10を動かす方法|RaspEXを使った導入ガイド

    Raspberry PiとUbuntuは相性が抜群に思えますが、実はこのシングルボードコンピュータ向けの公式標準Ubuntuイメージは存在しません。Raspberry Pi財団が推奨するOSの一覧にはUbuntu MATEとUbuntu Coreが掲載されていますが、どちらも現行の標準版Ubuntuではありません。Ubuntu MATEは優れたディストリビューションですが、入手できるのは16.04のみ。一方、Ubuntu CoreはIoT向けに設計されており、まったく異なるツール群を採用しています。 現行バージョンのUbuntu(ここでは18.04または18.10)を使いたいなら、別の道を探

  2. Windows 10 / 11 に Ubuntu をインストールする3つの方法【WSL・USB起動・仮想マシン】

    Windows 10 や Windows 11 のパソコンで Ubuntu Linux を使ってみたいと思ったことはありませんか?この記事では、その手順を初心者の方にもわかりやすく解説します。 実は、Windows 上で Ubuntu をインストールして動かす方法はひとつだけではありません。本記事では、代表的な3つのアプローチをご紹介します。① Windows Subsystem for Linux(WSL)を使って Linux コマンドを実行する方法、② USB メモリから直接起動する方法、そして③ 仮想マシン(VM)上で動かす方法です。 それぞれの特徴と手順を順番に見ていきましょう。 方法