Arch Linux ドキュメンテーション

Copyright(c)2002-2004 Judd Vinet<jvinet@zeroflux.org>

Feb 22 13:54:34 2004

概要:

これはArch Linux バージョン0.6(Widget)の一般ユーザ向けドキュメンテーションです。これはJudd Vinetにより作成されたオリジナル文書の大部分をベースにして、Dennis Herbrichにより多くの修正を加えたものです。


目次

1 はじめに

1.1 Arch Linuxとは?

Arch Linuxはi686用に最適化されたLinuxディストリビューションであり、Per Lidenの優れたディストリビューションであるCRUXのオリジナルのアイデアを基本としています。

Archは高速、軽量、柔軟かつシンプルです。これは商売の口上ではなく、すべて事実です。Archはi686プロセッサ用に最適化されており、CPUサイクルをもっと引き出します。軽量であることはについては、Red Hatやその他に比較してであり、シンプルな設計で拡張が容易であり、あなたの構築するあらゆる種類のシステムにぴったりと適合します。

これは1コマンドで全システムのアップグレードを可能にする使いやすいバイナリパッケージシステムによる背景があります。Archはパッケージの構築を簡易にするportsライクなパッケージ構築システム(Arch Build System)を使用しており、さらに1コマンドで同期させることができます。そう、さらに1コマンドで全システムを再構築することさえ出来るのです。全てはとても単純明快に行えます。

Arch Linuxは、そのソフトウェアの最新の安定バージョンの維持に努めています。私たちは現在、ユーザおよびAL開発者により作成された拡張パッケージの成長を続けるコレクションで形成されたコアパッケージをサポートします。

単純かつ軽量を目指すため、Linuxシステムの比較的利用されない部分、/usr/docやinfoページなどは省略しました。自分の経験では、これらは滅多に使用されず、必要であれば同等の情報をネットワーク上で得ることができます。Manpageまるごとでさえ...

Arch LinuxはさらにLinuxユーザが利用可能なext3/reiserfsやdevfsのサポートのような、より新しい機能のいくつかを利用できるように努力します。Arch Linux 0.6(Widget)はデフォルトでLinuxカーネル2.6を使用しており、XFS/JFSのサポートがあります。私達はdevfsに代わるudev使用の今後を見ています。

1.2 ライセンス

Arch Linux、pacman、ドキュメンテーションおよびスクリプト類はJudd Vinetによりコピーライトされており、GNU Public Licenseのもとで許諾されています。

1.3 献辞およびフィードバック

この文書はJudd Vinet <judd@archlinux.org>の多大な貢献によるものです。小さな修正やよりよい変更および追加の類はDennis Herbrich <dennis@archlinux.org> によりなされました。修正およびフィードバックはhttp://bugs.archlinux.org/のバグトラックにより行って下さい。数え切れないほど多くの方々の寄贈と、修正や改良への示唆をサブミットすることで公式Arch Linuxドキュメンテーションの発展に寄与されていますので、これらの全てをリストするのは非現実的な方法です。しかしながら、あなたのサポート無しでは維持や改善をすることが不可能に近いものであることは誰かが知っています。

1.4 変更履歴

2004-02-21

2003-09-18 2003-08-08 2003-07-22 2003-07-20 2003-07-18 2003-07-18 2003-07-18

2 Arch Linuxのインストール

2.1 事前インストール

Arch Linuxはi686プロセッサ用に最適化され、下位のx86チップ(i386、i486、i586)上では動作しません。Pentium IIプロセッサ以上が必要な条件となります。

注意:私たちはコアパッケージセットのi586ビルドを持っていましたが、現在は活発にメンテナンスされていません。ボランティアしますか?

Arch Linuxのインストール以前に、あなたの使用したいインストール方法を決定しなければなりません。Arch LinuxはCD-ROMインストール用にブート可能な.isoイメージを、おなじくFTP-ベースのインストール用にフロッピディスクイメージを提供しています。おおよそ170MBの"ベース"と"カーネル"セットだけのパッケージを含む"ベース"ISOをダウンロードすることもできます。

あなたのパソコンにCD-ROMドライブが付いていない場合は、当然フロッピとFTPインストールで頑張ることになります。 さもなければ、以下にリストされたミラーサイトのどこからか最新のISOをダウンロードして、CDに焼くことでブート可能なArchインストールCDを手に入れます。また、あなたのダイアルアップ接続が単にうまくいかないとか、CDライターを持っていないなら、誰か他の人にコピーを燃いてもらいましょう。またはArch LinuxウェブサイトでリンクされているところからCDを購入します。

さらに、CDによるFTPインストールを行うことができます。フロッピ類はかなり遅く壊れやすいので、最終手段としてのみ推奨されています。

さらにいえば、あなたの基本システムのセットアップを行うのに最新のブランチと差はわずですので、インストールに古いISO使用を心配する必要はありません。これは、あなたがブロードバンドへの接続環境を持っていればです。

ダイレクトPPP接続の使用までは実装されてないので、インストール処理の途中でインターネットへのアクセスを確保するために必要となるpppdデーモンおよびISDNユーティリィティはrootディスクイメージに含まれていません。 FTPインストールを成功させるには、インストールされるPCから任意のリクエストが行える、インターネットおよびルートに実際に接続されるLANのゲートウェイを持っていなければなりません。 または、代わりにあなたのLAN上に適切にインストールされたFTPサーバにセットして、これからインストールすることもできます。要するに、PCにモデムを付けることができずに、あなたのプロバイダと接続することはできないということです。それは動作しません。

Arch Linuxをインストールする新人に最もやさしい方法は、ベースシステムと、あなたが必要なすべてのものをCDからオンラインで取得し、完全なシステムのアップグレードを実行して、PPP接続をセットアップしてからお望みの必要な他のパッケージを追加します。

警告
その他、Archインストールにトライする前に、Linuxがインストール中にどのハードドライブを準備するべきかについてのいくつかの質問、どんなモジュールをロードするか、また、lilo.confとrc.confのようなシステム上重要なファイルにどんな変更を加えるかを尋ねられることを知っておく必要があります。 インストーラは、既知の、そして人類に知られていないあらゆる潜在的なセットアップによって、何を入れて何を取り去るか、あなたを手取り足取りガイドしてくれません。 これは全く新人のための必要条件です。したがって、これがすでにあなたを恐れさせている場合は、完全にシステムを台無しにする前に、何かが不明のときは、IRC、フォーラムあるいは知合いのlinux経験者の上であなたが何が尋ねられるだろうかという少なくとも1つの曖昧な考えを思いつくこの全体のドキュメントおよびチェックを通して読み返して確認してください。 もちろん険しい戦いに分け入って、細かい作業を行い、それが作動するまで努力するかもしれませんが、それが警告されなかったと後で私に言わないように。それはそれほど悪くないと言いました。;)

2.1.1 必要になるもの

2.1.2 Arch Linuxの入手

Arch Linuxはダウンロードページのどのミラーサイトからでもダウンロードすることができます。FTPベースでのインストール用にフロッピディスクをダウンロードする場合は、パッケージを配布しているミラーを選択する必要があります。同様に、CDベースでのインストールでもISOイメージを配布するミラーサイトを選択します。

参考として以下にミラーサイトの一覧を示します(このリストは古くなっていますので、最新の一覧はウェブサイトで確認して下さい)。

ダウンロード ミラーサイト
http://prdownloads.sourceforge.net/archlinux/ ISO
ftp://ftp.nethat.com/pub/linux/archlinux ISO/パッケージ
ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux/ ISO/パッケージ
ftp://ftp.oit.unc.edu/pub/Linux/distributions/archlinux ISO/パッケージ
ftp://ftp.kegep.tuc.gr/archlinux ISO/パッケージ
ftp://ftp.fsn.hu/pub/CDROM-Images/archlinux ISO
http://darkstar.ist.utl.pt/archlinux ISO/パッケージ
ftp://ftp.parrswood.net/Mirrors/ftp.archlinux.org ISO/パッケージ
ftp://ftp.archlinux.de/pub/archlinux/ ISO/パッケージ
ftp://ftp.mpi-sb.mpg.de/pub/linux/mirror/ftp.ibiblio.org/pub/Linux/distributions/archlinux ISO/パッケージ
ftp://ftp.rez-gif.supelec.fr/pub/Linux/distrib/archlinux ISO/パッケージ
ftp://saule.mintis.lt/pub/linux ISO/パッケージ
ftp://ftp.du.se/pub/mirrors/sourceforge/archlinux/ ISO
ftp://ftp.tu-chemnitz.de/pub/linux/sunsite.unc-mirror/distributions/archlinux ISO/パッケージ

2.1.3 インストールメディアの入手

