2013年3月20日水曜日

ArchLinux[2013.03.01]をインストールしてみた。

学会や学校の試験が忙しく、やっとブログを書く暇が・・・。
自分が提案したテーマが、どこの学会でも軒並みいいねと言われてほっとしています。
アルゴリズムがまだまだ微妙なので、そこで突っ込まれることが多いのが残念なところですが。
基本的にアルゴリズムを考えたりコーディングすることは苦手なのですが、テーマや企画をすることは結構好きですね。

本題ですが、ArchBangを触っていて思ったことがいくつかありまして

・pacmanがaptやyumより、分かりやすさ的に自分に合っている
・パッケージを自分でいれて構築していく感じがプラモデルのようで面白い
・Netbookにはありがたい軽さ(KDEやGNOMEなどの重量級DEをいれなければ)
・Wikiの謎の充実具合

といったこと感じました。Wikiは英語ですが、情報量が本当にすごく、やりたいことがだいたい書いています。
ただ、初心者がArchLinuxを使うにあたってネックなのが、インストールの複雑さ。
CUIに慣れているLinuxユーザにとっては問題ないにしても、UbuntuやOpenSUSEといったGUI操作が主なディストリを使うライトユーザーにとっては何が何やら・・・。
いきなりコンソール画面から始まって、はいどうぞってやられてもわからないことこの上ない。
ですが、Wikiを読めばだいたいインストールできます。
ということで、以下インストールまでの流れをメモ。
基本的にはWikiの流れそのままです。
設定はまた別の記事で。

[参考URL]
Beginners' Guide

[キーマップのロード]
 $ loadkeys jp106

日本語キーボードのロードをします。これをしないと始まらない。

[インターネットへの接続]
・有線
有線の場合はよくわからないのでスルー。
多分dhcpcdが自動起動しているはずなので、有線は何もしなくていいはず?

・無線

 $ iwconfig

wから始まる物をメモ。今回はwlp3s0とします。

 $ ip link set wlp3s0 up
or
 $ ifconfig wlp3s0 up(無線のインタフェースが起動できればなんでもいい)
 $ wifi-menu wlp3s0

いつも繋ぐESSIDを選択。
その後、パスワードをいれることになると思いますが、wpa_supplicanti initializing...的な(うろ覚え)ところで止まってしまい、接続が失敗するようであれば、パスワードの前にs:をつける。
s:をつけるとパスワードがACSII扱いになります。つけないと16進数扱いになるようです。
ここに気づかず、自分は1ヶ月くらい放置してました。
また、うちはWPAじゃないので割愛しますが、同じようなことあるんじゃないでしょうかね。

[パーティションの設定]
パーティションを切ってない場合のみ

 $ cfdsik /dev/sda

と入力し、パーティションを切る。操作方法はなんとなくわかるはず。

今回は面倒なので、

 /dev/sda1 ---> /(root)
 /dev/sda2 ---> swap

としています。今ではメモリは2GB以上積んでる場合、swap作らなくても問題ないみたい(ArchWiki曰く)
確かに全然Swapしないから、作った意味あるのかなぁと思ったことも・・・。

[パーティションのフォーマット]
上記の例を用いると

 $ mkfs.etx4 /dev/sda1
 $ mkswap /dev/sda2
 $ swapon /dev/sda2

となります。sda1をext4でフォーマット、sda2をswapでフォーマット、spwaonで実際にswapとして割り当てています。

[ミラーの選択]
 $ nano /etc/pacman.c/mirrorlist

上記コマンドを入力すると、ミラーのリストを編集できます。
nanoのキーバインドは、

 Ctrl+k ---> 切り取り
 Ctrl+u ---> 貼り付け
 Ctrl+o ---> 保存
 Ctrl+x ---> 終了

です。日本の鯖を切り取り、一番上に貼り付けます。
実際のところ、ここはあとで最適化もできますし、遅い鯖に繋がるだけなので無理に編集する必要はないとおもいます。

[本体のインストール]
/(root)を一度/mntにマウントさせ、本体のベースをインストールします。

 $ mount /dev/sda1 /mnt
 $ pacstrap -i /mnt base base-devel

baseだけでもいいですが、base-develがないと、のちのちAURが使えないので一応入れます。
あと、自分みたいな初心者はこういうとき全部入れが基本だと思いますし、Archいれるような人は同時に開発環境もいると思うので、入れて損はないはず。

[fstabの生成]
 $ genfstab -U -p /mnt >> /mnt/etc/fstab
 $ nano /mnt/etc/fstab

