Alpine Linux

muslとBusyBoxをベースとしたLinuxディストリビューション

Alpine Linux (アルパイン・リナックス) は、muslBusyBoxをベースとしたLinuxディストリビューションである[2]セキュリティ・シンプルさ・リソース効率を重視するパワーユーザー向けに設計されている[3][4][5][6]。Alpine Linuxではgrsecurity/PaXを適用したLinuxカーネルを使用しており、全てのユーザ空間バイナリスタックスマッシング保護英語版 (英語: stack-smashing protection、SSP) 付きの位置独立実行ファイル (PIE) としてコンパイルされている[2]

Alpine Linux
開発者 Alpine Linux Development Team
OSの系統
開発状況 開発中
ソースモデル オープンソース
最新安定版 3.20.3[1] ウィキデータを編集 - 2024年9月6日 (2か月前)
リポジトリ ウィキデータを編集
対象市場
使用できる言語 多言語
パッケージ管理 APK
プラットフォーム
カーネル種別 モノリシックカーネル
ユーザランド BusyBox (オプション: GNU Core Utilities)
既定のUI コマンドラインインタフェース (CLI)
ライセンス フリーソフトウェアライセンス
ウェブサイト www.alpinelinux.org ウィキデータを編集
テンプレートを表示

Alpine LinuxはmuslとBusyBoxを利用して構築されており、従来のLinuxディストリビューションと比較してLXCインストールに必要なストレージ容量が小型化されている。リソース効率が向上しており、起動時間が短縮されている[7]

postmarketOSはAlpine Linuxからフォークしたモバイルオペレーティングシステムである[8]

歴史

編集

Alpine LinuxはLEAF Project英語版からフォークしたプロジェクトである[9]。LEAF Projectでは単一のフロッピーディスクに収まるLinuxディストリビューションの開発を行っていたが、Alpine LinuxではSquidSambaなどのより重いソフトウェアや、セキュリティ機能や新しいカーネルの追加を行いたいと考えていた。最初の目標の1つは、より大規模なシステム用のフレームワークの開発であった。この目標は既に達成されており、現在では主要な目標ではなくなっている。

バージョン履歴

編集
バージョン リリース日[10] サポート期限[11] カーネルバージョン
サポート終了:2.0 2010年8月16日 2012年4月1日
サポート終了:2.1 2010年11月1日 2012年11月1日
サポート終了:2.2 2011年5月3日 2013年5月1日
サポート終了:2.3 2011年11月1日 2013年11月1日
サポート終了:2.4 2012年5月2日 2014年5月1日
サポート終了:2.5 2012年11月7日 2014年11月1日
サポート終了:2.6 2013年5月17日 2015年5月1日
サポート終了:2.7 2013年11月8日 2015年11月1日
サポート終了:3.0 2014年6月4日 2016年5月1日
サポート終了:3.1 2014年12月10日 2016年11月1日
サポート終了:3.2 2015年5月26日 2017年5月1日 3.18.xx
サポート終了:3.3 2016年1月6日 2017年11月1日 4.1.xx
サポート終了:3.4 2016年5月31日 2018年5月1日 4.4.xx
サポート終了:3.5 2016年12月22日 2018年11月1日 4.4.xx
サポート終了:3.6 2017年5月24日 2019年5月1日 4.9.xx
サポート終了:3.7 2017年11月30日 2019年11月1日 4.9.xx
サポート終了:3.8 2018年6月26日 2020年5月1日 4.14.xx
サポート終了:3.9 2019年1月29日 2021年1月1日 4.19.xx
サポート終了:3.10 2019年6月19日 2021年5月1日 4.19.xx
サポート終了:3.11 2019年12月19日 2021年11月1日 5.4.xx
サポート終了:3.12 2020年5月29日 2022年5月1日 5.4.xx
サポート終了:3.13 2021年1月14日 2022年11月1日 5.10.xx
サポート終了:3.14 2021年6月15日 2023年5月1日 5.10.xx
サポート終了:3.15 2021年11月24日 2023年11月1日 5.15.xx
サポート中:3.16 2022年5月23日 2024年6月23日 5.15.xx
サポート中:3.17 2022年11月22日 2024年11月22日 5.15.xx
サポート中:3.18 2023年5月9日 2025年5月9日 6.1.xx
現行バージョン:3.19 2023年12月7日 2025年11月1日 6.6.xx
最新プレビュー版:edge ローリングリリース
凡例
サポート終了
サポート中
現行バージョン
最新プレビュー版
将来のリリース

特徴