2.1.3.1 FTPインストール

  1. images/boot.imgをダウンロード(パスはミラーのルートに続けるものです)
  2. images/root.imgをダウンロード
  3. あなたが必要とするいずれかの追加イメージをダウンロードします

    ether_pcmcia.imgPCMCIA ユーティリティ/モジュール、Ethernetモジュール
    fs.imgXFS/JFSファイルシステム用ユーティリティ
    keymaps.img特別なキーマップ用
    raid_lvm.imgRAID/LVM2ユーティリティ/モジュール
    scsi.imgSCSIモジュール

  4. 空のフロッピディスクを探してきて、次のようにしてイメージを書き込みます

    (最初のディスクを挿入)
    # dd if=boot.img of=/dev/fd0
    (二番目のディスクを挿入)
    # dd if=root.img of=/dev/fd0
    
    (他の追加ディスクの分、繰り返す)
    # dd if=scsi.img of=/dev/fd0

    (注意:Windowsでこの書き込みを行なう必要があれば、rawrite.exeをダウンロードして使用します)

  5. FTP経由でインストールを望む場合、あとでセットアップに必要となりますので、あなたのネットワークの設定を書き留めておいてください。

2.1.3.2 CDインストール

  1. 0.6/iso/i686/arch-0.6.isoのダウンロード(パスはミラーのルートに続けます)
  2. 0.6/iso/i686/arch-0.6.md5sumのダウンロード
  3. md5sumを使用して.isoイメージの整合性の検証:

    # md5sum --check arch-0.6.md5sum
    arch-0.6.iso: OK

  4. .isoイメージを空のCD-Rに焼く(このステップはあなたの使用するos/ソフトウェアに依存します)。

2.2 CDからのインストール

インストールソースとしてCD-ROMを使用しなければ、この章をスキップしてFTPインストールの説明でうまくいくでしょう。さらに、インストールはCDを用いて作業するが、実際のパッケージをFTPより取得したいときも同様です。

  1. CDをドライブに入れてパソコンをリブートします。もちろん、BISOがCDROMブートするように設定されている必要があります。 もし、この方法を知らなければ、あなたのマザーボードまたはシステムメーカのマニュアルを参照して下さい。 CDからブートすると、ブートプロンプトが見えます。もしIDEシステムにインストールしている場合は、プロンプトに対してEnterキーを押してください。 SCSIシステムにインストールする場合は、SCSI用カーネルをロードするために"arch-scsi"と入力して下さい。 さらに、ここに必要と思われるすべてのカーネル変数を入力することができます。

    カーネルブート後は、あなたはrootシェルにいるでしょう。

  2. ある特定のモジュール/デバイスが必要なら、/lib/modulesを探してmodprobeコマンドでそれらをすぐにロードします。

  3. さらに、経験あるユーザはシェルツールを使用して、ハードドライブあるいはインストールに必要となるあらゆるデバイスを、インストーラを起動する前に準備できます。当面、対話式に手動で行う必要がなければ、単にこの手順をスキップできます。Arch Linuxのインストールメディアには、経験豊かなユーザ用にquickinstスクリプトを含んでいることに注目してください。 このスクリプトは、ユーザ指定の目標ディレクトリへパッケージの"ベース"セットをインストールします。 RAIDとLVMのように楽しみなものを持つ珍しいインストールをすれば、恐らくquickinstスクリプトを使用したいと思うでしょう。

  4. これより、インストーラプログラムを起動するために/arch/setupを実行できます。 いくつかのメッセージおよび"CD-ROM"をインストールソースとして選んだ後、インストールメニューがなければ表示されます。 正しくCDインストールをするために、これらのオプションを着実に終らせてください。 インストール処理中いつでも、セットアップが実行しているコマンドからの出力を見るために、5番目の仮想コンソールに切り替える(ALT-F5)ことができます。 (ALT-F1)を使用して、インストーラが動作する最初のコンソールに戻ってください。どのFキーでも、なにかの理由で手動操作をするために別のコンソールを開けます。

  5. ハードディスクの分割は、サブメニューへあなたを移動させます。最初の選択はAuto-Prepareであり、これは自動的にハードディスクを/boot、swapおよびrootパーティションに分割し、すべてのツリーにファイルシステムを作成します。これらのパーティションは、正規の場所に自動的にマウントされます。正確にいえば、このオプションは、最初のセクタを32MBのext2/bootパーティション、256MBのスワップパーティション、および残りをext3のrootパーティションとして作成します。実際のサイズは異なるハードディスクのデザインにより少し変わるかもしれません。 ハードドライブのパーティションに関してあまり知らなければ、このオプションを選ぶことができますが、次の警告があります。これはあなたのハードドライブのすべてのデータを消去します。インストーラからの非常に注意深く表示される警告を読み、正しいデバイスが分割されるのを確認してください。 これを確認する方法は、別のターミナルを開き(ALT-F2で入る)、cfdisk <デバイス名>として選択したデバイスの、これにはハードディスクの識別を満足させる必要があります、現在のパーティションテーブルを表示します。これを終らせるには"Q"キーを押します。 存在しないデバイス名なら(''[nothing] will be COMPLETELY ERASED! ...'')との表示があり、インストーラより示される"Device not valid"エラーに対して"YES"と入力します。これはSCSI、RAID等のデバイスであれば、必要なモジュールをすべてロードしたか確認してください。 別のターミナルに移り、問題とするコマンドをそこに出力することで、すぐにどのモジュールでもロードすることができ、それから最初のターミナルのインストーラ処理に戻れます。

    手動でパーティションを行う場合、他の二つのオプションを使用して、事前に目的のメディアを手動でハードドライブの分割およびファイルシステムのマウント位置の設定を行います。 そうでなければ、自動パーティションをした後、メインメニューへ戻ります。 

  6. ハードドライブの分割はAuto-Prepareを選択した場合はスキップします。その他の場合は、分割したいディスクを選択してcfdiskプログラムへ入り、自由にパーティション情報を編集して[Write]で書き込み[Quit]で抜けます。

  7. ファイルシステムのマウント位置の設定は、Auto-Prepareを行わなかった場合の、次のステップになります。前のメニューであなたの好みのように編集されているか、既にパーティションが存在している場合に、これを選択します。 最初の質問へは、swapとして使用するパーティションを答えます。適切なパーティションを選択し、次のステップであなたがルートパーティションとして予定しているパーティションを選択します。ファイルシステムへの質問に対して"yes"を選択すると、あなたのルートパーティションをどのファイルシステムを作成するかをすぐに尋ねられるでしょう。 後はあなたが必要な、あらゆるパーティションをマウントします。パーティションとファイルシステム(もし作成を選択していれば)、およびマウント位置を選択します。 これを終るまで繰り返し、終了を選択した時点でそれぞれの位置にファイルシステムを作成し、パーティションをマウントします。 マウントするように選んだすべてのパーティションは、どのファイルシステムで作成したらよいかを尋ねてきます。ファイルシステムを作成しないように決定すれば、インストーラがパーティションに手を加えることはありません。 ファイルシステムの作成は、このパーティション上に格納してあるすべてのデータを削除しますので、このステップは用心してください。どんなファイルシステムを使用するかについて不明の場合は、通常はext3がよい選択であると言っておきます。このメニューを実行したら、次のステップに移ります。

  8. パッケージの選択は、CDからあなたがインストールしたいすべてのパッケージを選択します。しかしながら、これを行う前にCDを自体をマウントするべきか、既にソースメディアを/srcにマウントしているを、インストーラに伝える必要があります。 あなたが必要とするものによりオプションを選択してください。 通常、これは"CD"でしょう。後でインストールCDを含むCDROMドライブを選ぶ可能性を与えられるでしょう。 メディアが見つかれば、パッケージカテゴリの選択画面に入ります。 "BASE"は常に選択される必要があり、また必要となるパッケージを含むその他のグループを選択します。 すぐ後で表示される個別パッケージ選択画面は、ここで選択するカテゴリに存在するパッケージだけを表示することに注意してください。 したがって、BASEだけを選択すれば、BASEカテゴリ以外のパッケージは追加できません。 利用可能なパッケージをすべて表示するには、すべてのカテゴリをここで選択してください。 次の質問は誤解を招きやすいものです。基本的に、選択のために選んだカテゴリのパッケージをすべて希望するかどうかを尋ねられます。 もしあなたが"YES"をここで選択すると、パッケージリスト全体が選択されますが、あなたの作業はあなたが必要としないものを選択から外すことです。 あなたが"NO"を選択すれば、BASEパッケージだけが選択され、インストールしたいすべてのパッケージを明示的に選択しなければならなくなります。 "NO"を選択するのは、新人にとって、通常はよいオプションです。 それはこの時点でなにもインストールされていませんので、あなたがインストールするすべてのベースパッケージを必要条件とします。 あなたの望みのパッケージをすべて取得するのに心配はいりいません。いちどベースパッケージがインストールされれば、あなたはそれ自身をシステムブートして、その中でさらに多くのものを容易にインストールすることができます。 このルールの唯一の例外は、インターネット接続用にセットアップする必要があるすべてのパッケージをインストールしてください。 これらのパッケージは通常、次のようになります。

    dhcpcd (基本) あなたのマシンがDHCP端末のとき追加します
    isdn4k-utils (ネットワーク) ダイアルアップ接続にISDNを使用する場合、追加します
    ppp (デーモン) ダイアルアップ接続にアナログモデムを使用する場合、追加します
    rp-pppoe (ネットワーク) ダイアルアップ接続にDSLを使用する場合、追加します

    今これらを加えたい思っていれば、いちどシステム自身を起動させて、CDからインストールできますが、ここでただ選択するより多少長くかかります。
    いったん必要、不必要のパッケージを選択し終えたら、選択画面から離れて次のステップに進みます。 

  9. パッケージのインストールは、ハードディスク上に依存性を解決して選択および他のパッケージをpacmanでインストールしはじめます。 最初のステップをスキップした場合、ハードドライブの準備、あなたの近い将来ルートとなる場所のマウントをしたかを尋ねられます。 これは、目的デバイスのファイルシステムを手動で分割して作成した場合にのみ発生します。 それらの人は、パッケージがインストールされるルートディレクトリを入力する必要があります。 デフォルトでは、インストーラは/mnt以下にマウントされます。5番目のコンソールにエラーメッセージが表示されます。 パッケージがインストールされた後に、次のカーネルのインストールに移ってください。

  10. カーネルのインストールは、どのカーネルイメージをハードディスクにインストールするか尋ねられます。あなたには、7つの選択があります。

     
    2.6 IDE IDEのみサポートする内蔵の2.6.xカーネルをインストール
    2.6 SCSI IDEとSCSIをサポートする内蔵の2.6.xカーネルをインストール。SCSIドライブにインストールするにはこれを選択
    2.4 IDE IDEのみサポートする内蔵の2.4.xカーネルをインストール.
    2.4 SCSI IDEとSCSIをサポートする内蔵の2.4.xカーネルをインストール。SCSIドライブにインストールするにはこれを選択
    2.6 SRC ワークディレクトリへ素の2.6.xカーネルソースを展開し、まさに自分のカーネルを設定/構築できるようにすべてを準備します。 これは、もちろん桁外れにそれらが何を行うものか知っています人にのみ推奨されます。カーネルをあなた自身で構築する情報を知らなければ、このオプションはほっときましょう。
    2.4 SRC 2.4.xソースであること以外は2.6 SRCのオプションと同じです
    NONE いまはカーネルのインストールをしない。どんな理由があれ、この選択はしないでください。

  11. システム環境設定 環境設定ファイルの説明については3.1の章を参照してください。ここでは、恐らく編集およびチェックに少なくともlilo.conf(LILO使用時)またはmenu.lst(GRUB使用時)を望むでしょう。

  12. ブートローダのインストールは、あなたの選択にしたがって、ハードドライブのブートローダをインストールすることができます。 これを選択する前に、適切に環境設定ファイルを編集されていることを確認して下さい。 あなたがインストールLILOに選べば、GRUBがインストールへのパーティションの選択を要求しているのに、ブートローダが環境設定ファイル中のあなたのセッティングによって自動的にブートローダとしてインストールされます。 ここでは、LILOの"ブート"オプションにどのモジュールを登録するか選択します。 通常は、選択したハードディスクのマスターブートレコードを[.../disc]として登録します。 エラーの詳細はいつもの5番目のコンソールで見ることができます。

  13. 終了です。インストールプログラムを終了して、CDをドライブから取り出し、コマンドラインからrebootと入力して、無事起動することを祈りましょう!

  14. うまくいったら、rootユーザ用にパスワードを設定し、通常のシステムユーザの追加を望まれるでしょう。 詳細については3.3の章を参照してください。その後で、あなたは恐らくインターネット接続をセットアップしたいでしょうから、使用方法については3.4の章を参照してください。

