S.C. MAGI-SYSTEM 日記
Diary
2009年になって、実に3年ぶりに更新再開。

hns - 日記自動生成システム - Version 2.19.9

2009年01月12日(月) [n年日記]

[天気:晴れときどき雨](新横浜) 起床:11:45 就寝:23:00

#1 [*BSD][Server] 7.1-RELEASE(適用)

この週末に実家に帰ってmake installworldしてきました。
今回も上げるなりopenssl周りに変更があったせいか、 opensslをリンクしているプログラムが次から次へとcoreを吐く始末。
もう、勘弁してください…
これだからメジャーバージョンをまたぐ更新は大変です。

でも、これでしばらくは安心ですね…
Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 7.1-RELEASE #0: Tue Jan  6 16:51:20 JST 2009
    root@melchior.magisystem.net:/work/obj/work/src/sys/EDEN
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: VIA Samuel 2 (533.36-MHz 686-class CPU)
  Origin = "CentaurHauls"  Id = 0x673  Stepping = 3
  Features=0x803035<FPU,DE,TSC,MSR,MTRR,PGE,MMX>
real memory  = 259981312 (247 MB)
avail memory = 244662272 (233 MB)
kbd1 at kbdmux0
acpi0: <VIA601 AWRDACPI> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, f6f0000 (3) failed
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff,0x4000-0x407f,0x4080-0x40ff,
 0x5000-0x500f,0x6000-0x607f on acpi0
pci0: <ACPI PCI bus> on pcib0
agp0: <VIA 8601 (Apollo ProMedia/PLE133Ta) host to PCI bridge> on hostb0
agp0: aperture size is 256M
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
vgapci0: <VGA-compatible display> mem 0xe1800000-0xe1ffffff,
 0xe2000000-0xe201ffff,0xe1000000-0xe17fffff irq 11 at device 0.0 on pci1
isab0: <PCI-ISA bridge> at device 17.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <VIA 8231 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,
 0x376,0xd000-0xd00f at device 17.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci0
ata1: [ITHREAD]
uhci0: <VIA 83C572 USB controller> port 0xd400-0xd41f irq 12 at
 device 17.2 on pci0
uhci0: [GIANT-LOCKED]
uhci0: [ITHREAD]
usb0: <VIA 83C572 USB controller> on uhci0
usb0: USB revision 1.0
uhub0: <VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb0
uhub0: 2 ports with 2 removable, self powered
uhci1: <VIA 83C572 USB controller> port 0xd800-0xd81f irq 12 at
 device 17.3 on pci0
uhci1: [GIANT-LOCKED]
uhci1: [ITHREAD]
usb1: <VIA 83C572 USB controller> on uhci1
usb1: USB revision 1.0
uhub1: <VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb1
uhub1: 2 ports with 2 removable, self powered
pci0: <bridge> at device 17.4 (no driver attached)
pcm0: <VIA VT82C686A> port 0xdc00-0xdcff,0xe000-0xe003,0xe400-0xe403
 irq 10 at device 17.5 on pci0
pcm0: [ITHREAD]
pcm0: <VIA Technologies VIA1612A AC97 Codec>
vr0: <VIA VT6102 Rhine II 10/100BaseTX> port 0xe800-0xe8ff
 mem 0xe3000000-0xe30000ff irq 11 at device 18.0 on pci0
vr0: Quirks: 0x0
vr0: Revision: 0x51
miibus0: <MII bus> on vr0
ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
vr0: Ethernet address: 00:40:63:d4:b5:a9
vr0: [ITHREAD]
acpi_tz0: <Thermal Zone> on acpi0
sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
sio0: type 16550A, console
sio0: [FILTER]
cpu0: <ACPI CPU> on acpi0
acpi_throttle0: <ACPI CPU Throttling> on cpu0
pmtimer0 on isa0
orm0: <ISA Option ROMs> at iomem 0xc0000-0xcbfff,0xcc000-0xd5fff
 pnpid ORM0000 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x100>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode
