LECO

coLinuxメモ

もくじ

  1. 注意書き
  2. 凡例
  3. ネットワークの設定
  4. ディスクイメージの作成
  5. スワップドライブの使用
  6. aptの設定
  7. 日本語環境
  8. Windowsとのフォルダ共有
  9. 一般ユーザでshutdown
  10. 参考リンク

お約束ですが、この文書によって万が一損害が生じても著者は責任をとれません。自己責任でお願いします。
見ての通り、書きかけで見直しもしていません、間違いが含まれたり不具合の可能性もあるので気を付けてください。
間違いや不具合はメールで連絡してくださると助かります。

凡例

#,$は次のようなcolinuxのコンソールの表示を表します。

colinux:カレントディレクトリ#
colinux:カレントディレクトリ$

つまり、入力する必要はありません。
#と$の違いは、rootで作業を行うときは#、一般ユーザの時は$です。
今回紹介する範囲では、rootで行うことが多いです。

ネットワークの設定

一番つまづきやすいと思われるのがこのネットワークの設定です。ここでは、TAPを利用した方法を紹介します。なお説明はWindowsXPを標準とします。

Windowsのネットワーク設定

まず、colinuxを起動した後に、Windowsのコントロールパネルなどからネットワーク接続を開き、TAPを選択してプロパティを表示します。
次に「インターネットプロトコル(TCP/IP)」を選択してプロパティを表示します。
そこで、「次のIPアドレスを使う」にチェックを入れてアドレスに「192.168.0.1」、サブネットマスクに「255.255.255.0」と入力します。

colinuxの設定ファイル編集

/etc/network/interfacesを編集します。

auto lo eth0
iface lo inet loopback←追加
iface eth0 inet static
address 192.168.0.2←これがcolinuxのipアドレスになる
gateway 192.168.0.1 ←TAPに設定したipアドレス
netmask 255.255.255.0
broadcast 192.168.0.255←同一のホスト内全てに送るためのアドレスらしい

/etc/hostsも編集してホスト名を設定します。

127.0.0.1 localhost
192.168.0.2 coLinux←colinuxのipアドレス

/etc/resolv.confにネームサーバーを追加します。

nameserver 192.168.x.x←ルーターのDNSリレー機能で設定されているアドレス
nameserver 195.34.32.11

DNSリレーと書いてあるところは、ルーターにDNSサーバーへ問い合わせをする機能があるので説明書に従って追加しています。
通常はISPなどから指定されたDNSサーバーのアドレスを入れてください。

ネットワーク設定を更新してすぐに反映させるには次のコマンドを使います。

# /etc/init.d/networking restart

aptの設定

/etc/apt/sources.listを編集してaptで使うサーバーの設定を行います。

deb http://近くのリングサーバー/archives/linux/debian/debian-ddtp ja/woody main
deb ftp://近くのリングサーバー/archives/linux/debian/debian stable main contrib non-free
deb ftp://近くのリングサーバー/archives/linux/debian/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org/ stable/updates main contrib non-free

次のコマンドでaptのデータベースを更新してアップグレード。少し時間がかかります。

# apt-get update
# apt-get upgrade

ディスクイメージの作成

コマンドプロンプトからfsutil(WinXP)

初期状態のディスクイメージは1ギガしかありません。そこで、大きなディスクイメージを作成してシステムをコピーします。
この方法は、たぶんWindowsXP専用ですが一番簡単で早い方法だと思います。
イメージの作成は、Windowsのコマンドプロンプトから次のコマンドを打つだけです。

$ fsutil file createnew ファイル名 サイズ(バイト)

設定ファイルの編集

できあがったイメージはもちろん空っぽなので、colinux からシステムをコピーする必要があります。
そこで、colinuxの設定ファイルを次のように設定します。

<block_device index="3" path="\DosDevices\新しいディスクイメージの場所" enabled="true" />
<bootparams>root=/dev/cobd0 single</bootparams>

block_deviceの設定ではディスクイメージにアクセスできるようにしています。
また、bootparamsの設定ではシングルユーザーモードで起動するようにしています。
シングルユーザーモードでなければシステムのコピーが行えません。

ディスクの初期化

reiserfsにディスクを初期化します。ex3とかにしたければ各自調べてください。man mkfsとか。 Continue (y/n)にはyを選択。くれぐれも自己責任で。

# apt-get install reiserfsprogs
# mkfs.reiserfs /dev/cobd3

システムのコピー

まずはディスクをマウントします。

# mount /dev/cobd3 /mnt

