以前のブログの続きです。
こんにちは、山田ハヤオです。Arch Linux信者です。
以前Arch LinuxのインストールをQiitaにまとめたのですが、SSH接続をしたりとはっきり言って中級者以上には不要なことをいろいろやってます。また、エディタを起動してちまちま…なんてこともあったり。
はっきり言ってArch Linuxのインストールを経験してて確認のために見る…というのにはあまりにも長過ぎる記事なので自分の備忘録も兼ねて最小限のインストール方法を以下に書いておきます。
内容はQiitaの記事の劣化版みたいなやつです、サボり。
キーボードレイアウトの設定
デフォルトではUS配列になっているので日本語106配列に変更します。
loadkeys jp106
インターネット接続
・Wi-Fiの場合
ip a
でWi-Fiのインターフェースの名前をメモしておきます。
そして下のコマンドでWi-Fiに接続します。
wpa_supplicant -B -i interface -c <(wpa_passphrase SSID password) dhcpcd interface
interface
は先程調べたWi-Fiのインターフェースの名前、SSID
は接続したいWi-FIのSSID、password
はWi-Fiのパスワードに置き換えてください。
・有線の場合
自動で接続されます。接続されない場合はdhcpcd
コマンドを実行して下さい。
それでもだめな場合、ネットワークアダプタが認識されてない場合があります。
IPアドレスを固定する場合は以下を参考にしてください。
ネットワーク設定 — 固定IPアドレス
時間設定
timedatectl set-ntp true
でntpサーバとの同期を有効化します。
パーティショニング
パーティション構成は以下のとおりに行っていきます。
/dev/sda : 128GB
/dev/sda1 : 124GB Ext4
/dev/sda2 : 4GB Swap
/dev/sdaの部分はインストール先の名前を調べて置き換えてください。
fdisk -l
通常はこのままfdiskやpartedなどを使用してポチポチやっていくのですが、正直面倒なのでcfdiskを使用していきます。
cfdisk /dev/sda
あとはAndroid x86みたいにパーティション作成するだけです。英語少しでも読めればわかるはず。
フォーマット
/dev/sda1をフォーマットします。
ファイルシステムはext4を使用します。
mkfs.ext4 /dev/sda1
スワップを作成
mkswap /dev/sda2
スワップを有効化します。
swapon /dev/sda2
マウント
mount /dev/sda1 /mnt
ミラーリストの作成
pacman(ArchLinuxのパッケージ管理システム)のサーバーリストを日本のみにします。
正攻法ではViなどを使用して’##Japan’のみを有効化するのですが、私はViが苦手なのでコピペでミラーリストを作成します。
まずは既存のミラーリストを無効化します。
mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
ミラーリストをダウンロードする
pacman -S wget wget -O /etc/pacman.d/mirrorlist https://0u0.biz/YNhG
短縮URLを使用していますが、Pacman Mirrorlist Generatorから日本のミラーリストを取得しています。
短縮URLはアートスピンのURL短縮サービスを使用しています。
ミラーリストを編集します。このコマンドで全てのミラーが有効化されます。
sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
ベースシステムのインストール
pacstrap /mnt base base-devel bash-completion linux-lts linux-lts-headers
bash-completion
はbash補完を使用するためにインストールします。
今回はlinux-ltsという長期サポートのカーネルを使用していきます。
Alter Linuxと同じZenカーネルや通常のLinuxカーネルを使いたい場合はそれぞれlinux-zenやlinuxに置き換えてください。
fstabの作成
/etc/fstabはマウントに関する設定が記述されています。
以下のコマンドで現在マウントされているデバイスが自動でfstabに書かれます。
デバイスをしっかりと認識するために-U
でUUIDを使用します。
genfstab -U /mnt >> /mnt/etc/fstab
システムの設定
インストール完了後、chrootしてシステムに入り、設定を行っていきます。
chrootとは、/を切り替えてシステムに入るものです。最も簡易的なコンテナみたいなやつです。
arch-chroot /mnt
nanoの設定
Vim信者やEmacs信者の方はスキップして下さい。
行数表示を有効化
nano /etc/nanorc
set linenumbers
をアンコメントしてください。
デフォルトのエディターをnanoに変更
echo EDITOR=nano >> /etc/bash.bashrc source /etc/bash.bashrc
ロケールの設定
/etc/locale.genの一部をアンコメントします。
cp /etc/locale.gen /etc/locale.gen.bak sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen sed -i 's/#\(ja_JP\.UTF-8\)/\1/' /etc/locale.gen locale-gen echo LANG=en_US.UTF-8 > /etc/locale.conf
これで言語設定は全て終わりです。コマンドって便利。
コンソールのフォントとキーボードレイアウト
これなんでやるのかよくわからないんですがとりあえずやっておきます()
echo -e "KEYMAP=jp106\nFONT=lat9w-16" >> /etc/vconsole.conf
タイムゾーンの設定
tzselect
自分の住んでいる地域(ここでは日本なのでAsia
つまり4
)の数値を入力します。
次に、その地域の国が表示されるので自分の国(ここでは日本なのでJapan
つまり19
)の数値を入力します。
最後に確認が出るので、間違っていないのなら1
を入力します。
最後にハードウェアクロックを同期させます
hwclock --systohc --local
ホスト名の設定
echo hogehoge > /etc/hostname
hogehoge
は自分の好きなホスト名で置き換えてください。
同じホスト名を/etc/hostsにも追記します。
エディタで書いてもいいですがいつもヒアドキュメント使います。
cat >> /etc/hosts << 'EOF' 127.0.0.1 localhost.localdomain localhost hogehoge ::1 localhost.localdomain localhost hogehoge EOF
rootのパスワード
passwd root
好きなパスワードを入力してください。
一般ユーザーの作成
fuga
はそれぞれのユーザ名で置き換えてください。
Ubuntuのadduserなんという甘っちょろいコマンドはありません()
groupadd fuga useradd -m -g fuga -s /bin/bash fuga passwd fuga groupadd sudo usermod -G sudo fuga
sudoの設定
sudoの設定ファイルを変更するために以下のコマンドでnanoを起動します。
visudo
下の方へスクロールして%sudo ALL=(ALL) ALL
という部分をアンコメントして保存してください。
ここもコマンドでやりたいけど、ミスるとシステムから締め出されるので慎重に。
ブートローダーの設定
GrubとNetworkManagerをインストールします。
再起動後はネットに接続されていない可能性もあるので、今のうちにNetworkManagerもインストールしておきます。
(以下のコマンドはMBRのみです。UEFIの場合は異なるので使用しないでください。←今更ですが)
pacman -S os-prober grub networkmanager grub-install --target=i386-pc --recheck /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
これでインストール作業は終わりです。
システムから出て再起動する
chrootから抜け出してシャットダウン後、起動していたUSBメモリを取り外して再び起動します。
exit umount -R /mnt swapoff /dev/sda2 shutdown 0
無事にArchLinuxが起動したらインストール完了です。
再起動後の設定
インターネットに接続する
最後にGrubと一緒にインストールしたnetworkmanager
を使用します。
まずはNetworkManager
を有効化します。
(パッケージ名はnetworkmanager
でサービス名はNetworkManager
です)
systemctl enable NetworkManager systemctl start NetworkManager
最後に
これでインストールは完了です。あとは自分でGUIを導入するもヨシ、CLIのまま頑張るもヨシ好きにしましょう。仮想環境の場合はこの段階でスナップショットをとっておくと安心です。
コメント