ppbus0: <Parallel port bus> on ppc0
ppbus0: [ITHREAD]
plip0: <PLIP network interface> on ppbus0
plip0: WARNING: using obsoleted IFF_NEEDSGIANT flag
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
ppc0: [GIANT-LOCKED]
ppc0: [ITHREAD]
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
Timecounter "TSC" frequency 533355193 Hz quality 800
Timecounters tick every 1.000 msec
IP Filter: v4.1.28 initialized.  Default = pass all, Logging = enabled
ad0: 38154MB <HTE726040M9AT00 MHAOA6AA> at ata0-master UDMA100

2009年01月13日(火) [n年日記]

[天気:晴れ](新横浜) 起床:7:30 就寝:24:00

#1 [Server] ひとまず完了

ようやく ports も更新でき、FreeBSDの更新作業は一通り完了しました。

このサーバのimapとsmtpはどちらもTLSに対応しているのですが、 実は今どうやって構築したのかという資料が残っていません。(汗)

今後のためにも、どう設定したのか整理したいと思います。

2009年01月14日(水) [n年日記]

[天気:晴れ](新横浜) 起床:7:30 就寝:24:00

#1 [Web] アクセスカウンタ

ここのサイトの トップページ に SSI で上部にアクセスカウンタが埋め込まれているのに お気付きでしょうか?

このアクセスカウンタは、遠い昔、おそらく2000年あたりに 私がフルスクラッチでPerlで書いたものがベースになっています。
当時、イメージを出力するレンタルアクセスカウンタが主流 *1 でしたが、 私は w3m といったテキストブラウザがメインだったので、 イメージではなく、テキストでアクセス数が知りたくてこういうものを 作ったのです。
そのソースを久し振りにメンテナンスしてみました。

いやー、当時と今では書き方がずいぶんと変わったので、 久し振りに見るときたないものですね。(笑)
ちなみに、このカウンタは単純にアクセス数だけをカウントしているのではありません。
同一IPからの短時間(1時間以内)のアクセスはカウントアップしないように しているので、総アクセス数だけでなく、IPアドレスごとの直近アクセス日時を 同時に記録しています。
このデータの保持に Berkeley DB を用いています。
ちょっとデータの中を見たくて、Perlで展開しようとしましたが… 単純にDB中のデータを %hash 展開したら
pid 41859 (perl5.8.8), uid 1001: exited on signal 11 (core dumped)
メモリ不足で落ちました…ってどれだけデータが入っているんですか。

