logo
code:Haemophilus influenzae

ここに書かれていることは無保証です。同じことを行って問題が発生しても、 龍義は責任をとりません。

2003年9月
2003年10月
2003年11月
2003年12月
2004年1月
2004年2月
2004年3月
2004年4月
2004年5月
2004年6月
2004年7月
2004年8月
2004年9月
2004年10月
2004年11月
2004年12月
アイコンの説明

1/1
Other
あけましておめでとうございます。今年もよろしくお願いします。

今年は珍しく、元日に一切 PC を触らないという日だった。

1/2
FIVA 206VL
FIVA が修理から帰ってきた。思ったよりも早い帰還。というか、何でこんな時期に
家に届いていたのか不思議なぐらい。修理内容は、

HDD, ベースカバーASSY, LCD カバー, AC アダプター交換

になっていた。[通常修理料金 56000] と書いてあった。これは、買ったときの
保証で無料になったのだけど、金額がえらい安いな、という気がした。工賃が
入っていない気がする。故障原因調査 -> 金額見積 -> 分解 -> 交換 -> 組み立て
だけでも半日近く掛かる気がするし、半日か掛かったら工賃だけで3万円はするし。
ま、深く考えないで、さっさと環境構築することにする。

1/3
FIVA 206VL
FIVA を修理前に戻そうと、前の HDD に交換した。で、本体裏を見たら、ゴム足が
3つしかついていない。ベースカバーASSY を交換したので、HDD 蓋の部分以外の
3箇所は新品のゴム足がついているのだけど、 HDD 蓋は交換しなかったようで、
その部分のゴム足がない。う〜ん、 CASIO さん、ちゃんとつけてよ、という感じ
だけど。それと、交換前のベースカバーASSY から本体シリアル番号と Windows の
プロダクトキーのシールを剥がして、交換したものに貼り付けたようで、剥がして
貼りました、って感じの見た目になってしまった。もう少し綺麗にやって欲しい
なぁ。で、逆に良かったことは、修理から戻ってきた HDD は 40GB のものが付いて
きた。 206VL は標準が30GB なので、これはうれしい誤算。そんなことを見ながら
修理前に装着していた HDD を入れて、起動してみた。

Operating System not found

だと…。結局 OS のインストールからやり直すしかないみたい。

1/4
Other
今日から仕事。で、使ってたサーバの反応がないので、コンソール画面をみたら、

eth0: Link changed: 100Mbps, full duplex
eth0: Something Wicked happened! ffff . 

と延々と出続けている。問題は PCI の FXP-4TX かオンボードの VIA のチップの
ようなのだけど、原因を切り分けようと、 kernel を変えたり再起動してみたり
したら、サーバが起動しなくなってしまった。1年の始まりがこんなようじゃ、
この先が大変だなぁ…。

1/5
Network Terminator Tu
正月に撮ったテレビ番組を、空いている OpenBSD に一時退避しようと、コピーを
した。cygwin 上から scp をしたら、

$ scp 2005.mpg toyota@naboo:
toyota@naboo's password:
scp: protocol error: size not delimited

だと。ファイルが 2.5GB あるので、 2GB の壁でコピーできないみたいである。
この naboo(OpemBSD)[Terminator Tu] には samba や ftpd は入ってないので
さて困った、という状況。 ftp ぐらい動かそうかな、とも思ったけど、結構面倒な
感じなので、一度 Samba が入っている Linux PC にコピーしてから、 OpenBSD 側で
Linux PC の apache に wget しようと考えた。 Linux PC にコピーするのは、問題
なくできたのだけど、 OpenBSD から wget で Linux PC の apache にアクセスに
行くと、 403 Forbidden の状態。やはり 2GB の壁はあつかった。試しに、 Linux
PC から OpenBSD へ scp してみた。なんとかできそう。でも、コピーに 40 分ほど
かかるみたい。結局、このコピーは1時間かかってしまった。なんだかなぁ。

1/6
Network Terminator Tu
昨日の 2.5GB のファイル、OpenBSD 3.4 の PC にコピーしたのだけど、気になった
ので、 OpenBSD 3.4 + 悔しいので Apache/1.3.28 の環境でも試してみた。やはり、
アクセスできなかったが、今回は 404 のエラーだった。何でだろうなぁ。で、少し
調べてみたら、どうも Apache(1.x 系) は 2GB 以上のファイルを扱えないようで
ある。確かに、そんなでかいファイルが置いてあるところを見たことないけど、
そのうちそこらで DVD のイメージファイルとか置くようになる気がするから、
この先は対応するんだろうなぁ…。

1/7
Other
プログラムを作っていて、Solaris な環境で CPU 数を取得する必要が出てきた。
で、とりあえず、環境は。

[toyota@redoubt]124% uname -a
SunOS redoubt 5.8 Generic_117350-11 sun4u sparc SUNW,Sun-Fire-280R

な感じ。CPU 数を取得するのは、コマンドだと psrinfo になるので実行してみた。

[toyota@redoubt]125% psrinfo
0       on-line   since 10/10/04 19:07:43
1       on-line   since 10/10/04 19:07:44

こんな感じ。これをプログラムでどう書くのか、というのが知りたかったので、
truss してみた。

