mmdebstrapと追加パッケージ厳選の Ubuntu 22.04 インストール
この 記事(以降は前回と呼びます) で小さなUbuntuのインストール方法を紹介しましたが、追加パッケージを選ぶことで更に小さな Ubuntu を構築します。
環境
必要とする環境は前回と変わりません。
- Ubuntu 22.04 インストールメディア
- インストール対象の外付けストレージ(余裕をもって 1GByte 程度を用意します)
- インターネット環境(mmdebstrapでネットワーク越しにダウンロードするため)
- インストール済み Ubuntu 22.04 本体(mmdebstrapを実行する環境です)
前回のインストール手順と同じ個所
以下については前回の手順と同様です。
- 「パーティション作成 (インストール済み Ubuntu でコマンド実行①)」
- 「mmdebstrap 実行(インストール済み Ubuntu でコマンド実行②)」
- 「細かな設定(インストール済み Ubuntu でコマンド実行③)」の root パスワード設定まで
追加パッケージ(linuxカーネルイメージ)をインストールする手順(変更点)
前回のコマンドライン
root@UbuntuTest:/# apt-get install linux-image-generic
今回のコマンドライン(カーネルの番号指定と netplan および systemd の個別指定)
root@UbuntuTest:/# apt-get install linux-image-6.5.0-21-generic netplan.io systemd-sysv
実行すると以下のログが表示されます。
root@UbuntuTest:/# apt-get install linux-image-6.5.0-21-generic netplan.io systemd-sysv
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
busybox-initramfs cpio dbus dmsetup gettext-base gir1.2-glib-2.0 grub-common
grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common initramfs-tools
initramfs-tools-bin initramfs-tools-core iproute2 klibc-utils kmod libapparmor1
libargon2-1 libatm1 libbpf0 libbrotli1 libbsd0 libcap2-bin libcryptsetup12
libdbus-1-3 libdevmapper1.02.1 libefiboot1 libefivar1 libelf1 libexpat1
libfreetype6 libfuse3-3 libgirepository-1.0-1 libglib2.0-0 libglib2.0-data
libicu70 libip4tc2 libjson-c5 libklibc libkmod2 libmd0 libmnl0 libmpdec3
libnetplan0 libnss-systemd libpam-cap libpam-systemd libpng16-16
libpython3-stdlib libpython3.10-minimal libpython3.10-stdlib libreadline8
libsqlite3-0 libxml2 libxtables12 libyaml-0-2 linux-base
linux-modules-6.5.0-21-generic media-types networkd-dispatcher os-prober python3
python3-dbus python3-gi python3-minimal python3-netifaces python3-yaml python3.10
python3.10-minimal readline-common shared-mime-info systemd systemd-hwe-hwdb
systemd-timesyncd ucf udev xdg-user-dirs zstd
Suggested packages:
libarchive1 default-dbus-session-bus | dbus-session-bus multiboot-doc grub-emu
mtools xorriso desktop-base console-setup bash-completion iproute2-doc fuse3
fdutils linux-doc | linux-hwe-6.5-source-6.5.0 linux-hwe-6.5-tools
linux-headers-6.5.0-21-generic linux-modules-extra-6.5.0-21-generic
network-manager | wpasupplicant openvswitch-switch python3-rich iw iw
| wireless-tools python3-doc python3-tk python3-venv python-dbus-doc
python3.10-venv python3.10-doc binutils binfmt-support readline-doc
systemd-container libfido2-1 libtss2-esys-3.0.2-0 libtss2-mu0 libtss2-rc0
policykit-1
The following NEW packages will be installed:
busybox-initramfs cpio dbus dmsetup gettext-base gir1.2-glib-2.0 grub-common
grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common initramfs-tools
initramfs-tools-bin initramfs-tools-core iproute2 klibc-utils kmod libapparmor1
libargon2-1 libatm1 libbpf0 libbrotli1 libbsd0 libcap2-bin libcryptsetup12
libdbus-1-3 libdevmapper1.02.1 libefiboot1 libefivar1 libelf1 libexpat1
libfreetype6 libfuse3-3 libgirepository-1.0-1 libglib2.0-0 libglib2.0-data
libicu70 libip4tc2 libjson-c5 libklibc libkmod2 libmd0 libmnl0 libmpdec3
libnetplan0 libnss-systemd libpam-cap libpam-systemd libpng16-16
libpython3-stdlib libpython3.10-minimal libpython3.10-stdlib libreadline8
libsqlite3-0 libxml2 libxtables12 libyaml-0-2 linux-base
linux-image-6.5.0-21-generic linux-modules-6.5.0-21-generic media-types
netplan.io networkd-dispatcher os-prober python3 python3-dbus python3-gi
python3-minimal python3-netifaces python3-yaml python3.10 python3.10-minimal
readline-common shared-mime-info systemd systemd-hwe-hwdb systemd-sysv
systemd-timesyncd ucf udev xdg-user-dirs zstd
0 upgraded, 82 newly installed, 0 to remove and 0 not upgraded.
Need to get 75.7 MB of archives.
After this operation, 290 MB of additional disk space will be used.
約 290 MB を消費します。前回はこのサイズが 1685 MB でしたので大幅に追加サイズを少なくできました。
インストール後の全体サイズ
インストール後の全体サイズを計測してみました。
Filesystem Size Used Avail Use% Mounted on
tmpfs 790M 1.2M 789M 1% /run
/dev/sda2 987M 548M 372M 60% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 790M 0 790M 0% /run/user/0
約 600M Byte でルートファイルシステムが構築されています。更にもう少し小さくできればと思っています。