どうやら、問題なのは
foreach my $key (keys %{$href}) {
(snip)
連想配列内のキーをforeachで取り出しているところのようでした。
foreach では keys 関数によって array を生成するので、 キー数が多いととんでもないほどメモリを使うそうです。
こういうときは
while (my ($key, $val) = each %{$href}) {
(snip)
each を使うといいらしい。

確かに3万件近くデータがあるので、そりゃ落ちますわね…

Berkeley DBでも3万件ものDBを保持できることにびっくり。
そして、この数年間でそんなにも異なるIPアドレスからアクセスされていた という積み重ねにもびっくり。

ちなみに、このカウンタは画像出力にも対応しています。
以下、その例です。

スタンダードタイプ
Type 2

ちょっとおしゃれタイプ
Type 3

漢数字タイプ(笑) *2
Type 1
*1: 会津大学のアクセスカウンタが サービス終了 するというニュースもありました。
*2: 当時の流行が分かりますね。

2009年01月16日(金) [n年日記]

[天気:晴れ](沼津) 起床:7:30 就寝:24:00

#1 [Server][*BSD] perl-after-upgrade

FreeBSD の perl5.8 ports が 5.8.9 にアップデートされました。
これにともない、このサーバのperlも入れ替えました。

perlを入れ替えると困ることは、perl Modulesを入れ直しになることです。
アップデートする前の5.8.8は/usr/local/lib/perl5/5.8.8配下にありますが、 アップデート後の5.8.9では/usr/local/lib/perl5/5.8.9に変わります。
これに合わせて、いくつかのモジュールは配置場所が変わってしまうのです。

入れ直し面倒くさいなぁ、と思っていたら /usr/ports/UPDATING に次の文が。
20090113:
  AFFECTS: users of lang/perl5.8
  AUTHOR: skv%FreeBSD.org

  lang/perl5.8 has been updated to 5.8.9. You should update everything
  depending on perl. The easiest way to do that is to use
  perl-after-upgrade script supplied with lang/perl5.8. Please see
  its manual page for details.

perl-after-upgrateというものが用意されているらしい。
以下のようにrootで実行すると、何が行われるか見られます。
# perl-after-upgrade
で、その結果に問題がなければ
# perl-after-upgrade -f
で反映されます。

これはラクチンだ。

2009年01月19日(月) [n年日記]

[天気:晴れ](新横浜) 起床:7:30 就寝:24:00

#1 [MacOSX][Windows] Windows 7 beta

仕事でWindows 7 betaと関わることがあったので、 ものは試しとMacbookのVMware Fusionに入れてみました。(笑)

入手は簡単。
Windowsメッセンジャーのアカウントがあれば、 ここ からダウンロードできます。
インストールイメージが約2.5GBと大きいので注意しましょう。
それから、ダウンロードはどうもIEでないとダメな様子。
Safariではできませんでした…
あと、途中でインストールキーが表示されますので、忘れずにメモりましょう。

VMware Fusionにインストールするのであれば、ISOを焼く必要もないので 結構簡単です。
とりあえず、VMのテンプレートとしてはVistaを選んでおくといいでしょう。

インストールはだいたい2時間もあれば終わりそう。
インストール画面

Windowsといえば、無駄にグラフィカルでうざい起動画面ですが… Windows 7はさらにひどいことになっています。(笑)
VMwareなので、起動するときにすごい勢いでファンが周ります。
スプラッシュ画面

で、インストール直後のシステムのプロパティ。
あちらこちらでレビューされているように、結構軽いです。
会社で使っているVistaや、同じくVMwareに入れているWindows Server 2008よりも ずっと快適かもしれない。
システム・プロパティ

そして、デフォルトのブラウザはInternet Explorer 8になっています。
IE8
ちなみにブラウザ名は
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;
 .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729;
 Media Center PC 6.0)
だそうな。

最後に、IE8 on Windows 7 on VMware Fusion on MacOS X 10.5 で、ニコニコ動画。(笑)
ニコニコ動画

今はまだXPで十分ですが、Windows 7 が出たらVistaを飛び越えてアップデートする 価値があるかもしれませんね。

2009年01月20日(火) [n年日記]

[天気:晴れ](新横浜) 起床:7:30 就寝:24:00

#1 [Server] Seagate HDD

Seagate製のHDDが起動できなくなる可能性があるらしい。

Seagate社、自社製HDDの不具合を認める [slashdot.jp]
Seagate製HDDの一部でアクセス不能になる不具合 [ITmedia]

最近、というよりは2008年に製造されたモデルがあぶない。
実はSATAだけだろうと高くくくっていたのですが、 ATAも含まれているので注意しましょう。
ちなみに、わたしが先日買ったのはHGST製ですのでセーフ。
やっぱりSeagateを避けてよかった…

ちなみに過去にはMacbook搭載のSeagate製HDDにも トラブルがありました
HDDは最近のパソコンでは生命線なので、トラブルが出ると恐いですね。
業務用であれば大抵RAIDになっているので、まだ安心できる *1 んですが。
*1: 今回みたいなトラブルだとロットが全部逝くので、下手するとRAID全部飛ぶことも。(汗)

#2 [MacOSX] PowerPCの備忘録

#3 [Web] RSS feed

HyperNikkiSystem にもRSS feedする機能ってあったんですね。
生のRSSは こちら から取得できます。

Safariを使っていると、RSS feedがあるサイトを表示していると URLバーのところの末尾に RSS と表示されます。
これってどうやって認識しているのかなーと調べてみました。
linkタグに記述することで表現しているらしい。
詳細は こちら がいいかも。
ようはlinkタグは、現在のページと関連する別ページへのリンクを 示すタグで、その「alternate」としてMIMEタイプrss+xmlなものへの hrefを貼るという仕組みです。
<link rel="alternate" type="application/rss+xml" title="RSS" href="./rss.cgi">
という感じです

#4 [Server][Web] abuse

MRTG を見ていただくと分かりますが、急激に負荷が高くなってmrtgが死んでしまいました。
それでも、OSが落ちなかったのはすごい。
httpdも子プロセスは死にまくりましたが、親だけは残っていました。

いろいろログを調べてみたら、やはり検索BOTの多重アクセスが原因らしい。
特にこのサイトは、ここのhnsを始め、wikiやらtDiaryやらで動的に生成するページが多く、 それらを全部検索BOTにcrawlされると大変なことになります。

ということで、お行儀の悪い次の検索エンジンをipfではじくことにしました。
  • Yeti/1.0 (NHN Corp.; http://help.naver.com/robots/)
  • Baiduspider+(+http://help.baidu.jp/system/05.html)
ちなみに、それぞれのアクセス元は
  • Yeti/1.0:61.247.222.53
    % whois 61.247.222.53
    (snip)
    inetnum:      61.247.192.0 - 61.247.223.255
    netname:      NHN-NET-KR
    descr:        NHN
    country:      KR
    admin-c:      TS411-KR
    tech-c:       TS411-KR
    status:       ALLOCATED PORTABLE
    mnt-by:       MNT-KRNIC-AP
    remarks:      This information has been partially mirrored by APNIC from
    remarks:      KRNIC. To obtain more specific information, please use the
    remarks:      KRNIC whois server at whois.krnic.net.
    changed:      hostmaster%nic.or.kr
    source:       KRNIC
    
    ということで、61.247.192/18でまるっとBAN。

  • Baiduspider+:119.63.194.120
    % whois 119.63.194.120
    (snip)
    inetnum:      119.63.192.0 - 119.63.199.255
    netname:      BAIDUJP-CIDR-BLK-JP
    descr:        Baidu, Inc.
    remarks:      Email address for spam or abuse complaints : sunruifeng%baidu.com
    country:      JP
    admin-c:      RS2845JP
    tech-c:       RS2845JP
    remarks:      This information has been partially mirrored by APNIC from
    remarks:      JPNIC. To obtain more specific information, please use the
    remarks:      JPNIC WHOIS Gateway at
    remarks:      http://www.nic.ad.jp/en/db/whois/en-gateway.html or
    remarks:      whois.nic.ad.jp for WHOIS client. (The WHOIS client
    remarks:      defaults to Japanese output, use the /e switch for English
    remarks:      output)
    changed:      apnic-ftp%nic.ad.jp 20080122
    source:       JPNIC
    
    って、Baiduって日本のアドレスブロックから来てたのか…
    そりゃ防げませんって。
    まとめて 119.63.192.0/21 でBAN。

これで少しはマシになるかな?


最近の日記
2019年06月24日
10年振り
2009年12月31日
定期アップデート
2009年04月03日
定期アップデート
2009年03月22日
定期アップデート
2009年01月26日
pomera
2009年01月23日
今日のBOT
2009年01月22日
BOT
2009年01月20日
Seagate HDD
PowerPCの備忘録
RSS feed
abuse
2009年01月19日
Windows 7 beta
2009年01月16日
perl-after-upgrade
2009年01月14日
アクセスカウンタ
2009年01月13日
ひとまず完了
2009年01月12日
7.1-RELEASE(適用)
2009年01月10日
hns 2.19.9
2009年01月09日
recursion no
以上、6 日分です。
先月 2009年01月 来月
1 2 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project