Alpine Linuxの使い方


[alpine linux](http://www.alpinelinux.org/)が使いやすく、かつイメージサイズの最小化から注目を集めています。

なぜイメージサイズが小さいかというと、パッケージをダウンロードしてからセットアップするためです。

## インストール

まず、virtualBoxにインストールして、sshで接続するまでを目標にします。

はじめにイメージをダウンロードして、virtualboxにマウント起動しましょう。

http://www.alpinelinux.org/

ディスクにインストールするには、`setup-alpine`を実行します。ほぼデフォルトでインストールできますが、ディスク選択の部分では、ディスク`sda`を指定します。

```bash:
$ setup-alpine

"Which disk(s) would you like to use? (or '?' for help or 'none') [none]"
> sda

"Hou would you like to use it? ('sys', 'data, 'lvm' or '?' for help) [?] "
> sys
```

インストール完了すれば、virtualboxディスクからalpine.isoをアンマウントして、`reboot`します。

ssh(デフォルト:openssh)は、virtualboxのネットワーク設定で`NAT`とポートフォワードで`ゲストポート:22`に設定して、`ホストポート:好きな番号`を設定することで接続できます。

```bash:
$ ssh -p 好きな番号 root@localhost
```

ただし、sshdは、デフォルトで`root`接続が不可能な設定になっているので、これを変更します。

```bash:/etc/ssh/sshd_config
PermitRootLogin yes
```

設定を反映させるために、`/etc/init.d/sshd restart`で再起動します。

```bash:
$ ssh -p "virtualboxで設定した番号" root@localhost
```

## パッケージの管理

```bash:
$ apk info

# インストール
$ apk add openssh

# 検索
$ apk search -v
$ apk search i3

# アップデートなど
$ apk update
$ apk upgrade
```

コミュニティのパッケージをインストールするには以下を追記して、`update`コマンドを実行します。

```bash:/etc/apk/repositories
http://dl-4.alpinelinux.org/alpine/v3.3/main
http://dl-4.alpinelinux.org/alpine/v3.3/community
http://dl-4.alpinelinux.org/alpine/edge/testing
```

これで、`i3wm`などをインストール可能になります。

```bash:
$ apk search i3
$ apk add i3wm
```

http://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management

## 個人的なインストール

```bash:
$ apk add zsh vim tmux git sudo perl automake cmake build-base qt
```

## デーモンの管理など

`rc-*`を使います。

```bash:
$ rc-status

# サービス起動
$ rc-service slim start

# サービス登録
$ rc-update add slim
```

http://wiki.alpinelinux.org/wiki/Alpine_Linux_Init_System

http://wiki.alpinelinux.org/wiki/Setting_up_a_ssh-server

## ユーザーの作成

```bash:
$ adduser test
$ cd /home/test
$ sudo visudo
```

## ネットワーク設定

こんな感じで、ローカルIPを固定したり出来ます。デフォルトでは、`dhcp`で割り当てられます。


```bash:/etc/network/interfaces
iface eth0 inet static
        address 192.168.1.150
        netmask 255.255.255.0
        gateway 192.168.1.1
```

http://wiki.alpinelinux.org/wiki/Configure_Networking

## デフォルトシェルの変更

```bash:
$ vim /etc/passwd
"changed shell to /bin/zsh"
```

## デスクトップ環境の構築

デスクトップの構築を目指してみましたが、`失敗編`です。デスクトップが真っ暗にしかならない。Xorgのログを見て見る限りでは、インストールしたドライバ一部ライブラリが読み込まれてない感じがします。virtualboxの問題ぽいですが、実際は分かりません。

```bash:
$ rc-update add mdev sysinit
$ setup-xorg-base
$ apk add xorg-server

# http://wiki.alpinelinux.org/wiki/XFCE_Setup
$ apk add alpine-desktop xfce4 thunar-volman faenza-icon-theme slim

$ echo "Use xf86-video-modesetting for qemu/kvm guests. Use xf86-video-vmware for Virtualbox/VMware guests. Use xf86-video-geode for Alix1D. "

$ apk search xf86-video

# apk add xf86-video-nouveau
# apk add xf86-video-sis
#
# and / or
#
# apk add xf86-input-synaptics
# apk search xf86-video
# apk search xf86-input
# apk add xf86-input-mouse xf86-input-keyboard

$ /etc/init.d/udev start && /etc/init.d/udev-postmount start
$ rc-update add udev sysinit
$ rc-update add udev-postmount default

$ Xorg -configure
$ cat /var/log/Xorg.0.log
```

```bash:
$ su test
$ touch ~/.xinitrc && echo "exec startxfce4" >> ~/.xinitrc
$ startx

$ vim /etc/slim.conf
```


http://wiki.alpinelinux.org/wiki/Category:Desktop

## 参考URL

http://stormcat.hatenablog.com/entry/alpine-entry-setup

http://blog.m0les.com/2012/12/portable-virtualbox-with-alpine-linux.html