Zaurus で Debian - Part 2

出典: Knatech

Part 2 では、Qtopia 上に debian をインストールし、コンソールベースで debian を利用できるようにします。

w3m on Qtopia

このページで解説する内容は以下のとおりです。

  • debian 基本システムの導入
  • debian の環境設定
  • パッケージマネージャの利用

目次

debian 基本システムの導入

debian を導入するにあたって、ブートストラップファイルやいくつかの関連するファイルを入手する必要があります。

binutils を Linux Zaurus Technical Know-how ファイル置き場 よりダウンロードします。(アセンブリ&リンカのところ)

  • binutils_2.9.5.0.14-dev-1_arm.ipk.bin

なお、ダウンロードしたファイル名から拡張子「.bin」を削除しておいてください。

Perl を Linuxザウルス/Perl - Walrus, Visit. よりダウンロードします。(「Perlの導入。」のセクション)

  • perl_5.6.1-8.3-5_arm.ipk

sudo を Linux Zaurus関連 よりダウンロードします。

  • sudo_1.6.7p5_arm.ipk

debian のブートストラップファイルである debootstrap を Index of /debian/pool/main/d/debootstrap よりダウンロードします。

  • debootstrap_0.3.3.3_all.deb

vt100 用 terminfo ファイルを Index of /files/articles/zaurus よりダウンロードします。

  • vt100

なお、ダウンロードしたファイルの名前に拡張子が付いた場合は、拡張子を削除しておきます。

つづいて、ダウンロードした binutils、perl および sudo を [ソフトウェアの追加/削除] によりインストールします。

Perl をインストールする際に、「このソフトウェアは他のソフトウェアを...」いうエラーが発生する場合がありますが、特に問題ありませんので続行してください。

次に、ターミナルを利用して debootstrap をインストールします。(root 権限であることを確認してください)

作業ディレクトリを作成します。

# cd /home/root
# mkdir work
# cd work

debootstrap を SD カード等からコピーして、ルートディレクトリに展開します。(deb の後のピリオドに注意)

# cp /mnt/card/debootstrap_0.3.3.3_all.deb .
# ar -x debootstrap_0.3.3.3_all.deb
# cd /
# zcat /home/root/work/data.tar.gz | tar xv
./
./usr/
./usr/sbin/
./usr/sbin/debootstrap
 
 ...
 
./usr/lib/debootstrap/devices.tar.gz
./usr/lib/debootstrap/scripts/etch
./usr/lib/debootstrap/scripts/lenny

debootstrap のインストールが完了した後、debootstrap を実行します。Zaurus のネットワーク接続が有効であることを確認してください。

debootstrap を実行すると、インターネット経由で debian の基本的なパッケージファイルがダウンロードされ、順次インストールされます。

インストールポイントを作成します。このディレクトリ以下が debian の環境となります。

# mkdir /hdd3/debroot

debootstrap を実行します。完了にはしばらく時間を要します。

# debootstrap --arch arm etch /hdd3/debroot http://ftp.jp.debian.org/debian
l: Retrieving Release
l: Retrieving Packages
l: Validating Packages
 
 ...
 
l: Configuring sysklogd...
l: Configuring tasksel...
l: Base system installed successfully.

以上で、debian の基本システムのインストールが完了となります。

一般ユーザに戻ります。

# exit
bash-2.05$

debian 環境にログインするためには、chroot コマンドを使用します。

# sudo chroot /hdd3/debroot bash -l
root@zaurus:/#

chroot はルートディレクトリを置き換えるコマンドであり、上記の操作によって、topia のルートディレクトリが debian のルートディレクトリに置き換わります。

また、sudo は一般ユーザに対して、一時的に root 権限を持たせるコマンドです。chroot コマンドは root 権限しか使用できないため、sudo コマンドをあらかじめ呼び出しています。

Qtopia 側で一般ユーザにしたにもかかわらず、sudo を利用したために、Debian 側で root ユーザになってしまっています。この問題に関しては、後で作成する起動スクリプトで対処することにします。

ユーザを作成します。

# addgroup --gid 500 qpe
Adding group `qpe' (GID 500) ...
Done.
 
# adduser --uid 500 --gid 500 zaurus
Adding user `zaurus' ...
Adding new user `zaurus' (500) with group `qpe' ...
Creating home directory `/home/zaurus' ...
Copying files from `/etc/skel' ...

パスワードを設定します。

Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

ユーザ情報を設定します。特に必要がなければ、単に [Enter] を押していくとよいです。

Changing the user information for zaurus
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [y/N] y

今作業している root ユーザのパスワードも設定しておきます。

Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

debian 起動スクリプトを作成します。

いったん、Qtopia 環境に戻り、root 権限でスクリプト startd を作成します。

# exit
# su -

/usr/local/bin/startd:

#!/bin/sh
 
sudo mount -o bind /proc /hdd3/debroot/proc
 
sudo chroot /hdd3/debroot sh -c 'exec su - zaurus'
 
sudo umount /hdd3/debroot/proc

作成したファイルを実行できるようにします。

# chmod +x /usr/local/bin/startd

スクリプト内の「su - zaurus」によって、debian 環境にログインしたときに、自動的に一般ユーザ (zaurus) に切り替わります。

今後は startd で debian にログイン、exit でログアウトすることができます。

debian の環境設定

debian 環境にログインする前に、ネットワーク関連の設定ファイルを Qtopia 環境から debian 環境にコピーしておきます。

# cp /etc/resolv.conf /hdd3/debroot/etc/
# cp /etc/hosts /hdd3/debroot/etc/

vt100 用の terminfo ファイルを、SD カード等から debian 環境にコピーします。

# cp /mnt/card/vt100 /hdd3/debroot/lib/terminfo/v/