編集
  • Alpine Linuxは独自のパッケージ管理システムとしてAPKを採用している。最初の頃はシェルスクリプトによって書かれていたが[12]、現在はC言語によって書き直されている[13]GNOMEFFmpegMozilla Firefoxなどが利用できる[14]
  • Alpine LinuxはRAMディスクオペレーティングシステムとしてインストールすることができる。このときにlbuを利用することにより、変更した設定ファイルバックアップを行うことができる。デフォルトの動作では、/etc以下が変更された場合に、tar.gzアーカイブが作成される[15]
  • 強化されたカーネルがデフォルトのカーネルに含まれているので、悪用や脆弱性の影響を軽減することができる。全てのユーザ空間バイナリがスタックスマッシング保護付きの位置独立実行ファイルとしてコンパイルされるので、バッファオーバーフローの影響を軽減することができる。
  • Alpine LinuxはデフォルトでDMVPNを利用して効率的なメッシュ化VPNが利用可能なパッチを含む唯一のLinuxディストリビューションである。
  • Alpine LinuxはXenの最新版に確実に対応しており、商用ディストリビューションで経験した問題は発生しない。また、KVMにも対応している。
  • Alpine Linuxのベースシステムは4 - 5 MB (カーネルを除く) に収まるように設計されている。コンテナは8 MB以内に収まるようになっており、最小インストールには130 MBが必要となっている[2]。Linuxカーネルはこれよりも遥かに大きく、カーネル 3.18.16では基本的なx86-64カーネルイメージの3.3 MBに加えて、121 MBのカーネルモジュールが含まれている (主にデバイスドライバ)。
  • Alpine Configuration Framework (ACF) はAlpine Linuxデバイスの設定を行うためのアプリケーションである。Debiandebconfと同じような目標を持っている。Luaをベースとした標準的なフレームワークである。
  • Alpine Linuxでは一般的に利用されているGNU Cライブラリではなく、標準CライブラリとしてuClibcを利用していた。uClibcはより軽量だが、GNU Cライブラリとの互換性がないという重大な欠点がある。このことによって、全てのソフトウェアをコンパイルして、uClibcで正常に動作するのかを確認する必要があった。現在では、標準CライブラリはGNU Cライブラリとのバイナリ互換性があるmuslに切り替えられている[16][17]
  • Alpine Linuxではinitとしてシンプルかつ軽量なOpenRCを利用している[18]Arch LinuxCentOS・Debian・openSUSEUbuntuなどのその他のLinuxディストリビューションとは異なり、systemdは利用していない。

脚注

編集
  1. ^ "Alpine 3.17.10, 3.18.9, 3.19.4, 3.20.3 released"; 閲覧日: 2024年9月6日; 出版日: 2024年9月6日.
  2. ^ a b c about”. alpinelinux.org. 2018年10月17日閲覧。
  3. ^ Steven Nunez (2017年7月10日). “Review: Alpine Linux is made for Docker”. 2018年10月17日閲覧。
  4. ^ Marius Nestor (2017年12月4日). “Security-Oriented Alpine Linux 3.7 Has UEFI Support, GRUB Support in Installer”. 2018年10月17日閲覧。
  5. ^ 10 Most Secure Linux Distros For Complete Privacy & Anonymity | 2017 Edition”. Fossbytes (2017年11月8日). 2018年10月17日閲覧。
  6. ^ Katherine Noyes (2016年2月9日). “Is Docker ditching Ubuntu Linux? Confusion reigns”. 2018年10月17日閲覧。
  7. ^ Swapnil Bhartiya (2017年3月28日). “Meet Alpine Linux, Docker’s Distribution of Choice for Containers”. 2018年10月17日閲覧。
  8. ^ postmarketOS”. postmarketos.org. 2018年10月17日閲覧。
  9. ^ Alpine Linux:Glossary”. alpinelinux.org. 2018年10月17日閲覧。
  10. ^ News archive”. alpinelinux.org. 2021年11月25日閲覧。
  11. ^ Alpine release branches”. alpinelinux.org. 2021年11月25日閲覧。
  12. ^ apk-tools”. SourceForge.net. 2018年10月18日閲覧。
  13. ^ apk-tools”. alpinelinux.org. 2018年10月18日閲覧。
  14. ^ Alpine Linux packages”. alpinelinux.org. 2018年10月18日閲覧。
  15. ^ Alpine local backup”. alpinelinux.org. 2018年10月18日閲覧。
  16. ^ Alpine 3.0.0 released”. alpinelinux.org. 2018年10月18日閲覧。
  17. ^ musl FAQ”. musl-libc.org. 2018年10月18日閲覧。
  18. ^ Alpine Linux Init System”. alpinelinux.org. 2018年10月18日閲覧。

関連項目

編集

外部リンク

編集