librahack 事件、その後

librahack 事件ですが、三菱電機インフォメーションシステムズ(MDIS) が「逮捕された男性への謝罪の意を表明する方針」(読売新聞)とのこと。あとは岡崎市立図書館が librahack 氏に謝るかどうかですね。

もっとも、まだ図書館側はその気はないようです。

朝日新聞@kanda_daisuke (神田 大介)記者の11月26日のツイートより引用:

「岡崎市の会見に出てきました。MDISとの契約見直しに関する正式な発表です。名古屋本社版の夕刊に掲載されますが、ネットには載らないだろうな、と思いご報告まで。 」 http://twitter.com/#!/kanda_daisuke/status/8010442194554880

「岡崎市の会見ですが、市とMDISが契約解除で本日合意したという内容です。今年9月、MDISのシステムを来年1月以降も5年間利用するという契約を市は結んでいるんですが、これはMDISが辞退するという形で撤回されました。」 http://twitter.com/#!/kanda_daisuke/status/8067320454840320

「岡崎市によると、契約の解除に伴う違約金はMDISが負担するそうです。また、次期システムの導入時期は2013年1月に延ばし、それまでは現行のMDISのシステムを使い続けるが、MDISによる保守は無償で行われることになったそうです。」 http://twitter.com/#!/kanda_daisuke/status/8067889504452608

「目新しい要素としては、会見で大場・岡崎市立中央図書館長が、「システムに不具合はない」「MDISに責任はない」とした発言を撤回しました。現時点ではシステムに不具合があり、MDISには不備があったと考えているそうです。」 http://twitter.com/#!/kanda_daisuke/status/8068440719888384

「場氏は会見でlibrahack氏へのコメントを求められ、「たいへん気の毒なことだったと思う」と答えました。」 http://twitter.com/#!/kanda_daisuke/status/8073570836029440

「いわゆるlibrahack事件に対する岡崎市としての見解は、現時点でも、図書館ホームページの「おしらせ」に9月1日付の文書で出されたことに尽きる、ということだそうです。」 http://twitter.com/#!/kanda_daisuke/status/8074146718154752

館長の名前は大場ではなく大羽です。この館長さん、発言のたびに岡崎市立図書館への心証を悪くしていますね。11/26 の会見時点から 11/29 へと状況が動いているので、近いうちに変わってくるかもしれません。

なお、librahack 事件については以前、

でも書きました。岡崎市立図書館で、利用者の librahack 氏が新着図書をチェックする web プログラムを書いて使ったらシステムダウン、図書館が被害届を出して、逮捕されてしまったという事件です。技術的には MDIS が作った図書館システムにバグがあって、librahack 氏のプログラムは、やや頻度は高いもののふつうのアクセスだった、しかも、サイバー攻撃 (DoS) でないことはすぐに明らかになったのに、警察は釈放せず 23 日間も拘束、さらに、処分保留で推定有罪扱いされたまま、という冤罪事件です。MDIS は岡崎より新しいシステムでは不具合をなおしていましたが、岡崎図書館には伝えていませんでした。この事件は HiromitsuTakagi 氏らがいろいろ調査されていて、その後、全国の各図書館向けのカスタマイズ過程で、データベースの個人情報も流出していることが判明していました。

(2010.11.30)

アマレコTV で GV-USB をテレビ化

IO DATA の ビデオキャプチャ GV-USB の付属ソフトが使いにくく、フリーのアマレコ TV をインストールしてみました。テレビとして使うなら、もっと早くに入れておくんだった…

GV-USB の付属ソフト (Cyberlink PowerProducer) では録画設定状態にして初めてやっと小さなプレビュー画面が出て、しかも、録画時はどんどん音がずれていくので、テレビ画面としては使い物になりません。

Windows 7 でアマレコ TV (Ver. 1.15a) を動かすのは条件付きのようですが、いまのところ動いています。最初の起動時に Vista 以降についての警告が出て「OK」を押すと終了してしまいますが、「Shift + Enter」 で設定画面に入れます。

