適当なlinuxからarchlinuxをインストールする

やり方

https://raw.github.com/tokland/arch-bootstrap/master/arch-bootstrap.sh
このスクリプトを使えば簡単に導入ができますが、現在(2013/03/04)、このスクリプトを使うと
pacmanを呼び出す時にライブラリがないとエラーが出るので
PACMAN_PACKAGES変数にlzo2を足せば問題なく動きます
(今はもう修正がされてるかもしれない)

もう少し詳しいやり方

まずインストールしたいhddを用意して
fdiskなどを使ってパーティションを区切っていきます
例えば、/bootを例にすると

    # fdisk /dev/sda
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4, default 1): 1
    First sector (2048-117266687): 2048
    Last sector +sectors or +size{K,M,G} (2048-117266687):+64M
    Command (m for help): t
    Partition number (1-4): 1
    Hex code (type L list codes): 83

だいたいこんな感じで、必要に応じてswapや/や/homeなども好きなように区切って行きましょう
終えたら書き込みます

    Command (m for help): w

区切り終えたらきちんとフォーマットもしておきましょう
またも、/bootを例にして、ファイルシステムext2にしたいとすると

    # mkfs.ext2 /dev/sda1

こんな感じで書き換えます
他に用意したパーティションもこんな感じでフォーマットをしていきましょう
詳しくは割愛します

パーティションを用意できたら
ルートディレクトリにしたいパーティション
適当なディレクトリにマウントさせて
その他の/homeや/bootなどやchrootするのに必要なprocなども一緒にその中でマウントさせておきます
コマンドにすると

    # mount /dev/(ルートディレクトリ) /mnt
    # mkdir /mnt/{home,boot,proc,sys,dev}
    # mount /dev/(ホームディレクトリ) /mnt/home
    # mount /dev/(ブートディレクトリ) /mnt/boot
    # mount -t proc none /mnt/proc
    # mount -t sysfs none /mnt/sys
    # mount -o bind /dev /mnt/dev

だいたいこんな感じです

後はインターネットを用意して

    % cd /tmp
    # wget https://raw.github.com/tokland/arch-bootstrap/master/arch-bootstrap.sh
    # chmod +x ./arch-bootstrap.sh
    # ./arch-bootstrap.sh -a i686 -r 'http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/' /mnt

スクリプトを落としてきて実行するだけですが実行する前に
最初に書いたように依存関係の問題でPACMAN_PACKAGES変数にlzo2を足しておきましょう

./arch-bootstrap.shの引数には-aオプションでi686もしくはx86_64を書いてアーキテクチャを指定します
-rオプションでミラーサーバーを指定できます
最後の引数はインストール先です

うまくこのスクリプトが動くと、後は

    # chroot /mnt

をして自由に使えますが、カーネルなどが導入されていないので

    # pacman -S base

で入れておきましょう
しかし、最初は何もしなければエラーが出ると思うので

    # pacman-key --init
    # pacman-key --populate archlinux

ちゃんと鍵の初期化などをしておきましょう

後はgrubをいれるなり、アカウントを作りなりすればhddから起動できます

後書き

スクリプトを読んでみたけど、いじれば他のディストリビューションでもできそう
ネットワークインストールをすると中でこんなことをしているのかなあ