一般ユーザに戻ります。

# exit
bash-2.05$

startd コマンドを実行して、debian 環境にログインします。

$ startd
zaurus@zaurus:~$

環境設定のために root 権限に切り替えます。パスワードは設定したものを入力します。

$ su -
Password:

はじめに、タイムゾーンの設定を行います。

# tzconfig
Your current time zone is set to Unknown
Do you want to change that? [n]:

[Y] キーを押すと、地域の選択画面が表示されます。

「5. Asia」を選択します。

Aden Almaty Amman Anadyr Aqtobe Ashgabat ...
Baku Bangkok Beirut Bishkek Brunei Calcutta ...
Colombo Dacca Damascus Dhaka Dili Dubai ...
 
Please enter the name of one of these cities or zones
You just need to type enough letters to resolve ambiguities
Press Enter to view all of them again
Name: [] Tokyo

Tokyo を選択して完了です。

Your default time zone is set to 'Asia/Tokyo'.
Local time is now:      Fri May 18 00:21:21 JST 2007.
Universal Time is now:  Thu May 17 15:21:21 UTC 2007.

次に、システムのロケールを設定します。

# aptitude install locales
Reading package lists... Done
Building dependency tree... Done
Initializing package states... Done
 
...
 
Untrusted package could compromise your system's security.
 
...
 
Do you want to ignore this warning and proceed anyway?
To continue, enter "Yes"; to abort, enter "No": Yes

正式に保証されていないパッケージであるため、確認が促されますが、「Yes」を選択して問題ありません。

Writing extended state information... Done
Get:1 http://ftp.jp.debian.org etch/main locales 2.3.6.ds1-13 [4004kB]
Fetched 4004kB in 38s (103kB/s)
 
...
 
Setting up locales (2.3.6.dsl-13) ...

しばらくすると、インストールが完了します。

# dpkg-reconfigure locales
Image:Articles_zaurus_debian_locale_01.png [OK] を選択します。
Image:Articles_zaurus_debian_locale_02.png 必要なロケールを選択します。ここでは、「ja_JP.EUC-JP EUC-JP」を選択します。(選択は [スペース] キーで行います)

ロケールを選択したら [OK] を選択します。

Image:Articles_zaurus_debian_locale_03.png [OK] を選択します。
Image:Articles_zaurus_debian_locale_04.png デフォルトのロケールを選択します。

「None」が選択されている状態で [OK] を選択します。デフォルトのロケールはユーザごとに設定するほうが望ましいです。

この後、ロケール情報が作成されます。完了にはしばらく時間を要します。

Generating locales (this might take a while)...
  ja_JP.EUC-JP... done
Generation complete.

つづいて、sudo コマンドをインストールしておきます。

# aptitude install sudo

sudo の設定ファイルを修正します。直接ファイルを触らずに、visudo コマンドを実行して行います。

# visudo

エディタが起動するので、末尾に次の行を追加します。

zaurus  ALL=(ALL) NOPASSWD: ALL

一般ユーザに戻ります。

# exit
bash-2.05$

シェルの設定ファイル .bashrc に、言語の設定を追記します。

~/.bashrc (末尾に追加)
export LANG=ja_JP.eucJP

.bashrc をシェルに再読み込みします。

$ source ~/.bashrc

パッケージマネージャの利用

debian に任意のアプリケーションをインストールする場合は、aptitude と呼ばれるパッケージマネージャを利用します。

パッケージ名が明確な場合は、コマンドラインでパッケージ名を直接指定してインストールできます。

しかし、パッケージ名を指定しないで aptitude を起動すると、対話形式でパッケージを選択して導入することが可能になります。

ここでは、aptitude の対話形式を利用して、テキストブラウザである w3m をインストールしてみます。

パッケージマネージャを起動します。

$ sudo aptitude
Image:Articles_zaurus_debian_aptitude_01.png 「インストールされていないパッケージ」を選択して [Enter] キーを押します。
Image:Articles_zaurus_debian_aptitude_02.png 「text - テキスト処理ユーティリティ」を選択して [Enter] キーを押します。つづいて、「メイン」を選択して [Enter] キーを押します。

[Shift] + [D] キーを押すと、画面下半分の情報欄を隠すことができます。

Image:Articles_zaurus_debian_aptitude_03.png 一覧から「w3m」を探します。[Ctrl] + [F] キーまたは [Ctrl] + [B] キーで 1 ページ分スクロールさせることができます。
Image:Articles_zaurus_debian_aptitude_04.png [+] キーを押すと、選択した項目がインストール予約されます。(ちなみに、[-] キーを押すとアンインストール予約となります)

実際のインストール作業は [G] キーを押すことで開始されます。

Image:Articles_zaurus_debian_aptitude_05.png 確認画面が表示されるので、問題がなければ、もう一度 [g] キーを押します。
Image:Articles_zaurus_debian_aptitude_06.png セキュリティに関する警告が表示されますが、特に問題はないので、[続行] を選択します。
Image:Articles_zaurus_debian_aptitude_07.png インストールが開始されます。完了にはしばらく時間を要します。
パッケージを事前設定しています ...
未選択パッケージ libgclc2 を選択しています。
(データベースを読み込んでいます ... 現在 7626 個のファイルとディレクトリがイン
ストールされています。)
 
...
 
Updating certificates in /etc/ssl/certs....done.
 
続けるには Return を押してください。

[Enter] キーを押すと、最初の画面に戻るので、[Q] キーを押して aptitude を終了させます。

w3m を起動してみます。

$ w3m http://www.debian.or.jp/

[Shift] + [Q] を押すと終了します。

Zaurus で Debian - Part 3

コメント

名前 (必須):

Web サイト:

コメント:

コメントの一覧
個人用ツール