VPSにArch Linuxをインストールします
この記事は,”東京高専プロコンゼミ② Advent Calender 2019" 15日目の記事です.
遅れてしまいすみません.
アクセスはこちらからどうぞ.
はじめに
VPSを契約したので,一通りの環境を整えたいと思いました.
初期構成OSのままでも良かったのですが,自由度の高そうな(偏見)Arch Linux をインストールすることにしました.
ダウンロード+この記事を書くにあたって,以下のサイトを参考にさせていただきました.
内容がほぼ同じ点もありますが,ご了承ください.
インストール前の作業
まずは http://archlinux.jp からISOイメージファイルをダウンロードし,指定されたアップロード先にダウンロードしたISOイメージをアップロードします.
SFTPアカウントを発行し,VPSのコントロールパネルに記載された通りのホスト名やらポート番号やらを入力すればOKです.(僕は WinSCP を使いました)
アップロードが完了し,VPSを再度立ち上げると,仮想サーバよりコンソールでインストールをしろとの指示が来ます.
正直ここに一番時間を取られました.
インストール
ぶっちゃけデュアルブートとほぼ変わらないです.ネットワークの設定がほんのちょっと違うくらいかもしれません.
起動すると,BIOSブートの画面が表示されるので,そのまま進めていきます.
PC側の初期設定
まずは,キーボードの設定を更新します.
$ loadkeys jp106
パーティションを切っていきます.cfdiskやfdiskが有名です.
$ cfdisk
どうでもいいですが,僕は以下のような構成にしました.
パーティションごとにフォーマットをします.
$ mkfs.ext4 /dev/vda1 $ mkswap /dev/vda2 $ swapon /dev/vda2 $ mkfs.ext4 /dev/vda3
マウントをします.ここで間違えると色々と悲惨なことになります.
$ mount /dev/vda3 /mnt $ mkdir /mnt/boot $ mount /dev/vda1 /mnt/boot
続いて,ネットワークの設定です.
予め,VPSのコントロールパネルで
・IPアドレス
・ゲートウェイ
・プライマリDNS
・セカンダリDNS
を確認しておいてください.
次に,インターフェースを確認します.
$ ip a
いくつか表示されると思うので,好きなものを使います.
$ ip addr add [IPアドレス]/23 dev [インターフェース] $ ip route add default via [ゲートウェイ]
続いて,DNSの設定です.
$ nano /etc/resolv.conf
上のファイルに以下の内容を追加します.
nameserver [プライマリDNS] nameserver [セカンダリDNS]
以上でネットワークの設定はおしまいです.
接続できているかどうか,確認してください.
pingを打てば何でも大丈夫です.
$ ping goo.gl
ネットワークに接続できたところで,時計を合わせます.
$ timedatectl set-ntp true
最後にミラーリストを編集します.
これをやっておかないとインストールがとても遅くなります.
$ nano /etc/pacman.d/mirrorlist
上のファイルから,以下のようなものを探してください.
## Japan
見つかったら,その下に記載されているURLを一番上に持ってきます.
以下のようになれば大丈夫です.
これでPC側の初期設定はおしまいです.
インストール
ベースシステムと,必要であろうものを色々入れます.
$ pacstrap /mnt base base-devel linux vim git grub efibootmgr netctl
これには少し時間がかかるかもしれません.
PC側の設定①
まずはfstabの設定です.
システムを起動する際にストレージを自動でマウントするためのものです.
$ genfstab -U /mnt >> /mnt/etc/fstab
ここからは,インストールしたシステムに入って作業をします.
$ arch-chroot /mnt
時計の設定です.
$ ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime $ hwclock -w -u
次にロケールを設定します.
$ locale-gen $ echo LANG=en_US.UTF-8 > /etc/locale.conf $ echo KEYMAP=jp106 > /etc/vconsole.conf
ホストネームです.好きなものを設定してください.
$ echo [ホストネーム] >> /etc/hostname $ echo [ホストネーム] >> /etc/hosts
ネットワーク環境の設定です.
$ cp /etc/netctl/examples/ethernet-static /etc/netctl/mynetwork $ vim /etc/netctl/mynetwork
中身を下のように編集してください.
Description='A basic static ethernet connection' Interface=[インターフェース] Connection=ethernet IP=static Address=('[IPアドレス]/23') Gateway='[ゲートウェイ]' DNS=('[プライマリDNS]' '[セカンダリDNS]')
保存後,次のコマンドを実行します.
$ netctl enable mynetwork
ブートローダーの設定です.
$ pacman -S os-prober grub $ grub-install --target=i386-pc --recheck /dev/vda $ grub-mkconfig -o /boot/grub/grub.cfg
ここで,いったん再起動します.システム内でコマンドを叩くのではなく,VPSのコントロールパネルよりシャットダウンを行ってください.
PC側の設定②
root(管理者)のパスワードを設定します.
$ passwd
管理者権限のままでいるのは色々危険なので,ユーザーを追加します.
$ useradd -m -g wheel [ユーザ名] $ passwd [ユーザ名]
ユーザーにsudoの権限を与えます.
$ vim /etc/sudoers
ファイルの中から,以下の行を探し,コメントアウトしてください.
%wheel ALL=(ALL) ALL
もう一度再起動し,システムが正常に動くことを確認してください.
正常に動けば,とりあえずこれで終了です.
お疲れさまでした.
おわりに
あとは色々な設定をすれば色々使えると思うので,僕も頑張ります.
※誤字脱字や間違っている部分等ありましたら,コメントで連絡を頂けると幸いです.