FTPからのインストール

  1. bootディスクであなたのパソコンをリブートします。 ディスクの起動音がして、LILOのブートプロンプトが表示されます。 必要なすべてのカーネル変数を入力してから、Enterキーを押し、ブート処理を続けます。

    注意: もしUSBキーボードを使用していれば、自動ブートにUSBサポートをロードする必要があります。これを行うには、NEEDUSB変数にUSBバスタイプを入力します。たとえば、UHCIバスなら、ブートプロンプトにarch NEEDUSB=uhciと入力します。rootディスクロード後に、USBアドオンディスクをロードするように促され、10秒後に自動ロードされるでしょう。 あなたの持っているUSBバスの種類が分からなければ、すべてのツリー(UHCI、OHCI、EHCI)をロードするため、NEEDUSB=autoを試して下さい。

    ブートアップ処理の途中で、次のようにプロンプトが表示されます。

    VFS: Insert root floppy disk to be loaded into RAM disk and press ENTER

    rootディスクをドライブに挿入して、Enterキーを押してください。さらにチェックが進んだ後にシェルが表示されます。インストールのためのethernetモジュールを必要となりますので、これからether_pcmciaディスクよりモジュールをロードします。 ドライブにディスクを挿入して次を実行してください。

    # loaddisk /dev/floppy/0

    しばらくして、ファイルシステムへすべてのethernetモジュールが展開されます。 このコマンドを実行しても、/lib/modules/ディレクトリが空で、2、3のエラーが返されたら、恐らくディスクが壊れている可能性が高いです。新しいディスクを作成して、再度試して下さい。 この場合は、リブートの必要はなく、ただloaddiskコマンドを再実行します。

    さらに、SCSIあるいはRAID/LVMなど必要とするすべての追加ディスクをロードします。 どのディスクに対してもloaddiskコマンドを使用します。

    ディスクをいじる代わりに、さらに2.2の章に書いたように、CDからブートしてインストール処理を始める準備をすれば、ここに戻って来れるでしょう。

  2. どのethernetモジュールを必要とするか分かっていれば、modprobeコマンドでそれをロードします。これを行わない時は次のステップへ進み、インストーラプログラムが、正しいモジュールを自動的に検索すると思います。

  3. これより、インストーラプログラムを呼び出すために/arch/setupを起動します。 いくつかのメッセージの表示後、インストールメニューに表示されているインストールソースとして"FTP"を選択します。正しくFTPインストールするために、これらのオプションを着実に終らせてください。 インストール処理中いつでも、セットアップが実行しているコマンドからの出力を見るために、5番目の仮想コンソールに切り替える(ALT-F5)ことができます。 (ALT-F1)を使用して、インストーラを動作させている第1コンソールに戻ってください。どのFキーでも、なにかの理由で手動操作をするために別のコンソールを開けます。

  4. ネットワーク環境設定は、あなたのネットワークデバイスを手動またはDHCPにより使用できるようにします。もし、まだeth0デバイスが存在していなければ、インストーラがネットワークモジュールを検索するかどうか尋ねてきます。 もし、起こってならないことでシステムを台無しにしたくなければ、ここでYESを選択し、手動に近い形でモジュールをロードしたければNOを選択します。 もしインストーラがネットワークモジュールの検索に失敗するようなら、loaddiskコマンドを事前に行ったかを確認してください。 それでもネットワークカードが見つからないようでしたら、それがLinuxでサポートされていて、適切にインストールされているか確認してください。 正しいモジュールがロードされたら、DHCPを持つネットワーク環境設定からオプションが得られます。 DHCPサーバに接続できないときには、YESを押してインストーラを中断します。 NOを選択したときは、2.1.3の章で詳しくまとめられているように、ネットワーク情報を手動で入力することになります。

  5. ハードドライブの分割のセクションは既に2.2章でステップ5で解説しています。

  6. パッケージの選択では、パッケージをどこから取得するかミラーの選択を聞いて来ます。 ずっと下へスクロールしていき、"Costum"の登録を見つけることができますので、自分のミラーアドレスを入力できます。これは"ftp://"から始まってはならず、ホスト名のみを入力します。ここではまだパスを書かず、最後尾のスラッシュを書き込まないで下さい。あなたのカスタムサーバを定義する次のステップで、パスの記述を要求されます。 正確な値は、選択したftpサーバの環境設定に完全に依存します。 サーバの選択後、パッケージ一覧が与えられます。インストールにどれを選択して、どれを選択しないかについては、2.2のステップ8を読んで下さい。

  7. パッケージのインストールはダウンロードにpacmanを利用し、サーバから選択したすべてのパッケージをインストールします。 最初のステップをスキップした場合、ハードドライブの準備、近い将来のルートとなる場所をマウントしたかを尋ねられます。 これは、目的デバイスのファイルシステムを手動で分割して作成した場合にのみ発生します。 それを行った方は、パッケージがインストールされるルートディレクトリを入力する必要があります。 デフォルトではインストーラは/mnt以下にマウントされます。5番目のコンソールにエラーメッセージが表示されます。 パッケージがインストールされた後に、次のカーネルのインストールに移ってください。

  8. 設定ファイルの編集 環境設定ファイルの説明については3.1の章を参照してください。ここでは、恐らく編集およびチェックに少なくともlilo.confを望むでしょう。

  9. ブートローダのインストールは、あなたの選択にしたがって、ハードドライブにGRUB(デフォルト)またはLILOのどちらかのブートローダをインストールすることができます。これを選択する前に、適切に環境設定ファイルが編集されていることを確認して下さい。 あなたがインストールLILOに選べば、GRUBがインストールへのパーティションの選択を要求しているのに、ブートローダが環境設定ファイル中のあなたのセッティングによって自動的にブートローダとしてインストールされます。 ここでは、LILOの"ブート"オプションにどのモジュールを登録するか選択します。 通常は、選択したハードディスクのマスターブートレコードを[.../disc]として登録します。 エラーの詳細はいつもの5番目のコンソールで見ることができます。

  10. カーネルのインストールは既にCDROMインストールで説明してあります。詳細については2.2章のステップ10を参照してください。

  11. 終了です。インストールプログラムを終了して、CDをドライブから取り出し、コマンドラインからrebootと入力して、無事起動することを祈りましょう!

  12. うまくいったら、rootユーザ用にパスワードを設定し、通常のシステムユーザの追加を望まれるでしょう。詳細については3.3の章を参照してください。その後で、あなたは恐らくインターネット接続をセットアップしたいでしょうから、使用方法については3.4の章を参照してください。