[toyota@redoubt]126% truss psrinfo

execve("psrinfo", 0xFFBEFC5C, 0xFFBEFC64)  argc = 1
resolvepath("/usr/lib/ld.so.1", "/usr/lib/ld.so.1", 1023) = 16
open("/var/ld/ld.config", O_RDONLY)		Err#2 ENOENT
stat("/usr/lib/libkstat.so.1", 0xFFBEF260)	= 0
open("/usr/lib/libkstat.so.1", O_RDONLY)	= 3
mmap(0x00000000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xFF390000
mmap(0xFF3A4FF4, 81920, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1, 0) = 0xFF370000
mmap(0xFF370000, 4030, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF370000
mmap(0xFF382000, 460, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 8192) = 0xFF382000
munmap(0xFF372000, 65536)			= 0
memcntl(0xFF370000, 2244, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)					= 0
stat("/usr/lib/libc.so.1", 0xFFBEF260)		= 0
open("/usr/lib/libc.so.1", O_RDONLY)		= 3
mmap(0xFF390000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF390000
mmap(0xFF3A4FF4, 802816, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1, 0) = 0xFF280000
mmap(0xFF280000, 702456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF280000
mmap(0xFF33C000, 24772, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 704512) = 0xFF33C000
munmap(0xFF32C000, 65536)			= 0
memcntl(0xFF280000, 113528, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)					= 0
stat("/usr/lib/libdl.so.1", 0xFFBEF260)		= 0
open("/usr/lib/libdl.so.1", O_RDONLY)		= 3
mmap(0xFF390000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF390000
mmap(0xFF3A4FF4, 8192, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1, 0) = 0xFF360000
mmap(0xFF360000, 2302, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF360000
close(3)					= 0
stat("/usr/platform/SUNW,Sun-Fire-280R/lib/libc_psr.so.1", 0xFFBEEFE0) = 0
open("/usr/platform/SUNW,Sun-Fire-280R/lib/libc_psr.so.1", O_RDONLY) = 3
mmap(0xFF390000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF390000
close(3)					= 0
open("/dev/kstat", O_RDONLY)			= 3
brk(0x000218C0)					= 0
brk(0x000238C0)					= 0
ioctl(3, KSTAT_IOC_CHAIN_ID, 0x00000000)	= 513440
ioctl(3, KSTAT_IOC_READ, "kstat_headers")	Err#12 ENOMEM
brk(0x000238C0)					= 0
brk(0x0002F8C0)					= 0
ioctl(3, KSTAT_IOC_READ, "kstat_headers")	= 513440
brk(0x0002F8C0)					= 0
brk(0x000318C0)					= 0
brk(0x000318C0)					= 0
brk(0x000338C0)					= 0
brk(0x000338C0)					= 0
brk(0x000358C0)					= 0
brk(0x000358C0)					= 0
brk(0x000378C0)					= 0
brk(0x000378C0)					= 0
brk(0x000398C0)					= 0
brk(0x000398C0)					= 0
brk(0x0003B8C0)					= 0
time()						= 1105093638
ioctl(3, KSTAT_IOC_READ, "cpu_info0")		= 513440
open("/usr/share/lib/zoneinfo/Japan", O_RDONLY)	= 4
read(4, " T Z i f¥0¥0¥0¥0¥0¥0¥0¥0".., 8192)	= 73
close(4)					= 0
ioctl(1, TCGETA, 0xFFBEED34)			= 0
0       on-line   since 10/10/04 19:07:43
write(1, " 0¥t o n - l i n e      ".., 36)	= 36
time()						= 1105093638
ioctl(3, KSTAT_IOC_READ, "cpu_info1")		= 513440
1       on-line   since 10/10/04 19:07:44
write(1, " 1¥t o n - l i n e      ".., 36)	= 36
llseek(0, 0, SEEK_CUR)				= 3754
_exit(0)

あ〜、 ioctl してるのね。しかし、数を取得してる部分が良くわからない。
仕方ないので、少し調べてみたら、

susconf(_SC_NPROCESSORS_ONLN)

だけで良いみたい。 CPU 数を表示する簡単なプログラムは

#include <sys/unistd.h>
void main(){
  printf("CPU: %d¥n",sysconf(_SC_NPROCESSORS_ONLN));
}

な感じ。えらい、すっきり。

1/8
Network
NAS なページを更新してみた。まだまだ、いっぱい追加しないといけないなぁ…。

1/9
Other
ハードディスクを分解して、強力磁石を取り出してみた。
いや、本当にそれだけなんだけど。

1/10
Network
新しい形のスパムメールが届いた。最近はすごく手が込んでいるようである。
ま、最終的には、どこかの有料サイトに誘導されるんだろうけど。ヘッダの
Received は長かったので、削除した。

Return-Path: <natural_beauty_o@yahoo.co.jp>
Message-ID: <rad26DFEC6$1105324980$9d394@localhost.localdomain>
Date: Mon, 10 Jan 2005 11:43:00 +0900
Subject: Re: 通販注文書
From: natural_beauty_o@yahoo.co.jp
To: toyota@tatsuyoshi.net
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
Reply-To: natural_beauty_o@yahoo.co.jp

はじめてご連絡させていただきます。
会員番号1648の

岡田純奈と申します。

以前に1度注文させていただいて
今回2度目なのですが、
注文から一週間経ちますがまだ
商品の方が届かないみたいなのですが、
私が注文の時にミスをしたかもしれないので
1度そちらの方でご確認お願いできますでしょうか?
どうかよろしくお願いします。

> 【お買い上げ商品】
>・ホワイトベビードール&ショーツ 
>・ニューカラーローター(ピンク)
> 【料金(税込)】
> 小計:¥5924
> 代引き手数料:¥
> 合計:¥5924
>
> 【お客様情報】
> 注)会員の方は会員番号のみの記入で結構です。
> 会員番号:1648
> お名前:未記入
> 郵便番号:未記入
> ご住所:未記入
> 電話番号:未記入
> 携帯番号:未記入
> メール: 
> 支払方法:商品代引き
> コメント:配送指定は必ず午前中でお願いします。
>
>

ホワイトベビードールの前の文字は「・」(8145)に置き換えたが、元々は F965 が
入っていて、よくわからない文字。

1/11
FIVA 206VL
FIVA をそろそろ動かさないと、 AirH" の代金だけでももったいない。で、Win2k の
領域をなんとかさせたいので、FIVA をフロッピーディスクから起動させようと
考えた。家には、USB の外付け FDD 、teac FD-05PUS の OEM の MIB FD-05PUS が
あったので、これが使えるか調べてみた。う〜ん、 FIVA で teac FD-05PUB は
起動するとかあるのだけど FD-05PUS の情報はない。とりあえず、起動ディスクを
作ってやってみた…。やっぱりダメみたい。無駄に SmartMedia リーダーなんか
付いているのが悪さをしている感じがする。う〜ん、困ったなぁ。どれかのマシンを
犠牲にして、母艦作戦しかないのかな。困ったもんだ。

で、ひょっとしたら、 FD-05PUS の SmartMedia 部分を切り離したら、なんとか
起動してくれるのじゃないか、と思って中を見たけど、 USB の信号が入っている
基板に SmartMedia リーダが乗っていて、切り離しできない。それっぽいジャンパも
ない。あきらめろ、ということのようである。
あ、 MIB のページに「FD-05PUS 良くあるご質問 Q&A」なんて、ページがあって、

質問:本製品でシステムの起動(ブート)はできますか?
回答:いいえ、システムの起動(ブート)には対応しておりません。

なんて書いてあった…。

1/12
Network
少し海外の方と話す機会があったのだけど、その中で ham mail という言葉が
出てきた。どうやら spam mail の対義語らしいのだけど、結構日常的に使われている
言葉らしい。 spam に対して ham なんだろうけど、単純と言えば単純だよなぁ…。

話は変わって、 Mac mini が出るらしい。なんだか、とっても欲しくなってしまう。
最近の apple は良いところ突いてくるよなぁ。少し感心。

1/13
Network
初心者に、 web page の更新方法を教えてたりするのだけど、どうもね…。何と
言うか、それ以前の問題が多いので、疲れる。もう少しだけで良いので、他の人の
ページとか見本を見てみるとか、適当にやってみてどうなるのか調べるとかして
欲しいんだけどなぁ。「画像を小さくして保存する方法を教えて」とまで言われて
くると、ちょっとね。

1/14
Network
mail のログを眺めてたら、 virus にやられちゃった PC からだと思うけど、
適当なメールアドレスに投げて reject されているのを結構あるみたいで、どの
ぐらい来ているか見てみたら、ここ1ヶ月で270ほど。宛先を取り出してみた。

[toyota@kamino]% grep reject /var/log/maillog | cut --delimiter=¥< -f2 | cut --delimiter=¥> -f1 | sort | uniq -c | sort
      1 2004qyml@pchome.com.tw
      1 a231.b233@msa.hinet.net
      1 akanfl1212@hanmail.net
      1 b52.b52@msa.hinet.net
      1 epschao@sogiant.twmail.net
      1 songhua321jp@yahoo.co.jp
      1 support@microsoft.com
      2 rbkassie@yahoo.com
      3 webmaster@tatsuyoshi.net
      5 sam@tatsuyoshi.net
      7 serg@tatsuyoshi.net
      7 steve@tatsuyoshi.net
      8 michael@tatsuyoshi.net
      9 claudia@tatsuyoshi.net
      9 smith@tatsuyoshi.net
     10 brent@tatsuyoshi.net
     10 james@tatsuyoshi.net
     10 maria@tatsuyoshi.net
     10 mary@tatsuyoshi.net
     11 george@tatsuyoshi.net
     11 jack@tatsuyoshi.net
     12 bob@tatsuyoshi.net
     12 brenda@tatsuyoshi.net
     12 jim@tatsuyoshi.net
     12 joe@tatsuyoshi.net
     14 david@tatsuyoshi.net
     18 3fd5f493.1080802@tatsuyoshi.net
     71 dan@tatsuyoshi.net

dan が飛び抜けて多いみたい。何でだろう。

1/15
Network
BHR-4RV のファームを解析した。
久しぶりなので、少々手間取る。

1/16
BONA Light System Wireless FIVA 206VL
FIVA のハードディスク、どうにもうまく行かないようなので、母艦作戦に変更して
復活を試みることにした。今回の母艦は、休養中だった BONA を使うことにした。
試しに、このハードディスクを接続して起動してみた。やっぱりダメ。仕方がない
ので、Windows2000 を CD-ROM 起動させて、修復させてみようとしたが、修復させる
領域が見つからない、と言われる。 OS 部分はあきらめて、インストールを行ったの
だけど、ハードディスクが 491222MB と認識されるし、インストールができないし。
どうも、ハードディスクも調子が悪くなったようである。

ハードディスクの状態を bios を見てみると、でシリンダー、ヘッド、セクタの値が
滅茶苦茶な数、というか最大数になっているみたい。試しに、手動で 16383 16 63
と、正しい値を入れたら、 8.5G で認識。 CHS モードになってしまったみたい。
LBA モードにしたら、やはり 491222MB になるし。

1/17
BONA Light System Wireless FIVA 206VL
昨日の続き。困ったときの Linux 、ということで、 BONA は FDD を接続できない
ので、 knoppix 3.7 をダウンロードしてきて、そこで復旧してみることにした。
knoppix で起動してみたら、起動時に変なメッセージ。

hdb: _NEC DVD+RW ND-1100A, ATAPI CD/DVD-ROM drive
hdc: TOSHYBQ ]K4018WAS 0 0 0 0 0 0 0 0 0 0 0, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hdc: attached ide-disk driver.
hdc: host protected area => 1
hdc: 16514064 sectors (8455 MB) w/2048KiB Cache, CHS=16383/16/63
Partition check:
 hdc: unknown partition table

ん? TOSHIBA が TOSHYBQ になってるし、 MK4018GAS も化けてる。やっぱり、
ディスクの管理領域がダメになったのかな、と思ったけど、シリンダ情報はうまく
取得できているみたい。 CHS で認識したので、 8455MB になっているみたい
だけど。
試しに、 gpart を実行してみた。

knoppix# gpart /dev/hdc

Begin scan...
Possible partition(Linux ext2), size(2048mb), offset(5130mb)
Possible partition(Linux ext2), size(1027mb), offset(7177mb)

*** Fatal error: dev(/dev/hdc): seek failure.

なんか、やっぱりダメみたい。再起動して、 bios を確認してみたら、 bios でも
TOSHYBQ ]K4018WAS って化けて認識されているし。やっぱりハードディスクが
壊れたのかなぁ。この前は、問題なく読めていたのになぁ…。続きは明日にでも。

1/18
BONA Light System Wireless FIVA 206VL
昨日と同じように BONA を起動させると、なんとハードディスクが正しく認識
された。しかし、管理領域の情報が消えてしまったようなので、復活させてみる
ことにした。

まずは knoppix で起動して gpart を実行してみた。

knoppix# gpart /dev/hdc

Begin scan...
Possible partition(Windows NT/W2K FS), size(25046mb), offset(0mb)
Possible partition(Linux ext2), size(1027mb), offset(25689mb)
Possible partition(Linux swap), size(1027mb), offset(26717mb)
Possible extended partition at offset(33385mb)

* Warning: short read near sector(78139971), 64512 bytes instead of 66048. Skipping...
End scan.

Checking partitions...
Partition(OS/2 HPFS, NTFS, QNX or Advanced UNIX): primary
Partition(Linux ext2 filesystem): primary
Partition(Linux swap or Solaris/x86): primary
Ok.

Guessed primary partition table:
Primary partition(1)
   type: 007(0x07)(OS/2 HPFS, NTFS, QNX or Advanced UNIX)
   size: 25046mb #s(51295482) s(63-51295544)
   chs:  (0/1/1)-(1023/15/63)d (0/1/1)-(50888/6/63)r

 Primary partition(2)
   type: 131(0x83)(Linux ext2 filesystem)
   size: 1027mb #s(2104512) s(52612875-54717386)
   chs:  (1023/15/63)-(1023/15/63)d (52195/5/1)-(54283/1/60)r

 Primary partition(3)
   type: 130(0x82)(Linux swap or Solaris/x86)
   size: 1027mb #s(2104448) s(54717453-56821900)
   chs:  (1023/15/63)-(1023/15/63)d (54283/3/1)-(56370/14/59)r

  Primary partition(4)
   type: 000(0x00)(unused)
   size: 0mb #s(0) s(0-0)
   chs:  (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

良い感じに取得できた。こいつを fdisk で書き込んでみる。

knoppix# fdisk /dev/hdc
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。

このディスクのシリンダ数は 77520 に設定されています。
間違いではないのですが、1024 を超えているため、以下の場合
に問題を生じうる事を確認しましょう:
1) ブート時に実行するソフトウェア (例. バージョンが古い LILO)
2) 別の OS のブートやパーティション作成ソフト
   (例. DOS FDISK, OS/2 FDISK)
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): p

Disk /dev/hdc: 40.0 GB, 40007761920 bytes
16 heads, 63 sectors/track, 77520 cylinders
Units = シリンダ数 of 1008 * 512 = 516096 bytes

 デバイス Boot      Start         End      Blocks   Id  System

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-77520, default 1): 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-77520, default 77520): 50889

