備忘録:Linux全体

○2002年  1月  7日

この備忘録を開始。 1月6日にDebianをapt-getでアップグレードした際、mozillaが 0.9.7-3になった。 しかし、このバージョンには日本語言語パックがない。 ちょっとがっかり。
その代わり、カーネルを2.4.17へバージョンアップ。

# apt-get install kernel-source-2.4.17
# cd /usr/src
# tar jxvf kernel-source-2.4.17.tar.bz2
# rm linux
# ln -s /usr/src/2.4.17/usr/src/linux linux
# cd linux
# cp /usr/src/2.4.10/.config/usr/src/linux/.config
# make-kpkg --revision20020107 kernel-image
※途中2.4.10では無かった項目に関していろいろ聞かれるが、ext3だけ有効にした
# dpkg -i ../kernel-image-2.4.17_20020107_i386.deb
# mkinitrd -o /boot/initrd-2.4.17/lib/modules/2.4.17

1行目でカーネルソースをインストールしているが、 これは/usr/srcディレクトリにkernel-source-*.tar.bz2を展開しているだけである。 そのため、tarで展開する必要がある(3行目)。 4、5行目ではシンボリックリンクを2.4.10→2.4.17に張り直している。 また、最終行ではinitrdを作成している。これが無いと2.4.x系のカーネルは起動しない。
liloを編集して2.4.10(oldカーネル)と2.4.17を起動できるようにして無事終了。

