僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
最近Javascriptなブラウザ経由で画像を貼ることが
なくなったので、jpgだけの
プラグインを外す。
画像はpngをsshで転送して、<img>で
記述すれば良い。というか、だいぶ前から
そうしている。
ちょっとは軽くなったかも。
なんかerror_logがメールに来ないと 思って当該スクリプトを見直す。
grep するために抽出したdate(1)の処理が間違っていた。
date | awk '[ $3 ]' なんてのも考え物だ。
date "+%" に直す。ただし、date "+%_d"なんての
(FreeBSD5.3のdate(1)には通らなかった)も入れている。
メールからblosxomへの追記を妄想し、~/.forward に 記述(| "exec /PATH/COMMAND") すべきスクリプトを(実は昨日から)rubyで書いてみた。
Subject と本文を抽出し、utf-8で特定のディレクトリに
ダブらないファイル名で保存するだけ。
断続的に試行錯誤して、どうにかそれらしく
動くかもしれないおかしなモノができた。
文字コード変換に難渋。
ぐぐって
なんとか適当なのを借りて変換すると、
今度はパーミッションが変。なかなかすっと進まないものだ。
謎だらけながら、それでもなんとか使えるようにはなった。
ついでに、月の始めにbloxsomのdocを保存するディレクトリを
cronに掘らせておく。一応動く筈だけど、26日後には確認を。
これもcronにメールさせるか?
メールサーバの /etc/aliases を開き、ぐぐって一発もヒットしない
アドレスを記入する。此奴宛のメールをblosxomに飛ばそう。newaliases を
実行してから携帯を開き、もげもげぽっちり。一息ついてからブラウザを
リロード。成功。
さて、blosxomはコメントスパムのターゲットになるのだろうか。
今度はスパムフィルタを導入しなければ。
現在のblosxomのスタイルは自分の携帯のブラウザを通すと、なんとなく散漫に 見える。どうすべきか。
アクセスしているプロセスを止め、ユーザを追い払う。
何も無い筈なのにumountがうまくいかなければlazyマウント(-l) する。
<引用>
$ man mount
ファイルシステムが`busy'である時にはアンマウントは実行できない。
例えばそのファイルシステム上で、ファイルがオープンされている
(あるいはスワップファイルが使用中である)場合や、あるプロセスの
ワーキングディレクトリがそこにある場合などが該当する。
この原因となるプロセスが umount自身の場合もありうる。
umountはlibcをオープンするし、libcはまた多くのファイル
(localeファイルなど)をオープンする可能性がある。
lazyアンマウントにより、この問題は回避できる。
-l
lazyアンマウント。現在のファイルシステムの階層構造から
指定されたファイルシステムを切り離し、ファイルシステムへの全ての
参照がbusyでなくなった時点ですぐに整理する。(カーネル2.4.11
以降である必要がある。)
</引用>
GNU screen-4.0.2 をPlamo-4.21上で、 ./configure && make する時間を計測してみた。
$ cat time.txt 2008年 1月 5日 土曜日 18:15:35 JST 2008年 1月 5日 土曜日 18:16:23 JST
つまり48秒。次はVirtualBox上の4.22上で。
$ cat time.txt Sat Jan 5 18:20:00 JST 2008 Sat Jan 5 18:21:50 JST 2008
110秒。まあ、こんなもんか。
elinks-0.11-20080102。gettextてきとー。
ソースツリーのpo/READMEによれば、make elinks.pot で "elinks.pot"なるファイル (雛型?)ができるとある。これをja.poなどとリネームして編集する。w3mのja.poを参考に charsetのエントリに"EUC-JP"を指定し(Plamoだ)、msgstr "" の中に日本語を入れてみる。
$ grep ^msgstr elinks.pot | wc -l 1597
全部はとても、なので、適当にあちこちつまみ食い。
適当にぐぐって、*.gmoファイルの作り方を調べる。
$ msgfmt ja.po -o ja.gmo
これだけでは日本語のメッセージカタログが入らない。configure
スクリプトのALL_LINGUASにjaを追記した上で
./configure && make しなおすと、メニューが日本語になった。
$LANGを見ているらしい。
適当にいらっているとメニューの文字が化けたりする。
さて、本文の日本語表示はどこをどーやるのか。
elink、これまたえーかげんにごちゃごちゃ。
ソースツリーのUnicodeとかいうディレクトリに意味ありげなファイル("cp1257.cp"とか)が
あった。READMEによれば、ファイルを追加したら ./gen しろとある。
適当にぐぐっているうちに、
様子の似ているファイルがみつかったので、これを拝借してみる。
他のファイルの体裁を見て、てっぺんに少しエントリを追記した上でcp932.cpと
いうファイル名で保存する。そして、さっきのREADMEの通りにやってみた。
特にエラーも吐かなかったので、make cleanした上で、また make。
$ make (ry In file included from charsets.c:39: ../.././src/intl/codepage.inc:3450: warning: large \ integer implicitly truncated to unsigned type ../.././src/intl/codepage.inc:3451: warning: large \ integer implicitly truncated to unsigned type ; 同じ警告の繰り返し ../.././src/intl/codepage.inc:11173: warning: large \ integer implicitly truncated to unsigned type In file included from charsets.c:39: ../.././src/intl/codepage.inc:11178:4: invalid \ preprocessing directive #Name make[2]: *** [charsets.o] Error 1 make[2]: Leaving directory `$DIR/elinks-0.11-20080102/src/intl' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `$DIR/elinks-0.11-20080102/src' make: *** [all-recursive] Error 1
さて、原因はなんだ。
漢字が多すぎて所定の変数に格納しきれない
んだろうか(CJKのエントリが7076行あるが、
全体の半分近くだ)。
ツッコミを受けて確認。
ふつーの情報サイトには、まずGlibcのバージョンなんて
書いてくれてない。
Adobeのサイトをつついたら、
こんな
問答が見つかった。
今度はConverterモード。
PocketRouterを、別のアクセスポイントと
アソシエーションさせ、かつ無線のないPCとイーサネットで
繋いで通信させる、らしい。
これもあっさりとはできなかった。
無事に繋がるまであーでもなくこーでもなく。
まずResetスイッチを押して設定を初期化した。
これも少しコツが要るようだ。
LJ700にNICを一枚追加して、
片方にAirStationG54、他方にPocketRouter
を接続、設定する。
両者のアソシエーションは比較的簡単にできた(双方のWeb画面で
相手方らしいMACアドレスを確認)が、
PCの接続にやや嵌った。
今回はAirStationからのDHCPがうまくいかず
(DHCPNAKから先に進まない)、
PocketRouter側をAirStationと同じネットワーク
に入れる必要があった(自分のIPネットワークと
違うIPアドレスの発給はできないっぽい)。
LFS6.4とpkgsrc。
ツッコミを受けてしばらく放置していたが、
/usr/include に張ったopenssl のシンボリックリンクを消すと
nmap-4.76 と bind-9.6.0 とWireshark-1.0.4 がようやく入った。
こないだの
LMSではLFS-6.4で
外部出力に失敗したが、
startx する前にモニタ(NANAO T566)に繋ぐと出力できた。
LJ700の本体液晶は1024x768だけど、モニタは1280x1024に
なった。
両方を表示した状態で
スクリーンショットを撮ると、大きいほうが撮れた。
日を改めて、Wireless LANの到達限界を追試。
机の上に転がしたPocketRouterにAPモード+wpa_supplicantで接続し、ping をサーバに打ち続けた。
時々GoogleMapsで手応えを見ながら歩き回る。
部屋の中やベランダの外(窓ガラスには針金が入っている)程度なら特に支障なさげ。
上の階(屋上)も届くようだ。流石に下の階の中は分からない(廊下はOKだった)。
階段の途中でアソシエーションが何度もタイムアウトするようになったので、2つ下の階は
無理っぽい。
iwlist scannning してみると、ここ以外に4つほどアクセスポイントが見えた。
"Encryption key off"もあるみたい。
平面の距離も試してみないと。
ざっと5時間かかった。
# uname -a FreeBSD $RASPBERRYPI 11.0-CURRENT FreeBSD 11.0-CURRENT #0 \ r293184: Tue Jan 5 13:23:33 JST 2016 \ root@$HOST:/$DIR/work/obj/arm.armv6/usr/pi/src/sys/RPI-B_MINE arm
なんか色々変な気がする。
pkgとpkg2ngでいくつか入れた。
# visudo Shared object "libintl.so.8" not found, required by "visudo"
無いはずが無い。
/usr/local/lib # ls -l libintl.* -rw-r--r-- 1 root wheel 74122 Dec 8 03:58 libintl.a lrwxr-xr-x 1 root wheel 16 Dec 8 03:58 libintl.so -> libintl.so.8.1.4 lrwxr-xr-x 1 root wheel 16 Dec 8 03:58 libintl.so.8 -> libintl.so.8.1.4 -rw-r--r-- 1 root wheel 51832 Dec 8 03:58 libintl.so.8.1.4 lrwxr-xr-x 1 root wheel 12 Dec 8 03:58 libintl.so.9 -> libintl.so.8
# ldd `which ls` /bin/ls: .cshrc .history .k5login .login .profile
ldd(1)の問題かとも思って、以前のイメージからlddをコピーしてみたが
何も変らなかった。
念のためにPCでも確認。
$ ldd `which ls` /bin/ls: libutil.so.9 => /lib/libutil.so.9 (0x800826000) libncurses.so.8 => /lib/libncurses.so.8 (0x800a38000) libc.so.7 => /lib/libc.so.7 (0x800c85000)
どっかを見てなんとなく。
$ for x in `seq 10` > do echo -n $x": " > foo=$(expr $foo + `echo ${x}^3 |bc`) > echo $foo > done 1: 1 2: 9 3: 36 4: 100 5: 225 6: 441 7: 784 8: 1296 9: 2025 10: 3025
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。