コマンド (m でヘルプ): p

Disk /dev/hdc: 40.0 GB, 40007761920 bytes
16 heads, 63 sectors/track, 77520 cylinders
Units = シリンダ数 of 1008 * 512 = 516096 bytes

 デバイス Boot      Start         End      Blocks   Id  System
/dev/hdc1               1       50889    25648024+  83  Linux

コマンド (m でヘルプ): t
Selected partition 1
16進数コード (L コマンドでコードリスト表示): 7
領域のシステムタイプを 1 から 7 (HPFS/NTFS) に変更しました

コマンド (m でヘルプ): w

これで /dev/hdc1 が元に戻った。この要領で hdc2, hdc3 もやろうと思ったが、
gpart の結果を見ての通り、シリンダの途中でパーティションが切れているので
fdisk では復活できない。しかたないので、 sfdisk を使うことにした。まずは
現在の状態を見てみる。

knoppix# sfdisk -d /dev/hdc > hdcinf
knoppix# cat hdcinf
# /dev/hdc のパーティションテーブル
unit: sectors

/dev/hdc1 : start=       63, size= 51296049, Id= 7
/dev/hdc2 : start=        0, size=        0, Id= 0
/dev/hdc3 : start=        0, size=        0, Id= 0
/dev/hdc4 : start=        0, size=        0, Id= 0

