2008/11/29(土)dpkgがaptitude upgradeできない

2008/11/29 20:03 PC(Linux)
aptitude installなどで、
package uses Breaks; not supported in this dpkg 
と出て、パッケージのインストールが出来ない問題@ubuntu。

メッセージを見る限り、dpkgのアップグレードをすれば解決しそうだが、dpkgのインストールでも同様のメッセージが出る。

エラーの原因は以下に詳しい。
Nabble - Bug#462165: dpkg: Upgrade from 1.13.23-1.14.5 to 1.14.16 onwards is broken

内容の意訳をすると、
  • "Breaks"ヘッダはdpkg1.14.6からサポートされました。
  • それ未満のVer.のdpkgでは"Breaks"ヘッダを持つパッケージをインストールできません。
  • そのためdpkgのVerUPの必要がありますが、最新のdpkg1.14.16パッケージにも"Breaks"ヘッダは使われています。
  • 従って、1.14.6未満のdpkgのVerUpには「卵が先か鶏が先か」という問題が起こります。
とのこと。

解決方法は2通りあるようだが、素直に強制インストールでいいと思う。ということで、
dpkg --force-depends -i /var/cache/apt/archives/dpkg_1.14.16.6ubuntu3_i386.deb
とすれば、エラーを無視して最新dpkgがインストールされる。あとはaptitudeで良し。

それにしても、dpkgのforceオプションは難しい。種類も多いし、--force-dependsの動作は思っていたのとちょっと違った。やれやれ。

2008/11/09(日)主線の入れ方を考える

2008/11/09 26:19 お絵かき
しばらく絵の書き方的な記事が続くと思います(なお、ちょっと日記cgiの運用と切り分けがうまくいってないのでこっちにですますで書いちゃいます)。

主線の入れ方については毎度毎度絵を描く度、ってことは継続的に悩んでるんですが、また少し時間をとって考えてみました。

まず、画風と描き方は色々あってそこは自由なわけだし、別に何が正しいなんてこともないわけですが、結果的に密度が落ちるとか、出したい雰囲気にならない、成立しない、これが多いわけです。それはまずいだろうってこと。

まず主線そのものに関してはうまいとはいえないにしろ、だいぶ練習もしてきたわけだし、手ぶれ補正無し、ベジェサポート無しである程度綺麗な曲線はかけるようになってきました。アウトライン取りもそんな大きくミスをするようなレベルは脱してると思います。しかしいざ塗ってみると何か変。

1.固さを感じる
2.遊びがない
3.と思って、遊んだところが結果変
4.強弱、タッチが足りてないか不必要なところに入っている

主観的にはこの4つなんですが、一つ一つ分析してみました。

[原因]
1.固さを感じる
多分黒すぎる。塗りを強烈にするならともかく、アニメ系CG塗り程度に抑えるなら、黒の幅を主線で感じさせるのは良くない。乗算ペン入れは主線そのものはイントネーションがついて、綺麗に見えるのだが塗りを加えて結果として見ると黒くなりすぎるようだ。

2.遊びがない
薄めの補助線で線をサポートするのが当たり前。純たるアニメ塗りにするのでなければ、サポート線を入れることを拒否する理由がない。サポート用の線は濃度、線幅を下げるのが基本。タッチを覚えた方が良い。

3.と思って、遊んだところが結果変
わざと線をぶった切ったり、張り出しを作ったりするとたいてい失敗する。ちょっとこれは結論が出ない。ただ、やはりベースの骨格ラインや形作りをサポートしない線の遊びはかえって失敗しか引き起こさない模様。

4.強弱、タッチが足りてないか不必要なところに入っている
これは修行しかない。これは他の部分よりも見て分かる部分が大きいので、さっさと盗むのが得策。反面、成長には時間がかかるのは明白なので継続修行。

で、ツール(sai)の使い方を当面どうしていくかというところです。

1の理由から、まず乗算を切ってみます。2の理由から、ツールを固めにして綺麗に線が引けるところでもちょっと濃度低めになるように。

で、通常、左端ペン先、最小サイズ0%、ブラシ濃度85%~90%、輪郭の硬さ0%、最小濃度0%、硬さ70%、筆圧濃度、サイズありあり。

としてみました。しばらく実地調査。

2008/10/25(土)復旧しました

