2006年09月09日
玄箱をEMモードにする場合、一端Telnetでログインして
echo -n ‘NGNG’ > /dev/fl3
と入力してやるのが一番スマートだとは思うのですが、稀にこれができない場合も存在する。この場合、強制的にEMモードに落としてやる必要があるわけですが、方法としては以下のようになりおます。若干手荒いですけどねー。
- 玄箱の電源コンセントを抜く
- 電源を入れる
- 再び電源が切れる
- 電源を入れる
HDDが損傷しそうで、正直あまり採用したい方法ではないもののこれ以外に方法がねぇ!という場合も確かに存在するわけで。ま、使用は最小限にとどめたいところ。
2005年12月03日
Debian3.1で当方アレンジ(小粋空間ベース)のテンプレートがうまく再構築できないことについて考察。先ず、玄箱+Debian3.1の環境に限定して考えると、
| テンプレート作者 |
Makoto |
Default |
Koiki |
| 再構築 |
× |
○ |
× |
といった感じ。これだけを見ると小粋空間ベースのテンプレートに問題があるように感じる。ただ、失敗のタイミングは個別エントリの1-40を再構築し終わった後に、41-80を再構築しようとしたときに失敗するので、一概にテンプレートの記述がおかしいとはいえそうにない。
次に複数のマシンでMovable Typeを稼働させてみたのでそれの比較を行ってみると、
| サーバPC
| CPU
| Memory
| OS
| Apache
| Perl
|
| サーバA |
AthlonXP2400+ |
512MB |
Windows2000 |
1.3.33 |
5.8.4 |
| サーバA’ |
AthlonXP2400+ |
512MB |
WindowsXP |
1.3.33 |
5.8.4 |
| サーバB |
Duron750MHz |
192MB |
Vine Linux 3.2 |
1.3.33 |
5.8.2 |
| サーバB’ |
Duron750MHz |
192MB |
Windows2000 |
2.0.55 |
5.8.4 |
| 玄箱 |
PowerPC200MHz |
64MB |
Debian 3.1 |
1.3.33 |
5.8.4 |
| 玄箱HG |
PowerPC266MHz |
128MB |
Debian 3.1 |
1.3.33 |
5.8.4 |
Makotoアレンジテンプレートが動かないのは玄箱と玄箱HG。流石にOSが原因と言うことはないと思うので、Perlのせいなのか、はたまたマシン性能が非力すぎるからなのか…と言ったところでしょうか?
マシン性能が原因なら玄箱でMTを使ったWebを公開するのは無理ってことになるなぁ。特にデフォルトのテンプレートだと問題なく再構築できていると言うことを考えると、性能が足りてないと言うことも考え得る…。そうだとすると、きっついなぁ…。
[2005/12/04 01:11 追記]
どうやら、マシン性能の不足が一番の理由っぽいなぁ。サーバBにおいてもバックアップ中なんかの高負荷状態で記事に投稿を行おうとすると(この途中で投稿記事の個別・カテゴリ・日付・インデックスの再構築も行われる)、同じようなエラーが出ました。こうゆう状況が見られた以上、、、マシンの性能不足なんかぁぁぁぁぁぁぁぁぁ!!!
2005年12月01日
手持ちの玄箱HGもDebian化しました。ファイル置き場としてなら無理にDebian化やVine化は必要ないかなぁ?と思っていたのですが、いかんせん時間がずれすぎる!!日差数分手どういうことよ?ということで、ほぼNTPを使うためだけにDebian化を決意。デフォのままでもNTPは使えるらしいのですが、どうせ手間をかけるならDeibian化した方がWebmin、SWATを使っての設定が楽だし、他にも色々遊べそうって理由です。素の玄箱である程度経験積みましたしね!!
まずは付属CDで普通にセットアップ。
まず、玄箱うぉううぉう♪より最新版のDebianイメージ(2005/12/01現在では、debian_2005_08_21_dist.tgzのようです)(2006/09/07現在では、debian_2006_06_10_dist.tgzのようです)をDLしてくる。んで、コレを /mnt/share に置いてください。こう書くと微妙に難しそうですが、単にエクスプローラに\\kuro-box\shareに置けば良いだけです(玄箱の名前変更を行っていない場合に限る。名前を変えている場合は適宜読み替えてください。)。
さて、ここからが本番。Telnet接続する必要がありますので、適当なTelnetクライアントの用意。個人的にはTeraTermProがお気に入り。最悪コマンド・プロンプトでも出来ますが。
KURO-BOX ligin: root
Password: kuroadmin
と入力すればログインできます。
# echo -n ‘NGNG’ > /dev/fl3 ←EMモードに落とす
# reboot ←再起動
この後、再度Telnetで接続して、
# /bin/mount -t ext3 /dev/hda1 /mnt ←HDDの第1パーティションをmntにマウント
# /bin/mount -t ext3 /dev/hda3 /mnt2 ←HDDの第3パーティションをmnt2にマウント
# cd /mnt
# rm -r * ←第1パーティションを全消去
# tar zxvf /mnt2/share/debian_2006_06_10_dist.tgz ←Debian 化イメージを展開
# vi /mnt/etc/network/interfaces
# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.
iface eth0 inet static
address 192.168.0.200
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
iface lo inet loopback
auto eth0 lo
# vi /etc/hosts
127.0.0.1 localhost
192.168.0.200 KURO-BOX_HG
# vi /mnt/etc/hosts.allow
# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /etc/hosts.allow: list of hosts that are allowed to access the system.
# See the manual pages hosts_access(5), hosts_options(5)
# and /usr/doc/netbase/portmapper.txt.gz
#
# Example: ALL: LOCAL @some_netgroup
# ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
#
# If you’re going to protect the portmapper use the name “portmap” for the
# daemon name. Remember that you can only use the keyword “ALL” and IP
# addresses (NOT host or domain names) for the portmapper. See portmap(8)
# and /usr/doc/portmap/portmapper.txt.gz for further information.
#
ALL : 192.168.0.
ALL : 192.168.0.0/255.255.255.0
ALL : 127.0.0.1
# vi /mnt/etc/resolv.conf
search
nameserver 192.168.0.1
# vi /etc/hostname
KURO-BOX_HG
# echo -n ‘OKOK’ > /dev/fl3
# reboot
これでOKなはず。各自設定したIPにTelnetで再接続してみてください。ID/Passはtmp-kun/tmp-kunになっています。ここから先の作業は、Makologg???: 玄箱 Debian化完了を参照のこと。
2005年11月27日
どうにも玄箱のDebian化、Vine化において、自分のやりたいことがうまくいかない…。出来たこと、出来なかったことを適当に羅列。成功:○、成功したようなしてないような…:△、失敗:×。
Debian化
- DebianのWoodyのインストール:○
- DebianのSarge化:○
- Apache, ProFTPdの起動・運用:○
- MySQLのインストール・運用:○
- Movable Typeの運用:△(内容は以下)
- 現在使用中のテンプレートをMTに適用:×
Vine化
- Vine 2.6のインストール:△(/var/ftp あたりでなぜかエラーは出来てるけど、普通に起動・ログインが可能)
- Apache, ProFTPdの起動・運用:○
- Movable Typeのチェック(mt-check.cgi):△(必須ではないけど、あると便利なパッケージがインストールできない)
- Vine 3.1化:×(2.6.99化の時点で確実に失敗してるような…。いや、そもそもVine 2.6化の時点でのエラーがここに響いているのか!?shutdown -r nowコマンドがなぜか使えないし。)
ん~、、、、、どっちもどっちと言うことで、行き詰まっているというかなんというか…。煮詰まってます、色々と。どっちを選択した方が楽なのかなぁ?ぱっと見Debian化の方が対処しなければならない方が少なくて楽そうかな?というかまぁ、現在使用中のサーバはVine Linux 3.2ですので、それに併せて玄箱もVineにしたほうが自宅サーバの全体的な管理は楽かも。
←コレを買おうとも思うのですが(そんなに高くないしね)、買っても駄目なら目も当てられないので多少躊躇しています。まぁ、のんびり行きますか。
2005年11月26日
【玄箱起動後最初にすべきこと】
Telnetで接続してみて、
Vine Linux 2.6 (La Fleur de Bouard)
Kernel 2.4.17_kuro-box on a ppc
login:
上記のように画面委に表示されたら玄箱のVine化は成功しています。
この段階では、FTPもTelnetもrootでのアクセスは出来なくなっており、まずは tmp-kun/tmp-kun でアクセスします。このままでは周知のID/Passなのであまり気持ちよくないのでパスワードの設定を行います。
# su
として、root権限に移行。このときパスワードは必要ないです。
# passwd
New UNIX password:******
******の部分は任意のroot用パスワードを入力。
自分専用のユーザを追加する。
# useradd -m ****** ←******というユーザーを追加する
# passwd ****** ←******のパスワードを設定する
Changing password for user center-left.
New password: ←パスワードを入力する
Retype new password: ←確認のためにもう一度入力する
passwd: all authentication tokens updated successfully.#
再度Telnetで接続して、先ほど作ったユーザでログインできることを確認する。確認したらtmp-kunは必要ないので削除。
# /usr/sbin/userdel -r tmp-kun
上記のコマンドですと /home/tmp-kun も削除します。ディレクトリを残したい場合は -r を除いてください。
Vine化した玄箱はShutdownが使えなくなっていますので、コレを使えるようにする。
# vi /etc/init.d/halt
#See how we were called
Case “$0″ in
*halt)
echo -n EEEE > /dev/ttyS1 ←ここを追加
message=$”Halting system….”
command=”halt”
;;
*reboot)
echo -n CCCC > /dev/ttyS1 ←ここを追加
command=”reboot”
;;
*)
echo $”S0: call me as ‘rc.halt’ or ‘rc.reboot’ please!”
exit 1
;;
esac
シャットダウンは shutdown -h now
リブートは shutdown -r now
【本体スイッチで電源が落ちない現象に対処】
このままでは本体のスイッチで電源が落ちません。ということで、方法を。
# vi /www/script/melsub_shutdown.sh
#tmpSMBWC=`ps -ax | grep ”/usr/sbin/smbd -D” | wc -c`
#if [ "$tmpSMBWC" -le 10 ] ; then
#if [ -f /var/run/smbd.pid ] ; then
# echo ”shutdown start”
#else
# echo ”### !!!Warnning!!! ###”
# echo ”/usr/sbin/smbd is NOT running!”
#
# rm -f /var/run/melsub_shutdown
# exit 1
#fi
といった感じで、smbの起動チェックを行毎 # で潰せば落ちるようになります。
玄箱+Debianで出来ることは一通りやったと思うので(深くつっこんでいけばもっといろいろ出来るはず)、今度はVine化に挑戦。とりあえず、コレがうまく動くようであればミラーサーバかも検討します。ついでに、BAFFALO純正ファームとして使ってる玄箱HGのVine化も念頭に入れるかな?とりあえず、玄箱の時計は精度が悪く、日差数分、数日おいておけば数十分単位でずれてくるので腹立たしいことこの上ない。ntpがちゃんと動かせるようになれば問題ないんですけどねぇ。
さて、前置きが長くなりましたが、ここからが本題。玄箱をVine化するに当たり、Vine Linxのイメージが必要になるわけですが、玄箱用のハックきっとなる物があるのでそっちを利用。本家Vine Linuxを自分で玄箱に適用させるのは、当方のレベルでは敷居が高すぎます。
【玄箱のVine化】
- 玄箱うぉううぉう♪より最新版のVine化キットを入手。2005/12/26現在では“vine_2004_04_04_2_dist.tgz”です。
- 玄箱付属のCDを普通にインストール。ファームウェアのv1.02が出ていますのでそれも入れておきましょう。v1.02のDLはこちらから。(ファームのアップデートはいらないかも)
- 再起動はせず。続いてブラウザでにアクセスして、ユーザー「root」パスワード無しで入る。
- IPアドレスを指定しDHCPは使わない設定にする。現在に自分のパソコンのIPアドレスが192.168.0.2
ゲートウェイが192.168.0.1のルータを使っているとして
今回は玄箱は192.168.0.100とする
- ワークグループを自分のWindowsパソコンと同じにする。
- FTPを立ち上げて玄箱に接続 (ユーザーroot,パスワードkuro)
- 入手したvine_*_dist.tgzを/(ルートディレクトリ)にアップする。※ルートディレクトリはFTPでアクセスした後、1階層上がったところ。
ここではすぐ必要ないがついでに玄箱のCD-ROMのbinaryフォルダの中にある
g++-2.95.3.tar.gz
gcc-2.95.3.tar.gz
glibc-2.2.3.tar.gz
make-3.79.1.tar.gz
binutils-2.10.91.0.2.tar.gz
も一緒にコピーしておく。
- Telnetを立ち上げてルートに入る。ユーザー:root パスワード:kuro
# telnet 192.168.1.100
# cd /
- vine_*_dist.tgzを展開。アップロードした他のファイルも展開しておく。
# tar zxvf vine_2004_04_04_2_dist.tgz
# tar zxvf g++-2.95.3.tar.gz
# tar zxvf gcc-2.95.3.tar.gz
# tar zxvf glibc-2.2.3.tar.gz
# tar zxvf make-3.79.1.tar.gz
# tar zxvf binutils-2.10.91.0.2.tar.gz
- 環境ファイルを設定
# vi /etc/sysconfig/network
以下の行を追加or変更。ホストネーム、ゲートウェイは各人の環境で。
NETWORK=yes
HOSTNAME=KURO-BOX
GATEWAY=192.168.0.1
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.100
NETMASK=255.255.255.0
NETWORK=192.168.0.0
GATEWAY=192.168.0.1
# vi /etc/hosts
127.0.0.1 KURO-BOX localhost localhost.localdomain
# vi /etc/resolv.conf
nameserver 192.168.0.1
- 以上でVine化終了です。コンセントを抜いて再起動させましょう。
2005年10月30日
WebminからもSambaの設定は出来ますが、何度か使ったことのあるSWATの方がやりやすいや!とうことでSmabaの設定用にSWATを導入します。(Special Weapon and Tacticsではありません(ぉ。)まずはいつものように、
$su
Password:(rootのパスワードを入力)
その後、
# apt-get install swat
SWATの場合、インストール後に inetd.conf の設定が必要である。
# vi /etc/inetd.conf
swat の行頭にある「##」を削除し有効にする。次に inetd を再起動する。
# /etc/init.d/inetd restart
ブラウザから確認。
http://xx.xx.xx.xx:901/ (xxx.xxx.xxx.xxxは玄箱のIP)
認証はroot:rootのパスで行う。
設定ファイルを直接弄ってやるのが最も早くLinuxに関して学習できると思うのですが、さすがにそこまでは時間がない!ということで、少しでも楽をするためにWebminを導入。これを導入することでApacheやその他の設定をブラウザから行うことが出来、かなり楽になります。
まずはいつものように、root権限に以降。
$su
Password:(rootのパスワードを入力)
その後、
- # aptitude update
- # aptitude install webmin webmin-apache webmin-exports webmin-htaccess webmin-inetd webmin-logrotate webmin-mysql webmin-samba webmin-sshd webmin-status webmin-proftpd postfix wemin-postfix
=>続けますか? [Y/n/?] (Enter)
多分、以上で終わるはず。
次に、アクセスする端末を決定。
# cd /etc/webmin
# vi miniserv.conf
<変更前>
allow=127.0.0.1
<変更後>
allow=192.168.0.
4分割された最後の一つを空欄にすることで、192168.0.1-192.168.0.255の全てからアクセスできるようにする。
ZZを押してファイルを保存して終了。
Webminを再起動。
# /etc/init.d/webmin restart
ブラウザでアクセス
https://xxx.xxx.xxx.xxx:10000/ (xxx.xxx.xxx.xxxは玄箱のIP)
Username:root
Password:(rootのパスワード)
でログインする。
WebminタブのChange Language and Themeをクリック
Webmin UI languageをPersonal choiceにしてプルダウンリストのJapanese (JA_JP.EUC)を選択し「Make Changes」ボタンを押す
全体が日本語になったことを確認(戻るリンクをクリックすると日本語になった)
玄箱Debian日本語化手順の備忘録として記す。当方外貨の手順でやったという話であり、この通りやれば日本語化できるというわけではないが、参考にはなると思います。また、DebianはすでにSarge化してあります。
$ suer name
$ (user password)
$ su
$ (root password)
# apt-get update
# apt-get install locales
# apt-get install canna ja-trans manpages-ja kterm egg emacs21 xemacs21-mule-canna-wnn
Do you want to continue? [Y/n/?] [Return]
# apt-get install language-env freewnn-jserver skkserv canna-utils
Do you want to continue? [Y/n/?] [Return]
# dpkg-reconfigure -plow locales
ja_JP.EUC-JP EUC-JP ←を常に選択
# exit
$ user-ja-conf ←ユーザーのロケールも日本語に変更
この文字が読めますか? y[Return]
漢字変換にはどれを使いますか? 1[Return]
日本語には関係のない様々な設定を行いますか? [Return]
X Windows Systemで動く~、、、設定を行いますか? [Return]
bash 使用時に、ログイン~、、、設定を行いますか? [Return]
bash が起動するときに~、、、設定を行いますか? [Return]
Canna の設定です。~、、、設定を行いますか? [Return]
cash が起動するときに~、、、設定を行いますか? [Return]
emacs の設定です。~、、、設定を行いますか? [Return]
emacs では、漢字変換に~、、、 1[Return]
bash など、readline~、、、設定を行いますか? [Return]
xdm を使って X Windows System~、、、設定を行いますか? [Return]
xemacs21の設定です。~、、、設定を行いますか? [Return]
emacs では、漢字変換に~、、、設定を行いますか? [Return]
[Enter] キーを押してください。終了します。
$ su
$ (root password)
# apt-get install jless
# exit
$ cd
$ vi .bashrc
以下を先頭の行に追加。
LANG=ja_JP.EUC-JP
TERM=kterm
export LANG TERM
2005年10月28日
今までの玄箱Debian化手順に従うと、Woodyと呼ばれるVer3.0のDebianがインストールされます。現在最新版のDebianはSarge(Ver3.1)ですので、せっかくですのでバージョンアップを行っておきましょう。
sargeにすることでapacheが1.3.33という最新版になったりphp4も新しく、mysqlもversionが4になったり…
とのことです。それがよい事かどうかはこの際おいておこう。
まずは /etc/apt/sources.list の編集から。インストール直後の設定ではWoodyの範囲内でのバージョンアップは行えますが、Woody→Sargeのバージョンアップは行えないようになっています。このための対策として、上記ファイルを編集しておきましょう。まずは“su”コマンドを用いて、root権限に移行しておきます。直接開いて編集する方法もありですが、如何に並べるコマンドを実行するのみでOK。意味は当方も理解しかねます。ほとんど魔法の呪文…。
# apt-get install netselect
# apt-get install wget
# netselect-apt sarge
# perl -i -p -e ’s/^\# deb-src/deb-src/’ sources.list
# mv /etc/apt/sources.list /etc/apt/sources.list.woody
# cp sources.list /etc/apt
と言った感じですね。 /etc/apt/sources.list が読み取り専用属性の場合、一時的に書き込みができるようにしてある必要があります。その場合は、
# cd /etc/apt
# chmod a+w sources.list
としてください。これで全てのユーザに対して読み書きが行えるようになっています。この後上記のコマンド群を実行してください。実行後、この状態ではセキュリティ上好ましくないため、
# chmod a-w,a-x sources.list
として、読み取り専用属性に戻しておきます。
以上を行いますと、いよいよSarge化。いったんログオフして、再度telnetで接続後、
$ su
Password:******
# apt-get update
…
# apt-get dist-upgrade
…
# Need to get 42.0MB of archives. After unpacking 50.7MB will be used.
# Do you want to continue? [Y/n](Enterを入力)
…
ここで事前設定を行う
- Configuring Debconf => Dialogを選択してOK。
- Configuring Debconf => Highを選択してOK。
- Configuring Console-dataそのままOK。
- Configuring Console-data => Don’t touch keymapを選択してOK。
- Adduser => Yesを選択してEnter。
- ProFTPd configuration => OK
- ProFTPd configuration => standaloneを選択してOK。
- Configuring Setserial => OKでEnter。
- Configuring Setserial => そのままOK。(どれを選択したかは忘れましたが、標準で選択されたままで良。)
- Do you want to upgrade glibc now? [Y/n] => そのままEnter。
- Do you wish to restart services? [Y/n] => そのままEnter。
- *** halt (Y/I/N/O/D/Z) [default=N] ? => Zを入力。
以下のコマンドを打つことにより、バックアップを取り新しい設定をインストール。
# cp -p /etc/init.d/halt /etc/init.d/halt.orig
# exit
- *** halt (Y/I/N/O/D/Z) [default=N] ? => Yを入力。
- *** securetty (Y/I/N/O/D/Z) [default=N] ? => Zを入力。
# cp -p /etc/securetty /etc/securetty.orig
# exit
- *** securetty (Y/I/N/O/D/Z) [default=N] ? => Yを入力。
- May I update your system? [Y/n] => Enterを入力。
- * Press return to continue => Enterを入力。
- [---Press return---] => Enterを入力
- Select a number from 1 to 5, from the list above.
Enter value (default=`1′, `x’ to restart): => 5を入力
Eximはあとでqmailにするので、設定は行わない。そのまま使用するのであれば、適宜選択してください。通常は4あたりでいいのかな?
- Should man and mandb be installed ’setuid man’? <Yes> <No> => Enterを入力。
- *** aliases (Y/I/N/O/D/Z) [default=N] ? => Zを入力
# cp -p /etc/modutils/aliases /etc/modutils/aliases.orig
# exit
- *** aliases (Y/I/N/O/D/Z) [default=N] ? => Yを入力
- ProFTPd configuration => install the package maintainer’s versionを選択してEnterを入力。
新しいターミナルを開いてDebianのバージョンが3.1になっていることを確認。
Debian GNU/Linux 3.1 KURO-BOX
KURO-BOX login:
となっていれば成功だ!
アップグレード時にバックアップを取ったファイルと現在の設定を比較して、必要な設定をマージする。たぶん、/etc/init.d/haltのみ変更でOKのはず。読み取り専用属性が着いている場合はroot権限より読み書き可能属性に変更する。
# cd /etc/init.d
# vi halt
PATHの設定(PATH=/sbin:/bin:/usr/sbin:/usr/bin)の後に次の2行を追加。
# echo -n “EEEE” > /dev/AVR00
# sleep 3
:wqでviを終了。
# shutdown -h now
ちゃんと再起動されることを確認。/etc/init.d/haltを修正しているので、電源が切れない場合、そこを疑ってみる。