これを下のように編集した。

# /dev/hdc のパーティションテーブル
unit: sectors

/dev/hdc1 : start=       63, size= 51295482, Id= 7, bootable
/dev/hdc2 : start= 52612875, size=  2104512, Id=83
/dev/hdc3 : start= 54717453, size=  2104448, Id=82
/dev/hdc4 : start=        0, size=        0, Id= 0

これを sfdisk で再書き込みした。

knoppix# sfdisk /dev/hdc < hdcinf
現在、誰もこのディスクを使っていないかを調べます...
OK

ディスク /dev/hdc: シリンダ数 77520、ヘッド数 16、63 セクタ/トラック
古い場面:
ユニット = 516096 バイトのシリンダ、1024 バイトのブロック、0 から数えます

    Device Boot Start     End   #cyls    #blocks   Id  System
 /dev/hdc1          0+  50888   50889-  25648024+   7  HPFS/NTFS
 /dev/hdc2          0       -       0          0    0  空
 /dev/hdc3          0       -       0          0    0  空
 /dev/hdc4          0       -       0          0    0  空
 新たな場面:
 ユニット = 512 バイトのセクタ、0 から数えます

    Device Boot    Start       End   #sectors  Id  System
 /dev/hdc1   *        63  51295544   51295482   7  HPFS/NTFS
 /dev/hdc2      52612875  54717386    2104512  83  Linux
 /dev/hdc3      54717453  56821900    2104448  82  Linux スワップ
 /dev/hdc4             0         -          0   0  空
 警告: パーティション 1 はシリンダ境界で終わっていません

 sfdisk: 私はこれらのパーティションに関与したくありません -- 変更しません。
 (本当にこれを行ないたければ、--force オプションを使ってください)

