トップ «前の日(03-11) 最新 次の日(03-13)» 追記

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2005-03-12(Sat) ぼけえっと

vipowerd

のロゴを頂戴して、トップページに貼り付けた。方法は 説明のページの通り。ついでに Another HTML-lintに揚足をとられないように適当に追記しておいた(^^;

今度はFreeBSDで

at(1)を試す。前回はLinuxで、atd(8)が起動 していればどのユーザでも実行できる模様だったが、 今度は、そんなデーモンはない(らしい)。 また /var/at/at.allowに名前が無ければ$ at foobarしても、即座に "at: you do not have permission to use this program"。 空っぽの /var/atd/atd.denyがあれば↑と同様だけど、そうするべきかは 疑問。

あと気づいたこと若干。
FreeBSD(4.11,5.3)では at(1)もbatch(1)もls -iは同じだった。
linux では batch(1)はat(1)を実行する シェルスクリプトだった(PlamoLinux4.0とDebian/GNU Linux3.0で 確認)。
NetBSD1.6.2ではデフォルトで空っぽの/var/at/at.denyがあった。 manpageにもそれが、そしてその意味するところが明記してあった。
ついでにMacOSXもつついてみたが、atとbatchのiノードが違う(ファイルサイズ は同一なのに)事を除いて FreeBSDと同様。

discard

って何だ?ぐぐると、受信データをただ破棄するだけ、と解説して いるサイトがあった。言及されているRFC863を見たが、

A useful debugging and measurement tool is a discard service. A discard
service simply throws away any data it receives.

これでは何のための仕様なのか全然掴めない。で、さらにぐぐると comp.protocols.tcp-ipの過去ログ(といっても1983年じゃない。今年のだ)が ヒットした。スレッド化されてないので辿りにくかったが、 19333の質問(自分と瓜ふたつの疑問)からいくつか対話が続いている。 とはいっても、最初の答えである19335 以外は、あまりよくわからなかったが。リンク切れに備えてコピペしとこ。

That's the protocol I usually use when using ttcp to perform throughput
tests. Since you're just testing the network, you don't need the
receiver to do anything with the data, so sending it to the discard
service is the most obvious thing to do. It's the network equivalent of
/dev/null. 

ちなみに回答者の名前でぐぐるとschemeのFAQとか、色々なNewsの過去ログとか がヒットした。MITのアカウントは伊達ではない。

さらに脱線(どこから?)。

$ ls -l | telnet DEBIAN 9
Trying XXX.XXX.XXX.XXX...
Connected to DEBIAN.
Escape character is '^]'.
Connection closed by foreign host.
 
$ dd if=/dev/zero of=zero.dat bs=1024k count=10
読み込んだブロック数は 10+0
書き込んだブロック数は 10+0
$ ls -l zero.dat 
-rw-r--r--    1 USER   GROUP    10485760  3月 12日  02:44 zero.dat
 
$ cat zero.dat | telnet DEBIAN 9
Trying XXX.XXX.XXX.XXX...
Connected to DEBIAN.
Escape character is '^]'.
 
 
telnet: buffer overflow, losing data, sorry
telnet: ring.cc:143: int ringbuf::flush(): Assertion `top-bot > 0 \
&& top-bot <= count' failed.
アボートしました

ふむ。なにかまずかったかな。 etherealで追っかけていると、telnetが落ちるまで1万近くのパケットが飛び交っていた。 etherealの他いくつかの重そうなアプリを閉じると、落ちなくなった。

あと、DebianやFreeBSDなどで同様の実験をlocalhost 宛に投げてみた。 DebianではinetdのCPU負荷が30%以上、telnetが 50%以上で続いた。 FreeBSDではinetdのCPU負荷はほとんどなく、telnetの負荷が90%以上だった。 条件はバラバラなので、あくまで一例だけど、ベンチマークとしても 面白そうだ。

Debianに

apache-sslやpostfixなどを放りこんで、動作確認。 改めてnmapで砲撃すると、何時の間にか色々開いていた。

$ nmap Debian
 
Starting nmap 3.55 ( http://www.insecure.org/nmap/ ) at \
   2005-03-12 01:20 JST
Interesting ports on Debian (XXX.XXX.XXX.XXX):
(The 1653 ports scanned but not shown below are in state: closed)
PORT    STATE SERVICE
9/tcp   open  discard
13/tcp  open  daytime
22/tcp  open  ssh
25/tcp  open  smtp
37/tcp  open  time
80/tcp  open  http
443/tcp open  https

$ telnet debian $NUM でいくつか試す。
daytimeは日時がピョン。timeは読めねぇ。

本日のツッコミ(全1件) [ツッコミを入れる]

takanyon [FreeBSDではcronで5分おきにatrunを呼んでるだけです。<atdがない]


2006-03-12(Sun) 頭にき〜た、鼻にき〜た、目にもきた♪

リマスタリング

続けた。
大きいパッケージを消して、デフォルトのrunlevelを2にし、 シリアルポートを開き...は、全く変らない。
あ、ln -s /etc/init.d/ssh /etc/rc2.d/S20ssh も 効いたはずだ。

kde関連をちまちま...も同様。ただしkdebluetoothとか に手をつけないよう注意する。


2007-03-12(Mon) やっとだ。

なんでだ。

今日、いきなり外からsshで全然入れなくなった!のは、FreeBSDの NAPTのせいじゃない。
~/.ssh/authorized_keysから不要としか思えなかったものを 消し過ぎたせいだ。

手元のPCだけ復活させて、一息。

厳寒の自宅メール

某MLに初めて メールを送信した。

まず、送信先らしきメールサーバからdefferd。

Mar 12 23:35:01 SERVER postfix/smtp[6367]: $ID: to=<knoppix@freeml.com>,\
 relay=ml.freeml.com[210.172.140.106], delay=4, status=deferred \
(host ml.freeml.com[210.172.140.106] said: 450 Rcpt to \
<knoppix@freeml.com> - Temporary local problem - try later \
(in reply to RCPT TO command)

あまり待つ気になれず、20分後にpostqueue -f してやった。
すると、MLから届いた、番号付きのメールに続いて、自分のメールメッセージを 同梱したエラーメールが一秒ずつ遅れて2通も来た。

XXXXX@yahoo.co.jp
XXXXX@gmail.com
 
   ----- Transcript of session follows -----
... while talking to [210.168.199.30]:
>>> DATA
<<< 554 Error: too many hops
554 Service unavailable

ぐぐると、どうやら転送のやり過ぎらしい。 Postfixのデフォルト(50)では小さ過ぎるのか。
こっちの知ったことか!と言いたくなるのを抑えて、main.cfを編集。hopcount_limitで設定するようだ。 とりあえずは101にしておこう。それからpostfix reload。

GMailとYahooに各一通届かなかったようだが、...
まぁいいか(こら

あと、自サーバのドメイン認証とかも考えないと、いずれはどこにも送れなく なってしまいそうだ。
プロバイダのメールサーバにrelayうんちゃらなどやりたくない (自分で運用する意味なし)し。


2008-03-12(Wed) 今日も、もやとはれ

C:\Users\user> set

WindowsVista Business Premium。
既出な気もするが、なんとなく。

ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\user\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
COMPUTERNAME=VISTA
ComSpec=C:\Windows\system32\cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\Users\user
LOCALAPPDATA=C:\Users\user\AppData\Local
LOGONSERVER=\\VISTA
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 10 Stepping 0, AuthenticAMD
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0a00
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
PROMPT=$P$G
PUBLIC=C:\Users\Public
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\user\AppData\Local\Temp
TMP=C:\Users\user\AppData\Local\Temp
USERDOMAIN=VISTA
USERNAME=user
USERPROFILE=C:\Users\user
windir=C:\Windows

ワークグループ名は出ないのかなぁ。

笑いを堪えて

JFより。

$ for beep in `seq 300 100 1000`; \
   do echo -e "\\33[10;$beep]\\33[11;100]" \
        > /dev/tty1 ;\  
      echo -e "\a" > /dev/tty1 ; \
      sleep 1; \
   done

sleep(1)

てっきりシェルの内部コマンドとばかり思ってた。

$ date ; sleep 1.5; sleep 1.5; date
2008年  3月 12日 水曜日 10:39:19 JST
2008年  3月 12日 水曜日 10:39:22 JST

日本語マニュアル(GNU Shell Utilities 2.1)には載ってなかったが、 LANG=C で改めて確認すると、"Unlike most implementations that require NUMBER be an integer, here NUMBER may be an arbitrary floating point number." とあった。
なんか微妙な気がする。

$ sleep --help すると、"指定する数字は整数だけでなく, 小数でも構いません." と出た。

ちなみにFreeBSD-6.3のsleep(1)も似た記述があった。
"This is a non-portable extension," と断っていたが。
こちらはGNUとは違い、1mとか2hとか3dとかには対応しないようだ。 数字やピリオド以外をくっつけても無視する。
実装の説明はsleep(3)とかnanosleep(3)とか(Linuxはセクション2に なっている)。混乱してきたので、これだけ。

USB HDDインターフェース比較

IDE-3525 vs KD25/35PRO。

IDE の方は2.5/3.5形のIDEのみ。ただし光学ドライブ などもつけられるようだ。
KDの方はIDE以外にもSATAにも対応する。でも光学ドライブ は駄目だった。

専用性ならIDEが、汎用性ならKDというところだろうか。

/dev/urandomを10GBばかり、同じディスクに dd してみたが、どちらも5分ほどで、 有意差は見えない。
もうちょっと色々やってみないと。


2010-03-12(Fri) 今日も晴れ、あまり暖かくない

ようやく

改行削除の続き。
tr(1)で決着がついたようだ、多分。

$ cat foo.txt
First
*
/*
***
 
*Second*
Third
$ cat foo.txt | tr -d "\n" ; echo ""
First*/*****Second*Third
$

なぜか重い

$ time /bin/ls /usr/bin/* > /dev/null
 
real    0m0.130s
user    0m0.107s
sys     0m0.023s

これは別に不思議でもなんでもない。だけど、

$ time ls /usr/bin/* > /dev/null
 
real    0m52.092s
user    0m51.457s
sys     0m0.453s

特に重い処理はやってない。Xさえ立ち上げてない環境で 数回繰り返して、ほとんど同じ結果を得た。
別端末でtopを表示してみると、実行しているbash(と同じプロセスIDのbash) がCPUの60-99%程度を上下している。
unset -f ls すると、/bin/ls と変らなくなった。
unalias ls とやっても無駄だった。
Plamo-4.6以降いくつかで確認。DebianやFreeBSDなどでは 再現せず。

$ alias ls
alias ls='ls $LS_OPTIONS'
 
$ type ls
ls is aliased to `ls $LS_OPTIONS'
$ unalias ls
 
$ type ls | wc -l
48

@IT にある、 シェルの組み込みコマンドを調べるには が参考になった。

TwitterでSearch

するスクリプトを 書いてみた。呟きスクリプトから 認証を外し、解析部分にいくらか手を入れる。

$ search.sh sato_makoto
2010-03-04T****:**Z : USER1 ($USER1)
誰かの呟き @sato_makoto の発言
 
2010-03-04T**:**:**Z : $USER1 ($USER1)
@sato_makoto 誰かからのメッセージ
 
2010-03-06T**:**:**Z : USER2 ($USER2)
誰かの呟き QT @sato_makoto 自分の呟き
 
//以下、略

"2010-03-12-01:02:03Z"などと表記される。
なんか世界時っぽいが、実のところよくわからない。

そろそろgitか何かでサーバを立てようか


2016-03-12(Sat) 晴れた

回転台

solar turn table

太陽電池内蔵。明るいところで回る。
どこにも型番が表示されていない。多分 これと思われたが、類似品は多いようだ。 折り紙など軽いものなら蛍光灯下でもOKらしいが、 頑丈な箱に入れたRasPI Bにカメラモジュール、そしてバッテリとなると、 日当たりの良い所の近く、がやっとであった。

タイムラプスの連続撮影には回転速度速すぎ。
一周を少し過ぎる間隔で連続撮影という 形になりそう。

カメラも載せて、「早送り動画」を試したが、 やはり速すぎる。また、 試用結果を確認すると、過積載のためか否か、 回転速度は一定でないように見える。

動画貼れるか

RaspberryPi B とカメラモジュールによる タイムラプス(どっかに和訳記事あったような) を試みたのは、 2月14日 のことであった。らしい。

10秒ごとに一枚程度の写真を400枚( 最初の一枚 最後の一枚 )撮って合成。パラメータを適当に変えて若干の試行錯誤。

$ cat enc.sh 
#!/bin/sh
mencoder \
  -nosound -ovc lavc \
  -lavcopts vcodec=mpeg4:aspect=8/6:vbitrate=8000000 \
  -vf scale=640:480 -o timelapse3.avi \
  -mf type=jpeg:fps=32 mf://@stills.txt
 
$ ls -alFh timelapse3.avi 
-rw-r--r-- 1 user group 5.5M  3月 12 13:46 timelapse3.avi
 
$ file timelapse3.avi 
timelapse3.avi: RIFF (little-endian) data, AVI, 640 x 480,\
  >30 fps, video: FFMpeg MPEG-4

約65分間に撮った静止画像が約13秒の動画になった。 300倍の早回しになる計算。 mpv(1)などで再生できたが、Twitterなどは受け付けなかった。
MP4に変換。

$ ffmpeg -i timelapse3.avi timelapse3.mp4
....
 
$ ls -alFh timelapse3.mp4 
-rw-r--r-- 1 user group 1.8M  3月 12 13:48 timelapse3.mp4
 
$ file timelapse3.mp4 
timelapse3.mp4: ISO Media, MP4 Base Media v1 [IS0 14496-12:2003]
<video src="/misc/dust/screenshots/raspy/timelapse/timelapse3.mp4"
autoplay
width="640" height="480">

さてどう見えるか。一応Firefoxでは見えているし再生できているが。


2020-03-12(Thu) 晴れていたはず

撮影日時

add date

を取り出して、画像に重ねてみた。
スクリプト化は、また次回。

日時をexifから抜き出して、左下にそれを書いた 透明の画像を作成。

$ exif -m $ORIG.jpg | grep 日時 | head -n1
日時    2020:03:07 11:48:26
 
$ convert -size 800x600  \
          -pointsize 20  \
          -fill "#eee"   \
          -font IPA明朝  \
          -gravity SouthEast \
         label:"撮影日時 2020/03/07 11:48:26" \
          -transparent white -fuzz 1% date.png

文字色は、今の所、白に近い色合いでないとフォントの縁が白くなってうまくできない。純白だと文字まで抜かれる。
それから、元画像を同じサイズにする。

$ convert -resize 800 $ORIG.jpg temp.png

で、両者の重ね合わせ。

$ composite  -gravity Center date.png temp.png new.png

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。