2008/10/25 22:40 PC(全般)
サーバHDDクラッシュに伴い、しばらくMemoページが見られなくなっていました。

お恥ずかしながら、一部バックアップと+Googleキャッシュよりの復旧と相成りました。

一応文字データは全て復旧したと思います。記事IDもほぼ以前の状態になっていると思います。ずれてるところはあるかもしれないですが……

文書の構造化や、画像の抜けはおいおい直していきます。
情報探してサーチエンジンから来た方、いつも読んで下さっている方にご迷惑をお掛けしたことをお詫びします。

顛末はまあ時間が出来たときにでも書きます。
といっても今回は大して面白いことはなかったのですけど。

2008/09/13(土)sambaで実行ファイルを更新すると実行フラグが外れる

2008/09/13 25:17 PC(Linux)
samba経由でlinux上のファイルをWindowsからいじる際、パーミッション755のファイルを更新すると、655となり、自分の実行フラグだけが外れる問題。

まあ実行可能ファイルをsamba上でいじれることが余り良いことではないというのは置いておいて。

なんで自分の実行ビットだけ外れるのか、smb.confを読んでいても当初今ひとつ分からなかったのだが、

[linux-users:100723] winからコピーすると"drwxr-xr-x"となるのは何故?

ここら辺を眺めていてやっと理解出来た(気がする)。

変更時の動作はおそらく、

(unixファイル) or ( (create mask) and (windowsファイル) )

の順番で評価。

windowsファイルは標準では666で、read only時は444となる。

今回の件ではunixファイルは755でcreate maskは644だったので、755になるという想定は間違っていない。ただし、オプションを忘れていた。
map archive (S)
このパラメータは、DOSのアーカイブ属性を UNIXの所有者(owner)実行権ビットに割り当てるかどうかを決定する。 DOSのアーカイブ属性は、バックアップを行なった後でファイルが修正されると設定される。 このオプションの副作用として、Samba マシン上にあるファイルを修正した際に、UNIX 上で実行可能になってしまうことがあげられる。 これは共有のソースコードやドキュメントなどに関して、非常に悩ましい事態である。

このパラメータを利用する場合は、 所有者実行権ビットがマスクされないように(100というアクセス権が含まれるように)、 create mask パラメータを設定することが必要となることに注意。 詳細は、create mask パラメータを参照のこと。

デフォルト: map archive = yes
http://www.samba.gr.jp/project/translation/2.2.5/manpages/smb.conf.5.html#MAPARCHIVE
デフォルト値:yes!

なんてことだ。

これはWindows上のアーカイブ属性をunix側の実行ビットに割り当てるためのオプションである。が、create maskに関する注意書きがあるということは、

( (unixファイル) or ( (create mask) and (windowsファイル) ) )後に、実行フラグのみ (create maskの所有者実行フラグ) and (アーカイブ属性)をセット。

ということか。

ということで、map archiveをいじってやればよい。

対象ディレクティブに、
map archive = no
を追加したら直った。

うーん、なんだろうこのハマり。

2008/09/08(月)La Fonera イーサネットコンバータ化

2008/09/08 22:15 PC(全般)
秋葉原九十九などで売っているFON用ルーターLa Fonera(FON2100E)はどうやらいろいろ遊べるらしい、ということを聞いた。

何でこれに興味を持ったかというと、RD-X6を購入したのがはじまり。DLNAで家庭内無線配信したいのだが、イーサネットコンバータがどうにも高いのである。どうせ802.11nじゃなければ大して速度も出ないのだから、つながるだけでいいや発想でLa Foneraを試しに買ってきてみた。

FON2100Eが九十九で1780円。確かに802.11g+WPAのルーティング機器としては破格の安さだ。本当は2200Eが欲しかったのだが売り切れだったので妥協した。

イーサネットコンバータ化はご多分に漏れず、DD-WRT化で行う。DD-WRTが入ると、FONは無線付きLinuxBoxに化け、設定次第ではルータでもコンバータでもなんにでもなるようになる。

記事とかは以下参照。

[FON][hack] La Fonera FON2100EのDD-WRT化 - あらわず's diary @ twitter.g.hatena.ne.jp - はてなグループ::ついったー部

モノクロカプセル ≫ La FoneraのDD-WRT化

