2005年12月19日
そろそろはじめることにする。
古いHDDもつけたままに、新しいHDDをつけて、ケーブルだけつなぎかえ。
とりあえずDVDでインストール開始。
パッケージを転送、、、終わって再起動、、、の瞬間、
あっ
ちらっとfatal region error の羅列が一瞬見えた。
2年前の悪夢が蘇る。
たぶん、だめだろうなと思いつつ再起動をまつと、
フォントがないのか日本語の文字が化け化けの画面が。
ふぅ。
今日はもうやめておくことにする。
2005年12月20日
持つべきはトモ、じゃなかった、とるべきはメモ なのである。
前回の顛末をみながら、再度 インストールに取り組む。
とりあえず、なるべく パッケージを減らして、最初はgnomeを避けて。
と、これでとりあえずのインストール完了。
前回、ひどい目にあったのも無駄じゃなかった。
さて、インストールも終盤ちかくまで終了し、一度 再起動。
よし ここまでくれば後は簡単だろう、と 思ったが 毎度のことながら
そうは問屋が卸さなかった。
パッケージが古くなったり、セキュリティーホールやバグが見つかった際の
ためにRHではup2date(ウィンドウズアップデートのようなもの)という
サービスをしているのだけど、再起動後に そのサービスの登録を行う部分が
ありました。まず、RedHatNetwork(以下 RHN, 上記のサービスを行う主体)
へのログインIDとパスワードを登録。その後、up2dateのためのサブスクリプション番号
を入力、そしてこの今インストールしているマシンのIDを入力。
その他、もろもろがあって、さて 最後の確認画面、というところで、
「サブスクリプション番号が入力されなかったので、
サブスクリプションはアクティベイトされませんでした。」というような表示。
へ。さっき 入力したとおもったんだけど、、、あれれ?
とおもって 設定画面の「戻る」を何度かおして再度サブスクリプション番号を
入力しようとしたら もううまくいきませんでした。ええー。
まぁ、いいやとりあえず、インストールを完了させてあとで考えよう、という
わけで とりあえずインストール完了まで進ませました。
さて、あらためてup2dateの設定を、、とおもうのだけど、
なんどやってもうまくいかず、そのサブスクリプション番号は
まちがっています、といわれる。なぜだ。
しかたがないので WebからRedHatへ問い合わせようとするも、
今度はRedHatNetworkにログインできない。あれれ?
「[英語]ログインIDかパスワードが間違っています。」
そこに 「ログインIDは alphanumeric な文字しか使えません」との表示。
え、さっきログインIDを登録したときには 記号(ピリオド、ハイフン)を含めて
登録してしまったぞ。。それがまずかったのかな、、と 英数字のログインIDで
再度登録してしまう。(後から考えると、このあたりが泥沼)
このIDでRedHatへ問い合わせをおくる。
さて、これからどうしようか。と いろいろやってみて、その後、ふと、
「あっ」と気づいた。もしかして、、
そうでした。さっき RHNにログインできないぞ、、とおもったのは
CAPS-Lockがかかっていて、パスワードがまちがっていたからでした。がーん。
# あぁぁ、 はづかしい!!!!
ログインしてみると、いままでなんどもトライした分、たくさんのマシンが
登録されてしまっていました。げげん。さて、どうすりゃいいのだ?
結局、結論。RHNにログインします。そして、登録したシステム(マシン)の
リストからすべてを削除します。すべてを削除しても up2dateサービスの権利は
ちゃんと残っています。その後、手元のマシンで再度 up2date --register を
行うと、RHNログインIDの設定の後、サブスクリプション番号をたずねる部分で、
既存のサブスクリプションサービスを割り当てるという選択肢が登場、
これをつかえばいいのでした。めでたし、めでたし。
#そして RHNの問い合わせには 「すみません、自己解決しました」の
#メールも送っておきました。
さて、up2dateが実行できるようになったので、一気に更新するか、、と
up2dateを実行して講義へでかけました。(更新パッケージ数は150ほど。)
帰ってくると すべて更新されていると思いきや(まぁあんまり期待してませんでしたけど)
どうもうまくいってなさげ。まぁ、インストールだって途中で失敗するんだから
更新も一度にやろうとしたのは無理があったか。
で、それなら少しずつ試してみようと 150のうちのいくつかを選択して、
実行すると package conflict error...ふぅ。
一方、例によってインストールパッケージを最小限に抑えてインストールしているので、
インストールパッケージも 増やさないといけない。そうしないと、TeXもapacheも
入ってないので、論文もかけないし、webも公開できない。
そこで、system-config-package(アプリケーションの追加/削除)でパッケージを
追加しようとするが、このアプリケーション追加ツールで パッケージを選択して、
いざインストールというときに、CD-ROMを認識しない。あれ?さっきまで、認識していたのに。
なぜか、system-config-packageからCDを読みにいこうとすると 認識できなくなる。
なんで?なんで? ここで時間切れ。双子が、というより、双子の世話をしている妻が
待っているので そろそろ帰宅しないと。
2005年12月21日
朝大学にきて、さーばーの電源を入れる。
あっ。
最初からいきなりなんだが、はじめまちがってDisc1をいれたまま起動しようと
してしまいました(インストール開始になってしまう)寝惚けてるなぁ。
その後、リセットして OSを立ち上げてから Disc1を入れると、自動的にアプリケーション追加ツールが
起動しました。へぇ。そうなってるのか。
そこで、ダメ元で パッケージをいくつか選んで、実行したら、あれれ?
今度はCD-ROMを認識する。不思議。どうもsystem-config-packageをコマンドで
起動すると、CD-ROM mount時にエラーになるみたいなのだけど、Disc1の
自動起動から立ち上げるとうまくいくらしい。変なの。こんなのでいいのか?
でも、背に腹は変えられない。早くシステムを入れ替えないと、育児の関係も
あって大変なのだ。(前みたいに研究室に泊まり込んで作業とかはできないし。)
これで、なんとかインストールしたいパッケージをインストール完了。
つぎ、up2dateの件。ネットで調べると、私と同じシチュエーションになっている人が
何人かいるみたい。そこからヒントを得て、いろいろ調べた結果、
package conflict error で 最後に 「既にインストール済みです。」といわれた
パッケージを rpm -qi [パッケージ名]で調べてみると、どうも二重にインストール
されているように表示されます。たぶん、古いパッケージのインストール記録をみて、
up2dateが「これは更新せにゃ」と更新パッケージリストに追加するのだけど、
一方、新しいパッケージもインストールされているので、「ありゃ、競合するぞ?」と
エラーを吐いているんじゃないかな。
そこで、rpm -qi で 二重に表示されるパッケージのうち、古い方を
rpm -eで削除すると、up2dateが文句を言わなくなりました。
さて、次は何からはじめたものか。とりあえず、いろいろと今までに使ってきた
設定ファイル等を 避難していた場所から、新しいマシンに移したいので、
FTPサーバーの設定をすることにする。ところが、どこにもftpデーモンが見当たらない。
そこで、今回のインストールCDをすべて調べるがftpdパッケージが無い。
えー、なんで?
しかたがないので ftp.redhat.comから探す。
ftp.redhat.comのどこか(場所は忘れた)にあった ソースパッケージ
vsftpd-2.0.1-5.src.rpmをダウンロードして、
rpm -ivh vsftpd-2.0.1-5.src.rpm
cd /usr/src/redhat/SPECS
ここにあるvsftpd.specの中をみると特に変更すべきところは無さそうなので、
rpmbuild -ba vsftpd.spec
で RPMパッケージをつくって できたRPMパッケージをインストール。
cd ../RPMS/i386/
rpm -ivh vsftpd*
その後、以下のサイトなどを参照しながら、設定ファイルを変更する。
参照:
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/ja/ref-guide/s2-ftp-vsftpd-conf.html
http://www.13hz.jp/2004/05/vsftpd.html
特に変更すべきファイルは
/etc/vsftpd/vsftpd.conf
/etc/vsftpd.user_list (このファイルに書かれたユーザー以外はすべて拒否する設定に)
後は tcp_wrapper関係を設定。
#実際、ftpポートを叩いてくる 怪しいアクセスは 毎日やまほどあるんです。
#ほとんど海外からのようですが。おそろしや。
さて、FTPが使えるようになったので退避していたファイルを転送しました。
次に、ずっとイライラしていたbashの設定を変えて、
.emacsの設定、、、というところで ctrl-Spaceで日本語になるのがイライラする。
これじゃぁemacsで範囲指定できないじゃないか。
そこで、日本語入力を見直すことにする、、、と思ったが いろいろ考えた末、これは後回し。
さて、つぎはHTTPサーバー、、、だったのだが、結果から言うとこの日は どうにもうまくいかなかった。
はじめにhttpdを探したらまだインストールされていなかった。
そこで、またインストールディスクからパッケージを選んで
インストール。最終的に MySQLとかをつかいたいのでそういうパッケージも
いっしょにインストール。ここで ちょっといやな予感もしたけど、Go!
インストール開始になって、途中でディスクを換えろといわれた。
大丈夫かなぁとおもいつつ入れ替えたら 大丈夫だった。
さらに何度かの交換ののち、もう終わりかとおもったときに
最後のディスク交換。。。まぁここまで大丈夫だったんだから、、と
交換したらマウントできなかった。。がーん。
あと ほんの数パッケージだと思うのだが。。。しかたなく中止。
その後 httpdを起動したら Document_Rootは表示されたので、大丈夫か?と
おもったけど、その後 httpd.confをどう編集しても、パーミッションをいろいろ
かえてみても ユーザーディレクトリのwebコンテンツが Forbiddenになって表示
されない。いろいろやってみた。、、、、、で、、あきらめた。
もう一度、最初からやろう。。。(勇気のありすぎる撤退だな、おい。)
まず 最初のディスクをいれてインストールをはじめると、
やはり rpm_db error がおきた。どのパッケージでエラーが
おきているのかを調べると(仮想端末2で /mnt/sysimage/log/install.logとか何とかをみる)
vim-enhancedパッケージでエラーが起きていたので、
再度 位置からインストールを開始して、こんどはvim-enhancedをはずしてインストール。
(どうせ私はvimつかえないし。)
どきどきしながら見守ると インストール完了!やった。
その後、再起動ののち、いくつかの設定をして、エキストラCDのインストール中に
またマウントエラーがおきたけど気にしないことにして(いいのか)、
httpd.confを変更して(Userdir enable にして その後の
/home/*/public_htmlディレクトリコンテナをアンコメントしただけだが)
みたら 今度はきちんとユーザーディレクトリが見える。やった。
と思ったのも束の間、再度 webのコンテンツをFTPで転送してきて自分のページを
見ようとすると、Forbiddenのエラーになる。ちくちょう。なぜだ。。。
どうにもわからない。
2005年12月22日
どうにもhttpdがうまく作動しない。どうしてどうして?
document_rootは見えるのに。。。。じゃぁ、それなら、見えるのと見えないのと
どこが違うのか、徹底的にしらべたろうじゃないか。
document_rootにディレクトリとファイルtemp.htmlを作って httpd経由で見てみる。見える。
実験的にhttpd.confの設定をいじって、そのディレクトリを少しずつ移動してみる。
かなり大胆な実験だけど、自分のホームディレクトリまで 少しずつ移動してみたら
あれれ、結局 ホームディレクトリのpublic_htmlというディレクトリ名へおきかえても
みえる。え???
それじゃぁ、と 自分のコンテンツのあるディレクトリ(public_html2という名前で退避していた)の
名前をpublic_htmlに直してみると、表示できない?、、、は?
permissionもまったく同じなのに、こっちのディレクトリをpublic_htmlという名前にするとみえて、
こっちのディレクトリをpublic_htmlという名前にするとみえない。
えぇぇ!?? どういうこと?
#答をご存じでここまで読まれたかたがいたら、にやにやしてしまうことでしょうね。
ここまで wwwでも何かヒントになることはないかと検索をしていたのですが、
何故か不思議なことに 自分の回答へたどりつけていませんでした。
結論からいうと、SELinuxという技術が RHEL 4 から導入されていたのですね。
間単にいうとSELinuxというのは UNIXの通常のpermission設定にくわえて、
permission設定をもうひとつ2重に付け加えたようなものです。(まちがってるかな。)
通常のls -lでは SELinuxの"permission"設定は表示されませんが、
ls --context
で SELinux関係の設定(ラベル)が表示されます。このラベルの設定がうまくいってなかったので
public_htmlのなかをhttpdが見ようとしたときに Forbiddenになってしまっていたのですね。
これに気付くのに かなり時間を要しました。。。。orz.
2006年01月10日
あぁ、結局 なんどOS installをやったことやら。。。。
いろいろありましたが、SELinuxに気付いてからは なんとか少しずつですが
順調に環境を整えつつあります。とはいえ、折角あった年末のかなり時間を
浪費してしまったので、いろいろな仕事がたまってきていて、サーバーの管理も
少しずつしかできなくなっています。いまだにMLサーバーが動いてないし。
ごめんなさい。参加ユーザーのひと。
何より、ここへの記録もままなりませんでした。今日 ようやく残っていたメモをもとに
判る範囲で書いてみました。ふぅ。。。。。う、、、、うう、、、、ぐぁ、、、
がーーーー!
いやね、さっきからね、何がいらいらするって 日本語入力がままならないんですよ。
ずっと 学生の頃から、wnn+egg+emacsで 作業してきているんですが、
なんだかRHEL4では 標準でIIIMFとかいう日本語入力めそっど(よくわかってないけど)
を使え、というんです。でも それだと emacsの範囲指定と 入力めそっどとぐるのキーが
かぶるんです。で、よく別らないけどいろいろいじってたらemacsでは ものすごい御馬鹿な
日本語入力めそっどになってしまったんです。なんだこれは?
片仮名が入力できないし。どうすりゃいいんだろう。。。
そういうわけでwnn8を購入しようかなとおもっています。
いつになったら快適な日本語入力ができるようになるだろう。。。
それまではメールをかくのもストレスフルです。
2006年01月11日
今日 すこし作業を開始しようとして、ipmessengerがないと不便なことに気附き、
まず IPmessengerをinstallすることにします。
と、ここで気付いた。きっとUTF-8だから日本語はつかえないだろうね。
だって、現在公開されているLinuxで動くIPmessengerって きっとEUCのみ対応だもの。
ふぅ。仕方がない とりあえずinstallしてみよう。
ひとまず、http://gipmsg.sourceforge.net/index-ja.html から
gipmsgというのをtarボールで とってくる。展開して ./configure すると
gtk-configが無いと文句をいわれた。あれれ。
調べてみると gtk+-develぱっけーじが足りないようだ。直接CD-ROMから探して
packageをinstallすることにする。えーと、Disk4に入ってた。
すると、依存関係からあれがたりない、これがたりないとのたまう。
しかたがないので、それらをひとつずつとれーすしていく。
すると、xorg-x11-develの6.8.1が xorg-libsの6.8.1を必要としているのに、
それが無いという。rpm -qiで調べてみると xorg-libsの6.8.2が入ってる。
え?
6.8.2じゃだめなの?6.8.1ぴったりじゃないとだめなの?
仕方がないので forceオプションで xorg-libs-6.8.1をCDROMからinstallしてみる。
そのあとで 再度up2dateから バージョンを上てみる。
その後、必要なpackageをすべてinstallして、再度 ./configureしたら
checkはパスしたようだ。でも、makeしたら エラーの山になった。あらら。
そこで、次にhttp://free.prohosting.com/~nobori/gtkipmsg.shtmlのgtkipmsgというのを
試すことにする。こちらはsrc.rpmがあるので、これを利用して src.rpmから
rpmをbuildしてみる。こちらは大丈夫だった。rpmファイルは出来上がった。
さて、これをinstallして 起動してみると、、、、
はい、だめでした。あぷりけーしょんのボタン等で、日本語をつかっているし、
それが原因で ユーザー一覧も空欄になってしまい、誰も表示されません。
asciiのメッセージだけなら通るかな、、という淡い期待は見事に打ち砕かれました。
そういうわけで RHEL 4 では ipmessengerが 使えない、、、ということかな。。。
えーと、すごい不便なんですけど。。。しくしく。
ふぅ、、、と、ここで rpmのリストを眺めていて気付いた。
あれれ、xorg-x11-libsが二重にinstallされてる。6.8.1も6.8.2も
installされている状態だけどいいのかな。
気持ちがわるいので rpm -e xorg-x11-libs-6.8.1 とやってしまったのだけど、
よかったのかな。。。まぁ、問題がおきたらまた考えよう。(いいのか、それで)
さて、MLを再開せねば。年末にすこしだけ作業をしてみたのですが、
そのときはうまくいきませんでした。以前 RedHat9.0のときにやったのと
同じ作業をしたはずなんだけど。。。。と、いろいろ調べていて
ここ(http://www.yomaigoto.jp/linux/centos-3.html)にいきつきました。
以前に作業したときは、/etc/smrsh/へのしんぼりっくりんくとして、
default_config.ph、 fml.pl、 libloadconfig.pl、 site_init.ph
を作成しましたが、以前よりsmrshが厳しくなっているようで、
以下のようなsynbolic linkを作れとのこと。
[root@marine RPMS]# ls -l /etc/smrsh/
12月 27 16:06 default_config.ph -> /usr/local/fml/default_config.ph
12月 27 16:05 fml.pl -> /usr/local/fml/fml.pl
12月 27 16:06 libloadconfig.pl -> /usr/local/fml/libloadconfig.pl
1月 11 12:24 mead.pl -> /usr/local/fml/libexec/mead.pl
1月 11 12:24 module -> /usr/local/fml/module/
12月 27 16:05 site_init.ph -> /home/fml/bin/site_init.ph
この作業でうまくいきました。なるほど。
http://d.hatena.ne.jp/wakida/20050520にも書いてあったのだけど、
この事はfml.orgにも書かれていないですよね。こういう記事を書いてくれている人達に感謝。
もう細かくMEMOする余裕がないので、箇条書きですが installしたものをmemoしておきます。
・RHEL 4は 日本語の文字コードがutf-8なので、teratermでloginすると 日本語が
すべて化けます。困ったなぁとおもってたら、UTF-8対応teratermが
出ているじゃないですか。開発された方に 激しく感謝。
http://sourceforge.jp/projects/ttssh2/ よりdownloadできます。
・UTF-8なファイルを閲覧しようとlessを使うと文字化けします。
lessというのは、もう 条件反射のようにつかうコマンドなので、
これが使えないとストレス爆発です。また コード変換もnkfが使えないそうです。
むかぁ。
で、調べたらlvというコマンドが 大変便利だそうで。。
これまた、開発された方へ猛烈に感謝。
lv homepage ( http://www.mt.cs.keio.ac.jp/person/narita/lv/index_ja.html )
・TeX環境を確認しようと コンパイルしたら確か一発でコンパイルは出来たとおもう。
が、pxdviでpreviewしようとしたら、エラーを山程はいた(と思う。)
なんでかな、と調べたら(http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Linux%2Fredhat)
FC1では「著作と出版」をすべて選んでも日本語 VFlib 関係が入らないので pxdvi 等で
RHEL 4 でも同じことかな、とやってみたらうまくいきました(だったと思う。)
日本語が表示できません。これを回避する一つの方法は,例えば fedora.redhat.comの
Download ServerからVFlib2-VFjfm-2.25.6-19.i386.rpmとVFlib2-conf-ja-2.25.6- 19.i386.rpm
を取ってきてインストールしておくことです。
そのときは ftp.redhat.comから探したはず、、、。
その後、確認したところでは texファイルはutf-8ではなくて、
eucでつくらないとpreviewで文字化けします。
・プリンタの設定は [システム設定]の[印刷]からGUIツールであっという間にできました。
(command-lineなら printconf-guiです。使用したプリンタはcanon LBP-470です。)
まぁ、まだまだ いろんなものが足りないと思うのだけど、今日はこのあたりで勘弁しといたろ。
2006年01月12日
昨晩、自宅からこのserverのログを眺めていて気付いたのですが、
ssh portに えらいアタックがされていました。連日、数時間ほど、
アルファベット順に何百というユーザー名で loginを試みているのです。だれかが。
ひぇーー。
そこで、急拠 securityの設定(TCP-wrapper)を強化しました。
まず、/etc/hosts.deny の なかに
ALL:ALL
と書きます。(すべてのportについて すべてのマシンからのアクセスを拒否)
次に/etc/hosts.allow の なかに
sshd : localhosts
sshd : .hyogo-u.ac.jp
sshd : 202.254.
というように 使用を許可するportと どこのマシンからの使用を許可するかを
かきこみます。allowが先に適用されて、そこで漏れたケースがdenyに渡されるので、
これで allowに設定した場合だけが 接続可能、という設定になるはず。
とりあえず 学内と自宅からのアクセスだけに限定してしまいました。
急拠設定したので、本当に最低限しか通さない設定になっています。
追々、もうすこし設定を見直して、最適な設定に変えようと思います。
それから、自宅のwindowsコンピュータにwinscpをinstallしました。
なるほど、ssh2には 標準で sftpというサービスが附属するのですね。
だから、sshdを導入すれば あとはsftp(もしくはscp)clientを用意するだけで、
secureなfile転送が可能なのか、もっと早く使えばよかった。
ftpdは 閉じようと思います。
2006年01月17日
無停電電源装置と連動するためのshutdownプログラムをinstallしました。
以前から(もう数年つかってますね。)、三菱のFREQUPSというシリーズの製品を
つかっているのですが、
最新のUNIX distributionにも対応したソフトを配布してくれていて、
とても助かりました。すばらしい!
(参照:
http://www.mitsubishielectric.co.jp/frequps/)
2006年01月18日
メールソフトは 以前と同じくsylpheedを使っています。
sylpheedはmewと同じ形式で Mail directoryの下にメールを保管するので、
Mail directoryを そのまま移動してきて、sylpheedを起動したところ、
ほぼ 問題なくうごきました。。。ほぼ、というのはですね。
以前に受信したメールを表示したり、それに対して返信したりするのは
問題なくできるのですが、メールのリスト表示の部分で、
メールの日本語の件名が 化けるのです。そのため、メールのリストのなかから、
あのメールはどこだっけ?と探すのは 難しいことになっていました。
まぁ、しょうがない。リスト表示ができないだけで、そのメールを選択すれば
ちゃんと表示してくれるんだし、新しく届いたメールは 件名も化けないし、
古いメールはだんだんと 過去のものになっていくから 我慢しよう、、
と思っていたのですが、今日 偶然 対処方法に気付きました。
まず、sylpheedの受信箱のなかに新しいfolderをつくります。仮に"aaa"という
folderとします。そして、リスト内の件名が化けているfolderのメールを
一度すべて"aaa"に移動してから もとに戻す。これだけでOK。
要するに メールを移動する際に 移動したメールをスキャンしてリストを
作り直しているんですね。これで 文字化けとさようなら。
#とはいえ、folderが 何十個も有る場合は 結構手間ですけど。
2006年02月06日
ちょっと前から大学の郵便物が届くメールボックスの部屋の床に
小箱が置いてあった。教員宛の郵便物の場合、「**先生」と名前が
書いてあるので、すぐわかるのだが、その箱には 何も書いてなかった。
あまりきれいな箱でもないし、何なんだろうな?と思いつつも
確認していなかったのですが、今日 近寄ってよく見たら 私宛の小包じゃん!
名前かいておいてよ!もぉ。
で、箱をあけると 待ちに待った「うんぬ8」。これで ようやく
ストレスなく文章が書けるってわけだ。いままで、メール書くのも
なんだか 億劫でした。
さて、「うんぬ8」パッケージ内のCD-ROMは Redhat enterprise Linux WS3に対応ですが、
WS4には未対応。WS4対応のインストーラは webからダウンロード可能とのこと。
ほいほい、おっけーです。
で、omronのwebから 対応インストーラを入手、これを展開して インストーラの
READMEのおっしゃる通りにterminal上でコマンドをうって y/n に答えますと
うんぬ8の本体のインストール完了。
その後 wnn8のRHEL WS4対応の設定コマンドを打つと、日本語入力設定を
Wnn8+Wnn8leの設定にしてくれます。ユーザー毎に 設定変更と
システムのデフォルトを変更とありましたが、今回は -sオプションをつけて
システムのデフォルト設定を wnn8+wnn8leにしました。
ふむふむ、なかなか快適。
さて、主に 私が文章を入力するのは emacsです。emacs上で wnn8leを使うと、
emacsのキーコマンドをwnn8leが吸い上げてしまって、emacs本来のキー操作が
効かなくなってしまいます。omronのFAQによると、wnn7用のegg(elispで書かれた
emacs上で動くwnnクライアント)を少し修正すれば wnn8でも使えるとのこと。
(ただし、wnn8の最新機能は使えないらしい。私にとっては全く問題ないが。)
そこで、wnn8のFAQで言われている通りにします。まず、
ここから
wnn7-elisp-1.02-1.i386.rpmをとってきて、rpmコマンドによりインストール。
それから、
ここのFAQに置いてあるeggrc-wnn7というファイルを入手して、
/usr/share/wnn7/elisp/emacs20/eggrc-wnn7 と入れ替えます。
(これにより、wnn7用のeggがwnn8対応になるようです。)
そんでもって、自分の.emacsの最後に
;-------------wnn7たまご
(if (featurep 'xemacs)
(setq load-path (append '("/usr/share/wnn7/elisp/xemacs21")
load-path))
(setq load-path (append '("/usr/share/wnn7/elisp/emacs20")
load-path)))
(global-set-key "\C-\\" 'toggle-input-method)
(load "wnn7egg-leim")
(if (featurep 'xemacs)
(select-input-method "japanese-egg-wnn7")
(set-input-method "japanese-egg-wnn7"))
(set-language-info "Japanese" 'input-method "japanese-egg-wnn7")
と書き加えます。そして、emacsをコマンドラインから、
env XMODIFIERS="@im=none" emacs
と打って起動して うまく起動したか確認します。うまくいっていたら、
alias emacs='env XMODIFIERS="@im=none" emacs'
などと エイリアスしておけば、完璧!
あぁ 思った通りに文章が入力出来るってきもちいい。
2006年02月17日
wnn8をインストールし、これで快適、、、とおもったのですが、
どうも 具合いがよろしくない点が。
emacsでの日本語入力はいいんです。eggのおかげで、もうとっても快適です。
ですが、それ以外の日本語入力は、もう あほか、と。
というのもですね。カーソルキーの入力を wnnが受け付けてしまって、
しかも ↑キーが 「前確定文字列」等になっているものだから、
一度、改行したらもう上には戻れない。ぉぃぉぃ。
上の行に戻って編集するには いったん wnnをoffにしてから、カーソル移動して
再度 wnnをonにしないといけない。
一体全体 どう考えたら、こんな仕様設計にしようと思うんでしょうか?
ちょっと 考え直してほしいですよ。まったく。
で、wnnのキーカスタマイズをしようと、wnnenvutilを実行して、
いじっていたら 何かの表紙に wnn8leが起動しなくなりました。
emacsは 今まで通り順調に 日本語入力できています。
あれ、私何かまずいことをしたでしょうか???と 困っていました。
で、今日、こちら
の記事をみつけました。
ってことは wnn8leが起動しなくなったのは wnn8のバグなんじゃん!
しっかりしてくれ、オムロン。
さらに、こちら
の記事によれば、直接 キーカスタマイズの定義ファイルをいじることで、
カーソルキー入力をwnnが横取りしてしまう問題も解決でした。具体的内容を
ここにも転載しておきますと、
~/.Wnn8/uumkey というファイルに
henkan_on ^\ 0x119
という行を追加すると、wnn8leが起動しなくなったという問題は解決しました。
また、previous_history_e, next_history_e の行を
previous_history_e 0x112
next_history_e 0x113
と修正すると カーソルキーで移動できるようになりました。
めでたしめでたし。また、wnnenvutilを起動して [入力/表示]-[楽々入力設定]から
リアルタイム予測のチェックをはずすと 入力中の文字列が 予測候補windowで見えないという
本末転倒な事態も回避されました。いい感じ。
あとは wnn8がsylpheedのキーバインドを横どりしないようになれば、完璧なのだが。
最近、論文に追加修正する作業をしていたのですが、仕上げにispellでスペルチェックを
しようとしたら、
no word lists can be found for the language "ja_JP"
と言われました。あれ、以前は こんなこと言われなかったのだけど。
で、
LANG=C ispell hogehoge.tex
と コマンドラインでの入力の前に LANG=Cをつけて起動すると動きました。
2006年03月06日
この日はMovable Type3.2を導入しました。MT3.2は cgiの一種ですので、
とりあえず 個人のhomeディレクトリ以外で cgi-binが動くことを確認するために
カウンタcgiをインストールしました。用いたのは
http://www.kent-web.com/count/dream.htmlの
夢カウンタというものです。設置も簡単で上記ページ内にたいへん分かりやすく書いてあります。
戸惑ったところといえば、はじめ bad interpreter エラーとなってしまいましたが、
これは ファイルの改行コードがwindows仕様になっていたからだと思われます。
dos2unix を実行して 改行コードをUNIX用(LF)に変換すると 正常に動作しました。
通常は FTPクライアントで uploadするときに 改行コード等を自動で変換するのかも
しれませんが、うちの場合、サーバー上で作業しているので、明示的に変換が
必要だったと言うわけです。
とりあえず、もっとも基本的な使い方で 自分のページのtopに1個所だけ使用していますが、
とても便利そうなので これからいろいろ試してみたいと思います。
さて、cgiがきちんと動作することを確認できました。RedhatEnterpriseLinux4の場合、
標準で webのdocument_rootが/var/www/html ですが、サイトcgiの設置場所は
標準で /var/www/cgi-bin でした。このしたに MT3.2をインストールすることになります。
実際には データベースに関することなど全く知識がなくて 右往左往したのですが、
どういう手順で右往左往したのか、はっきり覚えていないですし、終わってから考えれば
こうすればスムーズな導入手順だった、、という手順についてのべることにします。
まず、必要なものですが、perlやmysqlは このRHEL4をインストールする際に、
blogエンジンで必要なはずだから、、、と 最初からインストール済みでした。
また、必須なperlモジュールもすでにインストール済みでした。
つまり、これらはRHEL4のインストールパッケージに含まれているということです。
ただ、推奨パッケージのひとつのimage::magickというのがありませんでした。
で、探してみると これもRHEL4のインストールパッケージのなかにあったのですが、
これをインストールするためには 依存関係からlib-png-devel等いくつかのパッケージが
必要でした。そこで、必要と言われるものを インストールしようとしていくうちに
困ったことに気づきました。
たとえば、libexif-devlというパッケージが必要なのですが、
インストールパッケージとして 手元のDVD-ROMには
libexif-devel-0.5.12-5.i386.rpm
が収録されていて、これをインストールするには
libexif-0.5.12-5.i386.rpmが必要だといわれます。
ここで 困るのは 「libexifパッケージの 0.5.12-5以上のバージョンが必要」
なのではなくて、ぴったり 0.5.12-5が必要、と言われるのです。
ところが、マシンには現在
libexif-0.5.12-5.1.i386.rpm
がインストールされていたのでした。つまり、何かの原因で 私がこのマシンの
初期インストールの際にlibexifパッケージのみをインストールし、
その後 up2dateによって このパッケージが最新のものに更新されてしまったのですね。
むむぅ。
そこで、思いきって、DVDの古いパッケージを強引に
# rpm --olopackage --replacefiles -ivh libexif-0.5.12-5.i386.rpm libexif-devel-0.5.12-5.i386.rpm
でインストールしてから、up2dateをすぐに起動して両方とも最新に入れ替えるということにしました。
こういうめんどうなことになるのなら、バージョンがぴったり一致しないとインストールできない
パッケージは ひとつのパッケージとしてまとめておいてくれたらいいのに、と思いました。
#最近は HDDの容量もずいぶん余裕がある場合が多いと思うし。
そんなこんなで 必要だと思うパッケージをインストールできたら、
データベース関係の設定に入りましょう。今回 私は mysqlを使いました。
そもそも mysqlがどういうもので、何をするものなのか、ちっともわかっていなかったので
パッケージをインストールしたものの、何をしていいのか全くわかりませんでした。
そのあたり MTのマニュアルにも見当たらなかったのですが、どこかに記述があるのかな。
mysqlの公式サイトなども あちこち閲覧して、記事を読むのですが、
どうにもよくわからない。mysql_init_dbを実行するみたいだけど、
どのディレクトリ内で 実行すればいいのか?そのあと 何を起動すればいいのか。
なぜか すぐにmysqldが止まってしまうのだけど。。。
いろいろ調べ尽くして、なかなかうまくいかなくて、ようやくうまく行ったかな
と 思ったときに すべて無駄足だったことに気づきました。
えーとですね。RHEL4の場合、/etc/rc.d/init.d/のなかに
mysqlの起動スクリプトが書いてあってですね、
# /etc/rc.d/init.d/mysqld start
と root権限で実行すれば、すべて自動でやってくれます。はぁ〜。ため息。
このことに気づくのに一番 時間がかかりました。
mysqlは このままでは デフォルトでパスワードが空文字列らしいので、
「mysqlのroot」のパスワードを設定します。
# mysqladmin --user=root password 'hogehoge'
よくわからないのですが、その後 MT用のdatabaseをつくります。
まず、mysqlに接続。
# mysql -u root -p
Enter password: *********
つぎにMT3.2用のデータベースを作成(データベース名mtdbとします。)
mysql>create database mtdb;
MT3.2用のユーザーを作成。(ここでは mtとします)
mysql>user mysql;
mysql>grant all privileges on mtdb.* to mt@localhost indentified by 'hogehoge'
mysql>flush privileges
上記のhogehogeは ユーザーmt用のパスワードです。
mysql>exit;
これで データベースの設定は終了。
ようやく MT3.2を設置します。今回は /var/www/cgi-bin/の中の
mt というディレクトリに MT3.2をインストールすることにします。
#このMT3.2の設置場所は ブログをみればすぐわかることなので公開します。
私はMT3.2をライセンスパックで購入したので、CD-ROMのなかの
MT-3_2-ja-2.tar.gzを
# cd /var/www/cgi-bin
# tar xvzf /media/cdrom/MT-3_2-ja-2.tar.gz
# mv MT-3.2-ja-2 mt
により解凍します。(解凍すると MT-3.2-ja-2 というディレクトリに
ファイルが入っているのでこのディレクトリ名をmtに変更)
その後、mtディレクトリに入って、mt-config.cgi-orifinalというファイルを
mt-config.cgiという名前にコピーして、内容を編集します。
この辺りのことは movabletypeのインストールマニュアルに書いてある通りですが、
自分の設定したことを書き並べてみますと、
うちの場合 http://marine.sci.hyogo-u.ac.jp/cgi-bin/mtになります。
ObjectDriver DBI::mysql
となります。
Database mtdb
DBUser mt
DBPassword hogehoge
DBHost localhost
今回は cgi-binディレクトリの下に設置したので、すべてのファイルはcgiファイルと
認識されてしまうので、画像等のstaticなリソースは 別のフォルダに移動する必要があります。
mtディレクトリ内の mt-staticディレクトリを サーバー内のwebブラウザから見える
べつの場所に移動してそのURLを 記入します。
MT3.2の本体、つまり ログイン入り口は デフォルトで mtディレクトリ内のmt.cgi ですが、
このデフォルトのままでは ユーザー以外にも入り口を知らせていることになります。
もちろんパスワードでロックはされていますが、パスワード以前に ログインの場所が
わからなくなっていることも重要です。そこで、mt.cgiのファイル名を変更することにします。
たとえば、hogehoge.cgiに変更するのならば、この行を
AdminScript hogehoge.cgi
と変更します。
これくらいでしょうか?上の設定に合わせて mtディレクトリ内のmt-staticディレクトリを
別の場所へ移動。そして、mt.cgiのファイル名を変更します。
つぎに、システムチェックです。
http://marine.sci.hyogo-u.ac.jp/cgi-bin/mt/mt-check.cgi
にアクセスすると、必要なモジュール等の存在を確認してくれます。
#現在は 不要なので パーミッションにより上記URLは実行不能にしてあります。
ここで 無事に「準備が整いました」と言われたら、ようやく setupの実行です。
セットアップは mtディレクトリ内のindex.htmlへアクセスして開始するのですが、
ここで問題がおきました。mtディレクトリがcgi-binディレクトリに入れてあるので
index.htmlもcgiファイルと認識されてしまったのです。そこで、急遽 index.htmlも
mt-staticへ移動。このindex.htmlからのリンクはサーバー内の絶対パスで
記述されているので場所を移動しても問題ありませんでした。
で、移動したindex.htmlへアクセスして ログインを行うと、なんやかんやあって
(記憶がさだかでない)ユーザー名とパスワードを聞かれます。
初期は ユーザー名Melody パスワードNelsonで ログインするのだそうです。
あとは Melodyのユーザー名とパスワードを自分のものに変更して、
インストールは完了です。ふぅ。
参考にしたページ:
http://hxxk.jp/2005/05/13/2105
http://monolog.spanstyle.com/archives/2005/0512_2132.html
http://y-kit.jp/saba/xp/mtmysql.htm
2006年04月05日
第三期 2003/10/01にあった自分で書いた記録をもとに、
povray、pov-mode.el、xvをインストール。
やっぱり記録をしておくと 大変楽チンである。
ということで ここに転記しておく。
(2003.10.01の記録より)
そういえば pov-rayが入ってなかった。
これは 必要。
http://www.povray.org から tgzファイルをとってきて、
解凍後、installスクリプトで インストール。
今回、xvはやめて eeやeogを使おうと思っていたんだけども、
やっぱ だめ。xvを入れる。やはりsharewareなのね。
http://www.trilon.com/xv/downloads.html
このあたりに rpmパッケージがある。
pov-rayを使い始めたら pov-mode.elが欲しくなる。
http://www.acc.umu.se/~woormie/povray/
このあたりから pov-mode.2.10.tgzを取ってきて
解凍してできたファイルたちを /usr/share/emacs/site-lispへ移動。
その後、.emacsに
;;
;;pov-mode
;;
(autoload 'pov-mode "pov-mode.el" "PoVray scene file mode" t)
(setq auto-mode-alist
(append '(("\\.pov$" . pov-mode)
("\\.inc$" . pov-mode)
) auto-mode-alist))
(setq pov-run-default "+i %s +D +FT")
(setq font-lock-background-mode 'light)
を付け足して、終了。これで おっけー。
と おもったら 何か変なことに。
というのも、povファイルを開いていて たとえば
// かいてんします
と打ちたいのに、日本語モードにしても、なぜか "k"、"d"、"e"の
3つのキーを日本語入力として受け入れてくれず、上の入力だったら
// kあいてんします
となってしまう。なぜ? いろいろやってみると、povファイル以外は
そういうことは起っていない。。ピーン! いまいれた pov-mode.elが
何かしているに違いない。そこで pov-mode.elの中を じーっと見てみると
当該個所を発見。この機能を使わなさそうなので、
つぎのようにコメントアウトしました。
;;
;; this part was commented out by hammer 03.10.01
;;
;; Hack to redindent end/else/break
;;(if pov-autoindent-endblocks
;; (progn
;; (define-key pov-mode-map "e" 'pov-autoindent-endblock)
;; (define-key pov-mode-map "k" 'pov-autoindent-endblock)
;; (define-key pov-mode-map "d" 'pov-autoindent-endblock)))
;;