mountとか面倒なので、usbd.confに挑戦:usbdが動いていないので、rc.confにusbd_enable="YES"をいれて、「/etc/rc.d/usbd start」。
/etc/usbd.confってそこそこ書いてあるのね。
usbdを一旦止めて、「usbd -d -v」で、productとかの番号を取得。
んで、usbd.confを設定しして刺して…
mountしないじゃん。
usbdを手動で「usbd -d -v」で起動して刺してみる。
どうも、usbdの反応が速過ぎてda0が生える前にattachに書いたmountが動いているようだ。
attach "/bin/sleep 1;/sbin/mount /U"」とかしてみたら、うまくmountされた。
しかし、抜いて見ると…
あ、こっちもタイミングが合わないのか。
「detach "/sbin/umount /U"」が効く前にda0がなくなってumount出来てないじゃん。
umount -f /U」したら…固まってしまった。
またresetか。
どうもいかんなぁ。
mountだけ自動化されてもあまり嬉しくないな。
ということで、usbdを使うのを諦めた。
しかし、こんなことを繰り返していると永遠に動画encodingが終らないぞ。
fsck_msdosfs。
ちょっとおかしなところがやっぱりあったみたいだ。
しかし、「FAT starts with odd byte sequence (f8ffff0ffffffff7)」とかいうのは何回fsckしても変わらんな。
online manualによると開発途上だそうなので、気にするのはやめよう。
んで、ついでにいくつかファイルを複写しておくか。
fwohci1: BUS reset fwohci1: node_id=0xc800ffc2, gen=11, CYCLEMASTER mode firewire1: 3 nodes, maxhop <= 2, cable IRM = 2 (me) firewire1: bus manager 2 (me) sbp1:0:0 request timeout(cmd orb:0x53afb634) ... agent resetしばらく外付HDのaccess lampが消えているから何かと思ったけど、これか。 しかし、しばらくしたら復活したな。 ちゃんと吸い出せていると思っていいのかなぁ。 現在56GB取り出せたところ。
sbp1:0:0 request timeout(cmd orb:0x53afb8a4) ... agent reset sbp1:0:0 request timeout(cmd orb:0x53afb9dc) ... target reset sbp1:0:0 request timeout(mgm orb:0x53afbb14) ... reset start fwohci1: txd err=14 ack busy_X fw_asybusy fwohci1: txd err=14 ack busy_X fw_asybusy fwohci1: txd err=14 ack busy_X fw_asybusy fwohci1: txd err=14 ack busy_X fw_asybusy firewire1: max_asyretry exceeded sbp1:0:0 sbp_reset_start failed: resp=16 firewire1: split transaction timeout dst=0xffc1 tl=0x1a state=8 sbp1:0:0 sbp_reset_start failed: resp=60うーん。 5秒間隔ぐらいでaccess lampはつくけど、全然file sizeは大きくならないな。 ダメかな。
ddを止められないなぁ。
da0を消したら、
ddも止まった。
mdconfig -a -f」して、fsckするとどうなるだろうか。
こんどは、なんとなく「fsck_ufs -b 376512」してみる。
fsck -yしてみる。
fsckしろということなので、そうしてみた。
fsckしてもダメみたいだ。
ま、全体のfilesizeがインチキになっているから仕方ないかな。
mount -r」でreadonlyで強制mountしたら9GB程は見えた。
まだ直る可能性はありそうだな。
とりあえず現状で見えるものだけでも救い出しておくか。
ad1として認識。
早速、吸いだし開始。
このペースだと2時間強ということか。
とすると、ちょっと録画予約に引っかかるな。
その間中断するか、それともとり損なってもそれほど痛くない奴ということで、どれくらいbusに影響を与えるかという実験をするか。
多分、普通の操作でもなんか一瞬止まる感じが色々しているので、うまくいかないのではないかという気はするんだが。
fwcontrol -R」を手動で実行すればいいじゃん。
ということで、実行したらoverrunしまくり。
さすがにダメなようだ。
ddをctrl-z。
153GBほど読んだところ。
fg。
ddが終ったので、ad1に対して「fsck -y」。
思ったほどは問題を検出せず無事終了。
もう一度fsckしても問題が起きなかった。
よかった。
mountして様子見。
最後の1 title分だけ、さっぱり消えてなくなっているだけのようだ。
ということで、転写開始…
って、おや?
空きがあんまりないな。
ということで、minfreeを0、またsoft-updatesもonになっていたのでoffにする。
shutdown -p」してWD2500を外す。
とりあえずは目標を達成できたか?
md経由で使えるようにして、fsckとかちゃんと動くか実験。
md経由でも同様の結果が得られた。
さすがに250GBを持ち続けるのは厳しいので、さっさと消去。
fwohci1: BUS reset fwohci1: node_id=0xc800ffc2, gen=37, CYCLEMASTER mode firewire1: 3 nodes, maxhop <= 2, cable IRM = 2 (me) firewire1: bus manager 2 (me)を食らって、外付HDのaccess lampは消灯、 何故か内蔵HDのaccess lampは付きっぱなし。
mplayerで視聴中のも固まったので諦めてreset。
fsckに期待するつもりだったが、なんか/varで「error: pendingどーのこーの」と出ていて、またpppでnetworkのaccess lampは点滅し続けるも先に進まず。ということで、諦めてsingle user modeで起動。
fsck。
念のため-y optionは付けずに起動。
encoding中だったこともあって、それなりに壊れているな。
/varの方は、確かに故障箇所が多いようでlost+foundも作られた。
fsckも終ったので起動。
pppも無事動いて復活。
/var/lost+foundにあったファイルはゴミにしか見えなかったので、消去。
fsck。
いくつか引っかかったが原則問題無く終了。
んでmountして、内蔵HDの中身の複写を再開。
fwohci1: BUS reset fwohci1: node_id=0xc800ffc2, gen=4, CYCLEMASTER mode firewire1: 3 nodes, maxhop <= 2, cable IRM = 2 (me) firewire1: bus manager 2 (me)ぎょぎょ。 と、思ったが固まるというようなことはなかった。 なんかcableが緩んでいるとかあるのかなぁ。
umountして、mountしようとしたら、「mount: /dev/da0s1d on /fw: incorrect super block」。
恐いようぉ。
とりあえず、外付HDの電源を落す。
fwcontrol -u 1 -r」を何回か連打してda0の認識を無くしてから電源on。
んでfsck。
newfs -N」でsuperblock番号を調べて最初の番号が160であることを確認。
で「fsck_ufs -b 160」。
なんかいっぱい聞いてくるぞ。
どうしようかなぁ。
ddで吸いだし開始。
このペースだと4時間弱かかるな。
うーん。
動画encoding始めるか。
mount_msdosして、何も考えずにMicrosoft ASF形式のファイルをドカドカcpしてみる。
お。
拡張子をwmaに変更するとか、MP3形式にするとかせず、ちゃんと認識して聞けるじゃん。
素晴らしい。
しかもmplayerでは化けていた日本語のclip infoとかもちゃんと読めるのがよろしい。
shutdown -p。
前、コンデンサがおかしいことが発見された時に開けてから3カ月ぐらいは経っているような気がするので、掃除の準備もするか。
その間にCPUとかも冷えるだろう。
/dev/fwmemと繋がっているのと違うバスに対して行なったが、どうもEUIの方が優先されて効いてしまった気がする。
そういうものなのか。
5分ほど録画失敗。
本qは火曜→水曜が混んでいて大変だ。
ServerTokens Prod」を書き足してみた。
こういうこと出来るのだいぶ前から気がついていたが、やるのすっかり忘れていた。
^^;
Content-Lengthで2^31バイトを越えるファイルの場合の誤動作をfixをしようとしていてふと思い出した。
makeがコケていたasir2000。
今日はmakeが通ったので嬉しい。
15 1 * * tue $HOME/ss/tvrec -x 5 1621 $HOME/rec/haruhi07T.avi 30 1 * * tue $HOME/ss/tvrec -u 1 -s 29.8 -q 4.5 12 1696 $HOME/r1/simoun07T.aviといった感じで、時間順に
crontab登録していっているんだけど2系統まとめてかいてあるとどれがどれだか分からなくなってきた。
^^;
間違って同じfirewire busに対して時間が重なるような登録をしても見落としそうな気がしてきた。
bus毎に表記順を並び変えるべきか。
mencoderが一度にたくさんは走らないようにするlogic、ちゃんと動いているようで嬉しい。
とりあえず今のところ問題は起きていないようだ。
ipfw log logamount」がいっぱいになったようなので、「ipfw resetlog」してみた。
また、/etc/daily.localを作って、1行書いてみた。
mencoderを同時にあんまりたくさんは動かないようにするlogicを有効にしたTV録画予約scriptを朝有効にしておいたら…
なんかdead lock状態になっている気が…
とりあえず手動で動き出させておいたけど、あとで様子を見ねば。
というか、次の録画は何時だ?
2200か。
それまでに解決せねば。
tcsh組み込みコマンドのkillで、存在しないprocessに対して実行するとscriptが、そこで終っちゃうのね。
Ad Hocだが、外部コマンドのkillを使って解決することにした。
mencoderが15本も溜っているし。
昨日の夕方録画分からだな。
この後、0958-1810は空き時間だけどこの間に終れるんだろうか。
とりあえず今日については手作業で同時encodingにすると、
なかなか進まないので「kill -STOP」して「echo kill -CONT|batch」してみた。
現在、53GB+44GBがDVで残っている。
うーむ。
ここまで一時的に使うことを想定して空けておかなければならないとすると結構来るものがあるなぁ。
もうちょっとscriptの方を工夫しないといかんなぁ。
fwcontrolが走っている時はencodingを開始しないようにする仕組み入れてみた。
これで-d optionで指定する秒数を毎回悩みながら設定する必要は低くなったかな。
しかし、mencoderが多数走っている場合にもencodingを始めない仕組みを入れたいんだがどうしたらいいんだろう。
いや、その条件だけだったら大したこと無いんだけど、first-in-first-outにしたいからなぁ。
randomというか適当startならできるんだが。
fwcontrolとencodingがぶつからないようにするlogicだけでも正しく動くか確認するか。
しかし、現在動いているencodingの方にも影響してしまうな。
「kill -STOP」&batchの方をもう一度、あきらめて投入し直すか。
pkill -f」で問題だったようだ。
さて、どうしようか。
mplayerでstreamingを使うためのsource codeのbackupかな。
/etcとかbackup取ったこと無かったな。
crashする前にとらねば。
/etcとかのbackup。
HD→HDはすぐ終った。
ということでbzip2圧縮。
crontabの録画予約をNorthwood PCから移植しないとまずいな。
次の録画予約は…1700か。
Northwood PCの方は1730からだからそれまでにケリを付けねば。
fwcontrol -R」は終って、mencoderが動き出した。
途中「fwohci0: IR DMA overrun (0x40008011)」を食らわずにすんだ。
がcommand line起動の片方がNo matching processes belonging to you were foundとか主張している。 多分、ほぼ同時に起動したというタイミングの問題のような気がするが、 気になるのでscriptを確認しよう。
pkill -P」でなんとかなるかな。
というか、こういう解決の方が美しいかな?
とりあえずこれで2系統1分録画の実験かな。
fwcontrolがPPIDになってなかった。
んで「pkill -f」で直接パターン指定をしたら…
しまった。
killしたい対象のcommand line optionがpkillのoptionに解釈されスゲーことに…
なんか、ねこそぎprocessがkillされてしまった。
つまり、Xとか落されてしまった。
びっくり。
mencoder開始は無条件に始めるようになっているからなぁ。
とりあえずencodeの開始を遅らせるoption -dは準備しているので、手動では対応可能なのだが。
時間無いから、とりあえずはこれでいいか。
-d optionの挙動がちょっと期待と違うぞ。
直さねば。
1800から同時2chの予定だから、ちょうどいい感じか。
しかし、ちょっと出かけたいんだが、こんな状況だと離れられないなぁ。
killしたりせず、さらにちゃんとmencoderが始まらず待っているようだ。
今のところかなり順調。
mencoderも動き出しているようだ。
ということで、現状のscriptでちゃんと動くということがほぼ確認できたかな。
ということで、Northwood PCに残っている他の録画予約分もPrescott PCに移動するか。
mencoder開始時に別のfwcontrolが動いていないことを自動で確認する仕組みを入れるべきだな。
noisy period 5/ 1 mon -0605 0607-0609 0614-0657 0732 0736-0739 0745-0748 0801-0803 (-2111:clear) 4/30 sun -0758 0801-0807 0809-0814 0822-0823 0827-0837 0927-1005 1040-1239 1409-1414 1528-1544 1548-1554 1817-1821 1830 1846-1850 2343-100%そうというわけじゃないけど、やっぱり人間の生活時間帯に関係はしている気がする。
本ページの主張等は著者の所属組織に全く関係なく、個人としてのものです。