Alpine Linux徹底解説:軽量・高セキュリティなディストリビューションの魅力
Linuxは楽しいものですが、既存のディストリビューションに物足りなさを感じて、何か違うものを求めたくなる瞬間があるかもしれません。しかも、ISOファイルのサイズやメモリ要件は年々増加する傾向にあります。もっと小さなディストリビューションがどこかに存在するはずだと考えたことはないでしょうか。
軽量Linuxディストリビューションをお探しなら、Alpine Linuxがまさに新鮮な山の空気のような存在となってくれるでしょう。
Alpine Linuxとは?
Alpine Linuxは、容量と機能の両面でミニマリズムを追求し、高いセキュリティを目指すLinuxディストリビューションです。デフォルトのインストールメディアはわずか133MB。他のディストリビューションのISOファイルがDVDやUSBメモリを前提としたサイズになっていることを考えると、これは非常に印象的です。AlpineならCD-Rに余裕をもって収まります。
Alpine Linuxは「PIE(Position Independent Executable)」という技術を採用し、プログラムのメモリ上の配置をランダム化しています。これにより、攻撃者がメモリの脆弱性を突いてマシンを乗っ取ることが困難になります。
また、構成面でもミニマルです。BusyBoxスイートを活用し、ほとんどのユーティリティを1つの実行ファイルで提供することで、小さなサイズを実現しています。
Alpineのコンパクトなサイズは、コンテナを運用するユーザー、特にDockerユーザーにとって理想的です。
ダウンロード:Alpine Linux
Alpine Linuxのインストール
Alpine Linuxのインストールは、他のLinuxディストリビューションとほぼ同じ流れです。インストールイメージを入手し、お好みのメディアに書き込んでから、マシンを再起動します。
Alpineのミニマリズムはインストールプロセスにも及びます。起動すると、標準的なLinuxのテキストコンソールが表示されるだけで、グラフィカルなインストーラーはありません。
インストールイメージには複数の種類があり、ダウンロードページから目的に応じて選択できます。
Standardイメージはほとんどのユーザーにおすすめで、よく使われるパッケージが含まれています。Alpineが初めての方はこれを選びましょう。
Extendedイメージは、頻繁にアップデートされないルーターなどの専用デバイス向けのもので、Standardより多くのパッケージを含んでいます。
極限まで最小限のシステムを構築したい場合は、Netbootイメージを選択します。これには起動とネットワーク接続に必要な最低限の要素のみが含まれており、その他のパッケージは自分でダウンロードする必要があります。システムを自分の要件に合わせて細かく調整したい上級者向けの選択肢です。
インストール時には、起動したシステムにrootとしてログインします。メニュー形式の操作画面はなく、すべてのセットアップはコマンドラインで行います。Arch Linuxをインストールした経験があれば、この流れは馴染み深いはずです。
Alpineは手取り足取り導いてくれるタイプではありませんが、インストールを案内するスクリプトが用意されています。中でも重要なのがsetup-alpineです。このスクリプトはキーボードレイアウトやタイムゾーンなどを尋ねながら、ディスクのパーティショニングも支援してくれます。基本的にはデフォルト値を受け入れるだけで進められます。
セットアップの詳細については、公式ドキュメントやWikiを参照してください。ただし、一部の情報は古くなっている可能性がある点に注意が必要です。ドキュメントで推奨されていたパッケージが、実際にはリポジトリに存在しないといったケースもあります。
Alpine Linuxの初期設定
新しくインストールしたAlpineを起動すると、テキストコンソールとシェルだけの素朴な状態です。デフォルトのシステムにカスタマイズを加えて、実用的な環境へと仕上げていきましょう。
一般ユーザーの作成
Alpineをインストールした直後、唯一のユーザーはrootです。常にrootとして作業するのは避けるべきです。セキュリティリスクになるうえ、重要なシステムファイルを誤って破損させてしまう恐れもあります。
新しいユーザーを追加するには、次のコマンドを入力します。
adduser -h /home/username -s /bin/ash username
「username」の部分は、ログインに使いたいユーザー名に置き換えてください。-hオプションはホームディレクトリを指定し、-sオプションはシェルのパスを指定します。ashはBusyBoxのデフォルトシェルであり、Alpine Linuxに標準搭載されているシェルです。別のシェルを使いたい場合は、このオプションを好みのシェルへのパスに変更します。
ユーザーにパスワードを設定するには、passwdコマンドを使用します。
passwd username
パスワードの入力を求められるので、確認のためにもう一度入力します。完了したらrootアカウントからログアウトし、作成した一般ユーザーでログインしましょう。
デフォルトでは、root権限でコマンドを実行する際はsuコマンドを使用します。
su -
-オプションを付けると、rootとして直接ログインした場合と同じログインシェルが起動します。プロンプトでrootパスワードを入力すると、#プロンプトが表示され、rootとして操作している状態になります。管理作業が終わったら、logoutと入力するかCtrl + Dを押してrootセッションを抜け、通常のセッションに戻るのが安全な運用のポイントです。
sudoに慣れている方は、ドキュメントにsudoの設定方法が記載されているので参考にしてください。
パッケージ管理
他のモダンなLinuxディストリビューションと同様に、Alpineにもパッケージマネージャーが備わっています。独自開発の「Alpine Package Keeper(APK)」です。
APKの操作はシンプルです。DebianやUbuntuのAptに慣れている方なら、むしろ簡単に感じるでしょう。偶然なのか設計思想なのかは不明ですが、多くのコマンドがAptと共通しています。
リポジトリ情報を更新するには、次のコマンドを実行します。
apk update
インストール済みパッケージを最新版にアップグレードするには、次のように入力します。
apk upgrade
特定のパッケージ(ここでは例としてVim)をインストールするには、次のコマンドを使います。
apk add vim
パッケージを削除する場合はこちらです。
apk del パッケージ名
削除によって不要になった依存パッケージがある場合、APKは自動的にそれらも削除してくれます。これはAPTとの大きな違いで、APTの場合は同じ結果を得るためにapt autoremoveコマンドを別途実行する必要があります。
デスクトップ環境のセットアップ
サーバー用途ではなくデスクトップとしてAlpineを使うなら、グラフィカル環境を導入したくなるでしょう。幸い、Alpineは主要なウィンドウマネージャーとデスクトップ環境をサポートしています。
Xをセットアップするには、Alpineが提供するsetup-xorg-baseスクリプトを使用します。インストール時と同様に、スクリプトを実行して環境に関するいくつかの質問に答えるだけで、多くの場合は設定が自動的に完了します。
お好みのウィンドウマネージャー、デスクトップ環境、ファイルマネージャーなどは、各自でインストールする必要があります。LightDMのようなディスプレイマネージャーも導入しておくと便利ですが、その場合はOpenRCに自動起動を設定する必要があります。
たとえばLXDMを使用する場合は、次のように設定します。
rc-update add lxdm
rc-service lxdm start
Alpine Linuxはあなたに合っているか?
ありふれたLinuxディストリビューションとは一味違うものを探しているなら、Alpine Linuxは十分に検討する価値があります。特に、仮想化やコンテナ向けの軽量サーバーOSをお探しなら、Alpineは第一候補になるはずです。
インターネット上には数多くの軽量Linuxディストリビューションが存在しますが、Alpine Linuxなら、軽量性・セキュリティ・柔軟性のすべてのニーズを満たしてくれることでしょう。
-
Linuxデスクトップをもっと美しく!厳選XFCEテーマ7選
多くのLinuxディストリビューションでGnomeが事実上の標準デスクトップ環境となっていますが、それが全員のお気に入りというわけではありません。多くのLinuxユーザーにとって、その座はXFCEのものです。かつてほど軽量ではなくなったとはいえ、XFCEは「デスクトップ環境に邪魔をされたくない」と考えるユーザーから今なお高い支持を得ています。ただし、比較的シンプルなデスクトップを選ぶからといって、見た目の美しさを諦める必要はありません。XFCEの外観を一新したいなら、選択肢は豊富にあります。本記事では、特におすすめの7つのテーマをご紹介します。1. ArcXFCEテーマの話をするなら、まずAr
-
Raspberry Piに最適なLinuxディストリビューション5選【用途別に徹底解説】
Raspberry Piは2012年に登場して以来、この小さなコンピュータとその後継機が数え切れないほどのプロジェクトを支えてきました。通常版のUbuntuをRaspberry Piにインストールすることもできますが、特定の用途に特化したLinuxディストリビューションも数多く存在します。この記事では、日常的なコンピューティングから携帯型ミニアーケードの制作まで、あらゆるニーズに応えられる5つのディストリビューションをご紹介します。 1. Raspberry Pi OS(旧Raspbian) これからRaspberry Piを始めるなら、まずはRaspbian(現在の正式名称は「Raspbe