#どんどん追記していきます。
※RPI・・・ラズベリーパイのこと
#1.インストール
OSのtarを下のサイトからDLします。
http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-2-latest.tar.gz
SDカードへパーティションを作るのは、本家サイトに丁寧に書いてあったのでここでは省略します。(ログが残ってない)
https://archlinuxarm.org/platforms/armv7/broadcom/raspberry-pi-2
今回は手持ちのノーパソ(CentOS6.8)でパーティションを作りました。何度か失敗しましたが、fdisk内で全てやり直せました。
#2.いざ起動
本家サイトには「SDカードを挿したらコンソールなりSSHなりで接続してね!」とありますが、いつまでたってもPINGが届きません。試しにRPIにHDMIを挿してみると画面が黒い・・・。
一度USB電源を引っこ抜いて差し直したらきちんと画面に表示されました。(起動時からHDMI挿さないと出力されないとか?)
後日、電源を入れると再び繋がらない。HDMIを直接さしてみても画面は真っ暗で、もう一度上に書いてある手順を試したら画面が表示されました。この辺は暇な時に懸賞しようと思います。
##2-1.sudoのインストール
入ってなかった?
$pacman -S sudo
##2-2.IP固定
ifconfigするとeth0が立ち上がってるのですが誰が立ち上げたのかが分からない・・・。netctlもdhcpcdも起動してないしsystemd-networkはなんか見当たらない。
IP固定のやり方はいくつかあるみたいですが、今回はdhcpcdを使います。これも本家に載っています。
以下を追記。
interface eth0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
dhcpcdサービスの起動/自動起動
$systemctl start dhcpcd
$systemctl enable dhcpcd
##2-3.IPv6の無効化
職業病です。
以下のファイルを追加。
net.ipv6.conf.all.disable_ipv6 = 1
##2-4.iptablesの設定
正直iptableの設定に自信がないです。
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp -s 192.168.0.0/24 -d 192.168.0.0/24 --dport 22 -j ACCEPT
-A INPUT -p tcp -j REJECT --reject-with tcp-reset
-A INPUT -p udp -j REJECT --reject-with icmp-port-unreachable
-A INPUT -j REJECT --reject-with icmp-proto-unreachable
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
デフォルトでオフみたいなので、自動起動まで設定しておきます。
$systemctl start iptables
$systemctl enable iptables
##2-5.pacmanの設定
※アーキテクチャをはき違えて試行錯誤してたので、全体的に書き直しました。
ミラーを変えます。
自分の場合は、以下が標準になっていました。
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist
[alarm]
Include = /etc/pacman.d/mirrorlist
[aur]
Include = /etc/pacman.d/mirrorlist
Server=http://mirror.archlinuxarm.org/$arch/$repo
/etc/pacman.d/mirrorlistの中にはたくさんのリポジトリがあります。
これも公式に書いてありますが、この中から最速のURLを探します。
1.ミラーリストのコピーを作成し、そのコピー内のテストしたいURLのコメントを全て外します。
2.以下を実行
$rankmirrors -n 6 mirrorlist.bak > fastestmirrorlist
結果は以下の通り。(※つくばURLは無視してください。)
Server = http://mirror.archlinuxarm.org/$arch/$repo
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/x86_64
Server = https://za.mirror.archlinuxarm.org/$arch/$repo
Server = http://au.mirror.archlinuxarm.org/$arch/$repo
Server = http://br.mirror.archlinuxarm.org/$arch/$repo
Server = http://br2.mirror.archlinuxarm.org/$arch/$repo
オーストラリアとかブラジルとかありますが、今回は標準リポジトリのまま使用しようと思います。
#3.今後について
VoIPサーバにするつもりです。Mumbleを乗せる予定ですが、その理由や手順やらはまた後日。
(追記)とある事情によりVoIPサーバは無理となったので、NASにしようと思います(sambaかな)。