2行目はfstabが生成できているかの確認なのでしなくてもいいですが、初心者はしておくのが無難?
fstabの読み方はWiki参照のこと。

[chroot]
 $ arch-chroot /mnt

各種設定をするためにchroot下で行います。

[言語環境の設定]
 $ nano /etc/locale.gen

 #en_US.UTF-8
 #ja_JP.UTF-8

の#(コメントアウト)を削除
その後

 $ locale-gen

また、

 $ echo LANG=en_US.UTF-8> nano /etc/locale.conf
 $ export LANG=en_US.UTF-8

jaにしてしまうと、初期段階で日本語フォントがないため文字化けしてしまいます。
DEを入れてしまったあとに設定し直せば問題ないです。また一行目はechoを使わずにnanoを使って直接やっても構わないです。

[コンソールフォントとキーマップ]
設定が変わったらしく、キーマップをロードしなおさないといけないらしい(自分の環境では設定は変ってなかったですが、念のため)
また、ついでにフォントの設定を行います。

 $ loadkeys jp106
 $ setfont Lat2-Terminus16

ここでのフォントはX上(DEなどのGUI環境)とは関係なく、あくまでコンソール上でのフォントです。

reboot後も同じ設定を使いたい場合は、

 $ nano /etc/vconsole.conf

でvconsole.confを開き、以下を記入

 KEYMAP=jp106
 FONT=Lat2-Terminus16

[タイムゾーンの設定]
 $ ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
 $ hwclock --systohc --utc

1行目でタイムゾーンの設定、2行目でハードウェアクロックの設定をしています。

[ネットワークの設定]
hostnameをgeekooとすると、

 $ echo geekoo > /etc/hostname

次にネットワーク接続の設定。

・有線
イーサネットインタフェースをenp2s0f0とすると

 $ systemctl enable dhcpcd@enp2s0f0.service

という感じ。有線ではないので細かい設定は各自行なってください。

・無線
wifi-menuを使う場合、起動したあとにやらなければならないので、やることはパッケージのインストール。
また、ifconfigなどが入ってないためこの時点でインストールしておく。

 $ pacman -S wireless_tools net-tools wpa_supplicant wpa_actiond dialog

netcfgを使うことを前提としたパッケージですが、NetworkManagerやWicdを使っても問題ないです。
他のディストリでは、よくNetworkManagerが入っていますね。
自分はWicdを使っています。NetworkManagerだとバグが・・・なんてこと思わないですし、昔よりバグは減っているでしょうが、なんとなくUbuntuなどに使われている物をあえて使わないようにしています。

[pacmanの設定]
 $ nano /etc/pacman.conf

項目内に

 #[multilib]
 #SigLevel = PackageRequired
 #Include = /etc/pacman.d/mirrorlist

という部分があるはずなので、#(コメントアウト)をはずす。
またyaourtを使う場合は、以下を一番下に記述

 [archlinuxfr]
 Server=http://repo.archlinux.fr/$arch

以上を記述後、以下でpacmanを更新

 $ pacman -Sy

[rootパスワードの設定]
 $ passwd

2回パスワード打ち込んで終わり。

[bootloaderの設定]
今回はgrubを使う前提で行います。

 $ pacman -S grub-bios os-prober
 $ grub-install --target=i386-pc --recheck /dev/sda
 $ cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
 $ grub-mkconfig -o /boot/grub/grub.cfg

今回はMBRにいれるようにしています。
また、os-proberは他のOSを自動検出するためのパッケージです。
VirtualBoxにいれるときには必要ないです。
またMBRがMBMの場合、/(root)にgrubをいれる必要があります。
今回は、/(root)が/dev/sda1としているので、2行目を

 $ grub-install -f --target=i386-pc --recheck /dev/sda1

とすればインストールできます。
grub2ではPBRにいれることを推奨していないため-f(もしくは--force)をつけないといけないようです。
また、/dev/sda1はちゃんと自分の設定した/(root)に書き換えてください。
ArchWikiのGRUB2には詳細な内容が書いてますが、一応これで起動できたので、不安な方はArchWikiを参照してください。

[再起動]
まずchroot環境を以下で抜けます。

 $ exit

その後、再起動かシャットダウンを行います。

・再起動
 $ reboot

・シャットダウン
 $ systemctl poweroff

以上でインストールは終わりです。
設定は細々書いていますが、方向性が決まらないのでまた今度ー。

0 件のコメント:

コメントを投稿