tkoshima.net ≫ Blog Archive ≫ La Fonera+ (FON2201) を DD-WRT v24 にしちゃう

DD-WRT - FoNまとめwiki

今回のやり方としてはシリアルケーブルにストックがなかったので、一番手間がかかるssh->telnet->DD-WRTで。

さすがにここまで手順が明らかになってれば、さして問題なくDD-WRT化できた。

一応注意点として、
  • ハック法がファームウェアバージョン限定なので、リセットでファーム巻き戻す必要があった
  • v24-SP1は上記記事と若干入れ方が違う。ダウンロードファイルに付属しているインストール方法でOK。
  • TFTPとFTPは別物
やってみた感想だけど、初めてやると結構時間がかかる。他のことやりながらだったけど、つごう3時間弱くらいかかった。

TFTPサーバとかも用意しなきゃいけないので、ダウンロードするものも多い。でも1回わかってしまえばなんてことなく、多分次回からはサクサクできるようになるんじゃないだろうか。いや次があるかどうか知らないけれど。

スループットは電波状態まあまあで10Mbps弱。そうね速くはない。とはいえとりあえず使えれば満足。気になるのはセキュリティかなあ。

2008/08/30(土)【解決】ファイル共有での遅延問題

2008/08/30 13:13 PC(全般)
以前coLinux+samba > Windows+ファイル共有?で書いた問題がようやく解決した。

この問題はいったい何だったかというと、
・ファイルサーバ側(WinXP SP1)、クライアント側(WinXP SP1)
・クライアント側からNBTでサーバ側のディレクトリにアクセスしたときに発生
・サーバ側のファイル数は600程度で日本語を含む
・ファイルの列挙(要はdir/ls)にかかる時間は4秒程度
・ファイルの列挙に時間がかかるだけで、転送速度そのものが遅くなっているわけではない
・パケットをキャプチャしてみたが余計なパケットは飛んでいないように見える
・dirで確認すると一定の転送量ごとに何かがつっかえている感じ
・サーバー側・クライアント側入れ替えても発生
・クライアント側からLinux+sambaの自宅サーバにアクセスするとこの現象は発生しない
ということだった。

さて、なんでこの問題に再び手をつけようと思ったかというと外部からLinuxサーバを介してWindows機をいじり倒すでsmbfsでlinuxからマウントした際に、この現象が発生しなかったためである。つまりこれはサーバとしてのWindowsの仕様ではなく、なにかしらネットワークやその他の設定が関わっている可能性が高い。あるいは、クライエント側の設定次第で回避する方法があるということだ。

さて、いつも通りパケットキャプチャから始める。使うソフトは定番WireShark(EtheralはWireSharkと名前を変えた)。
前回結論は、
・パケットをキャプチャしてみたが余計なパケットは飛んでいないように見える
だったが何か見落としがあるだろうか。

クライアント側

サーバ側

読み方としては、requestが飛んで、Responseを3分割で返してACKが2回……
確かに余計なパケットは飛んでないように見える。だけどなんだろう、この0.2秒のラグは。これが定期的に発生してるから遅くなっているように見える。ACKの1回目で連結させて、2回目までにラグ? この2回目のACKは余計なものなんじゃないだろうか。

で、調べてみたらそのものずばりな情報が公式にあった。
今回ばかりは私の探し方が悪い。MS悪くない。

リモート ディレクトリの表示はローカル ディレクトリの表示より時間がかかる

この情報整理するとこういうことらしい。
  • 分割応答の際は偶数回目だけACKを送ります
  • もしくは他の接続がくるか0.2秒タイムアウトすると送ります
  • 従ってブロックが奇数個に分割される応答ではブロック応答ごとに0.2mmの遅延が発生します
  • ブロックのデフォルト値は4356byteです
  • TCP/IPのデフォルトMTUは1500byteです
  • ブロックは3つに分割されますので、ブロックごとに0.2mmの遅延が発生する結果こうなります
ワオ、ずばり。

ていうか情報は良いんだけど、これデフォルト値の設定に色々文句があるというか。
いや違うな。この偶数回目だけ返すっていう仕様がなんかだなあ。確かにネットワークの無駄ACKパケットが最大半分に減るけど、それは対処療法的チューニングというか、せめて設定でいじらせてくださいよ。
要約すると、通常、確認応答は、遅延確認応答のタイマ (200 ミリ秒) がタイムアウトしない限り、1 つの接続で受信した TCP セグメントに対して 1 つおきに送信されます。遅延確認応答を構成する、または無効にするレジストリ パラメータはありません。
……。

で、対処方法に挙げられているとおり、
1.[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]に[値の追加]で、
値の名前 : SizReqBuf
データ型 : REG_DWORD
データ : 14596

(データは10 進数)

2.Server サービスを再開(もしくは再起動)
>net stop server
>net start server

で、全く問題が無くなりました! やりい。一応パケットも見てみたけど、想定通りブロックを10個分割で送って5回ACK返しで、すぐに次の通信に推移してるね。

ただね、これ抜本的な解決じゃなくて、多分ジャンボフレームの設定とかいじると、また奇数個分割にマッチしちゃうことがあると思うんだよねえ。ディレクトリのリストが1回で返る場合や、応答の尻尾というか最後でも0.2secつっかえる可能性があるわけだし、なんかクソ仕様な気がしてならないぞ。まあ解決方法が分かったので、その都度対処は出来るけども。

Vistaが対象一覧に含まれていないので、Vistaでは改善したのかしら。

多分Windows Serverを日常的に扱っている人にとっては当たり前の知識(もしくはバッドノウハウ)なんだろうな。

2008/08/30(土)USBメモリの暗号化

2008/08/30 12:00 PC(全般)
USBメモリ紛失への伝統的な対策として、ファイル一個一個を暗号化する方法がある。それはまあ手段としては心得てるけども、いちいちファイルごとにやるのが面倒くさい。大事なファイルをフォルダごとあるいは一定領域でまとめて暗号化しておけないだろうか。

そんなニーズでちょっと調査。

できれば、
  • 出先ではインストール不要
  • 暗号化による速度低下が最小限
  • 同一USBメモリ内に、非暗号化領域と暗号化領域を分けて作れる
  • ある程度頑強(データの損失とかに)
を希望したい。

結論だけど、結局多くの場所でいわれてるようにTrueCryptを使う(使える範囲では)のが一番いいみたい。

余りたくさん試したわけではないのだけれど、以下試してみたものを書いてみる。

TrueCrypt

仮想暗号化ドライブを作ってマウントするイメージ。シンプルな回答やね。USBドライブの中に見える領域を作る必要があるが、トラベラーモードを用いれば、出先でのインストールする必要がない。ただ、ドライブをマウントするというシステムの都合上、閲覧するシステムにTrueCryptがインストールされているか、管理者権限を持っていないと使えない。速度はAESなら十分に高速。

folder encryption → folder protection → folder protector

こいつはフォルダ単位で暗号化できるソフト。一見便利に見えたのだけど、どっかの段階以前はいわゆるWindowsのHackで「ファイルの存在が見えないようにしていただけ」らしく、また、どっかの段階以降で暗号化に対応しつつも有償化してるみたい。最初は良さげに見えたのだけど、調べていくうちに萎えてしまい使う前にあきらめた。

UsbDriveSecureTool

コンセプトは同上でフォルダ・ディレクトリ単位で暗号化できる。ただこのソフト発想はいいんだけど、実装が今ひとつ。暗号化したファイルをUSBメモリ上にキープしておいて、使うときになったらフォルダ内のファイルを一斉にUSBメモリの展開ディレクトリに復号っていう形なんだけど、もうこの説明の時点でなんかすでに吐きそうだよね。
  • 容量を倍使う
  • そこまで早くないUSBメモリへの書き込みを抜き差しごとに大量に行う
  • ファイルの復号単位がフォルダごとでそれ以下にならない
で、使ってみたんだけど、やっぱり実態として、
  • 大変重い(暗号化・復号化とも)。大容量は厳しい
  • ファイル単位でいちいち処理(オーバーヘッドを考えよう)
  • 暗号化・復号化途中でこけるとファイルを喪失する
  • 実際こけた。どうもメモリを使いきってこけたようだ(512MB+WinXP)
  • 一部のファイルが壊れた際に、壊れた暗号化ファイルを見つけて消さないとフォルダごと復号化できない状態になる
ちっちゃいファイルを20個とかそういう世界なら全く問題ないんだろうけど、用途を選ぶのは間違いない。80MBで1万ファイルあるHTMLマニュアルとか、200MBあるアーカイブとかそういうのは全くだめ。

試した範囲では暗号化にも復号化にも30分から見なきゃいけない感じだった。

ということで没。

結論

結果TrueCryptに落ち着いた。問題としてはやっぱり気になるのが管理者モードでないと出先で使えない点。管理者モードをもらえてないマシンで、暗号化ファイルを見るというケースの危険度というか怖さを考えれば、問題ない気もするんだけど……

なので、そういう場面に出くわしたら考えることにして、今回はこれで良しとする。

もしファイル単位でかけるならEDとか極論ZIP、RARパスワードでもそこそこ固いよね。

2008/08/30(土)USBフラッシュメモリの速度測定

2008/08/30 10:46 PC(全般)
USBメモリを買い足したので、既存のものと比較調査。

USBメモリはなんか、メモリチップそのものと基盤の両方に関わってくるのでけっこう速度に差がつくみたい。

元々もってた奴が相当遅いってのもあるし、今回は速度優先で調べて買ったので興味があった次第。

ハギワラシスコム HUD-4GLD-BK 4GB(SLCという噂)

 --------------------------------------------------
CrystalDiskMark 2.1 (C) 2007-2008 hiyohiyo
      Crystal Dew World : http://crystalmark.info/
 --------------------------------------------------

   Sequential Read :   34.790 MB/s
  Sequential Write :   19.647 MB/s
 Random Read 512KB :   34.744 MB/s
Random Write 512KB :    8.754 MB/s
   Random Read 4KB :    8.115 MB/s
  Random Write 4KB :    0.124 MB/s

         Test Size : 100 MB
              Date : 2008/08/28 22:46:23

GENOオリジナル 1GB

 --------------------------------------------------
CrystalDiskMark 2.1 (C) 2007-2008 hiyohiyo
      Crystal Dew World : http://crystalmark.info/
 --------------------------------------------------

   Sequential Read :   10.065 MB/s
  Sequential Write :    2.624 MB/s
 Random Read 512KB :   10.055 MB/s
Random Write 512KB :    1.478 MB/s
   Random Read 4KB :    4.609 MB/s
  Random Write 4KB :    0.028 MB/s

         Test Size : 100 MB
              Date : 2008/08/28 23:47:17
思ってたよりは既存品(1GB)が遅くなかった。ただ、やっぱり不満を感じていたWrite性能は酷いねえ。

とりあえず用途で併用ということで。実際は使う機会は余り多くないのだけど。

ハギワラの4GBの方、最近のUSBメモリには珍しくなんも機能ついてないのね……

2008/08/28(木)外部からLinuxサーバを介してWindows機をいじり倒す

2008/08/28 16:57 PC(Linux)
最近では、外部からのX接続が簡単に出来るらしい。答えはputty+xming。接続方式が公開鍵認証+PathPhraseでも全く問題ない。xmingが勝手にputtyの接続方式を判断してくれる。うわこれ、昔はAstec-X買わないと(もしかしたら買っても)出来なかったやつじゃん。

もちろんcygwinでもいいんだろうけど、最近cygwinはインストールするマシンを絞るようにした。Pathやバージョンの絡みで開発環境に障ることがあるのと、ファイルの多さや移行の大変さ、アンインストールのめんどくささ等が個人的にcygwinの株を下げてしまった。mingwとかxmingとか使う機能が確定してる場合はそっちでいいじゃない、と。それから単に、GNUなサーバ群をWindows上で使いたいならcoLinuxっていう手もあるしね。

閑話休題。で、rdesktopというソフトはLinuxのX環境でWindowsのリモートデスクトップに入れるソフトだ。Xで入っておいてrdesktopを動かせばWindows GUIでログオン可能。これはすごい。

単にLinuxから共有ディレクトリとかのファイルを見たければ、smbfsでもいける。
# mount -t smbfs -o username=hoge,password=piyo //foo/bar /mnt/win
……文字コードは今のところ考えてないや。

寝てるマシンはLinuxからWOLで起こせる。たとえば、wakeonlanとかを使う。WOLの話は、サーバ入れ替え その2にも書いてるからそちらも参照してほしい。

さらにVNCなんかやVPNなんかを使う方法も。……もう何でもありだな。
OK キャンセル 確認 その他