😊

さくらインターネットのVPSにArch Linuxをインストールする

2025/02/04に公開

さくらインターネットVPSArch Linux をインストールする方法。

インストール

さくらインターネット公式マニュアル

さくらインターネットの公式マニュアルをベースに作業を進める。
https://manual.sakura.ad.jp/vps/os-reinstall/iso-install/arch.html

サーバー情報

IPアドレス、サブネットマスク、DNSなどの情報は、さくらのVPSのコントロールパネルにある。

  1. さくらのVPSのコントロールパネルにログインする
  2. 左メニューの【サーバー】をクリック
  3. VPSを選択
  4. 【ネットワーク】タブをクリック
  5. 【サブネットマスク】は 255.255.254.023 になる
  6. broadcast は省略すると自動的に計算してくれる

インストールメディア

インストール・メディアのisoファイルは自分で用意しなくても良い。さくらインターネットが公式でisoを用意してくれている。

OSの再インストール

  1. さくらのVPSコントロールパネルを開く
  2. 左メニューの【サーバー】をクリック
  3. 該当のサーバーをクリック
  4. 【OS再インストール】ボタンをクリック
  5. 【ISOイメージ】を選択
  6. 【一覧から選ぶ】を選択
  7. 【Arch Linux x86_64】を選択
  8. ネットワーク接続は【接続先を保持】を選択
  9. 【内容確認】をクリック
  10. 「OS再インストール実行」画面が表示されるので【OS再インストール】をクリック
  11. 画面が戻ったら【VNCコンソールを起動】をクリック
  12. https://manual.sakura.ad.jp/vps/_images/os-reinstall_iso-install_arch_011.png
  13. rootアカウントでログイン済みの状態になる。次項の日本語キーボードの設定をしてインストール作業を始める。
    https://manual.sakura.ad.jp/vps/_images/os-reinstall_iso-install_arch_021.png

日本語キーボードの設定

まず最初に、日本語キーボードを使っている場合は、日本語キーボードを使えるように設定を行う。
英語配列なら何もせ設定ずにネットワーク設定に進む。

loadkeys jp106

ネットワークの設定

  1. NIC(ネットワーク・インターフェース・カード)の状態を確認
    eth0ens3 になる。これがインターネットに繋がる。
    ip link
    
  2. ens3 の起動
    既に起動しているはずだが一応。
    ip link set ens3 up
    
  3. IPアドレスの設定
    サーバーの固定IPアドレス(インターネットにアクセスするIPアドレス)を設定する。
    broadcast は、IPアドレスの最後を 255 にする。省略しても構わない。
    ip addr add 100.200.300.400/23 broadcast 100.200.300.255 dev ens3
    
  4. ゲートウェイの設定
    ゲートウェイを通じてインターネットにアクセスする。
    IPアドレスの末尾が必ず 1 とは限らないので、ちゃんと確認する。
    ip route add default via 100.200.300.1
    
  5. ネットワーク設定の確認
    ip addr show ens3
    
  6. 疎通テスト
    -c で回数(count)を指定する。指定しないと無限に送り続ける。途中で止める時は、Ctrl キーと C キーを同時に押す。
    ping -c 4 210.188.224.10
    
  7. DNSサーバーの設定
    echo "nameserver 210.188.224.10" >> /etc/resolv.conf
    
  8. DNSテスト
    ドメイン名をIPアドレスに変換できるか確認する。
    ping -c 4 sakura.ad.jp
    
  9. NTP(時刻)設定
    NTPサーバーに同期する。
    timedatectl set-ntp true
    

ディスク・パーティションの設定

さくらインターネット公式マニュアルの設定に追加して、/var/lib/mysql をマウント・ポイントに、専用のパーティションを作って分ける。このメリットは、OS(Arch)を再インストールするハメになっても、データベースのデータそのものは残しておける。(再インストール時にフォーマットしなければ良い)

  1. vdaの既存パーティション構成をクリア
    既存のデータを消去する。再インストールなど既存のパーティションを流用する場合は不要。
    sgdisk -Z /dev/vda
    
  2. パーティションの新規作成
    1番目は、bootパーティション。
    2番目は、swapパーティション(8200)。
    3番目は、ルート(/)。
    4番目をmysql専用のパーティションにする。
    sgdisk -n "1::+512M" -t 0:8300 /dev/vda
    sgdisk -n "2::+512M" -t 0:8200 /dev/vda
    sgdisk -n "3::+50G"  -t 0:8300 /dev/vda
    sgdisk -n "4::"      -t 0:8300 /dev/vda
    
  3. パーティションを確認
    lsblk /dev/vda
    
    以下のようになる。
    NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    vda   254:0    0  200G  0 disk
    ├vda1 254:1    0  512M  0 part
    ├vda2 254:2    0  512M  0 part
    ├vda3 254:3    0   50G  0 part
    └vda4 254:4    0  149G  0 part
    
  4. パーティションをフォーマット
    # ext4
    mkfs.ext4 /dev/vda1
    mkfs.ext4 /dev/vda3
    mkfs.ext4 /dev/vda4
    # swap
    mkswap /dev/vda2
    swapon /dev/vda2
    
  5. パーティションをマウント
    # /mnt の下にインストールされる
    mount /dev/vda3 /mnt
    # /boot
    mkdir /mnt/boot
    mount /dev/vda1 /mnt/boot
    # MySQL専用パーティション
    mkdir -p /mnt/var/lib/mysql
    mount /dev/vda4 /mnt/var/lib/mysql
    
  6. パッケージをインストール
    pacstrap /mnt base linux linux-firmware vim netctl openresolv grub
    
  7. パーティションのマウント場所を fstab に保存
    genfstab -U /mnt >> /mnt/etc/fstab
    cat /mnt/etc/fstab
    

システム設定

仮想スイッチ

コントロールパネルからeth1を仮想スイッチに接続する。

現在のネットワークの状況を確認する。

sudo ip -c a

net-tools をインストールして ifconfig で確認する。

sudo pacman -S net-tools
sudo ifconfig

一時的に IP アドレスを設定する

以下のコマンドで、すぐに ens4192.168.1.2 を割り当てる。ただし、この設定は再起動後にリセットされる。

sudo ip addr add 192.168.1.2/24 dev ens4
sudo ip link set ens4 up

永続的に IP アドレスを設定する

外部ストレージをNFSで接続

  1. NFSクライアントのインストール
    sudo pacman -S nfs-utils
    
  2. NFSのマウント
    sudo mount -t nfs 192.168.1.100:/export /www
    
  3. UFWを設定

Discussion