2022-02-03

Fedora Linux で Distrobox を使ってみた

Fedora Linux は Red Hat 社が支援するコミュニティ Fedora Project で開発されているディストリビューションで、最新の技術を積極的に取り込むことで知られています。また Fedora Linux の開発成果が、後にリリースされる Red Hat Enterprise Linux, RHEL に取り込まれています。Fedora Linux は、おおむね春と秋の年二回の頻度で新しい版がリリースされています。

今回のテーマ

Fedora Magazine の記事にあった Distrobox [1][2] について、Fedora Toolbox [3] との違いに興味を持ち、試してみました。

本記事では下記のバージョンの Fedora Linux を使って説明を進めます。

Fedora Linux 35 x86_64

Distrobox とは

参考サイト [1] によると Distrobox は、コンテナに公式ディストリビューションの OCI イメージを使用することで、ホスト側とコンテナ側の両方でディストリビューションとの幅広い互換性を維持することを目的としているとあります。されに主要なディストリビューションをすべてサポートし、サポートおよびテストされたコンテナイメージの精選(キュレート)されたテーブルを維持していると説明されています。

Distrobox のインストール

参考サイト [1] によると github から直接ダウンロードしてインストールする方法と、Fedora Copr のレポジトリを利用する方法が紹介されていますが、ここでは Copr のレポジトリを有効にして rpm パッケージをインストールすることにします。

[bitwalk@fedora-pc ~]$ sudo dnf copr enable alciregi/distrobox
Enabling a Copr repository. Please note that this repository is not part
of the main distribution, and quality may vary.

The Fedora Project does not exercise any power over the contents of
this repository beyond the rules outlined in the Copr FAQ at
<https://docs.pagure.org/copr.copr/user_documentation.html#what-i-can-build-in-copr>,
and packages are not held to any quality or security level.

Please do not file bug reports about these packages in Fedora
Bugzilla. In case of problems, contact the owner of this repository.

Do you really want to enable copr.fedorainfracloud.org/alciregi/distrobox? [y/N]: y
リポジトリが正常に有効化されました。
[bitwalk@fedora-pc ~]$ sudo dnf install distrobox
Copr repo for distrobox owned by alciregi       2.4 kB/s | 1.5 kB     00:00    
依存関係が解決しました。
================================================================================
 パッケージ        Arch           バージョン              リポジトリー    サイズ
================================================================================
インストール:
 distrobox         noarch         1.2.11-4.fc35           updates          40 k

トランザクションの概要
================================================================================
インストール  1 パッケージ

ダウンロードサイズの合計: 40 k
インストール後のサイズ: 122 k
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
distrobox-1.2.11-4.fc35.noarch.rpm              311 kB/s |  40 kB     00:00    
--------------------------------------------------------------------------------
合計                                             45 kB/s |  40 kB     00:00     
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  準備             :                                                        1/1 
  インストール中   : distrobox-1.2.11-4.fc35.noarch                         1/1 
  検証             : distrobox-1.2.11-4.fc35.noarch                         1/1 

インストール済み:
  distrobox-1.2.11-4.fc35.noarch                                                

完了しました!
[bitwalk@fedora-pc ~]$ 

Distrobox の使い方

最初に Distrobox を使うときには、OS イメージがまだありません。OS イメージをインストール(プル)するには distrobox-create コマンドを使います。何も引数を指定しないと、Fedora Linux 35 がダウンロードされます。

[bitwalk@fedora-pc ~]$ distrobox-create
Image not found.
Do you want to pull the image now? [y/N]: y
Trying to pull registry.fedoraproject.org/fedora-toolbox:35...
Getting image source signatures
Copying blob 76dc685b05ee done  
Copying blob cb18b2a53204 done  
Copying config 40b181c70b done  
Writing manifest to image destination
Storing signatures
40b181c70b7342032df0b13c16beaf18a3ea7f73617858923c3972a02139d6e8
ae6198de0a2cce118c422ae7d952f7e9cb6b5eaa29dee1ed139a48ece54ba202
Distrobox 'fedora-toolbox-35' successfully created.
To enter, run:
	distrobox-enter --name fedora-toolbox-35
[bitwalk@fedora-pc ~]$ distrobox-enter --name fedora-toolbox-35
Starting container fedora-toolbox-35
run this command to follow along:
	podman logs -f fedora-toolbox-35