あらら。 --force をつけてもう1回。

knoppix# sfdisk --force /dev/hdc < hdcinf
現在、誰もこのディスクを使っていないかを調べます...
OK

ディスク /dev/hdc: シリンダ数 77520、ヘッド数 16、63 セクタ/トラック
古い場面:
ユニット = 516096 バイトのシリンダ、1024 バイトのブロック、0 から数えます

    Device Boot Start     End   #cyls    #blocks   Id  System
 /dev/hdc1          0+  50888   50889-  25648024+   7  HPFS/NTFS
 /dev/hdc2          0       -       0          0    0  空
 /dev/hdc3          0       -       0          0    0  空
 /dev/hdc4          0       -       0          0    0  空
 新たな場面:
 ユニット = 512 バイトのセクタ、0 から数えます

    Device Boot    Start       End   #sectors  Id  System
 /dev/hdc1   *        63  51295544   51295482   7  HPFS/NTFS
 /dev/hdc2      52612875  54717386    2104512  83  Linux
 /dev/hdc3      54717453  56821900    2104448  82  Linux スワップ
 /dev/hdc4             0         -          0   0  空
 警告: パーティション 1 はシリンダ境界で終わっていません
 新たなパーティションの書き込みに成功

 パーティションテーブルを再読み込み中...

 もし、DOS パーティションを作成または変更したならば -- たとえば /dev/foo7 、
 dd(1) をつかって最初の 512 バイトをゼロにして下さい:
 dd if=/dev/zero of=/dev/foo7 bs=512 count=1
 (詳細は fdisk(8)を見てください。)

よくわからないけど、うまくいったみたい。続きは明日に。

1/19
BONA Light System Wireless FIVA 206VL
昨日、パーティションを復活させたディスクを FIVA に入れて起動させてみた。
だめ、 Operating System not found と出た。 FIVA の bios 画面を確認してみたら
TOSHYBQ ]K4018WAS って出てるし。結局、このハードディスクは壊れた、って
ことで、あきらめて、新しいハードディスクに Windows2000 / Linux をインストール
することにした。