の通りに設定していけば簡単です。解説ページだけ見ているとアマレコ TV は怖じ気づきそうになりますが、視聴用のテレビとして使うだけなら、設定はデフォルトで大丈夫です。せいぜい、入力デバイスを GV-USB にするくらいでしょう。

テレビ画面はダブルクリックで最大化されます。画面表示の遅延も少なく、ほぼリアルタイムです。

録画については、mpeg にするなら付属ソフト (PowerProducer) がよいかもしれません。アマレコ TV では指定したコーデックの .avi になり、mpeg 化には変換が必要になります。

ちなみに、当方の環境では、PowerProducer で録画した mpeg ファイルを Windows Live ムービー メーカー 2010 で開くと、ムービー メーカーが異常終了して、しかも、プロセスが残ったままになるという現象が起きています。タスクマネージャでプロセスを見ると、何度かムービーメーカーを開いて落ちると、そのたびに MovieMaker.exe が残って増えていきます。CPU をどんどん占有していくので、MovieMaker.exe のプロセスを強制終了する必要が出てきます。

(2010.11.29)

(追記)

この文章を書いたとき、TVチューナーはアナログでした。 (2012/3/17)

(追記)

GV-USB は Windows 8 (64 bit) でも付属 CD-ROM のドライバで動きました。VHS出力をコンポジット入力して、付属ソフト(PowerProducer)で見ようとしたら落ちました。アマレコTVでは視聴可能でした。録画もできるようです。

(2013/6/8)

ホスティング サーバに LaTeX と mathTeX を導入

 y=A\int_0^\pi \sin x \  dx

公開しているホスティング サーバで LaTeX の数式を扱えるように LaTeX と mathTeX をインストールする試みです。telnet や SSH でログインせずに FTP (SFTP) で環境を構築できるかどうか?

ローカルの仮想マシン (Ubuntu 10.04 desktop) に Linux 版の LaTeX を導入、WordPress のプラグインとして使うために mathTeX をコンパイルして導入することには成功しました。必要とした容量は約200 MB です。ローカルの仮想マシンにTeX Live (LaTeX) をインストール (2)

その仮想マシンから、インターネットに公開されているホスティング サーバに転送することで環境構築を試みます。

Linux で動く FTP・SFTP クライアントは何があるのだろうと検索したら、FileZilla が使えそうです。ターミナルからコマンドでアクセスしてもいいのですが、今回は Windows で慣れている FileZilla にしておきます。FileZilla のサイト (FileZilla – Client Download) に行ったら、Linux ではディストリビューションのパッケージ管理システムを使いましょうと書いてありました。 Ubuntu 10.04 desktop のアプリケーションから Ubuntu ソフトウェアセンターを開き、FTP または SFTP で検索すると FileZilla が見つかります。インストール実行。SFTP で接続できました。

どこに LaTeX と mathTeX と mimeTeX を置くか、ディレクトリ構造、将来的なパーマリンクを考慮して決定します。

まず、LaTeX (と dvipng)について、仮想マシンの TeX Live ディレクトリをそのままホスティング サーバに転送します。エラーもなく転送終了…が、転送結果を見ると、bin/i386/latex が存在しません! 仮想マシン側をよく見ると、なんと、latex は pdftex へのリンクでした。実は bin/i386-linux/ 以下の実行ファイルにはリンクが多いようで、FileZilla ではリンクは転送されないんですね。dvipng は実体がありました。

仮想マシン側で bin/i386-linux/sample.tex という LaTeX のファイルを用意して、 ./latex sample.tex のかわりに ./pdftex sample.tex を実行してみました。だめですね。呼び出されたファイル名によって処理を変えているのかもしれません。latex というリンクファイルの名前を変えておいて、cp pdftex latex と名前を変えてコピーしました。それから ./latex sample.tex を実行してみると、うまく動きました。リンクになっている実行ファイルは、リンクの実体をリンクの名前に変えてコピーしておく、これでどうにかなりそうです。