3 システム環境設定

これらはArch Linuxの中核となる環境設定ファイルです。 あなたを支援するどんなGUIアプリケーションもありませんので、テキストエディタでこれらのファイルを手入力で快適に編集する必要があります。

3.1 環境設定 ファイル

3.1.1 /etc/rc.conf

 

これはArch Linuxでのメインの環境設定ファイルです。あなたのキーボード、タイムゾーン、ホスト名、ネットワーク、実行時デーモンおよびブート時のロードモジュール、その他。このファイルに書かれていることを読み、確実にそれらを理解する必要があります。

rc.confの設定
KEYMAP ブート時にloadkeysプログラムでkeymapを定義のロード。可能なキーマップは/usr/share/kbd/keymapsの中で探せます。
CONSOLEFONT ブート時にsetfontプログラムによりコンソールでのフォントの定義のロード。可能なフォントは/usr/share/kbd/consolefontsの中で探せます。
TIMEZONE あなたのタイムゾーンの指定。可能なタイムゾーンは/usr/share/zoneinfoディレクトリのzoneinfoファイルへのパスに関連付けられます。たとえば、ドイツのタイムゾーンは"Europe/Berlin"であり、これは/usr/share/zoneinfo/Europe/Berlinファイルに連携します。
HARDWARECLOCK "UTC"はあなたのBIOS時計がUTCまたはGMTに、あなたのBIOS時計が現地時間にセットされるなら"localetime"のどちらかを設定します。 OSをインストールする場合、UTC BIOS時間を正確に扱うことができない、Win95/98のようにlocaletimeをここで選択します。そうでなければ、夏時間の問題がなく多少ポジティブな側面を持つUTCを参照するようにします。
USECOLOR ブート時のステータスメッセージのカラー化を可能(または不能)にします。
HOSTNAME ドメイン部なしのマシンのホスト名をセットしてください。 文字、数字およびダッシュのような少数の"普通の"特殊文字であるかぎり、これは全くあなたの選択です。ここでは、あまり創造性を発揮しないでください。
MODULES Array このアレイには、modprobe.conf(カーネル2.4.xを使用していればmodules.conf)のようなハードウェアデバイスにそれらを結び付ける必要のないブート時にロードしたいモジュール名を一覧できます。ここでは単にモジュールの名前を追加し、modprobe.confに必要な任意のオプションを記入します。
INTERFACES Array ここには、ネットワークインターフェース用の設定を定義します。 デフォルト行および含まれているコメントで、設定方法について十分に説明してあります。 デバイス環境設定を行うには、DHCPを使用しない場合、名称は環境設定された時と同等のデバイス名称と等しい変数の値、あなたがシェル中でデバイスを手動で環境設定した場合は、ifconfigコマンドの後に入力される入力値です。
ROUTES Array 任意の名前を持つ自分のネットワークルートをここで定義することができます。 アイデアを得るためにサンプルを見てください。 基本的には、引用部は"route add"コマンドで実際に書かれたものを渡しますので、あなたがここで何を書くべきか分からなければ、man routeを読む必要があります。
DAEMONS Array この一群は/etc/rc.dに含まれるスクリプトの名称の一覧で、ブート時に開始されるようサポートします。 !が前に付く場合は、それは実行されません。通常のシステム起動にデフォルトを変更する必要はありません。

3.1.2 /boot/grub/menu.lst

GRUBはArch Linuxのデフォルトのブートローダです。 GRUBを使用したい場合は、あなたのブート設定に適応させるようこのファイルをチェックして編集します。それ以外は、LILO環境設定を読んで下さい。

GRUBの環境設定は簡単で、大きなハードルはDevFSと/devと異なるスキームを指定する別のデバイスをいまだに使用していることです。 あなたのハードディスク全体は"(hd0)"、"(hd1)"等で参照され、連続する番号として、IDEバスの中の発生順に付けられます。これと同じようにDevFSのディレクトリでは"disc0","disc1"等となります。 パーティションは"(hd0,0)"、"(hd0,1)"のようにしてあり、ここでの0は最初のパーティションを示します。 少ない置き換えサンプルは、理解を助けるほどにはデフォルトのmenu.lstに含まれません。

一旦デバイス命名規則の概念を理解したら、すべてのあなたのブートセクション用のよい"タイトル"を選ぶ必要があります。 デバイスのパラメタとして、ブート時に/をマウントする"root"オプションに、正しいパーティションを書き込み、"kernel"行を作成して、カーネルが任意のブート変数と同様に位置するパーティションおよびパスを書き込みます。 デフォルトは明確ですので、パーティション情報がrootおよびkernel行で正確であるか単にチェックします。

他のOS用の環境設定をするには、GRUBのオンラインマニュアルを参照してください。

3.1.3 /etc/lilo.conf

これはLILOブートローダ用の環境設定ファイルです。 これをチェックしそれが正しいかどうか確認してください。 ここでは補足としてLILOドキュメントを参照してください。 チェックするべきは、イメージセクションにある"root="行、および始めにある"boot="行です。 root行は、rootファイルシステムとしてブート時にマウントされるデバイスを指定します。 何をここに入力すべきか知らなければ、別のターミナルへ移動して、現在マウントされているデバイスのリストを見るために"mount"と入力し、またマウントされたデバイス名を表示された行の" on /mnt タイプ [...]"で探します。 デバイスは、まさしくこの行の初めのlilo.confのroot行に正確に入力される必要があります。必要ならば変更してください。

ブート行はほとんどの場合はOKでしょう。 もしあなたがマルチOSで風変わりなブートマネージャのセットアップのことを考えてなければ、ここで参照付けられたデバイスは、あなたのroot行と同じく"part1"や"disc"という語で終了しない同一のディスク番号であるべきです。 これは全体としてシングルパーティションでなくディスクに参照付けて、あなたが通常望むマスターブートレコードの中でLILOに書きます。 そうでなければ、別のOSの上書きされたブートセクタをその後修復できます。 安全性から新しい行の"prompt"オプションの下に、"lba32"オプションを追加しましょう。これはいくらかのデザイン上の問題を防ぐでしょう。

ある場合に、あなたのBIOSでLILOがブートアップせず、エラーコードを無限に溢れ出します。 ほとんどの場合、lba32オプションを加えることを忘れたか、恐らくあなたのハードウェアの設定が少し特別で、cdromドライブがメインのマスタ、および第2のスレーブにインストールしたハードディスクになっているときにあります。 BISOはあまりにも敏感で、ブートアップを妨げます。 大事を取って、あなたのIDEバス上のインストールドライブのプライマリマスタを作ってください。 IDEおよびSCSIの混合システムを持っていれば、動作マッピングを提供するために、恐らくLILOのディスクとBIOSのオプションによるテストが必要となるでしょう。 ディスクドライブ番号は、0x80から始めまり、BIOSにより連続して付けられます。 ラッキーな場合は、あなたのSCSIコントローラが、どのBIOS IDドライブがどれを持っているかあなたに知らせますが、通常はそうではありません。 番号がどうやって有効ドライブに付けられるかはBIOSに依存します。したがって、最悪の場合、それが作動するまではただ推測するだけです。 一般的にdisk行は次のように見えます。

boot=/dev/discs0/disc0/disc
disk=/dev/discs0/disc0/disc bios=0x80

"disk"オプションはlinuxに既知のディスクデバイスにBIOS IDをマップします。 他のものがうまく行かない場合、これらが動く保証がまだないことに注意し、あなたの試みがすべて失敗する場合でも絶望せずに、まったく普通の方法であなたのハードウェアを再整理してみてください。 この項目では、あまりにうまく行かず、またここに説明されるために特殊扱いを必要とします。ほとんどの場合、lba32オプションでとにかく十分でしょう。 古いハードドライブは、通常言われているように、実行するのにもう少し"特別の注意"を払う必要があります。

レスキューディスクだけを持つLILOブートセクタを改造する方法は、このドキュメントの最後の方にある6.7の章で説明しています。

3.1.4 /etc/hosts

これはあなたのネットワークに他のコンピュータのホスト名/ipアドレスペアを記述する場所です。 ホスト名がDNSの一部でない場合、ここに記述することができます。 通常はここで何も変更する必要がありませが、あなたのネットワークインターフェースのIPの名前解決のために、このファイルにマシンのホスト名およびホスト名+ドメインを加えたいと思うでしょう。 何を行えばよいか分からないときは、man hostsを読むまでこのファイルは放っておきましょう。