新しいハードディスクへの OS を入れる作業、Linux のインストールは PC カードの
ハードディスクに入った Linux があるので、なんとかなるから良いけど、問題は
Windows2000 。やはり母艦作戦でやることにした。
BONA に新しいハードディスクを接続して、 Windows20000 の CD からブートして、
新しいハードディスクに Windows2000 をインストールした。で、最初の再起動の
ときに、ハードディスクを取り外して FIVA に接続して起動させてみた。駄目。
起動の途中で青画面になって固まってしまう。エラーメッセージは
INACCESSIBLE_BOOT_DEVICE
だと。もう一度インストールをやり直して、2回目の再起動のときにハードディスクを
取り外してやってみたけど、同じ。さらに、インストールが終わってから取り外して
みたけど、やっぱり同じ。困ったもんだ。どうしたものかな。

1/20
BONA Light System Wireless FIVA 206VL
結局、新しいハードディスクで DOS 起動させて Windows2000 を入れることにした。
ハードディスクのパーティションを2つにわけて、片方に DOS を入れて、それで
起動させる。もう片方は、 Windows2000 の中身をコピーしておく。その状態で
インストールすることにした。

とりあえず、BONA にハードディスクを接続。 FAT32 でフォーマットして、Windows
2000 のインストール。終わったところで、残りの領域を確保して、 FAT32 で
フォーマット。フォーマットが終わったところで、その領域に Windows2000 の CD の
中身を全てコピー。

そこで問題発生。ハードディスクの最初のパーティションに DOS をどのように
入れれば良いのか。手元には GATEWAY G6-200 を買ったときについてきた起動
ディスクしかない。しかし BONA には FDD が接続できない。なんとかこのディスクを
使って、起動 CD ができないか調べてみたら、手元の B's Recorder GOLD 7 で
出来そうな雰囲気。P4-533 で B's Recorder を起動し、トラックのプロパティを
出して、ブータブル CD の場所で、「起動ディスクから作成」を選択した。で、
焼いてみたら、ちゃんと起動ディスクの内容のブータブル CD が作成できた。

というわけで、この CD を BONA に入れて、 CD 起動させて、ハードディスクの
最初のパーティションに sys コマンドを実行した。これで、ハードディスクから
起動できる。さっそくハードディスクを FIVA に格納して、起動させてみた。
問題なく起動したので、 Windows2000 の CD の内容が入ったドライブの中の、
i386¥winnt.exe を実行した。…。実行できたけど、文字化けで見えない。 DOS の
ディスクを作り直したときに、日本語フォントとかドライバとかを消しちゃったのが
問題だったみたいである。仕方ないので、起動ディスクから作り直して、 CD に
コピーして、そのファイルをハードディスクにコピーして…。 autoexec.bat と
config.sys を書き換えて。なんだか、懐かしい作業だな。

FIVA で起動しなおして、 i386¥winnt.exe を実行した。今度は、文字化けが
なくなった。で、いきなり CD の内容を起動ディスクにコピーしだした。それも、
とってもコピーが遅い…。時間がかかりそうなので、このまま放置することにした。

1/21
FIVA 206VL
やっと Windows2000 のインストールも終わったので、アプリケーションを入れ
始めた。で、年末買って放置していたプロアトラスW3 も入れたのだけど、前の
プロアトラスW では PHS(DDI) の自己位置表示機能があったのに、なくなって
しまっていた。かなりショック。道に迷ったときに GPS 代わりになって(と、
言っても、どこのアンテナを拾っているか、ぐらいなんだけど)、すごい便利
だったのに。

で、 mozilla なんかも入れて、動かしていたのだけど、どうも遅い。アイコンの
影をなくしたりして、動作を軽くしなければいけないのかな、と考えていたの
だけど、良く考えてみれば、メモリを元に戻すのを忘れていた。ということで、
修理前につけていた 256MB のメモリを刺して、なんとなく早くなった。

1/22
Other
ちょっと、一眼デジタルカメラのファームウェアを覗いてみた。と言っても、
私がなんとか買えるぐらいの、レンズが交換できる奴。

CANON EOS kiss Digital - 不明
NIKON D70 - Softune REALOS/FR is Realtime OS for FR Family, based on micro-ITRON COPYRIGHT(C) FUJITSU LIMITED 1994-1999
PENTAX *ist DS - Softune REALOS/FR is Realtime OS for FR Family, based on micro-ITRON COPYRIGHT(C) FUJITSU LIMITED 1994-1999

その他、 α-7 Digital とか E-300 も調べたけど、ダウンロードできなかったりと。
それにしても、富士通の FR プロセッサなんか使ってるんだ…。知らなかった。

1/23
Other
人様が作った Linux の C のプログラムを見てたのだけど、

if (!(NULL == fp && id != 0 && CANCEL == flag) || (fp != NULL)) {
  if (get_value (fp, ADD, api, &tok) < 0) {
    free(s);
    return FAILURE;
  }
}

こんな感じのソースだった。なんだか (fp != NULL) って、必要なのか?と思って、
左側の式をドモルガンの法則で書き換えてみた。

!(NULL == fp && id != 0 && CANCEL == flag)
→ (NULL != fp || id == 0 || CANCEL != flag)

で、書き直して、式の右辺左辺を統一すると、

