Re:シルの日々の戯言。

散財が生き甲斐になりかけている、デジタルガジェット大好き自称黄色いネズミの戯言。

俺メモ:Arch Linux on VGN-G3ABGS(草案的な何か)

そうだ、京都に行こう(JR東海)
何となく持て余してるVGN-G3ABGSにArch Linuxを入れてみたくなった。軽量本体で我が家ではLibretto U100の時点くらいで軽量な端末なので悪巧みするにはちょうど良いやろ!折角アキバのジャンク屋でVGN-G3で使えそうなVistaなリカバリディスク買ったのにリカバリ出来ずに居るので(コラー!)*1

目標

とりあえずの目標はこんな感じかしら?

ただ、面倒なのでとりあえずベースシステムだけ突っ込んでみるテスト。・・・ん?その後の手順?書きながら構築面倒だからぐぐってー。(俺様専用の適当メモだしぃー)

状況確認

  • VGN-G3ABGS
    • メモリは4GBに強化済み、え、6GBにしてなかっただって?Latitude E4300さんに喰われました(ちょw)
    • HDDはSSDに換装済み。こちらはLatitude E4200さんの亡骸から引っこ抜いたmicroSATAとマイナー規格
    • この子は内蔵ドライブ無し、Bluetooth無線LAN(WiFiLink 5100)搭載、無駄に指紋認証対応
  • Arch Linux
    • こっから落としなさーい
    • 今回漏れがチャレンジしたのは2014.12.01版、基本的な突っ込み方はバージョンによって変わることは無いと思う。
    • つーか、根本的にArch LinuxはマゾでドM専用、インストーラーを排除して素人アウトオブ眼中と鬼や、Arch Linuxさん鬼やー!

インストール雑記

ダウンロードしたISOファイルを焼き焼き。ファイルサイズが600MB以下なのでCD-Rに焼けますよ!
焼き焼きしたISOファイルは、x64x86も同じメディアの中に入ってるので、他のディストリビューションみたいに「漏れはオンボロPenMだからx86版落とさなきゃ」とか考えずに済むので素敵です。

起動する前に有線LAN差し込んでおいて、焼き焼きしたメディアから起動させるとLinuxでお馴染みブートメニューが出るので『Boot Arch Linux (x86_64)』を選んでGo!しばらくすると(VGN-G3の場合)コンソールが起動するので作業開始。

インストール前段階の準備だお

驚くことにキーマップから何から何までコマンドで設定しなければならない、今どきのユーザーフレンドリーなLinuxとは一線を画する一見さんお断りっぷり!

# loadkeys jp106

続いて言語設定。

#vi /etc/locale.gen

・・・あ、ナチュラルにvi派なのでviって書いてるけどお好みのエディタで。日本語を有効にする際の設定はお好みですが、漏れは『ja_JP.UTF-8 UTF-8』を有効(頭の#を消してコメント解除)
上書き保存したあと、これも入力しとくこと

#locale-gen
#export LANG=ja_JP.UTF-8

続いてネットワーク接続確認。pingが通ればおk。公式インストールマニュアル的な古文書(嘘)に従いGoogleの.comさんにping飛ばすお!

#ping -c 3 www.google.com

pingが帰ってきたらおk,駄目ならぐぐって頑張れ!ほら最近「がんばれ!がんばれ!」って流行ってるし(えー)

パーティション切るお

素敵な事にパーティションも自分自身で切らなあかんでー。こっから先はHDD/SSDのデータ全部消えるから注意だおー。
面倒だから公式にあるコマンドにしたがってやるお。

cgdisk /dev/sda

(既にパーティションがある場合)全部消す、『D』キー押下で消す!
パーティション区分はなにがいいのか知らんが、何がいいのかねぇ。わっからーん!\(^o^)/

1. 1024.0MiB Linux filesystem /boot
2. 4.0GiB Linux swap swap
3. xxx.xGiB Linux filesystem /

結局無難な構成(/bootとswap、残り全部を/(root)に割り当て)になった。最後に『Shift+W』で確定。『Q』キーでcgdiskから抜ける!・・・ふぅ

で、フォーマットと、スワップ有効化するお!

#mkfs.ext4 /dev/sda1
#mkfs.ext4 /dev/sda3
#mkswap /dev/sda2
#swapon /dev/sda2

パーティションをマウントさせるお

一旦パーティションレイアウトを見るヨロシ

#lsblk -f

今回作ったrootとbootをマウントするお

#mount /dev/sda3 /mnt
#mkdir /mnt/boot
#mount /dev/sda1 /mnt/boot

一応、これで下準備は完了ってトコかなー。

ミラー選択してベース突っ込むお!

これからベースシステム突っ込むが、その前にミラーサイトの設定を実施。
標準である程度入ってるが、国内主要サーバが下の方に入ってるから、上の方に持ってくる簡単なお仕事です。

#vi /etc/pacman.d/mirrorlist

おまっとさんでした、ベースシステム突っ込みます。

#pacstrap -i /mnt base base-devel

何か聞かれるが「Enter!Enter!Yes!Yes!!!11」でイッちゃっておk。

fstab生成

コマンド一発!

#getfstab -U -p /mnt >> /mnt/etc/fstab
#vi /mnt/etc/fstab

コマンド一発と言いつつvi引っ叩いてる理由は、単に生成された内容が妥当か否か見てるだけ。

ベースシステムの設定

面倒なので適当に綴る

インスコしたシステムに入る

#arch-chroot /mnt /bin/bash

Locale

#vi /etc/locale.gen

『en_US.UTF-8 UTF-8』と『ja_JP.UTF-8 UTF-8』を有効化する

#locale-gen

キーマップその他

#loadkeys jp106
#setfont Lat2-Terminus16

設定ファイルにも書く

#vi /etc/vconsole.conf

タイムゾーン設定

#ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#hwclock --systohc --localtime

ホスト名設定

#echo [適当なホスト名] > /etc/hostname
#vi /etc/hosts
(hostsにもホスト名設定)

ネットワーク周り
色々と考えた末、netctl-ifplugdなるものを使おうと思う

#pacman -S ifplugd
#systemctl enable netctl-ifplugd@eth0.service

無線も設定するよ!

#pacman -S iw wpa_supplicant
#pacman -S dialog
#pacman -S wpa_actiond

pacmanの設定
DebianとかCentOSで言うyumとかapt-get的なイメージ。厳密には違うがまぁ、そんな感じ。

#vi /etc/pacman.conf

x64(x86_64)の人は『multilib』を有効にすると幸せっぽい。
変更したら『pacman -Sy』してリスト更新実施せなあかんでー。

rootのパスワード

#passwd

GRUBインストール

#pacman -S grub
#grub-install --recheck /dev/sda

こけたーorz

対応策

#exit(chrootから抜ける)
#cgdisk /dev/sda
※不自然に空いてた1007KiBをEF02(BIOS boot partition)でパーティション作成
#arch-chroot /mnt /bin/bash
#grub-install --recheck /dev/sda
#grub-mkconfig -o /boot/grub/grub.cfg

再起動

#exit(chrootから抜ける)
#reboot

再起動時にメディアを抜く事

以上

*1:本来はライセンス違反らしいのでやっちゃアカンでー。・・・DELLとかならガバガバだけど、SONYさんはガッチリで使い回しなんて出来ないっぽい雰囲気でしたしorz