僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
を本で少し読んで来たので、早速 mknod hoge p やってみた。
$ls -alF hoge prw-r--r-- 1 hoge group 0 10月 10日 19:11 /home/hoge/junk/hoge| $ls -alF > hoge & $ cat -n hoge (ry
"ping source" でぐぐると、ping page なんてのがひっかかった。
そのリンク先にはThe Story of the Ping Programなるものがあり、ping.sharも拾えた。
流石に年代物らしく、アーカイブを開いてmake しただけでは(NetBSD,Plamo Linuxどちらでも)ダメだった。
どちらかといえば、netkit-comb に似ているっぽい。つーか、きっかけのパケット過大のエラー処理部分はほとんど同じ。ちなみにexit(1)だったが。
それにしても、後はブログばっかり。
日本語のサイトを探したが、キーワードに -trackback をつけても、こういう箇所に踏み込んだページは探し出せなかった。
を起動して、ping(1)をつつく。
間違ったオプションの返り値は、やっぱり2である。
今のところ、netkit-base0.10が出所であるとわかっただけ。
ソース取得法も、一から探り直さねばぁぁぁぁぁぁ。
CTRL + ALT + F?
で切り替えるのだそうだ。長いこと迷っていたが、ぐぐって氷解。
これもweb上の日記で拾った。要するにコピペ。
なんとか書いてみた。もう5時半近くだが、夜も長くなったようだ。
#!/bin/sh HOST=fuga NUM=65450 while : do ping -c 1 -n -s $NUM $HOST RES=$? if [ "$RES" == 0 ] ; then echo OK echo Packet size is $NUM + 8 else if [ "$RES" == 2 ]; then exit fi fi NUM=$(expr $NUM + 1) sleep 1 done
動くものにするだけで精一杯。
まだ午前3時なのに、ログ見たら今日だけでtdiaryにアクセスすること150回に及ぶ。
我ながら一体何やってるんだろうか。
SUPサーバが猛烈にデータを送り始めた。これまでかなり負荷が集中していた模様。
ダウンロードの完了したのは9時前らしい。
適当に変えながらLANの別ホストに打ってみた。
-s 65467(合計65475バイト)が最長らしい。それより大きくするとtoo largeといって止まってしまう。Plamo4.0とNetBSD1.6.2で、同じ結果になった。
しかしそんぐらいシェルスクリプトでやってしまうべきなんだろうが、、、
ただし、戻り値はPlamoLinuxが2で、NetBSDが1だった。意外なところに違いがあるものだ。
ついでにエラーメッセージからソースをつつく。
NETBSD:CVSで取ってきたソースの /usr/sbin/ping の下にping.cがあった。
エラーメッセージはerrxで出してるらしい。
$ grep errx ping.c したが、errx(2,"hoge");する箇所はないようだった。
Plamo: ちょっと手間取った。リングサーバのPlamo-srcの下に、
netkit-combo0.17というパッケージがあり、それを展開するとping.cが入ってた。
こっちはエラーメッセージをfprintfの引数にstderrと"hoge\n"をとる形で
実装している。該当箇所はその次の行でexit(2)していた。BSDとは反対に
exit(1)はないようだった。
そこはかとない文化の差異に酩酊した心境であった。
付記。どっちのping も0,1,2とも返す...らしい。勘違いだったようだorz
/dev/console見てると、緑色の警告が頻々と出てくる。 手打ちにて一部ログるとこんな風になるか。
wd0: (aborted command, interface CRC error) wd0: soft error (corrected) wd0a: error writing fsbn 339632 of 339632-339759 (wd0 bn 8372132;\ cn 8305 tn 10 sn 62), retrying)
ドキュメントを斜め読みして、さっそく sup (1) に挑戦した。
# sup -s -v SUP 8.26 (4.3 BSD) for system software at Oct 10 09:12:35 SUP Upgrade of current-pkgsrc at Sun Oct 10 09:12:35 2004 SUP Fileserver 8.13 (4.3 BSD) 2247 on sup.jp.netbsd.org at 09:12:35 SUP Requesting changes since Jan 1 09:00:00 1970
でずーっと止まってる。
んで、そっちは放置してpkgsrc.tar.gzを取って来る方に変えた。 適当にmakeして遊ぶ。FreeBSDのPortsとどう違うんだろなぁ。
emiclockをmake install しようとすると、「ライセンス上受け入れられないから、もし入れたかったらhogehogeを/etc/mk.confに書け」とかいった警告が。
w3m-img on NetBSD を、pkgsrcでmake install しようとすると、こんなエラーとともに止まった。
making all in tools... `libcrypto.so.300.1' is up to date. `libssl.so.300.1' is up to date. => Fixing buildlink references in files-to-be-installed. ===> Installing for openssl-0.9.6m ===> openssl-0.9.6l is already installed - perhaps an older version? *** If so, you may use either of: *** - "pkg_delete openssl-0.9.6l" and "/usr/bin/make reinstall" to \ upgrade properly *** - "/usr/bin/make update" to rebuild the package and all of its \ dependencies *** - "/usr/bin/make replace" to replace only the package without \ re-linking *** dependencies, risking various problems. *** Error code 1 Stop.
なかなか親切だ。他にも色々なパッケージの衝突を告知してきた。
opensshを入れると、果して違うバージョンがふたつ入ってしまったようだ。
# which ssh /usr/bin/ssh # ssh -V OpenSSH_3.4 NetBSD_Secure_Shell-20030917, SSH protocols 1.5/2.0, \ OpenSSL 0x0090607f # /usr/pkg/bin/ssh -V OpenSSH_3.8p1, SSH protocols 1.5/2.0, OpenSSL 0.9.6m 17 Mar 2004
さあどうする。/etc/rc.confの記述では当然古いのがあがってしまうが。
FreeBSD4.xは/usr/local/etc/の下に実行可能なスクリプトを置いてたっけ。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。