if ((fp != NULL || id == 0 || flag != CANEL) || (fp != NULL)) {

右の評価、いらないみたい。

if (NULL != fp || id == 0 || CANCEL != flag) {

と思ったけど、左の評価がいらなくても良い気がしてきた。

if (fp != NULL) {

かな。でも、少し自信がないのが、弱いところ。
こういうの、パッと見てわかるようにならなきゃ、いけないなぁ…。それにしても、
このソースを書いた人は、どういう意図だったのだろう。

1/24
Network
ASUS WL-500g のファームを解析した。
更新履歴が長くて邪魔だったので、横に配置した。

1/25
Other
named pipe を使おうかと、ちょっと調べてた。で、 /dev/log を見てみた。

[toyota@sernpidal]% ls -la /dev/log
srw-rw-rw-    1 root     root            0  1月 25 00:55 /dev/log=

あ、 = がついてるこれね、と思って見てたけど、これって ls のオプションが
ついているから、 = とか、実行ファイルに * が付いている、と思って alias を
見てみた。

[toyota@sernpidal]% alias ls
ls -CF

-F がついているからみたい。で、 RedHat9 付属の man で -F の説明を見てみた。

[toyota@sernpidal]% man ls

 -F  ディレクトリ名の後に `/' を、FIFO の名前の後に `|' を、実行可 能
     なファイル名の後に `*' をそれぞれ付加する。

あらら、 = の説明が抜けてる。で、 google なんか使って調べてみたら、ちゃんと

ソケットは"="で表される

なんて書いてある OS の man もあるのに。しかし、 * と / 以外はほとんど
見ないよなぁ…。

1/26
Other
ときどき、 VMware(Windows on Linux) を起動するのだけど、起動すると時間が
いつもえらい狂っている。 VMware の設定では RTC が有効になっているのに、
なんて思って、今動いている Linux kernel の RTC の設定を見てみた。

[toyota@sernpidal]% grep RTC .config
# CONFIG_RTC is not set

あらら。というわけで、 make menuconfig をして、 RTC の項目を探してみた。

Character devices  --->
< > Enhanced Real Time Clock Support 

こんなところにあった。これを有効にして、 kernel を作り直して、再起動。
VMware 上の Windows を起動して、時間をみてみた。問題なく、正しい時間に
なっているようである。 VMware って kernel の細かいことを色々有効にしなくちゃ
駄目なので、意外と面倒だなぁ。

あ、 sernpidal って google で検索すると、日本語のページは3件しか見つからない
のね…。

1/27
SUMICOM
SUMICOM に光学ドライブを取り付けてみた。
やっぱり、専用メモリが必要だったのね…。せっかく薄型ドライブ買ったのに、
意味なかった。

1/28
SUMICOM BONA Light System Wireless
SUMICOM に光学ドライブがつけられないので、 USB メモリを刺して、そこから
起動させることにした。何にしても、今の段階で SUMICOM は CD を読み込めない
ので、 BONA を使ってこの USB メモリに OS をインストールしてみることにした。
SUMICOM / BONA 両方とも、 bios の起動オプションに USB-HDD というのがあるので
多分、この USB メモリからも起動できるのでしょう、という考えて、とりあえず
この USB メモリに DOS を入れてみて、起動するのかテストすることにしてみた。
で、この前作った CD-ROM 版 Windows98 起動ディスクを入れて起動させて、
sys コマンドで起動できるようにしようと、刺さっている USB メモリのドライブを
探したのだけど…、みつからない。そうか。 USB を OS が認識してないのか。
それじゃ面倒だなぁ。どうしようかなぁ、といった感じ。

1/29
BONA Light System Wireless
USB フラッシュメモリから起動できるか、やってみた。BONA に CD-ROM と USB
フラッシュメモリを接続して、 knoppix で起動。起動したら、フラッシュメモリを
fdisk で領域確保。

[root@knoppix]# fdisk /dev/sdb

コマンド (m でヘルプ): p

Disk /dev/sdb: 524 MB, 524288000 bytes
17 heads, 59 sectors/track, 1020 cylinders
Units = シリンダ数 of 1003 * 512 = 513536 bytes

 デバイス Boot      Start         End      Blocks   Id  System
/dev/sdb1   ?     1914209     2457017   272218546+  20  不明
領域 1 は異なった物理/論理開始位置になっています(Linux では無い?):
     物理=(356, 97, 46) 論理=(1914208, 5, 40)
領域 1 は異なった物理/論理終点になっています:
     物理=(357, 116, 40) 論理=(2457016, 16, 59)
Partition 1 does not end on cylinder boundary.
/dev/sdb2   ?     1326206     1863570   269488144   6b  不明
領域 2 は異なった物理/論理開始位置になっています(Linux では無い?):
     物理=(288, 110, 57) 論理=(1326205, 9, 57)
領域 2 は異なった物理/論理終点になっています:
     物理=(269, 101, 57) 論理=(1863569, 13, 16)
Partition 2 does not end on cylinder boundary.
/dev/sdb3   ?      537378     1931558   699181456   53  OnTrack DM6 Aux3
領域 3 は異なった物理/論理開始位置になっています(Linux では無い?):
     物理=(345, 32, 19) 論理=(537377, 4, 25)
領域 3 は異なった物理/論理終点になっています:
     物理=(324, 77, 19) 論理=(1931557, 10, 42)
Partition 3 does not end on cylinder boundary.
/dev/sdb4   *     1390457     1390478       10668+  49  不明
領域 4 は異なった物理/論理開始位置になっています(Linux では無い?):
     物理=(87, 1, 0) 論理=(1390456, 5, 1)
領域 4 は異なった物理/論理終点になっています:
     物理=(335, 78, 2) 論理=(1390477, 9, 38)
Partition 4 does not end on cylinder boundary.

領域テーブル項目がディスクの順序と一致しません

あ、壊れているのかな?気にしないで、全部削除して、領域確保。

コマンド (m でヘルプ): d
領域番号 (1-4): 4

コマンド (m でヘルプ): d
領域番号 (1-4): 3

コマンド (m でヘルプ): d
領域番号 (1-4): 2

コマンド (m でヘルプ): d
Selected partition 1

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-1020, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-1020, default 10
Using default value 1020

領域確保したので、起動フラグをつけて、書き込み。

コマンド (m でヘルプ): a
領域番号 (1-4): 1

コマンド (m でヘルプ): p

Disk /dev/sdb: 524 MB, 524288000 bytes
17 heads, 59 sectors/track, 1020 cylinders
Units = シリンダ数 of 1003 * 512 = 513536 bytes

 デバイス Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1        1020      511500+  83  Linux

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。

んで、次は ext2 の領域作成。

[root@knoppix]# mke2fs /dev/sdb1
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
128016 inodes, 511500 blocks
25575 blocks (5.00%) reserved for the super user
First data block=1
63 block groups
8192 blocks per group, 8192 fragments per group
2032 inodes per group
Superblock backups stored on blocks:
        8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

Writing inode tables: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@knoppix]# tune2fs -c 0 -i 0 /dev/sdb1
tune2fs 1.35 (28-Feb-2004)
Setting maximal mount count to -1
Setting interval between check 0 seconds

grub のインストール。

[root@knoppix]# mount /dev/sdb1 /mnt/sdb1
[root@knoppix]# grub-install --root-directory=/mnt/sdb1 /dev/sdb
Probing devices to guess BIOS drives. This may take a long time.
Due to a bug in xfs_freeze, the following command might produce a segmentation
fault when /mnt/sdb1/boot/grub is not in an XFS filesystem. This error is harmle
can be ignored.
xfs_freeze: specified file ["/mnt/sdb1/boot/grub"] is not on an XFS filesystem
Installation finished. No error reported.
This is the contents of the device map /mnt/sdb1/boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.

(fd0)   /dev/fd0
(hd0)   /dev/sda
(hd1)   /dev/sdb

これで、起動の用意完了。試しに、起動してみた。 bios を USB-HDD 起動にして、
起動。おぉ、ちゃんと grub が起動した。これで、 kernel ファイルを置けば、
Linux が起動するのか。なんだか、ちょっと賢くなった気分。

1/30
SUMICOM BONA Light System Wireless
結局、 SUMICOM の Linux マシン化は 512M の USB フラッシュメモリ+ USB-Knoppix
にすることにした。
ext2 でフォーマットした USB フラッシュメモリを FAT16 でフォーマットし直して、
http://kserv.jec.ac.jp/news/release_2004-10-17.html
から、 iso ファイルをダウンロードした。 iso ファイルを CD に焼き、その CD で
起動。あとは

/cdrom/tools/install

コマンドを起動するだけ。最後の

+-------------------------------------------------------------+
|                                                             |
| 設定は次の通りです                                          |
|                                                             |
|  インストール先デバイス: /dev/sdb                           |
|  パーティション        : /dev/sdb1                          |
|  ファイルシステム      : FAT16                              |
|                                                             |
| これらのUSBハードディスク/フラッシュのデータはすべて消去さ  |
| れます.重要なデータが記録されている場合ここで中断し,必要な  |
| バックアップをCDVD/TAPE等に保存して下さい.                  |
|                                                             |
+-------------------------------------------------------------+

この設定でインストールしますか?この先の中断はできません (yes/no) >yes
USBストレージ上のすべてのデーターは破壊されます本当に続けますか? (yes/no) >yes
これが最後のチャンスです,インストールを開始しますか? (yes/no) >yes

の3回聞いてくるところには、少し笑ってしまったが。あっけなくインストールが
終わってしまって、少々拍子抜け。 USB フラッシュメモリで起動してみたのだけど、
USB 1.1 なので、かなり遅い。 IDE-CF をつけようかと思ったぐらい。使ってみての
感想は、 ntpdate がないのが気になったのだけど、それ以外は快適。あとは、少し
設定をしてあげたり、 Mozilla のキャッシュがフラッシュにバックアップされる
ようなので、容量を小さくしてあげたり。

それにしても、この USB-KNOPPIX 、 OpenOffice を削除したら single CD に入るの
じゃないかな。

1/31
Other
CYNOS DCM-17WTHD レビュー。いつものように写真があるので、別ページに。


21st projects Tatsuyoshi Networks Prompt Works
by Tatsuyoshi
since 2003