mountコマンドを打ってマウントされているのを確認したら、いよいよコピー開始です。
このコピーには少し時間がかかります。

# cd /
# cp -a bin cdrom etc home lib sbin usr boot dev floppy initrd lost+found opt root tmp var /mnt/
# mkdir /mnt/proc
# mkdir /mnt/tmp

次に、次回起動の時に新しいディスクイメージを使用するため、/etc/fstabを書き換えます。

/dev/cobd0 / reiserfs defaults 0 1

さらにmtabの名前を変更します。ここまで完了したら一度シャットダウンします。

# mv mtab mtab.disable
# shutdown -h now

設定ファイルの編集2

起動ディスクの指定を変更する。

<block_device index="0" path="\DosDevices\新しいディスクイメージの場所" enabled="true">

<bootparams>のブートパラメータsingleを削除。

<bootparams>root=/dev/cobd0</bootparams>

先ほど新しくディスクイメージを作成するときに追加した<block_device --中略-- />を削除。

これで再びcolinuxを起動すれば、新しいディスクイメージを使えるようになっているはずです。

スワップドライブの使用

設定ファイルの編集

スワップファイルを使えばメモリを多く消費するソフトも使えます。
ディスクイメージの作成は上を参考にしてください。容量は256MBぐらいでいいかと。

<block_device index="1" path="\DosDevices\スワップファイルの場所 enabled="true" />

ドライブの有効化

まずはイメージを初期化します。

# mkswap /dev/cobd1

/etc/fstabを編集して次の1行を加えます。

/dev/cobd1 none swap sw 0 0

確か次のコマンドでマウントします。(うろ覚えですみません)

# mount -a

日本語環境

日本語のキー配列

# apt-get install console-tools console-data

qwerty→Japanese→Standardと選択。

localeの生成

# apt-get install locales localeconf util-linux-locales liblocale-gettext-perl

上のaptを実行すると生成するlocaleを質問されます。
ここでは、「en_US ISO-8859-1」「en_US.UTF-8 UTF-8」「ja_JP.EUC-JP EUC-JP」「ja_JP.euc.JP」「ja_JP.UTF-8 UTF-8」を選択します。
標準のlocaleは「UTF-8」などを扱えないアプリケーションのことを考えて、一応「C」にします。

日本語環境導入

次のtaskselを利用するとラクチンですが余分なパッケージがインストールされます。これがイヤな人は一つずつapt-get install*1しましょう。

# dselect update
# tasksel

Japanese enviromentを選択してFinish、その後に一般ユーザー(rootで実行しないこと)で

$ set-language-env

*1日本語環境を一つずつインストール

たぶん次のパッケージは必要です。
canna kinput2-canna xfonts-base language-env
次に挙げるのはあったほうがいいと思います。
ja-trans manpages-ja gettext
まだ必要なものがあるように思いますが、実際にやっていないのでわかりません。

Windodwsとフォルダの共有

先にWindowsで共有フォルダを作成しておく。それからsmbmountでマウントする。

# smbmount //Windowsのコンピュータ名かIP /共有フォルダ名 /mnt/win -o username=Windowsのユーザー名,password=Windowsでのパスワード

で/mnt/winに共有フォルダがマウントされて使えるようになる。別に/mnt/winでなくても、適当な場所にフォルダを作って利用できます。

自動マウント

このままでは毎回マウントするのが大変なので次の設定をしておく。
/etc/smbpassを作成

username=Windowsのユーザー名
password=Widodwsのパスワード(設定してなくても「=」までは書く)

/etc/fstabを編集して次の設定を追加する。

//WindowsのIP(コンピュータ名)/共有フォルダ名 半角スペース /マウント先ディレクトリ smbfs credentials=/etc/smbpass 0 0

これで

# mount /mnt/win

だけでマウントできるようになる。

一般ユーザーでマウントできるようにするには

credentials=/etc/smbpass,uid=UNIXのユーザ名,gid=UNIXのグループ

とすればいいらしい。(未確認)
ちなみにグループのデータは「/etc/group」にある。

一般ユーザーでshutdown

sudoをインストールしてrootでvisudoを実行する。

# apt-get install sudo
# visudo

visudoでsudoersに次を加える。

ユーザ名 ALL=NOPASSWD: /sbin/shutdown -h now

これで、全てのホスト上で「ユーザー名」が

$ sudo shutdown -h now

とするとパスワードなしでshutdownを実行できるようになります。

有用な情報を公開してくださっている皆様に感謝します。