3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Alpine Linux をインストールする

Posted at

Alpine Linux とは?

Alpine Linux はイメージサイズが小さく、シンプルでセキュアのディストリビューションです。DockerのベースOSとしても有名です。

OSのライブラリにglibcではなくmuslを使用しているため、Pythonの実行環境として使うと実行速度が極端に落ちるケースがあります。muslをリンクして再コンパイルを行えば回避できるものの、運用の中でそれを行うのはなかなか骨が折れる作業です。

しかしながら、開発環境やWebアプリケーションの実行環境ではなく、NAS、NTP、メールサーバーなど用途を限定してやれば、非常に使いやすくサーバーとしてのポテンシャルが高いと感じています。

前提

VirtualBoxにAlpineLinuxをインストールするために、VirtualBoxのセットアップを完了しておいてください。ネットワークはNAT構成とします。VirtualBoxでのNAT構成はVirtualBoxでNAT構成を作るを参照してください。

AlpineLinuxは3.15系を使用します。

インストール

Boot

AlpineLinuxのisoファイルからBootします。VirtualBoxではなく実機で行う場合はCD-Rに焼くなり、USBに入れるなりしてBootしてください

Login

ユーザー「root」でログインしてください。パスワードなしです。

Welcome to Alpine Linux 3.15
Kernel 5.15.32-0-virt on an x86_64 (/dev/tty1)

localhost login: root

セットアップ

setup-alpineコマンドを実行します。

# setup-alpine

キーボードレイアウトの設定

ここでは日本語キーボードを選択します。

Avaiable keyboard layouts:
af   az   br   cm   dz   fo   gr   il   it   kz   lv   ml   nl   pt   si   tm   uz
...
Select keyboard layout: [none] jp
Available variants: jp-OADG109A jp-dvorak jp-kana jp-kana86 jp-mac jp
Select variant (or 'abort'): jp

ホスト名の設定

ここでは hoge.example.com を設定します。

Enter system hostname (fully qualified form, e.g. 'foo.example.org') [localhost] hoge.example.com

ネットワークの設定

VirtualBox上でのNAT構成なので、NICが2枚ついています。eth0は固定アドレスで192.168.56.10(Gatewayなし)、eth1はDHCPに設定します。

Available interfaces are: eth0 eth1.
Enter '?' for help on bridges, bonding and vlans.
Which one do you want to initialize? (or '?' or 'done') [eth0] eth0
Ip address for eth0? (or 'dhcp', 'none', '?') [dhcp] 192.168.56.10
Netmask? [255.255.255.0] 255.255.255.0
Gateway? (or 'none') [none] none
Configuration for eth0:
  type=static
  address=192.168.56.10
  netmask=255.255.255.0
  gateway=
Available interfaces are: eth1
Enter '?' for help on bridges, bonding and vlans.
Which one do you want to initialize? (or '?' or 'done') [eth1] eth1
Ip address for eth0? (or 'dhcp', 'none', '?') [dhcp] dhcp
Do you want to do ant manual network configuration? (y/n) [n] n

rootのパスワードを設定

rootユーザーのパスワードを設定します。パスワードなので入力しても画面には反映されません。

Changing password for root
New Password: 
Retype password: 

タイムゾーンの設定

ここではAsia/Tokyoを設定します。

Which timezone are you in? ('?' for list) [UTC] Asia/Tokyo
### プロキシの設定
ここではnoneを設定します。
HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none]

NTPクライアントの選択

ここではChronyを設定します。

Which NTP client to run? ('budybox', 'openntpd', 'chrony', or 'none') [chrony] chrony

ミラーサーバーの選択

ここでは1を選択します。

r) Add random from the above list
f) Detect and add fastest mirror from abeve list
e) Edit /etc/apk/repositories with text editor

Enter mirror number (1-72 or URL to add (or r/f/e/done) [1]

SSHサーバーの選択

ここでは OpenSSH を選択します。

Which SSH server? ('openssh', 'dropbear' or 'none') [openssh] openssh

インストール先ストレージの選択

ここではsdaを選択する。複数のストレージがある場合はsdb, sdcなどと表示される。

Available disks are:
  sda   (8.6GB ATA  VBOX HARDDISK)
Which disk(s) would you like to use? (or '? for help or 'none') [none] sda
How would you like to use it? ('sys', 'data', 'crypt', 'lvm' or '?' for help) [?] sys
WARNING: Erase the above disk(s) and continue? (y/n) [n] y

再起動

インストールメディアの抜いてから再起動します。

Installation is complete. Please reboot.
hoge:~# reboot

GUIのインストール (オプション)

AlpineLinuxはインストール直後はCUI環境ですが、当然GUIも用意されています。ここではxfceをインストールをしてみましょう。

リポジトリの追加

リポジトリの設定ファイルを書き換えてcommunityパッケージのリポジトリを有効にしましょう。

# vi /etc/apk/repositories

#http://dl-cdn.alpinelinux.org/alpine/v3.15/community

http://dl-cdn.alpinelinux.org/alpine/v3.15/community

GUI環境のセットアップ

GUI環境ををセットアップします。

# setup-xorg-base
# apk add xfce4 xfce4-terminal xfce4-screensaver lightdm-gtk-greeter dbus
# rc-update add dbus
# rc-update add lightdm
# reboot
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?