3.1.5 /etc/fstab

あなたのファイルシステムの設定/マウント位置はここに保存して下さい。インストールプログラムはあなた用の登録を作成していますが、それが正しいかどうか確認して下さい。

3.1.6 /etc/modprobe.conf

これは2.6.xカーネルのみ使用します。

システムデバイス用にモジュールをロードする必要のあるものをカーネルに伝えます。 たとえば、ネットワークを開始する場合に、カーネルにRealtek 8139 ethernetモジュールをロードさせるよう、次の行を使用します。

alias eth0 8139too

3.1.7 /etc/modules.conf

これは2.4.xカーネルのみ使用します。

システムデバイス用にモジュールをロードする必要のあるものをカーネルに伝えます。 たとえば、ネットワークを開始する場合に、カーネルにRealtek 8139 ethernetモジュールをロードさせるよう、次の行を使用します。

alias eth0 8139too

3.1.8 /etc/resolv.conf

このファイルは、ネームサーバのセットアップに使用します。それは次のようになっていなければなりません。

search domain.tld
nameserver 192.168.0.1
nameserver 192.168.0.2

domain.tldとIPアドレスはあなたの設定に置き換えて下さい。 サーチドメインと呼ばれるものは、不適格なホスト名に自動的に追加するデフォルトドメインを指定します。 "ping myhost"は上記の値では、"ping myhost.domain.tld"のようになります。 通常、これらの設定はとても重要というわけでなく、また、ほとんどの人は現状のままで放っておくべきです。 あなたがDHCPを使用すれば、このファイルがブート時に正確な値を自動的に与えられるでしょう。その結果、このファイルのすべてを無視することができます。