ということで、仮想マシン側で

cp pdftex latex

を実行します。新しくできた latex をホスティング サーバに転送、パーミッションを実行可にします。

ともかく、気を取り直して、bin/i386/ にある実行ファイルのパーミッションを実行可にしておきます。使いもしないファイルを実行可能にするのがまずいとしても、latex と dvipng の二つは実行可にする必要があります。

ホスティング サーバでの  latex と dvipng のフルパスを確認し、mathTeX をコンパイルします。

cc  mathtex.c  -DLATEX=\”/インストール先へのパス/texlive/2010/bin/i386-linux/latex\”  -DDVIPNG=\”/インストール先へのパス/texlive/2010/bin/i386-linux/dvipng\”  -o mathtex.cgi

mathTeX のウェブサイトから cc の書式をコピー&ペーストしたら、コンパイルオプションを示す「-」が別の似た文字に化けていて、しばらくはまっていました….

コンパイルされた mathtex.cgi をホスティング サーバに転送します。ファイルのパーミッションを実行可に、ディレクトリを書き込み可にします。デフォルトではキャッシュ用のサブディレクトリが作られるので、ディレクトリが書き込み可となっている必要があります。

ブラウザで mathtex.cgi を引数なしで実行してみます。

https://www.makisima.org/v3/latex/mathtex.cgi

これで黒い文字で No expression supplied と表示されれば正常です。赤い文字でエラーメッセージが表示されたら、http://www.forkosh.com/mathtex.html の Run-time error messages… を参照して対処します。実は、latex がリンクになっていて転送されない、さらに、pdftex という名前では動かないというのは、このエラーメッセージ “(7) Can’t run latex program: check -DLATEX=\”path\”, etc. See mathtex.html#message7″ で気がついたのでした。

数式でも試してみます。

https://www.makisima.org/v3/latex/mathtex.cgi?y=x^2

数式画像が表示されました。

成功です。

SFTP で眺めると、 mathtex のディレクトリにサブディレクトリ mathtex ができて、ログとキャッシュ画像が生成されています。

ついでに WordPress の mimeTeX プラグインの http URL を mimeTeX から mathTeX に変えておきます。

この下に積分記号の式が表示されていれば、プラグインの設定も成功です。

  • y = A ∫(0~π) sin x dx   ・・・・・・・・・・ これは文字
  •  y=A\int_0^\pi \sin x \,  dx   ・・・・・・・・・・ WordPress の プラグイン経由、[ tex ]…[ / tex ]
  • y=A\int_0^\pi\sin{x}\,dx ・・・・・・・・・・ LaTeX と mathTeX で生成、<img src=”…”> タグで直接表示
  • y=A\int_0^\pi\sin{x}\,dx ・・・・・・・・・・  mimeTeX で生成、<img src=”…”> タグで直接表示
  • y=A\int_0^\pi \sin x \, dx ・・・・・・・・・・ LaTeX の表記

一旦、ローカルの仮想マシンに LaTeX と mathTeX の処理系をインストールし、それを FTP でホスティング サーバに転送することで、SSH やコンパイラが使えないサーバでも、LaTeX と mathTeX が動作可能なことが実証されました。

mimeTeX より LaTeX + mathTeX のほうが数式が美しいと思うのですが、いかがでしょうか。

(2010.11.18)

ローカルの仮想マシンにTeX Live (LaTeX) をインストール (2)

Apache2 が動いているローカルの仮想マシンに LaTeX と mathTeX をインストールしてみます。

LaTeX のインストール

まず、「ローカルの仮想マシンにTeX Live (LaTeX) をインストール (1)」を参考にしながら LaTeX を入れます。多少条件を変えました。

適当なディレクトリで、

wget  http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
tar  zxvf  install-tl-unx.tar.gz
./install-tl  -portable

で TeX Live のインストーラを USB などで持ち歩くためのモードで起動します。

メインメニューで、

<S> installation scheme

から、詳細メニュー Select scheme: で