liloのインストール前に/boot/boot.0342というブートセクタのバックアップファイルを 他の名前にしないとliloのインストールに失敗する。
でもやっぱりliloのインストールに失敗した(笑。どうやらapt-get ugradeをした後、 再起動しなかったのが原因 or Xのrxvfからカーネルのインストールをしたのが原因のようだ。
rebootしたら、「01 01 01---」と出てしまった。ctrl-alt-delで再起動後、 ブートディクスでlinux3で立ち上げてもう一度liloをインストールしたらOKになった。
さて、カーネルを再構築するとalsaモジュールも再構築する必要がある。

# cd /usr/src/linux
# make-kpkg modules_image
# cd .. # dpkg -i alsa-modules-2.4.17_0.9+0beta7-2+p0+20020107_i386.deb

手順はカーネルと似ている。あらかじめalsa-driver-*.debをインストールした後、 カーネルソースのあるディレクトリ/usr/src/linuxで2行目を実行する。 make後、/usr/srcディレクトリに出来るalsa-*.debをインストールしてalsaモジュールが /lib/modules/カーネルバージョン以下にインストールされる。

 とりあえず、今日はこれまで。。。

◯2002年  1月  8日

いつも通りapt-getを実行。でもsidに上がっていなファイルがあるようだ。 errorメッセージを見ると、
# apt-get upgrade --fixed-missing
を実行しろ、とのこと。やってみるとあら不思議。 sidに見付からないファイルを飛ばしてちゃんと更新してくれた。 調子に乗ってwdmもインストール。以前はlocleがうまく設定出来なかったが、今度は直っているようだ。 そんなわけでgdmはアンインストール。

◯2002年  1月 9日

apt-get upgradeで昨日リンク切れしていたsamba関係が無事アップグレードされた。 またエラーが出ていたklogd、sysklogdを無事にアップグレードされた。
ついでにiptablesを見直し。これまでは以下の設定のようにローカルのinputは許可していた。
# iptables -A INPUT -i eth0 -s 192.168.0.0/24 -d 0/0 -j ACCEPT
これはメインのPCをゲートウェイとして使っている際の設定で、 ブロードバンドルーターを使った設定ではインターネットからの接続要求も ローカルアドレスから来るためブロックしていないと一緒である。
そこで、ローカルアドレス全体を表す192.168.0.0/24をもう一台の PCのアドレス192.168.0.xxxに設定してルーターからのinputをブロック。
また、Debianに導入していたiptablesルールをそのままkondaraに流用。 /etc/iptables.shというファイルにそれを記述し、初期実行コマンドを記述する/etc/rc.localに/etc/iptables.shを書き加えた。 もちろん、/etc/iptables.shには実行権限を与えている。

◯2002年  1年10日

日経Linux12月号で「sambaを使うと、 windowsの共有フォルダがLinuxにマウント出来る」こと知った。 早速エラーメッセージと格闘しながらやってみると、以下の書式でできた。

# mount -t smbfs -o password=ワークグループ名,codepage=932,iocharset=euc-jp //ホスト名 /共有名 マウントポイント

例えば、ワークグループを"workgroup"、/etc/hostsファイルでのwindowsマシン名が"moon"、共有名が"rabbit"、 マウントポイントが"/mnt/temp"とすれば、下のようになる。
# mount -t smbfs -o password=workgroup,codepage=932,iocharset=euc-jp //moon/rabbit /mnt/temp
注意が必要なのは共有名である。例えばwindowsパソコンのDドライブだけど、 別途共有名を付けているときはそれを記述する必要がある。 また、passwordはユーザーのパスワードではなく、ワークグループ名というところかな。 ここにドップリとはまってしまった。。。

○2002年  1月15日

apt-get upgradeしたらsambaが更新された。 更新後、「/usr/sbin/sambaconfigを実行してね」というのでinit 3で起動して設定しようと思ったら、 wdmがinit 3でも起動していた。そのため、/etc/rc3.d/S99wdmを/etc/rc3.d/K99wdmにしてinit 3で立ち上がらないようにした。 でもinit 3でもsambaがinetdとして走っているらしく、設定できなかった。面倒なので放置(^^;;

◯2002年  1月19日

Kondara MNU/LinuxをMARYからASUMIにアップグレード。 ftpに上がっていないようなのでmph-getではアップできず。 仕方なくisoイメージをダウンロードしてCD-Rに焼いてアップグレードした。 けど、これが大はまり。パッケージは確かにアップグレードしているのだが、 rpmのデータベースがそのままのため、後からパッケージを追加できなくなってしまった。
どうやってデータベースを再構築するのかが分からないので、/homeを残して/ディレクトリに新規インストールした。 とりあえず、パッケージの不整合は無くなったが。。。

◯2002年  1月20日

Kondaraの新規インストール後、ユーザーでログインするとセーフモードになって gnomeなどが立ち上がらない。.gnomeなどを消してやってみたが結局同じ。 よくよく調べると、ユーザーIDが500ではなく501になっていたため、/home/user1ディレクトリの 所有社/グループが別のユーザーuser2になっていた。

 # chown -R user1 /home/user1
 # chgrp -R user1 /home/user1

上記を実行したら、無事gnomeが立ち上がるようになった。
でも、まだ次の問題が残っている。

  1. サウンドの設定
  2. mph-getでlibpnp.so.2のエラーが出る
  3. wdmの画面でcannaを選んでもcannaが起動しない

夕方、再挑戦。その結果、次の通り(2)以外は解決した。
(1) alsaconfを実行したところ、driverが無いと言われた。 alsaのウェブページから、 alsa-driver-0.5.12aをゲットして ./configure、make、make installすることで解決。 後で/usr/src/linuxディレクトリ以下に alsa-driver-0.5.12a がある のに気がついたのには秘密。。。
(3) cannaは起動しているが、cannastatがclientに接続していない。 原因はiptablesの設定にあった。 outputの設定ではDROPをデフォルトにして、eth0へのoutoputを許可しているせいである。 このため、cannaサーバーへ出て行くパケットがカットされているのかもしれない。 いずれにせいよ、outoputのポリシーをデファルトでDROPにする意味が無いのでこれをACCEPTに変更したらOKになった。

apt-getしたDebianも不調だ。なぜかcannaがホストに接続できない。 でも上と同じようにoutputのポリシーをacceptにしたらとりあえずは直った模様。

○2002年  1月21日

Kondara2.1RC1(Asumi)、Debianのファイルシステムをext2→ext3へ変更。 まずは両者のカーネルがext3filesystemをサポートしているかを確認。 ターボリナックスウェブページに 詳しい解説方法があるのを発見して方法を知った。でも方法は簡単。

 # init 1
 # tune2fs -j /dev/hdbX
まず、ランレベル1になった後、2行目のコマンドを実行すれば/dev/hdbXのext3化は終わりである。 但し、この後、/etc/fstabを編集してext2→ext3へ書き換えないとext3でマウントされない。
確認するにはdf -Tでext3と表示されればよい。
でも、ext3にするとなぜか十字キーがコンソールで使えなくなる。。。なぜだ。

○2002年  1月22日

mozilla -editでcannaでの日本語入力が出来なかったが、再起動後にはできるようになった。
しかし、やはりviで十字キーは使えない。但し、使えないのはsuでrootになったときだけなので、まぁいいか。。。
ついでにFreeBSDのUFSをマウントしてみる。 間違えてDVD-ROM関係のUDFをモジュールにしてカーネルを再構築してしまったのはご愛敬だな。
で、The Linux + FreeBSD mini HOW toによると、次のコマンドでマウント出来るはずだが。。。
 # mount -t ufs -o ufstype=44bsd /dev/BSDパーティション /マウントポイント
お得意のgoogleで"Linux ufs mount"で検索してみると、やはり はまった人がいるようだ。 この人のカーネルコンフィグによると、僕はufsをモジュールにしているがBSD Disklabel(filesystem→partition)が 有効ではなかった。 良く見ると、dosパーティションとかも有効ではないので、その辺も含めて修正してもう一度カーネルを再構築した。 でも、bsdパーティションは1つのパーティションに論理パーティションを切れるので、 hdb1にFreeBSDをインストールしていてもhdb8とかがBSDパーティションになる。 これはdmesgで確認できる。再起動後、
 # mount -t ufs -o ufstype=44bsd /dev/BSDパーティション /マウントポイント
を実行すると、、、やっぱりダメだな。
と言うわけで、宿題。

  1. ufsのマウント
  2. Kondaraのカーネル再構築
  3. hdaのhda8、hda9がFreeBSDで認識されないことの対処
  4. FreeBSDのgaleonのmakeミス

◯2002年  1月23日

ufsのマウントはとりあえずは解決した。オプションにroを加えると無事にマウントした。
 # mount -t ufs -o ufstype=44bsd, ro /dev/ BSDパーティション マウントポイント
カーネルコンフィグでbsdの書き込みをサポートしていないのが原因かと思い、 書き込みをサポートしてカーネルを再構築したが、やはりroを付けないとマウントできない。
Kondaraの方では、ufsサポートをモジュールではなくカーネルに組み込んでみた。そして再構築後、 bzImageをコピーしてmkinitrd /boot/initrd-2.4.17 2.4.17-14kを実行するがjdbがどうのこうの言ってinitrdが作成できない。 原因はファイルシステムをext3にしていたせいであった。 一度フロッピーから起動し、fstabをext3→ext2に変更したら無事initrdが実行できた。また、肝心のufsもro無しでマウントできた。

◯2002年  1月26日

NetBSD1.5.2をダウンロードして拡張領域にインストールしようとしたが、 *BSDは拡張領域からブートできないことを知った。 そのため、基本領域(hdb2)にインストールしていたDebianをSystemCommanderを使って拡張領域(hdb8)にコピーした。 但し、そのままではDebianを起動できないので、次のようにした。

  1. 起動フロッピー中のsyslinux.cfgファイルで、下のようにAPPEND行をhdb2→hdb8修正。
  2.    APPEND root=/dev/hdb2 ro
  3. SystemCommanderは単にファイルをコピーしただけなので、hdb8にある/etc/fstabを編集し /にあたるデバイスをhdb8にしなくてはならない。そこでもともと(hdb2)のDebianを起動し、 hdb8を適当なところにマウント。その後、hdb8の/etc/fstabを編集して/にあたるデバイスを hdb2→hdb8とした。同時にtypeをext3ではなくext2にした(安全のため)。
  4. Deianの起動ディスクからシングルモードで起動し、/etc/lilo.confを編集。 編集箇所は、boot=/dev/hdb2、root=/dev/hdb2で、ともに/dev/hdb8に変える。 その後lilo -vを実行してようやく移動終了。 また、/etc/fstabの/のtypeをext3に戻す。
  5. rebootしてhdb8のDebianから立ち上がることを確認して、元々のDebian(hdb2)をfdiskなどで消去して終了。
○2002年 2月6日

apt-getでアップグレードしたら、次のようなメッセージが出た。
「あなたのカーネルは正しくLinkを行ってません。arch/i386/vmlinux.ldsファイルにあるDISCARD部分の*(.text.exit)行を削除してください」
そこで、/usr/src/linux/arch/i386/vmlinux.ldsの該当部分を削除した。


○2002年 2月11日

昨日、セカンダリハードディスクのMBRを吹っ飛ばしてしまった。 原因はNetBSDの再インストールをしている際のスライスの作成で、NetBSDパーティションを 越えてスライスを作成したからである。結局、各OSのシリンダ番号を控えてなかったので 全てが再インストールになってしまった。 一番インストールを手間取ったのはDebianである。 Testingのスナップショットをダウンロードしてインストールしたのだが、 gpmというアプリケーションがXで悪さをしているらしく、Xがよくフリーズする。 結局はgpmを削除して事なきを得る。ちなみに、gpmはFreeBSDでいうmousedのようだ。もちろんKondaraは楽勝だった。 さすが。。。

 ○2002年 3月17日

ハードディスクが故障したので、 セカンダリとプライマリを交換した。その際、Linuxの起動デバイスがhdb6、hdb8から hda6、hda8に変わるために、次のようにした。

  1. Debian GNU/Linux Sid
  2. まだセカンダリにつないでいるうちに、fstabで、/のマウントポイントをhdb8からhda8に修正。
    また、カーネル2.2.20の起動ディスクのファイルsysctrl.cfgで、rootの位置を/dev/hda8に 修正。
    プライマリにつないだ後、先の起動ディスクで起動し、lilo.confをhdb8→hda8にしてインストールして完了。
  3. Kondara MNU/Linux
  4. まだセカンダリにつないでいる時点でfstabで、/のマウントポイントをhda6に修正。
    プライマリにつないだ後、起動ディスクでboot: linux 1 root=/dev/hda6で起動。
    Debian同様にlilo.confでhdb6→hda6に修正してインストール。その後、無事起動できた。

その後、zlibの脆弱性からみでapt-get、mph-getしたら大量の更新ファイルがあった
(もちろん、無事に更新終了)


 ○2002年 3月25日

SystemCommanderなどでLinuxパーティションを移動したとき、fstabの内容を 書き換えていないとboot用フロッピーからも起動できなくなる。こんなときにfstabだけでも 編集できれば、と思うことが過去に何度かあった。そんなときのために1 floppy Linuxである muLinuxを作っておいたのだが、なぜかext2fsが マウントできない。
 そこで、RamFloppyという 1 floppy Linuxを試してみた。まずはftpサイトからramf-xxx.exeをダウンロードする。xxxはバージョン である。ちなみに僕がダウンロードしたのは1.1.8であった。
ダウンロード後のramfloppyのフロッピーの作成方法は下のとおり (参考)。

# cd /tmp
# unzip -L ramf-xxx.exe
# cd ramflop
# chmod +x mkrescue.sh
# modprobe msdos
(RamFloppyディスク作成用のフロッピーディスクをドライブに挿入)
# ./mkrescue.sh -fd

上記で使用するディスクは、フォーマットしてある必要はない。 mkrescue.shを実行中にフォーマットできるからである。
出来上がったRamFloppyで起動したところ、無事にext2fsをマウントできた。
ちなみに、同じftpディレクトリにbsd-flp-xxx.binというのがあるので、 それをダウンロードしたのち下のコマンドで1 floppy FreeBSDを作成できる。

# dd if=fbsd-flp-xxx.bin of=/dev/fd0

ちなみに参考にあげたページに、liloのインストールに失敗した場合の復旧方法が記載されている。 それによると、次の手順でliloをインストールできることになっている。(Linuxのあるパーティションはhda3とする)

boot: [リターン]
(立ち上がった後)
# mount -t ext2 /dev/hda3 /mnt/linux
# cd /mnt/linux/etc
# lilo -r /mnt/linux

しかし、実際にはこの手順でliloを再インストールできない。理由はRamFloppyにはliloが 入っていないからである(これはバージョン1.11でも1.18でも同じであった)。いろいろ試したところ、次の ようにするとliloを再インストールできた。

boot: linux 1 root=/dev/hda3
(これでhda3から起動できる)
# lilo -v

もちろん、上記の方法でlilo.confやfstab、inittabなども編集できる。

 ○2002年 4月 1日

xineの0.9.4をインストールした。kondaraの方でtarballからxine-ui、xine-libを入れたところ、 xine-uiのコンパイルで失敗。 xineのウェブページを調べると、 原因は、以下のPATHがセットされていないためであった。

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

もちろん、無事に起動できた。Debianの方はapt-getから入れたが、再生しないのは上記が原因かと 思われる。

 ○2002年 4月 3日

xineに関して調べているうちに、ソースファイルからdebファイルを作成するスクリプトがあるのを 知った。util/debscriptsがそれで、早速インストールしてみた。

使い方はdebパッケージを作りたいソフトのソースを展開したディレクトリで
# dch -v & debuild
とすれば良いらしい。xine-libに関してやってみたところ、依存するライブラリがエラーで出まくる。 挙げ句の果てには、致命的エラーでコンパイルに失敗するし。

戦法を変えて,xine-checkを実行してみたところ,libxine-devが入ってないと言うので入れてみた。 今度は「/dev/dvdを使うから/dev/cdromにシンボリックリンクにしてね」というのでそうしたが、 結局「probing audio ...」でハングアップしてしまってダメであった。 取り敢えず、今回は諦めてmplayerに望みをつなぐことにした。

 ○2002年 4月 3日

OpenOffice641dをインストールした。Windows2000の方でもインストールしたが、ちゃんとWord、 Excel、PowerPointで日本語が通るようである。Linuxデモと期待したが、そうは甘くない。しかし、世の中 には先人がいるもので、下のようにすると日本語を表示できるようになった。

  1. WindowsからTrueType Font(*.ttc)を{install_dir}/OpenOffice.org641/share/fontsにコピーする。
  2. (WindowsのフォントはC:\windows\fonts以下にある)
  3. OpenOfficeを起動し、Tool -> Optios -> Language Settings -> Languegesを選択。
  4. Locale SettingをJapaneseに、AsianをJapaneseに、Asian Languages Supportをチェックする。
  5. 一旦OKを押して閉じる
  6. もう一度optionを開き、Text Document -> Basic Fonts(Asian)を選択。
  7. Defaultsで「?? ?????」(MS Pゴシック)を選択する。

これでMS PゴジックでWordなどが開けるようになる。

 ○2002年 5月27日

mount -t smbfs //hostname/folder /mount pointで Windowsの共有フォルダがマウント出来ない。kernelではちゃんとsmbfsがサポートされているのだが。

ちょっと調べてみると、sambaが入っていないのでインストールしてみたが やはりマウントできない。さらに調べると、smbmountというsamba付属のコマンドでマウント出来る ようだ。書式は下の通り。

smbmount //hostname/folder /mount point -o netbiosname=name,usernameusername,passwd=samba passwd

これで何とかマウント出来た。

 ○2002年 7月20日

例のごとく、Debianをapt-getでアップグレード。新規パッケージをインストール しないとアップグレード出来ないパッケージが保留になっていたので、それらもアップグレード した。




○2002年 8月15日

デジカメ(ニコンcoolpix775)の画像取り込み

デジカメNikon coolpix775の画像はWindowsだとUSBケーブルで取り込む。 いろいろ調べてみると、Linuxでも”大容量ストレージ”として取り込めるそうだ。 (参考:Neil Romig's Pages

要点は次の2つである。

  1. modprobeでusb-storageをロードする。
  2. その後coolpix775の電源を入れると、/dev/sda1にvfatとして認識される。

そのため、以下の手順でcoolpix775の画像が読み込めるようになる。

  1. カーネルの再構築
  2. カーネルがUSBストレージに対応していなければ、 ここに加えて CONFIG_USB_STORAGE=mを追加した後、カーネルを再構築する。
  3. モジュールのロード
  4. 1のカーネルで立ち上げた後、# modprobe usb-storageで モジュールを読み込む。
  5. USBでcoolpix775とPCを繋ぎ、coolpix775の電源をオン
  6. 適当なマウントポイント(下では/mnt/nikon)を作り、vfatとしてマウントする
  7. # mkdir /mnt/dir
    # mount -t vfat /dev/sda1 /mnt/nikon
  8. gimpやエレクトリックeyeなどで/mnt/nikon/DCIM/100NIKON/以下にある写真を見る

しかし、ファイルシステムがvfatとは。。。ちょっと不安だがWindowsで使える ディスクってことでvfatなんだろうな。

もちろん、coolpix775を外すときは# umount /mnt/nikonを すれば取り外せる。


○2003年11月 3日

久しぶりにFreeBSD、Linuxをアップデート。Debianは無事にアップデート出来たが、 Gentooは依存関係を解決しようとジタバタしている内に必要なパッケージを消して死亡。

emerge depclean perlが良くなかったらしい。rmやlsという、基本コマンドがゴッソリ 消えてしまった。仕方なく、再インストールすることにした。












 ○2002年 9月16日

DebianとGentooLinuxをアップグレード。GentooLinuxのカーネルが2.4.19-gentoo-r9 になったが、make modulesでi810関係のドライバでエラーが出てモジュール作成できない。
 とりあえず、放置。。。

 ○2002年 9月29日

Debian GNU/Linux、Gentoo Linuxをアップデート。但し、Gentoo Linuxでは、 前回のインストール時に上書きした/etc/make.confで、pentiumIIIの設定が次のようになって いた。

CFLAGS="-march=pentium3 -O3 -pipe"

ところがpentium3という設定ではないらしく、コンパイル途中で落ちる。 そこで、pentium3をi686に変えたところ無事にemerge --update worldが終了した。

 ○2002年11月13日

DebianやGentooでは、bluefishにCannaで入力しようとすると、 [あ]というウィンドウがやたら大きくなり、日本語を入力してもCannaを終了 するまで入力されない。この不具合を調べたところ、やはり 同じことで悩んで いる人がいた。その方によると、次のオプションを無効にすると良いらしい。

「環境設定」→「エディタの背景を白にする」のチェックを外す

で、実際にチェックを外してbluefishを再起動したら、ちゃんとCannaで 入力できるようになった。

























○2002年 8月25日

Gentoo Linuxをemerge --update worldでアップデートした。 しかし、openmotif-2.2.2だけがアップデートできなかった。まぁ、そのうち出来るように なるでしょう。

○2003年 1月 8日

久しぶりにLinux関係をアップデートした。Debian、Vineはstable主体 なのでアップデートは無し。Gentooがかなりの数のアップデートがあった。特にgtkが 2.0系になったせいか、bluefish-0.8とmozillaが文字化けしまくりである。bluefishは 0.7に戻して文字化けしなくなった。

○2003年12月 7日

kernel 2.4.22までに脆弱性があるので、 Cube型サーバNotePCのDebianを2.4.23にアップデートした。 とは言え、どちらもwoodyなので2.4.23はapt-getでは得られないので kernel.orgからダウンロードして再構築した。

Cubeの方は問題ないのだが、NotePCの方はなぜかXが立ち上がらなくなった。調べてみると、 カーネル再構築後に実行したapt-getで、Xがアップデートされた際にXFree86-4.1用のSiS630ドライバが 上書きされていたのが原因と判明。再び Thomasさんの ページからSiS630用ドライバを落としてインストールしたら無事Xも立ち上がるようになった。

○2003年 1月 6日

またまたkernel-2.4.23以前に脆弱性が見つかったので、kernel-2.4.24にアップデートした