以前の記事 の気になっている構成として,Alpine Linuxを用いた構成を挙げました.

最近はAlpineやArch等の最低限の機能を持ったLinuxにドはまりしているので,ProxmoxでZFSを利用している環境からAlpine LinuxにZFSを入れてファイルサーバにしてみたいと思います.

移行準備

もとはProxmoxを用いてZFSを利用していたので,そちらの端末で移行するための準備を行います.

ZFSボリュームのエクスポート

ZFSはzpoolコマンドを利用して簡単に操作することができます.

# zpool export -f tank

sambaなどは予め止めておかないと,エクスポートできないのでご注意ください.

smb.confファイルのコピー

smb.confファイルをコピーしておくと簡単にファイルサーバーを移行することができます.

/etc/samba/smb.conf

smb.confファイルをコピーするか,中身をテキストエディタに貼り付けておきます.

Alpine Linuxマシンですること

ZFSのインストール

今回の記事では暗号化されたドライブは構築しませんが,今後やる予定なので入れておきます.

# apk update
# apk upgrade

# apk add haveged cryptsetup e2fsprogs syslinux zfs zfs-$(uname -r | rev | cut -d'-' -f1 | rev)

# mod probe zfs
# rc-service haveged start

ZFSボリュームのインポート

以前のマシンでエクスポートしたZFSボリュームをインポートします.

# zfs import

# zfs import -f tank

一行目のコマンドでインポート可能なZFSボリュームの一覧を確認することができます.

次のコマンドで実際にインポートします.

インポートができたら,以前のマウント位置に勝手にディレクトリが生成され,ファイルも移行できていることが確認できます.

ZFSの自動マウント

ZFSボリュームを自動的にマウントするようにします.

# rc-update add zfs-import sysinit
# rc-update add zfs-mount sysinit
# nano /etc/mkinitfs/mkinitfs.conf

features="ata base ide scsi usb virtio ext4"

とあるはずなので,次のように編集します.

features="ata base ide scsi usb virtio ext4 lvm zfs"

sambaのインストール

# apk add samba
# mv /etc/samba/smb.conf /etc/samba/smb.conf.org
# nano /etc/samba/smb.conf

smb.confsmb.confファイルのコピー で得たconfファイルの内容を貼り付けます.

samba用のユーザを作成

特に何も無ければユーザ名も以前の環境のままが良いでしょう.

# adduser username
# smbpasswd -a username

sambaを起動&自動起動

# rc-update add samba
# rc-service samba start

完成です!