a [ ] basic scheme (plain and LaTeX)

を選択します。メインメニューに戻って、

<C> standard collections

の詳細メニュー Select collections: では

a [X] Essential programs and files
o [X] Basic LaTeX packages

の二つが [X] で選択状態なので、 dvipng が含まれる c を追加します。

c [X] TeX auxiliary programs

メインメニューに戻り、

<D> directories:

詳細メニュー Directories setup: の

<1> TEXDIR:       /usr/local/texlive

以下を書き換えます。<1> を入力すると、<2>~<4> は自動的に書き換わります。<5>~<7>は -portable ではパス指定がないので、デフォルトのままです。仮に /home/makisima/texlive/2010 にインストールするなら、

<1> TEXDIR:       /home/makisima/texlive/2010
<2> TEXMFLOCAL:     /home/makisima/texlive/texmf-local
<3> TEXMFSYSVAR:    /home/makisima/texlive/2010/texmf-var
<4> TEXMFSYSCONFIG: /home/makisima/texlive/2010/texmf-config

<5> TEXMFVAR:       $TEXMFSYSVAR
<6> TEXMFCONFIG:    $TEXMFSYSCONFIG
<7> TEXMFHOME:      $TEXMFLOCAL

これでインストールオプションの設定が終わったので、メインメニューの I でインストールを開始します。

Actions:
<I> start installation to hard disk

ダウンロードしながらインストールが行われます。

インストールが終わっても、./install-tl -portable のときは、環境変数をどう設定するかという指示は表示されません。

LaTeX や dvipng が動くかどうか確認するため、フルパスまたは相対パスを指定して実行します。

find / -name latex
find / -name dvipng

でフルパスがわかります。

ちなみに、 dvipng は TeX Live のインストールオプションとしてインストールしなくても、実行ファイル単体ひとつだけを latex と同じディレクトリにコピーすれば動きます。

mathTeX のコンパイル

LaTeX のインストールが終わったら、mathTeX にとりかかります。LaTeX を web から利用する方法は様々にあると思いますが、 mimeTeX との互換性から mathTeX を選びました。mimeTeX が動いている環境なら、mimetex.cgi へのパスを mathtex.cgi に書き換えるだけで、プラグインも同じプラグインで動きます。
まず、

download mathTeX リンクから、仮想マシンの適当なフォルダにダウンロードします。今回は Ubuntu 10.10 desktop です。

mathTeX のページの指示に従い、コンパイルします。latex と dvipng へのパスは、実行ファイル名まで必要です(複数の LaTeX 処理系のどれかを任意に選べる)。また、それぞれの二重引用符の前には\が必要です(忘れるとコンパイルエラーになる)。上に述べてきたような設定で、デフォルトのオプションでコンパイルするときは次のようになります。デフォルトでは GIF 画像が生成されるようになります。

cc -DLATEX=\”/home/makisima/texlive/2010/bin/i386-linux/latex\” -DDVIPNG=\”/home/makisima/texlive/2010/bin/i386-linux/dvipng\” mathtex.c -o mathtex.cgi

mathTeX で LaTeX を動かすときに環境変数はどうするのだろうかと疑問だったのですが、コンパイル時に cgi に組み込んでしまうんですね。したがって、配布用の実行ファイルも存在しないということになります。

できた mathtex.cgi をターミナルで実行できるかどうか確認します。たとえば、

./mathtex.cgi “x^2+y^2” -o equation1

生成された equation1.gif が予想どおりの画像なら mathtex.cgi は正常です。ファイル・ブラウザですぐに確認できます。

Apache の設定

できた mathtex.cgi を apache2 で動かす設定です。

Ubuntu 10.04 desktop に apache2 を入れると、デフォルトでは、ウェブのルートは /var/www です。今回は http://localhost/mathtex/mathtex.cgi に置くことにしたので、/var/www/mathtex/ に mathtex.cgi をコピーしました。なお、apache の設定次第で、どのディレクトリに置いても //localhost/mathtex に見せることは可能です。