.
done!
[bitwalk@fedora-toolbox-35 ~]$ df -Th
Filesystem                               Type      Size  Used Avail Use% Mounted on
overlay                                  overlay   476G  114G  362G  24% /
tmpfs                                    tmpfs     6.9G   11M  6.9G   1% /tmp
devtmpfs                                 devtmpfs  4.0M     0  4.0M   0% /dev
tmpfs                                    tmpfs     6.9G  103M  6.8G   2% /dev/shm
/dev/mapper/fedora_desktop--c80ethb-root xfs       476G  114G  362G  24% /run/host
tmpfs                                    tmpfs     6.9G   11M  6.9G   1% /run/host/tmp
devtmpfs                                 devtmpfs  4.0M     0  4.0M   0% /run/host/dev
tmpfs                                    tmpfs     6.9G  103M  6.8G   2% /run/host/dev/shm
tmpfs                                    tmpfs     2.8G  1.9M  2.8G   1% /run/host/run
tmpfs                                    tmpfs     1.4G  200K  1.4G   1% /run/user/1000
/dev/nvme0n1p2                           xfs      1014M  326M  689M  33% /run/host/boot
/dev/nvme0n1p1                           vfat      599M  6.1M  593M   2% /run/host/boot/efi
tmpfs                                    tmpfs     6.9G  103M  6.8G   2% /dev/shm
/dev/mapper/fedora_desktop--c80ethb-root xfs       476G  114G  362G  24% /mnt
[bitwalk@fedora-toolbox-35 ~]$ 

Distrobox の Fedora Linux から抜けるには exit をタイプします。

[bitwalk@fedora-toolbox-35 ~]$ exit
logout
[bitwalk@fedora-pc ~]$ 

Fedora Linux 以外のディストロも試してみたいと思い、Dockerhub にある Amazon Linux のイメージをインストール(プル)してみました。

[bitwalk@fedora-pc ~]$ distrobox-create --name aws --image amazonlinux:latest
Image not found.
Do you want to pull the image now? [y/N]: y
✔ docker.io/library/amazonlinux:latest
Trying to pull docker.io/library/amazonlinux:latest...
Getting image source signatures
Copying blob 3a461b3ae562 done  
Copying config 30156a0e4f done  
Writing manifest to image destination
Storing signatures
30156a0e4f040d255f30a8bf0b28540fce965398fe1c13ab29a7292e411dfde7
c89032c632a11cb4b69ee4b5f6c03fc083418873b1835d8ebfe1ada36fcc94be
Distrobox 'aws' successfully created.
To enter, run:
	distrobox-enter --name aws
[bitwalk@fedora-pc ~]$ distrobox-enter --name aws
Starting container aws
run this command to follow along:
	podman logs -f aws
...................
done!
bash: __vte_prompt_command: command not found
[bitwalk@aws ~]$ df -Th
df: '/run/host/run/user/1000/doc': Operation not permitted
df: '/run/user/1000/doc': Operation not permitted
Filesystem                               Type      Size  Used Avail Use% Mounted on
overlay                                  overlay   476G  115G  362G  25% /
tmpfs                                    tmpfs     6.9G   11M  6.9G   1% /tmp
devtmpfs                                 devtmpfs  4.0M     0  4.0M   0% /dev
tmpfs                                    tmpfs     6.9G   91M  6.8G   2% /dev/shm
/dev/mapper/fedora_desktop--c80ethb-root xfs       476G  115G  362G  25% /run/host
tmpfs                                    tmpfs     1.4G  244K  1.4G   1% /etc/hostname
tmpfs                                    tmpfs     2.8G  1.9M  2.8G   1% /run/host/run
/dev/nvme0n1p2                           xfs      1014M  326M  689M  33% /run/host/boot
/dev/nvme0n1p1                           vfat      599M  6.1M  593M   2% /run/host/boot/efi
tmpfs                                    tmpfs     1.4G  244K  1.4G   1% /run/user/1000
/dev/mapper/fedora_desktop--c80ethb-root xfs       476G  115G  362G  25% /mnt
bash: __vte_prompt_command: command not found
[bitwalk@aws ~]$ 

特定のコマンドが無いとかの警告が出たり、日本語のフォントが表示されないとかの不具合がありますが、イメージを持ってこれることを確認できました。

まとめ

まだ使い始めたばかりですが、Fedora Toolbox ではうまくいかなかった他のディストリビューションのイメージの読み込みが Distrobox では簡単にできるので、用途によっては便利なツールです。これを Fedora Silverblue 上で使ってみたいので、テスト機に Silverblue の環境を用意して、もう少し使ってからまとめ直します。

参考サイト

  1. Run Distrobox on Fedora Linux - Fedora Magazine [2021-12-29]
  2. 89luca89/distrobox: Use any linux distribution inside your terminal.
  3. Toolbox :: Fedora Docs
  4. bitWalk's: Fedora Silverblue と Toolbox [2020-11-03]
  5. linux - bash: __vte_prompt_command: command not found - Stack Overflow [2014-03-09]

 

ブログランキング・にほんブログ村へ bitWalk's - にほんブログ村 にほんブログ村 IT技術ブログ Linuxへ
にほんブログ村
このエントリーをはてなブックマークに追加

0 件のコメント: