設定したことを忘れないように書いてあります。
ncursusを5.2に上げる。あげた理由はあまりないけど、昔の1.9.9gのままだったため。 libtoolsがちゃんとインストールされていれば以下のようにすれば問題ないことを、INSTALLをしっかり読んだら発見したので、libtoolsも1.4.2にupgreadした。
./configure --with-libtools
が、しかし、/usr/libと/libで参照しているライブラリに不整合があるようなので、シンボリックリンクを手直しする必要がある。これをしないと相変わらずkernelのアップデート時にmake menuconfigが通らない。 新しいファイルを参照するようにリンクをはれば問題なし。
というか--with-libtoolsは有効ではないみたい。--with-shared --with-nomalをつけたほうが確実。 またglibcのadd-onにする方法ではなにが違うのだろうか?
なんとなくメンテ。以下はすべてリングサーバから取得。アップしたバージョンと確認方法を残しておく。
* sh-utils-2.0 id --version * bison-1.30 bison --version * util-linux-2.11.tar.gz mount -V * kbd-1.06 showkey -h
日本のlinux情報のページでfetchmailにセキュリティホールがあるとのことなのでインストール。 ./confiure --helpで確認すると、必要そうなオプションは特になく、./confiure --prefix=/usrとしたのみ。 --with-sslとか--with-socks5とかは気になるが、とりあえずどちらも使用する予定がない。
あとは、make && make installで終了。
コンソールからviを使うと、画面が崩れてまともに使えないので(エスケープシーケンスぽいので、glibをあげた後にncursesを変更したのが原因だろう)、 jvimをインストール。 jelvisを再コンパイルしても良いのだが、最新が見つからないのでjvimにした。5.1は開発が進んでないようなので、3.0を選択。
tar zxvf vim-3.0.tar.gz cd vim gzip -dc ../jvim-2.1a.tar.gz | patch -p 1
makefileは、makjunix.makの以下の部分を変更して使用する。
X11LIBDIR = /usr/X11/lib X11INCDIR = /usr/X11/include ### Prefix for location of files PREFIX = /usr # generic for FEP Sequence # FEPOPT = -DFEPCTRL FEPLIBS = FEPOBJS = fepseq.o # generic for CANNA input system # FEPOPT = -DFEPCTRL -DCANNA FEPLIBS = -lcanna FEPOBJS = fepcanna.o # Linux 2.0.x/2.2.x (TESTED Debian GNU/Linux 2.0/2.1) MACHINE = -DBSD_UNIX CC=gcc -O LIBS = -lncurses
あとは、srcディレクトリで
make -f makjunix make -f makjunix install
で終了。
sambaでブラウジングができないので、sambaを2.2系にあげることにした。 その際に、どっかのドキュメントに64ビットビューはglibc2.2で無いと使えないとの記述があったような気がしたので(不確か)、 libcもアップデートすることに。64ビットビューを使うかといわれると使わないと思うけど。
libc.so.5からglibc2系へあげたときは、ネット情報がたくさんあったが、glibc-2.1からglibc-2.2への変更するドキュメントがネットで見つからなかったので、かなり不安な状況で実行。 この手順が正しいかは、保証の限りではない。
まず、以下のファイルをとってくる。私はRINGサーバからとってきた。
glibc-2.2.4.tar.gz glibc-linuxthreads-2.2.4.tar.gz
glibc-2.2では、cryptとlocaleは標準となっているので、add-onはlinux-threadだけあれば良い。
次に展開、compile用のdirectoryを作成し、作業を進める。
tar zxvf glibc-2.2.4.tar.gz cd glibc-2.2.4 tar zxvf ../glibc-linuxthreads-2.2.4.tar.gz mkdir compile cd compile
../configure --prefix=/usr --enable-add-onsとすると、makeが最新じゃないとのメッセージがでる。INSTALLのRecommended Tools for Compilationを見ると、以下のファイルが必要なよう。
アスタリスクをつけたのが要求で、その下の行がversionの確認方法。
* GNU `make' 3.79 or newer make --version * GCC 2.95 or newer gcc --version * GNU `binutils' 2.10.1 or later ld --version * GNU `texinfo' 3.12f info --version * GNU `awk' 3.0, or some other POSIX awk awk --version * Perl 5 * GNU `sed' 3.02 or newer * GNU `autoconf' 2.12 or higher autoconf --version * GNU `gettext' 0.10.36 or later gettext --version
で、makeとtexinfo,gettextが古かったので、とってきてcompileすることに。compileはすべて
./configure --prefix=/usr make make check make install
既にgettextがインストールされている場合、--with-included-gettextなしで実行すると、既存のgettextが使用される。 インストールされているgettextの方が新しい場合は、configureのオプションにつけるようにとJFのNLSに書いてあるので、 ./configure --helpでオプションがサポートされている場合はつけておく。 gettextをインストールするとライブラリが更新されるので、 ldconfig -v として、ライブラリキャッシュのクリアを行う。
んで、glibのcompile用ディレトクリに戻って、
../configure --enable-add-ons --prefix=/usr make make check make install
--enable-add-onsは、その後ろに何も指定しないと勝手にディレクトリを探しに行くようなので指定しなかった。 make install中はコマンドが効かなくなる場合もあるので注意。
make checkではエラーが出たが、古いgettextを使用しているためのエラーのため、気にせず進むこととした(かなり気になったがえいやッで)。
最後に、localeのデータを作成して終了。じつはこれを知らずに、compileディレクトリを削除してしまい、日本語がでないとあわてしまった。
make localedata/install-locales
ldconfig -vでキャッシュをクリアし、lsなどでlocaleが正しくなっているか確認して終了。
sambaがブラウズできない。googleなどで検索しても、問題があったというレポートはあっても解決できたというレポートを見つけられない。 過去、動いていたのになにが原因なのか不明。sambaの話は、以降ホームネットワーク日記書くことにする。
Kernelを2.4.4から2.4.6へアップグレード。意味のないアップはしないのだが、今回はほとんど意味はない。kernel configをちょっと変更したかっただけなんだが、ついでにアップグレードしてしまった。 Changesもチェックしなかったし。
HDDを換装するにあたって手段をすっかり忘れていた。
まず、resque diskを作っておく。念のため。また、make bzdiskで作成したbootディスクも。とりあえず、新しいHDDのMPG3409ATをスレーブ設定で接続。
Primary mastar | /dev/hda |
Primary Srave | /dev/hdb |
Secondary mastar | /dev/hdc |
Secondary Srave | /dev/hdd |
となるので、新規のhddは/dev/hdbということになる。ここで、fdisk /dev/hdbとすると新しいディスクにパーテションを設定できる。pで確認しながらやると確実。 今回は、以下のように設定。マウントポイントは /, /var, /usr, /homeとしている。
Device | Boot | Start | End | Blocks | Id | System |
---|---|---|---|---|---|---|
/dev/hdb1 | * | 1 | 653 | 5245191 | 83 | Linux native |
/dev/hdb2 |
|
654 | 654 | 8032+ | 82 | Linux swap |
/dev/hdb3 |
|
655 | 1307 | 5245222+ | 83 | Linux native |
/dev/hdb4 |
|
1308 | 4983 | 29527470 | 5 | Extended |
/dev/hdb5 |
|
1308 | 2613 | 10490413+ | 83 | Linux native |
/dev/hdb6 |
|
2614 | 4983 | 19036993+ | 83 | Linux native |
基本領域は4つまでしかとれないので、4番目が拡張となる。4番目の中を二つに分割。 nでパーテションの追加、dで削除、aでアクティブパーテションの設定、tでidの変更、wで書き込んで終了、qで書き込まず終了。これらのコマンドはmで確認可能。
つぎにmkfs /dev/hdb1というように順にfile systemを作成(ext2 fsを使用するのでfstypeは指定せずdefaultのまま)。/dev/hdb2はswapなので mkswapで作成する。作成が終わったら、
mount /dev/hdb1/ /mnt cd /mnt mkdir usr mount /dev/hdb4 mkdir var mount /dev/hdb3 mkdir home mount /dev/hdb5
などのように/mnt以下に、/以下のツリー構造を作成する。そして cp -aR / /mnt を使用してすべてコピー。 終了後、必要があれば/mnt/etc/fstabを修正(ツリー構造が一緒なら必要なし)。shutdown -h nowで止めたあと、primary / secondaryを入れ換え (あるいはsecondaryをprimaryにして旧diskは取り外して)、再起動。無事立ち上がればOK。ああ、あとliloを使っていれば再設定と、swaponを置く必要があるかも。
sambaが接続不良になることが多い。kernel 2.2.4にしてからのような気もする。 本家sambaでは2.2系も既にリリースされているので待ちたい気分は多いし、Samba User's Pageで知り得る情報の範囲では、そんな現象が発生するような問題はなさそうだが、 2.0.9-ja1.0も出ているし、recompileも兼ねてupdateすることに。
./configure --with-i18n-swat
上記のようにconfigureにオプションを渡して、多言語版のSWATを使えるようにしてmake && make install。 昔のものを上書きにいったはずなので、swatから再起動してやる。と、よくあることだが、nmbdが増えまくる現象発生。 すべてkillしてやると正常復旧した。
で、結果としてはなんとなく改善したような気がする。少なくともswatは早くなった。