Apache2 mod_rewrite と AllowOverride

のときの設定を流用して、/etc/apache2/sites-available/default を

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews +ExecCGI
#Options Indexes FollowSymLinks MultiViews
# AllowOverride None
AllowOverride All
Order allow,deny
allow from all
</Directory>

と書き換えました。公開するわけではないので、とりあえず動けばいいという設定です。apache2 を再起動します。

$ sudo /etc/init.d/apache2 restart

ブラウザで、

http://localhost/mathtex/mathtex.cgi

を開いて

No expression supplied

などと表示すれば動いています。

http://localhost/mathtex/mathtex.cgi?y=x^2

のように ? の後に LaTeX の式を入れて数式画像が表示されれば正常です。

赤字でエラーメッセージが表示されたら

http://www.forkosh.com/mathtex.html の Run-time error messages… の項を参照して対処します。

たとえば、cache ディレクトリ mathtex が作れないと言ってきたら、mathtex ディレクトリのパーミッションを

sudo chmod 777 /var/www/mathtex

といった具合です。

デフォルトのコンパイル オプションでは、 mathtex.cgi のあるディレクトリに mathtex というサブディレクトリを作って、一度生成した画像をキャッシュとして置いておくようになっています。

プラグインの設定

ここまでの設定で、HTML の <img > タグに mathtex.cgi を指定すれば LaTeX 画像を表示できます。たとえば、

<img src=”http://localhost/mathtex/mathtex.cgi?y=x^2″ alt=”y=x^2″ />

WordPress などではプラグインを使うと便利です。mathTeX は mimeTeX と入替えて使えるので、プラグインの mimeTeX への http パスを mathTeX のものに書き換えるだけです。

ちなみに、 mathTeX の配布先に公開サーバがあるので、http のパスをそちらに接続すれば品質確認できます。

mimeTeX から mathTeX に切り替えたとき、そのままでは数式画像が表示されず、WordPress でページを編集→更新すると表示されるという現象が発生しました。このあたりの動作についてはどうなっているのかよくわかりません。

(2010.11.17)

ローカルの仮想マシンにTeX Live (LaTeX) をインストール (1)

ローカルの仮想マシン (Ubuntu 10.04) で LaTeX を動かそうという試みです。あわよくば WordPress で数式を表示するのに使おうという思惑ですが、とりあえず、LaTeX を動かせるかどうか確認です。

日本語の文章や日本語フォントは考慮せず、一般的な数式さえ書ければいいという前提なので、英語版で十分です。また、今回はローカルの仮想マシンですが、ホスティング サーバでは root 権限がないので、ユーザ権限で環境構築できなければなりません。

定番の奥村先生のサイトで Linux 版のインストールについてみると( Make – TeX Wiki )、「ptexlive がお薦め」とのことで、その FrontPage – ptexlive Wiki を見ると、 TeX Live を日本語化するのが ptexlive です。ならば、今回は英語版 TeX Live だけで十分です。そのサイトは、

ですが、サイトの作りがよくわかりません。そこでまず DVD イメージを

から torrent で落としました。2 GB くらいです。その中身を読んで、なんとなくわかってきました。

DVD イメージ作成後も更新されているようですし、今回は最小限の LaTeX だけ必要で、フルセットの 2 GB もいりません。ネット越しにインストールするのがよさそうです。

で Linux 用の install-tl-unx.tar.gz (2.5mb) を持ってきて解凍すればよいことがわかりました。ただし、この URL は最寄りのミラーサーバにリダイレクトされるようになっているのですが、うまくリダイレクトされないことがあります。その場合は list of CTAN mirrors から日本のサーバの URL を探します。各サーバはたいてい /CTAN で終わっていますが、そこから CTAN → systems → texlive → tlnet とたどっていきます。たとえば、 jaist.ac.jp (北陸先端科学技術大学院大学)ならば、

  • http://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet/

に install-tl-unix.tar.gz やその他のインストーラ類が置いてあります。

