注意:/etc/sysconfig の下のファイルを書き換える前に、/etc/sysconfig 以下のファイルをバックアップしてください。/etc/sysconfig 以下のファイルが原因で、システムが起動しなくなる事があります。PCMCIAフラッシュメモリーカードにバックアップするときは、cp コマンドではなく、tar コマンドを使います。
PCMCIAのフラッシュメモリーカードをソケットに挿します。すると、自動的に /mnt にマウントされます。マウントされないときは・・・Web設定画面の「無線LAN設定」で、「無線LAN機能を使用する」になっているかどうか確認します。
/mnt/htdocs/index.html に、自分のホームページを好きなように作ります。i-modeからのアクセスを意識して、文字コードはShift-JISを選びました。
http://192.168.0.1 にアクセスして表示されることを確かめます。
telnetしようとしたときに、login:プロンプトが出るまでに異常に時間がかかるのは、DNSの逆引きに時間がかかっているからです。DNSサーバアドレスを再チェックします。
ホームページをインターネットに公開したとき、設定画面を自分だけいじりたいときには、パスワードで保護します。
/etc/sysconfig/httpd/httpd.conf を開いて、<Directory "/usr/share/setting"> と書いてあるところを探します。下の3行を追加します。ユーザ名は hogehoge です。
AuthType Basic
AuthName "administrators only"
AuthUserFile /etc/sysconfig/httpd/password
Require user hogehoge
パスワードファイルを作ります。下のコマンドを実行します。
# htpasswd -c /etc/sysconfig/httpd/password hogehoge
--Type hogehoge's password twice--
httpdを再起動します。
# /etc/rc.d/scripts/httpd restart
http://192.168.0.1/setting/ にアクセスして、ユーザ名とパスワードを入力して設定画面が開けることを確認します。
パスワードは /etc/sysconfig/httpd/password に保存されているので、設定保存(save_config)を忘れずに。
PCMCIAのフラッシュメモリーカードを挿しているときには、システム起動時に /mnt/startup が実行されます。これに、シェルスクリプトを書いておきます。
下の例では、root の .profile の内容を設定しています。
/mnt/startupの内容例:
#!/bin/sh
cp /mnt/backup/profile /root/.profile
/mnt/backup/profileの内容例:
PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/qmail/bin:/mnt/local/bin LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/local/lib TERM=vt100 LESS=d JLESSCHARSET=japanese-ujis LANG=ja_JP.ujis export PATH LD_LIBRARY_PATH TERM LESS LANG JLESSCHARSET alias ls='ls -CF' alias rm='rm -i' alias mv='mv -i' alias cp='cp -i' umask 022
/etc/sysconfig/qmail/control ディレクトリにあるme, locals, rcpthosts の内容を下のように変更します。defaultdomain, plusdomain は削除します。
me:
beta2.localdomain
locals:
localhost
beta2.localdomain
rcpthosts:
localhost
beta2.localdomain
postmaster, mailer-daemon に届いたメールは、root に転送されることにします。/etc/sysconfig/qmail/alias にある .qmail-postmaster と .qmail-mailer-daemon に、下の1行を書きます。
&root
root に届いたメールが、自分のメールアドレスに届くようにするには、/etc/sysconfig/qmail/alias/.qmail-root に、'&'と自分のメールアドレスを書きます。
&yourname@camel.plala.or.jp
qmail を再起動します。
# killall qmail-send
# /etc/rc.d/scripts/qmail start
テストします。
# /usr/qmail/bin/mailsubj TEST root
Hello!
^D (Ctrl+D)
# tail /var/log/maillog
設定保存(save_config)します。
クロスコンパイラを作り、いくつかのツールをコンパイルします。インストールのページを見てください。
Dynamic DO!.jpで、ドメイン名を取得します。私は、hgw003.ddo.jp を取得しました。HGWがネットワークにつながっていないときに、DNS登録が永久に残ってしまうのを防ぐため、DNS登録後、2時間で削除される設定にします。
自動的にDNSに登録するためのスクリプトを作ります。その前に、GNU wget をインストールしておきます。
/mnt/local/bin/dns_regist スクリプトを、下の内容で作ります。
#!/bin/sh
/mnt/local/bin/wget "http://ddo.jp/dnsupdate.php?dn=hgw003&pw=XXXXXXXX" -O /var/log/dns.html >> /var/log/dns_regist 2>&1
/mnt/local/bin/dns_remove スクリプトを、下の内容で作ります。
#!/bin/sh
/mnt/local/bin/wget "http://ddo.jp/dnsupdate.php?dn=hgw003&pw=XXXXXXXX&ip=0.0.0.0" -O /var/log/dns.html >> /var/log/dns_regist 2>&1
dns_regist, dns_remove スクリプトを実行して、DNSの登録、削除がうまくいくことを確かめます。DNS登録結果は、/var/log/dns.html に保存されます。wgetのメッセージは、/var/log/dns_regist に保存されます。
PPPoE接続完了時に自動的にDNSに登録するように設定します。/etc/sysconfig/ppp/ip-up スクリプトの最後に、以下のように追加します。
/mnt/local/bin/dns_regist
システム運用中、2時間おきに自動的にDNSに登録するように設定します(ネットワークに接続されているかどうかに関わらず実行されるが、ネットワークに接続されていなければ、スクリプトがエラーになるだけである)。
/etc/sysconfig/crontab の最後に以下のように追加します。この例では、2時間おきの23分にDNS登録を行います(0:23, 2:23, 4:23, ... に実行されます)。毎時00分前後は登録が込み合ってレスポンスが遅いので、避けたほうが良いです。
23 */2 * * * /mnt/local/bin/dns_regist
システム起動時に、crontab に登録されるようにするため、/etc/rc.d/scripts/crond スクリプトのstart()関数に、以下のように記述します。
start() { if [ -x /usr/sbin/crond ]; then /usr/sbin/crond crontab $CONF fi }
スクリプトを実行して、crontab に登録されることを確認します。
beta2# /etc/rc.d/scripts/crond stop beta2# /etc/rc.d/scripts/crond start beta2# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/etc/sysconfig/crontab installed on Sat Nov 2 18:58:32 2002)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
23 */2 * * * /mnt/local/bin/dns_regist
cron の実行状況は、/var/log/cron で確認します。
ip-up, ip-down, crond, crontab の各ファイルを保存するため、save_config を実行しておきます。
qmailが送信するメールの送信元メールアドレスは、root@beta2.localdomain となっていますが、これを root@hgw003.ddo.jp にするには、/etc/sysconfig/qmail/control に以下のファイルを追加します。
defaultdomain:
hgw003.ddo.jp
defaulthost:
hgw003.ddo.jp
plusdomain:
hgw003.ddo.jp
qmail が、root@hgw003.ddo.jp 宛のメールを受信できるようにするには、locals, rcpthosts にも hgw003.ddo.jp を追加します。実際に、外部からメールを受信するには、フィルタ設定で、ポート25宛のパケットを受け入れる設定にします。
http://192.168.0.1:901にアクセスすると、設定画面が開きます。ユーザ名とパスワードを聞かれるので、rootのものを入力します。
/mnt以下をLAN内で共有するのが目的なので、どんなユーザ名で来ても、guestでログオンすることにしてしまいます(map to guest = Bad User)。そのほか、設定のポイントを以下に示します。
[global]
coding system = SJIS
client code page = 932
workgroup = MSHOME
...
encrypt passwords = Yes
map to guest = Bad User
...
dns proxy = No
[ATA_Card]
comment = ATA Card
path = /mnt
writable = Yes
guest only = Yes
guest ok = Yes
コンピュータを探すときは、IPアドレスで検索しても良いですが、Windows の hosts ファイルに書いておくと、ホスト名で検索できます。
C:¥WINDOWS¥system32¥drivers¥etc¥hosts:(Windows XP Home Edition の場合のhostsファイルの場所)
127.0.0.1 localhost
192.168.0.1 beta2.localdomain
Samba を利用して、他の Linux workstation で、HGW の ATA Card を共有することもできます。Linux workstation に Samba がインストールされている必要があります。
% rpm -qa | grep samba samba-client-2.2.1a-4 samba-2.2.1a-4 samba-common-2.2.1a-4
Linux workstation にマウントポイントを作ります。
# mkdir /mnt/beta2
Linux workstation の /etc/fstab に下の1行を追加します。共有名にスペース(空白文字)が入っているとできません。HGW側の設定で共有名が[ATA Card]となっている場合は、[ATA_Card]に変更しておいてください。
//beta2.localdomain/ATA_Card /mnt/beta2 smbfs rw,guest,codepage=cp932,iocharset=euc-jp,uid=nobody,gid=nobody,fmask=666,dmask=777 0 0
マウントします。
# mount -v /mnt/beta2 //beta2.localdomain/ATA_Card on /mnt/beta2 type smbfs (0)