3.1.9 /etc/conf.d/*

このディレクトリにいくつかのデーモンスクリプトは、いくつかの多少有用なデフォルト値を含んだマッチング用設定ファイルを持つでしょう。 デーモンが開始する時、まずこのディレクトリ内のconfigファイルをソースに設定し、そして次に/etc/rc.confをソースとします。 これは、単に適切な変数値のセットにより、あなたがrc.confの中のデーモン環境設定オプションをすべて簡単に中心に集めることができるか、この問題へのローカルに分散されたアプローチを好めば複合ファイル上のあなたの環境設定を分割することができることを意味します。 それがすべてちょうど単純にスクリプトを書くことである場合、人生は大きくありませんですか。

3.2 ブートスクリプト

Arch Linuxは*BSDによく似た、かなり単純なブートアップシーケンスを使用します。 最初にブートスクリプトは/etc/rc.sysinitを起動します。 それが終ると、/etc/rc.multiを呼び出します(通常ブート時)。 最後に、/etc/rc.localのスクリプトを実行します。 runlevel 1のシングルユーザーモードで開始されたときは、/etc/rc.singleスクリプトが、/etc/rc.multiの代わりに実行されます。 このアプローチArchにより、あらゆるランレベル用にブートアップシーケンスを単に実際に定義する/etc/rc?.d/ディレクトリ中の無限のsymlinkコレクションが2つのランレベルを持っていることを知らないでしょう。

3.2.1 /etc/rc.sysinit

システムブートスクリプト。これはファイルシステムのマウント、devfsdの起動、swapの活性化、モジュールのロード、国際化用パラメタ等、ブート時に重要なものとなります。決してこのファイルを編集しないで下さい。

3.2.2 /etc/rc.single

シングルユーザのスタートアップ。通常のブートアップには使用しません。 たとえば、カーネル変数が"1"、あるいはマルチユーザで操作中に"init 1"コマンドを実行した場合、システムはシングルユーザーモードで開始するこのスクリプトは、デーモンが裸の最小のものを除いて起動していないことを確認します。syslogd、klogdおよびdevfsd。 シングルユーザモードは、リモートのユーザがデータの損失やダメージにより。なにもできなくなったときなど、システムに何かセンシティブな変更を加える必要があるときに有用となります。 通常、デスクトップユーザにとって、このモードは不快なものとして役立ちません。 このスクリプトもまた、決して編集してはいけません。

3.2.3 /etc/rc.multi

マルチユーザのスタートアップスクリプト。 これは、DAEMONS配列の中で設定したデーモンをすべて開始し、(/etc/rc.confに設定。3.1.1を参照)、次に/etc/rc.localを呼び出します。 このスクリプトも編集しないでください。

3.2.4 /etc/rc.local

ローカルのマルチユーザスタートアップスクリプト。 ブートアップ処理の終わりに、システムで実行したいすべての最終コマンドを置くのに都合がよいところです。 これは最後の、そして唯一の直接編集できるスクリプトであり、このスクリプトには何を加えようと大体において自由です。 しかしながら、モジュールをロードおよび同様のシステムタスクは、しばしばrc.localファイルに置かれるよりも都合のよい場所があることに注意して下さい。

3.2.5 /etc/rc.shutdown

システムシャットダウン用スクリプト。デーモンの停止、ファイルシステムの切り離し、swapを非活性化等。編集してはいけません。

3.2.6 /etc/rc.d/

このディレクトリは、rc.confのDAEMONS配列が参照するデーモンスクリプトを含んでいます。 システムがあなたのシステムのデーモン管理用にブートされる場合、このスクリプトを使用してもかまいません。 たとえば、コマンド、

/etc/rc.d/postfix stop

は、pstfixデーモンを停止します。 もちろん、適切なパッケージがインストールされた場合、このスクリプトはただ存在するだけです。 基本的なシステムインストールでは、この中に多くのスクリプトはありません。 秘伝を受けた人にとって、このディレクトリは、他のディストリビューションの/etc/rc3.d/および/etc/init.d/ディレクトリをすべてのsymlinkの混乱なく1つに合わさったものです。

3.2.7 全般

ブートスクリプトは、/etc/rc.confファイルで見つかったユーザ設定、さらに、/etc/rc.d/functionsスクリプトに定義された一般的な機能のセットを使用しています。 自分のデーモンファイルを書く予定があれば、このファイルおよび既存のデーモンスクリプトを見ることを考慮してください。

注意: Archのrc.dスクリプトは2つのランレベル、マルチユーザおよびシングルユーザモードをのみサポートであり、最初のものが通常頻繁に使用される唯一のモードです。 理論上、この制限を撤去するrc.sysinitスクリプトおよびinittabをハックするのはとても簡単ですが、経験を積んだ、あるいは少なくとも果敢なユーザにより捨てられます。

3.3 ユーザ管理

ユーザとグループは、util-linuxパッケージの中で提供される標準コマンドで追加および削除ができます:useradd, userdel, groupadd, groupdel, passwd, およびgpasswd。 一般的には次のような方法でユーザを追加します。

# useradd -m -s /bin/bash johndoe
# passwd johndoe

最初のコマンドはユーザjohndoeをシステムに追加し、/home/johndoeの彼のホームディレクトリを作成し、いくつかのデフォルトのログインファイルを彼のホームディレクトリに置きます。 彼のログインシェルは/bin/bashにセットされます。 次のコマンドは、ユーザjohndoeのパスワードを聞いてきます。パスワードはアカウントを活性化するために必要となります。

useraddコマンドの代わりに、adduserスクリプトで、さらにシステム上の新規のユーザを対話式に作ることができます。

これらのコマンドについてより詳細には、manpagesを参照してください。 日々の仕事のため1人または複数の一般ユーザを作成するのは、完全に利用可能なセキュリティ機能を使用し、かつ正常な仕事のためにrootユーザを使用して潜在的な損害を最小限度にするのはよい考えです。

3.4 インターネットアクセスの環境設定

ダイアルアップ問題のための開発者の不足により、インターネットにArchをダイアルアップで接続するのは基本的なサポートのみとなります。 すべて可能ならば、その後、Archボックスの上で、専用ルーターをセットアップしてデフォルトゲートウェイとして使用することもできます。

どなたかダイヤルアップユーザ用のHOWTOを書く時間および意向がある場合は、私たちにそれを提供してください!

3.4.1 アナログモデム

ヘイズモデム、Externalモデム、アナログモデムを使用できるようにするには、pppパッケージをインストールする必要があります。 あなたの必要およびman pppdに応じて/etc/ppp/optionsファイルを修正してください。 初期接続が確立された後、ISPにユーザー名およびパスワードを提供するためにチャットスクリプトを定義する必要があります。 pppdとchatのためのmanpagesは、経験済みか頑固なら、接続を完了するために充分なサンプルを持っています。 devfsでは、あなたのシリアルポートは通常/dev/cua0および/dev/cua1です。

3.4.2 ISDN

ISDNの設定は3つのステップで終了します。:

  1. インストールおよびハードウェア設定
  2. インストールおよびISDNユーティリティの設定
  3. プロバイダ設定の追加

現在のArch保有のカーネルは、必要なISDNモジュールを含んでおり、これは、変わったISDNハードウェアを使用していなければ、あなたがカーネルを再コンパイルする必要がないだろうということを意味します。 あなたのマシン中のあなたのISDNカードあるいはUSB ISDNボックスの中に詰め込んでインストールした後に、modprobeをモジュールにロードすることができます。 パッシブISDN PCIカードはほぼすべてハンドル付きのbuです、"hisax"モジュールはタイプおよびプロトコルの2つのパラメータを必要とします。 あなたの国が1TR6標準を使用すれば、"1"にプロトコルをセットすることができます、それがEuroISDN(EDSS1)を使用する場合、"2"、引っ掛けられれば、"3"1つの、したがって、米国NI1のためのDチャネルのない専用線および"4"を呼びました。 あなたが米国NI1を使用すればコロンによってseperatedされてセットするMSNにSPIDを加えなければならないことに注意してください。 それらのすべてのセッティングに関する詳細、およびそれらをセットする方法は、さらにISDN FAQおよびカーネル・ドキュメンテーションに含まれています、利用可能なオンライン、そして参考のためのISOの上で。 type変数、はあなたのカードに依存します。あらゆるタイプのリストは"README.HiSax"カーネルドキュメントで見つかることです。 あなたのカードを選んで、このような適切なオプションをモジュールにロードしてください。

# modprobe hisax type=18 protocol=2

これは、EDSS1プロトコルとしてドイツの中で使用されて、私のELSAクイックステップ1000PCIのためのhisaxモジュールをロードするでしょう。 よいデバッグする出力を得るべきです、あなたの/var/log/debugファイルに、カードがアクションのために準備されるのを見るべきファイルをデバッグします。 USB ISDNBoxを用いて動作させる前に、恐らくあるusbモジュールをロードする必要があるだろうということに注意してください。そのときロードするべきモジュールを私は知らずに、残念です。 のカードがあるセッティングで作動することを確認してから、/etc/modprobe.conf(またはカーネル2.4.xを使用していれば/etc/modules.conf)にこのようにモジュールオプションを加えることができます。

alias ippp0 hisax
options hisax type=18 protocol=2

代わりに、"options"行、またrc.confの中のあなたのモジュール配列に"hisax"を加えます。 あなたの選択は、実際に、しかしそのサンプルは、実際に必要となるまでモジュールがロードされないだろうという長所を持ちます。

あなたは、動作してサポートされているハードウェアを持っているはずです。 これから、実際にそれを使用するためにユーティリィティを必要とします。isdn4k-utilsパッケージをインストールし、isdnctrlのmanpageを読むことで、あなたはスタートさせるでしょう。 manpageをさらに読み進めると、いくつかのサンプルと同様にisdnctrlによって自動的に解析できる環境設定ファイルを作成方法で説明を見つけるでしょう。

isdnctrlユーティリィティをもつISDNカードを設定した後、PHONE_OUT変数で指定した機器へダイヤルできますが、ユーザー名およびパスワードログインに失敗するでしょう。 動作するようにするため、正常なアナログのPPPリンクのように/etc/ppp/pap-secretsまたは/etc/ppp/chap-secretsに、あなたのユーザ名およびパスワードを加えますが、これはISPがどのプロトコルを使用するかに依存します。 疑問があるときは、両方にデータを入れてください。

3.4.3 DSL(PPPoE)

DSLオンライン接続を使用できるようにする前に、DSLモデムに接続されると思われるネットワークカードを物理的にインストールしておく必要があります。 あなたのPC自身へダイヤルするものとする場合これらの指示があなたにとって単に適切であることに注意してください。 最近非常によく売られているある種のDSLルーターを使用すれば、正確なデフォルトゲートウェイを決して定義する必要がありません。 modules.confあるいはモジュール配列にあなたのネットワークカードを追加したあと、 rp-pppoeパッケージをインストールし、接続を設定するために adsl-setupスクリプトを実行します。 データをすべて入力した後、"/etc/rc.d/adsl start"でダイヤルインすることができ、/etc/rc.d/adsl stopでログアウトすることができます。 このセット・アップは通常やや容易で素直ですが、このパッケージに含まれたmanpagesを自由に読むヒントにして下さい。 あなたがブート時に自動的にダイアルしたい場合は、あなたのDAEMONS配列に"adsl"を加えてください。

4 パッケージ管理

4.1 pacman

Pacmanはあなたのシステムにインストールされたすべてのソフトウェアを追跡するパッケージ管理システムです。 これは単純な依存性のサポートを持っており、すべてのパッケージに標準のtar-gzアーカイブフォーマットを使用します。 ある共通タスクは、長形式、短形式のオプションで各々のコマンド以下に説明されます。pacmanのオプションの最新の説明は、man pacmanで読んで下さい。

4.1.1 パッケージファイルから新規パッケージの追加

pacman --add foo.pkg.tar.gz
pacman -A foo.pkg.tar.gz

これは、システムにfoo.pkg.tar.gzパッケージをインストールします。 依存性を解決できないとき、pacmanはエラー終了し、依存性の自動的解決を行わずに、失われた依存性を表示します。この機能の説明は同期オプションを見てください。

4.1.2 パッケージファイルでのパッケージ更新

pacman --upgrade foo.pkg.tar.gz
pacman -U foo.pkg.tar.gz

本質的には--add命令と同じですが、追加の時間をかけずに、既存のインストールパッケージをさらにアップグレードします。

4.1.3 パッケージの削除

pacman --remove foo
pacman -R foo

fooというパッケージに属するファイルをすべて削除します。バージョン番号の追加は必要ありません。

4.1.4 パッケージリストの再表示

pacman --sync --refresh
pacman -Sy

これは、/etc/pacman.confファイルに定義されたリポジトリから新しいマスターパッケージリストを取り出し、データベースエリアへそれを解凍します。 --sysupgradeを使用する前に、最新のパッケージの取得を確認するために使用すべきです。 あなたのpacman.conf設定に依存するこの機能は、インターネットアクセスが動作することが必要条件となります。 このオプションはDebianのapt-get updateコマンドに似たものです。

4.1.5 システムの更新

pacman --sync --sysupgrade
pacman -Su

このコマンドは、--refreshコマンドでダウンロードされるマスターパッケージリストにあるバージョンと、ローカルのパッケージバージョンとの比較で、システム上の旧パッケージをすべてアップグレードします。 システムを最新状態するために、これを時々実行するのはよい方法です。 このコマンドが、暗黙にマスタパッケージのリストをリフレッシュしないことに注意してください。したがって、両方のコマンドを組み合わせることは、より賢明です。

pacman --sync --refresh --sysupgrade
pacman -Syu

これらのオプションで、pacmanは自動的に最新のマスターパッケージリストを検索し、依存性をすべてautomagicallyに解決されて、すべてのシステムを最新のパッケージにアップグレードします。

4.1.6 リポジトリからの パッケージの追加/更新

pacman --sync foo
pacman -S foo

インストールパッケージfooと、それに必要となるすべての依存性を完全に検索します。 どんなsyncオプションも使用する前に、パッケージリストをリフレッシュしたかを確認するか、インストールの試みの前にオプションに--refreshまたは-yを加えてください。 --addと異なり、--syncオプションはインストールとアップグレードするパッケージの間に差違はありません。 あなたのpacman.conf設定に依存するこの機能は、インターネットアクセスが動作することが必要条件となります。

4.1.7 インストール済みパッケージの一覧

pacman --query
pacman -Q

システムにインストール済みの全パッケージの一覧を表示します。

4.1.8 指定のパッケージがインストールされているかのチェック

pacman --query foo
pacman -Q foo

名前を全リストからgrepする代わりに、queryコマンドでパッケージ名を前方一致で探しすことができます。このコマンドは、インストールされる場合、fooパッケージの名前およびバージョンを表示し、そうでなければなにもしません。

4.1.9 指定のパッケージ情報の表示

pacman --query --info foo
pacman -Qi foo

インストール済みパッケージfooの情報を表示します(サイズ、インストール日付、ビルド日付、依存性、矛盾性等)

4.1.10 パッケージに含まれるファイル一覧の表示

pacman --query --list foo
pacman -Ql foo

パッケージfooに属するすべてのファイルを一覧します。

4.1.11 どのパッケージが特定のファイルに依存するかの検索

pacman --query --owns /path/to/file
pacman -Qo /path/to/file

このクエリは、変数に与えられたフルパスに参照付けられたファイルを含むパッケージの名称およびバージョンを表示します。

4.1.12 更なるpacmanの概要

さらに多くの命令や文法については、pacman manpage(およびpacman --help)を参照して下さい。 さらにグローバルオプション、パッケージリポジトリ、ダウンロードサーバなど環境設定ファイル(/etc/pacman.conf)を設定してください。 重ねて言いますが、manpageはここであなたの友達です。

4.2 他のパッケージリポジトリへのアクセス

パッケージリポジトリはローカルのディレクトリ、あるいはリモートのFTP/HTTPサーバ上にあるパッケージおよびパッケージメタ情報のコレクションです。 Archシステムでのデフォルトのリポジトリは"current"リポジトリです。 これはほとんどのソフトウェアの最新のバージョン、および適正な範囲の最先端システムで最新を維持しています。 (恐らく)より安定状態のソフトウェアを維持したければ、代わりに"release"リポジトリを使用するため、/etc/pacman.confを修正して下さい。 決して"relase""current"を同時にコメントを外さないで下さい。それで簡単にに壊われます。

多くのユーザが、Archのコアパッケージセットの部分にない、より多くのパッケージを含む"extra"のパッケージリポジトリを活性化するよう決定します。 あなたの/etc/pacman.confの中の該当行のコメントを外すことで、このリポジトリを活性化することができます。 このリポジトリはデフォルトで0.6が活性化されています。

さらに、自家用パッケージリポジトリの構築、メンテナンスおよび使用を行えます。 使用方法については、pacman manpageを参照してください。

5 Arch Build System (ABS)

5.1 バイナリ vs. ソース

パッケージの側面から、pacmanはバイナリ側での答え、ABSはソース側からの答えです。これはソースコードから自家用のArch Linuxパッケージを構築するのを助けます。 一般的な手順は次のようになります。

  1. ABSツリーをサーバに同期させる (rootでabsを実行)
  2. 作成しようとするパッケージの名称で/var/abs/localの中に新規ディレクトリを作成する。
  3. /var/abs/にあるPKGBUILD.protoのプロトタイプをprotoサフィックスを取り除いてコピーし、新規パッケージ用に編集する
  4. 作業ディレクトリでPKGBUILDファイルとともにmakepkgを実行する。
  5. pacmanを使って新しく作成したパッケージをインストールする。
  6. 自慢するために友人にパッケージを送信する(もしくは彼/彼女がマスタABSに追加できるようにArcherに寄付する)。

5.2 ABSツリーの同期

rootになってabsスクリプトを実行することで、/var/absにあるすべてのPKGBUILDファイルを同期することができます。 これにはcvsupパッケージが操作に必要となりますので、まだインストールていなければエラーメッセージが出ます。 中間転送にcvsを使用することも許しており、以下のABS内の異なるバージョンのツリーを可能とします。このために/etc/abs/supfile.archの内容を設定することができます。たとえば、デフォルトのsupfileは最先端の"current"パッケージツリーをトレースするようにセットされています。"stable"パッケージツリーは各リリースで固められており、"current"のように変動的ではありません。さらに、特定のバージョンをフォローすることもできます。詳細な情報はsupfilesのコメントを参照してください。

ABSは複数リポジトリをサポートしており、/etc/abs/abs.confの記述の中で使用、不使用を設定できます。デフォルトではcurrentおよびextraであり、unstableは不可です。

q /etc/abs/supfile.extraファイルを参照して下さい。これはメインのリポジトリに含まれないすべての非公式なビルドスクリプトへのアクセスを提供します。もし、このリポジトリの使用したくなければ、このファイルは削除しても構いません。

5.3 自家用パッケージの構築方法

構築手順についてはmakepkgのマニュアルページに説明しています。自家用パッケージの構築についはこれを参照してください。

5.4 パッケージ・ガイドライン

Arch Linux用にパッケージを構築するとき、とりわけ自分の新規パッケージをArch Linux に寄与したいと考えているなら、以下のパッケージ・ガイドラインを遵守してください。

5.4.1 パッケージ命名規則

5.4.2 ディレクトリ

5.4.3 makepkgの役割

あなた自身のパッケージを構築するのにmakepkgを使用する場合、以下のことを自動的に行います。

  1. もし依存するパッケージがあるなら、インストールされているかをチェックします
  2. サーバからソースファイルをダウンロードします
  3. ソースファイルを展開します
  4. 必要なパッチを当てます
  5. 疑似rootの中でソフトウェアをビルドしてインストールします
  6. usr/doc、usr/info、usr/share/docおよびusr/share/infoをパッケージから削除します
  7. バイナリからシンボルを取り除きます
  8. ライブラリからデバッグシンボルを取り除きます
  9. 各パッケージに含まれるパッケージメタファイルを生成します
  10. 疑似rootを圧縮してパッケージファイルへ入れます

5.4.4 その他

5.4.5 パッケージのサブミット

どのパッケージも、サブミットする前に次のことについて注意してください。

  1. PKGBUILDファイルの先頭に、次のフォーマットでコメントを入れて下さい。

    # Contributor: あなたの 名前 <メール@アドレス>

  2. パッケージの依存性を検証してください(たとえば、lddコマンドを直接実行する、スクリプトによるチェックツールの使用等)。
  3. すべてのパッケージは新規に構築したパッケージ、PKGBUILD、ファイルリストおよび追加のファイル(パッチ、インストール等)をそれ自身に含む圧縮したtarファイルとするべきです。そして、その名称は少なくともパッケージ名を含まなければなりません。
  4. ftp.archlinux.org/incomingに圧縮したtarファイルをアップロードします。
  5. パッケージを行け取ると、パッケージのメンテナに割り当てられ、彼がガイドラインに沿ったものであるかを検査します。質問がある時に、メンテナは明確にするためにあなたへメールをします。

6 よくある質問と回答:FAQ

注意:自己言及的なFAQはそれをすべて始めた人の観点から記述しています。Judd apeiro Vinet

6.1 なぜArch Linuxと呼ぶのでしょう?

dictionary.comより:

 arch (arch)
 adj.

 1. Chief; principal: their arch foe.
 2. Mischievous; roguish: an arch glance.

私は本の中で有名な用語"大敵"に遭遇しました。また、最新情報を与える"アーチ"が"主要な"、"主な"など最初に特に来るものを意味します。 Arch Linuxに関して、恐らく全く正しくないかもしれません。しかし、私はそれを誇りにしています。 さて、第2の定義は適合するかもしれないし、適合しないかもしれません;私は、あなたがどのようにコンピュータを使用するかに依存すると推測します。;)

幾何学的な構造物として、Archは大きな重量を支え、形状がとても頑強なので、広いスペースにまたがる最も効率的な手段のうちの1つです。

6.2 Arch Linuxの全容は? 何をしようとしているの?

Arch Linuxはそれを要約するために私の完全なディストリビューションです。私は2つの理由のためにそれを構築し始めました:
  1. 私は、私の理想に会った他のディストリビューションを見いだせませんでした。いくらかは私が望んだものに非常に近いものでした。しかし、ヘルプする以上に痛むように見えた悩ます奇癖、追加の複雑さがありました。
  2. 楽しみのために、そして、これまで私が非常に多くいただいたものを、フリーソフト・コミュニティへ少しお返しするために。

Arch Linuxは速い。パッケージはi686最適にコンパイルされています。

Arch Linuxは小さい。もしあなたがそれらを求めなければ、必要としないインストールは行いません。パッケージは、不快物や混乱を取り除いて、クリーンなインストールや削除を行えます。/usr/docですらありません。もし必要なら、私はそれをネット上で読めますので、私には/usr/docは不必要です。

Arch Linuxは単純です。ユーティリィティおよびパッケージ管理プログラムはほとんどのものは、パッケージ管理自体を除いてbashで書かれています。所蔵物は、Arch Linuxでの調整は柔軟で簡単です。 パッケージデータベースは、プレーンテキストフォーマットのみです。initスクリプトは単純なBSDスタイルで、クリーンな出力およびデーモンの開始/停止デーモンの方法は容易です。ユーザが自分のパッケージの構築を支援するように、パッケージビルドシステムは単純です。Archビルドシステムは一つのmanpageの中で要約してあります("man makepkg")。

Arch Linuxは柔軟です。その単純性により、ALは異なるタスクに適して容易に拡張または修正できます。

6.3 パッケージのインストール中に、pacmanファイルがパッケージセットにパッケージBがないのでパッケージAの依存性を解決できません

もし何かがひどく壊れておらず、複数の人によって似通ったようなことがすぐに報告されてなさそうなら、おそらく、あなたのターゲットパーティションを適切にマウントするのを忘れています。 これはpacmanに、初期のramdiskへパッケージデータベースを展開しますので、それはとても簡単に満杯になり、最終的にこのエラーに結びつきます。 あなたの選択を適用するために、ファイルシステムマウントポイントメニューにより提示された"CANCEL"オプションではなく"DONE"を使用することを確認してください。あなたが自動準備機能を使用すれば、このエラーは起らないはずです。バグとしてこれを報告してください。

6.4 ブート中に次のメッセージが表示され、カーネルパニックになります。''Unable to open initial console''

恐らく自分のカスタムカーネルをコンパイルし、DevFSサポートを含むことを忘れました。あなたのカーネルを設定する場合、"/dev file system support"そして"Automatically mount at boot"の問を確認してください。さらに、devfsオプションを見るために"Prompt for development and/or incomplete code/drivers"を必要とするでしょう。

6.5 pacman -syncで、インストールCDのパッケージをインストールするには (それは、私の依存性を解決します)?

それらをダウンロードする代わりにCDからのパッケージインストールをしたい場合、インストールCDをどこかにマウント(例, /mnt/cd)してから、/etc/pacman.conf中の"current"行以下に次の行を加えます。

Server = file:///mnt/cd

/mnt/cdはあなたの選択したマウントポイントに置き換えて下さい。 そのうえで、いつものようにpacman --syncを行います。これでパッケージ用最初のディレクトリとして/mnt/cdをチェックします。

6.6 インストール中にどうやって複数のスワップパーティションを作成しますか?

当然、複数スワップパーティションを作成して使用したければ、自動準備機能は使用できないでしょう。 代わりにパーティションを手動で作成して、あなたの小さな気持的要望と同じくらいのスワップパーティションを作成します。 インストールの残りを通り抜ける、マウントポイントセッティング中に1つのスワップパーティションを求められるだけであると気にかけません。一旦インストールを終えて、あなたのシステム環境設定ファイルを編集するところならば、fstabファイルを編集し、以前に作成したすべてのスワップデバイスのための行を含むことができます。 単に自動的に生成されたスワップ枠をコピーして、あなたのセットアップによって参照が付けられたデバイスを修正してください。"swapon-a"がinitscriptsによって実行される時、追加のスワップはブート後に活性化されるでしょう。

何らかの変わった理由により、活性化する多数のスワップパーティションあるいはファイルを備えたインストールの後に、仮想端末のうちの1つの上のシェルを開かなければならないし、分割したすべての交換駆動あるいはファイルのために"swapon <デバイス>"を出さなければならないまで、待つことができない場合/以前に準備されました。次に、インストールで上に説明されるように継続してください。

複数スワップファイルあるいはドライブをセットアップすることを正直に熟考している場合、より多くのスワップスペースではなく、カーネルは実際にはより多くのRAMを求めてスワップする必要があると叫んでいることを心に留めておくべきです。 あなたのペンギンによい餌を与えておいてください。ありがとう。

6.7 どうやってレスキューシステムからLILOを再設定しますか?

最初のステップは、単にArchインストールCDあるいはディスクからブートします。シェルに入ってから、/mntディレクトリへハードディスクのルートパーティションをマウントします。たとえば、次のようになります。

# mount /dev/discs/disc0/part3 /mnt

その後、rootの内のそれぞれのマウントポイントへの他のパーティションもマウントします。たとえば、/bootパーティションの場合。

# mount /dev/discs/disc0/part1 /mnt/boot

今、DevFSディレクトリを/mnt領域にマウントする必要があり、ここでliloはそれを見つけることができるでしょう。

# /mnt/bin/mount --bind /dev /mnt/dev

すべてがマウントされてから、chroot /mntコマンドでこの/mntディレクトリをあなたの新しいrootにしてください。 これは新しいシェルを開始して、/mntディレクトリにあなたを移動し、これより/として見なされます。 今、あなたが好きなように/etc/lilo.confを編集し、固定を必要とするものをすべて修理するためにliloを実行することができます。 あなたがオリジナルのファイルツリーへこのrootから再び戻りたい場合、単にexitと入力してください。 これより、変更をリブートし試みることができます。

6.8 Xの起動時、/dev/mouseを見つけられません

私たちはdevfsを使用しますので、あなたのPS/2マウスのポートは/dev/psauxもしくは/dev/misc/psauxになるでしょう。もし、/dev/mouseへのシンボリックリンクを持ちたいなら、/etc/devfsd.confに次のような行を追加して、killall -HUP devfsdにより、デーモンを差異起動してくさい。

REGISTER       ^misc/psaux$   CFUNCTION GLOBAL symlink misc/psaux mouse
UNREGISTER     ^misc/psaux$   CFUNCTION GLOBAL unlink mouse

いま、/dev/mouseが見えるようになり、Xもそうなるはずです。

6.9 sshで自分のマシンに入れません!

あなたの/etc/hosts.denyファイルを編集してください。デフォルト環境設定は外からの接続をすべて拒絶します。

6.10 どうしたらKDEを起動できますか?

  1. kdeパッケージグループをインストールするためにpacman -Sy kdeを実行。
  2. プロフィールを活性化するために中へログアウトして再度ログイン
  3. あなたの~/.xinitrcファイルを編集します。他のexec行をコメントアウトし、exec startkde行のコメントを外すか追加
  4. XFree86およびKDEをロードするためにstartxを実行

6.11 私は、ALサーバにないArch Linux用のいくつかの自家用パッケージのを構築しました。それらが欲しいですか?

はい、もちろん。あなたはそれらをftp.archlinux.org/incomingへアップロードできます。しかし、パッケージをサブミットする前に、5.4のパッケージガイドラインの章を参照してください。

6.12 私はどこに自分のPKGBUILDスクリプトを書き置いたらいいですか?

もし、あなた自身のパッケージ(もしくは既存のものをカスタマイズ)を構築したのであれば、それらを置くのに/var/abs/localは都合のいい場所です。 決して、/var/absの下には置かないでください。さもなければ、absを実行した時、あなたの構築したツリーがアップデートして、上書きされてしまいます。

さらに、パッケージに組み込まれた/var/abs/localの自分のpacmanリポジトリをメンテナンスできることに注目して下さい。詳細については、pacman manpageを参照してください。

6.13 どうすれば自分のカスタムカーネルのパッケージを作成できるのでしょう?

  1. /var/abs/localへ新しいディレクトリを作成(例, /var/abs/local/kernel)、 および公式なカーネルABSディレクトリからファイルのすべてをコピー
  2. 自分でカスタマイズしたconfigファイルでオリジナルを置き換える
  3. makepkg -g >>PKGBUILDでMD5Sumsを再生成する
  4. 新規パッケージをビルドするためにmakepkgを実行する
  5. それを終わったら、pacmanにより現在インストールしてあるカーネルをアップグレードする。 pacman -U kernel-pkgver-pkgrel.tar.gz。 たぶん、あなたは古い/boot/vmlinuzを確保したい/boot/vmlinuz-oldとしてカーネルをバックアップを望まれるでしょう。(もしこれを行うなら、lilo.confへの第2のイメージの登録を追加することを忘れないように)
  6. LILOを使用していれば、新しいカーネルを知らせるのに、ブートローダを再インストール(run lilo)
  7. あなたのコンピュータを再起動する
これですべてです。

6.14 自分のPKGBUILDファイルで''make DESTDIR=$startdir/pkg install''または''make prefix=$startdir/pkg/usr install''のどちらを使うのがいいですか?

まったくのところmakefileに依存します。一番よいのはDESTDIRのインスタンスを見て、Makefile.inおよび(または)Makefileをチェックすることでしょう。もしDESTDIRを探せれば、最初の方法はうまくいくでしょう(通常はもっとよい方法もあります)。DESTDIRがどこにも見つけられなければ、代わりに"prefix="のやり方を試してください。

いくらかの気まぐれなMakefileはINSTALL_ROOTやPREFIX_ROOTのようなものを同じように使用します。唯一の確かな方法は、Makefileの"install"セクションを見て、ファイルがどのようにインストールされるか確認することです。

6.15 どうやってパッケージの依存関係をチェックしたらよいでしょう?

パッケージに含まれるバイナリおよびダイナミックリンクライブラリに対して、"ldd"を使用してみてください。これは、実行に必要なすべてのシェアードオブジェクトライブラリの一覧を表示します。

さらに、パッケージファイルの分析をするのにnamcapユーティリティを使用することもできます。namcapはあらゆる消失した(または不要な)依存性をあたなに通知します。

6.16 どうやってpacmanのアップグレードのときファイルを上書きするのを防ぎますか?

/etc/pacman.confファイルに、除外すべきファイル(前方のスラッシュを外す)のリストを追加してください。

[options]
NoUpgrade = path/to/file

6.17 どうしたらサウンドを動作させられるでしょう?

デフォルトでは、"users"グループはサウンドを使用するのを許可されていません。これを変更するには、/etc/devfsd.confファイルに次のような行を追加します(alsaを使用していれば、2番目のものだけが必要です)。

REGISTER sound/.* PERMISSIONS root.users 660
REGISTER snd/.*  PERMISSIONS root.users 660

代わりに、"audio"という新しいグループを作成して、"users"グループの代わりに、このグループへ許可を与えてもよいでしょう。この方法なら、オーディオグループへのユーザの追加/削除が簡単に行えます。

6.18 どこに最新のロードモジュールがあるのでしょう?

特定のデバイスに結合してモジュールをロードしたいときは、MODULES時配列にモジュール名称を追加して下さい。オンデマンドでデバイスへのアクセスをロードするためには、 通常はaliasコマンドでmodules.confへ追加します。モジュールへなにかのオプションを渡すには、MODUESアレイによってロードしたいmodules.confへ"options"行へ追加してください。

6.19 パッケージのアップグレード中に ''line X'' ワーニングが出ました?

この警告は、あなたのpacmanのバージョンが古くなっていることを意味します。 新しいArch Linuxをインストール後に、pacmanは他のどのパッケージより前にアップグレードされるはずです。

 pacman -Sy pacman

メモ:この警告は、パッケージがインストールされるのを妨げませんが、それはデータベース内の不明情報とすることができます。 これが発生したときはpacmanをアップグレードしてから、警告を発したパッケージを再びアップグレードしてください。警告を発したパッケージがpacman自体なら、pacmanを再びアップグレードして、このエラーなく完了するはずです。



Judd Vinet 2004-02-22