Windows でダウンロードして解凍、サーバに転送でもよいですし、直接、サーバで落として解凍でもかまいません。今回は仮想マシンの Ubuntu 10.04 の端末 (terminal) で実行しました。適当なディレクトリに移って、

wget http://ftp.sample.com/pub/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz (URLは適宜読み替え)

tar  zxvf  install-tl-unx.tar.gz

インストール方法は

に詳しく書かれています。Linux ではテキストモードでインストールできて、root 権限も不要です。

Perl で書かれた install-tl を実行すると、最下行で一文字(大文字・小文字の区別あり)または文字列を入力して設定をカスタマイズするようになっています。入力するごとにメニューの案内画面が書き換わって最下行でコマンドを打つようになっているので、たぶん telnet や SSH でも実行可能です。

./install-tl

今回はインストールするディレクトリをユーザのホームディレクトリの下にまとめるようにパスを設定しました。(USB メモリなどで持ち運びできるようなインストール方法もあり、./install-tl -portable 、環境に合わせてパスを自動検出するようです。)

<S> installation scheme

の項目を変更するので、S キー。詳細メニューになります。

a [ ] basic scheme (plain and LaTeX)

最低限を目標にするので、a キーで TeX と LaTeX のみ選択すると、

a [X] basic scheme (plain and LaTeX)

に変わります。選択している項目が [X] で示されます。

メインメニューに戻るので R キー。

<D> directories:

の設定で、D キー。今回は、インストールディレクトリを

~/texlive/2010

にすることにして、予めディレクトリを作成しておきます(または、別のターミナルで作成)。インストーラの設定では、’~’ がユーザのホームディレクトリを示すことになっています。

<1> TEXDIR:       /home/makisima/texlive/2010

のように、1 キーで選択、次の行でディレクトリを ~/texlive/2010 と指定すると、1~4 のパスが書き換わります。同様に 5~6 も順に書き換えました。

<1> TEXDIR:       /home/makisima/texlive/2010
<2> TEXMFLOCAL:     /home/makisima/texlive/texmf-local
<3> TEXMFSYSVAR:    /home/makisima/texlive/2010/texmf-var
<4> TEXMFSYSCONFIG: /home/makisima/texlive/2010/texmf-config

<5> TEXMFVAR:       ~/texlive/makisima/texmf-var
<6> TEXMFCONFIG:    ~/texlive/makisima/texmf-config
<7> TEXMFHOME:      ~/texlive/makisima/texmf

パスを書き換えて、 R キーでメインメニューに戻り、他のオプションを確認します。今回はその他の設定項目はデフォルトのままです。

<I> start installation to hard disk

の I でインストールが開始されます。

しばらく待つと、環境変数を設定するようにというメッセージとともに、そのパスと変数が示され、インストールが終了します。インストールの詳しいログは install-tl.log に書き込まれています。

環境変数の設定方法は、別項のとおりです。

ターミナルで TeX が動くかどうか確認します。

$ tex -version
TeX 3.1415926 (TeX Live 2010)
kpathsea version 6.0.0
Copyright 2010 D.E. Knuth.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the TeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the TeX source.
Primary author of TeX: D.E. Knuth.

PATH の設定も成功して、動いているようです。

LaTeX が動くかどうか確かめるため、適当なファイルを作ります。たとえば、sample.tex に次のように書き込みます。

\documentclass{article}
\begin{document}
\LaTeX

Using latex article style.

\[
y=x^2 + \int_0^\infty \sin x dx
\]

\end{document}

コマンドラインで、

latex sample.tex

で sample.dvi が生成されます。

X window が動いているなら、

xdvi sample.dvi

で表示できます。

どうやら、最低限は動いていたようです。

容量はどれくらいになったのか確認すると、

$ du -sm texlive
179    texlive

なので、容量はおよそ 180 MB でした。どれくらい必要かはインストーラのオプションを変更すると随時表示されるのでわかります。

(2010.11.15) (2010.11.17)