lxdeのファイラー
debian squeezeのlxdeを使っているのだが、その標準のファイラーであるpcmanfmの調子が最近おかしい。時々クラッシュして、立ち上がらなくなる。ps -Aで調べると立ち上がっているはずなのだが、なにも表示されない。クラッシュするたびにPCを再起動するわけには行かないし、面倒だ。
普段は、ターミナルがあればそれほど困らないのだが、USBメモリなどをマウントするときに、面倒だ。仕方がないので、昔ながらの方法で、マウントするためのディレクトリを作って、そこに/dev/sdc1をマウントした。オプションを何も指定しないでもうまく行ったので、まずはこれで良いことにしよう。
ubuntuのpcmanfmはそれほどクラッシュしたことは無いんだけど、なぜdebianだけそうなるのだろう。
macの隠しファイル
隠しファイルのコピー
ピリオドから始まるファイル名の隠しファイルを、フロッピーからmacに移そうとしたら、やたらと苦労した。まず、FDDのある共用のwindowsPCを使ったのだが、そのPCは、以前にウイルスに感染した事があり、その名残りなのか、隠しファイルを見るように設定しても、その設定が反映されない。そこで、隠しファイル属性を取るために、
attrib -h *.*
とすると、windowsで見えるようになる。これをmacに移すのだが、今度は、ファイル名の先頭のピリオドのために、unixの隠しファイルとみなされて、finderで見ることができない。隠しファイルを見るオプションを探したが見つからず、仕方が無いので、ターミナルからファイルの操作をするしかなかった。macはターミナルを使わないと何もできない。
rubyに関する講演
和を計算するプログラム
gigazineにrubyの開発者であるまつもとゆきひろ氏の講演が載っていたので、読んでみた。「より簡単に」「より効率よく」「より気分よく」開発できることを目指してrubyを作ったということが伝わってきた。例として階乗を求めるプログラムの話があったのだが、ここでinjectの新しい使い方を知った。配列に含まれている数の和を求めるために、
a.inject{|s,x| s+x}
としていたのだが、
a.inject(:+)
でできるらしい。ここで、injectの引数になっているのは、二項演算子を表すSymbolである。ruby1.8.7からは、reduceでも同じ結果になるらしい。今後、和を計算するときに使うことにしよう。
電源の入れ替え
共用Linuxマシン
以前、PCの電源が死んだため、臨時で別のPCを使っていた。そのPCはPenIIと相当遅いため、軽いDebianのLXDEでも時々動かなくなることがあった。電源をもらってきたので、以前に使っていたPCに電源をのせて、復活させた。問題は、OSをどうするかである。もともとはWindowsが入っていたが、login画面で止まってしまったので、やはりLinuxを入れることにした。すると、今度はCDROMが開かない。あとでばらしてみたら、ゴムのバンドが切れていたので、これが原因だろう。替わりのdriveも無いので、どうしようか悩んでいたが、PenIIのハードディスクをそのまま載せることにした。なぜかon boardのLANが死んでいたが、LANカードをさしたら、そのままで動いた。これで、インストールの手間がはぶけた。やはり、LinuxはWindowと違って楽である。
ターミナルの起動
pcmanfmの挙動
最近、linuxとしては、debianのLXDEか、lubuntuを使っている。どちらもLXDEなので、ファイラーとしては、pcmanfmを使用している。しかし、不可解な挙動をするときがある。
まず、最初に起動したときのdefaultの設定である。表示のスタイルと、フォルダーの場所が変わるときと、変わらないときがある。また、USBメモリにアクセスしたときに、もう干渉するプログラムは無いはずのときにumountしようとして、pcmanfmが使用中だと言われることがある。
これらの挙動がどのように起こるかが、debianのときにはようやく判明した。F4を使ってターミナルを立ち上げると、そのときの設定が残って、そのフォルダーをdefaultにしたり、プログラムを終了しても、そこにアクセスしている状態になって、umountできないことがあるようである。別のフォルダでF4を押せば、それが採用されるので、umountできるようになる。
しかし、lubuntuでの挙動はまだ良く分からない。web上でも、pcmanfmに関する情報は少ないようで、なかなか見つからない。でも、いつか分かるか改善されるだろうと、楽観的に考えることにしている。
ftpサーバー
vsftpd
デジカメで撮影した画像ファイルをみんなから取れるようにするために、ftpサーバーを立ち上げることにした。本当は、sftpで取ってもらうのが、何の設定もしなくてよいので楽なのだが、windowsユーザーの中にはsftpを使えない人もわずかながら居るだろうし、説明するのも面倒なので、ブラウザからでも行けるftpにすることにした。
debianには、いくつかのftpdがあるが、少し調べた感じだと、vsftdとproftpdが有名らしい。何でもよかったので、まずはvsftpdを試してみることにした。
インストールは、aptitude install vsftpdで終わり、設定は、/etc/vsftpd.confを編集する。目的としては、anonymousでログインして、特定のユーザーのhomeにあるファイルを取れるようにすることである。そこで、次のように設定した。
anonymous_enable=YES no_anon_password=YES anon_root=/home/user
そして、/etc/init.d/vsftpd restartとすると、一応うまく動くようになった。
しかし、windowsからは見えたり見えなかったりと、微妙な応答をする。やはり、windowsはダメだなと思っていたら、今度はlinuxからもアクセスができなくなってしまった。サーバーに使っているマシンは、非常に古くて非力なマシンなので、その影響もあるのかもしれない。
2011/8/2追記 不安定な原因は、固定IPでIPがかぶっていたからと判明。
longtabla
ページをまたぐ表
texで文章を作っていて、比較的長い表がたくさんあるような場合、通常の表は一つのページに入るようにするため、文章がすかすかになってしまう。このような時には、longtableを使うと良いようだ。
\usepackage{longtable}
として、tabularの代わりにlongtableとすれば良い。ただし、table環境も含んだような感じなので、使い方が少し特徴的なようだ。
ubuntu11.04召(偵x
latex-env-jaが無くなった
最近、ノートのOSを入れ替えて、lubuntuにした。以前は、xubuntuのLXDEを使っていたが、lubuntuのLXDEの方がよいだろういう判断をした。インストールイメージを落とすのに時間がかかるのが欠点だが、まだマイナーなので仕方ないだろう。少しずつ環境を整えていっているが、texのインストールでつまずいた。
以前は、latex-env-jaとlatex-extra-jaを入れればよかったのがだ、これらが無くなってしまったようなのである。どのパッケージが必要なものかよく分からなかったが、
texlive texlive-math-extra ptex-bin xdvik-ja cmap-adobe-japan1 jbibtex-bin mendexk texlive-pictures texlive-publishers
をとりあえずインストールみた。しばらく』様子をみよう。
キーボードの変更
起動できなくなった
普段はUSBの日本語キーバードを使っていたのだが、PS2のキーボードに変えることにしたのだが、PS2は英語キーボードしか無かったので、それにすることにした。当然だが、キー配置が違うので、それを変更する必要がある。gnomeでは設定するユーティリティがあるようだが、lxdeだと種類を変える設定は見当たらなかった。
そこで、/etc/default/keyboardの設定を変えてみた。XKBLAYOUT=“jp"というところを、XKBLAYOUT=“us"にしてみて、動くかと思ったら、キーボードが認識しなくなって、マウス以外の入力を受け付けなくなってしまった。recoveryモードで設定を元にもどしたら、なんとか元に戻すことができた。
次にやろうとしたのが、console-dataをreconfigureしてみるという方法だ。しかし、私のシステムにはこれはインストールされてない。インストールして、「アーキテクチャリストからキーマップを選択-qwerty-US americanを選択してみた。しかし、何も変わらない。
もう一度、/etc/default/keyboardを変更してみた。今度は、XKBMODEL=“pc101"として、XKBLAYOUT=“gb"とXKBVARIANT=““にして、再起動。今度は認識された。しかし、gbのせいで、shift+3を押すと、ポンド記号が出てくる。やはり、XKBLAYOUT=“us"に変更。今度はうまくいった。
キーボードの名前ぐらいちゃんと知っておかないと苦労するようだ。それにしても、console-dataは何だったのだろう。
ひさびさのautorun
測定用のPCにウイルス発見
測定用のPCにUSBメモリを入れたら、怪しい感じだったので、プロンプトからattribしてみたら、autorun.infが生成されていた。そのUSBメモリは直前にLinuxでautorun.infが無いのを確認したものなので、間違いなくそのPCが感染していたようだ。直前に使った人に聞いたら、そのPCで使ったUSBメモリを自分のPCにさしたら、ウイルスを除去したというメッセージが出たらしいので、間違いない。
以前もautorunに感染した測定用PCに遭遇したことはあった。しかし、変なパッチをあてて、測定がうまくいかなくなるといけないので、その時はwindows自体には変更は加えずに、ウイルスだけ除去しておいた。今回、折角なので、自動実行を禁止する方法を調べてみた。regeditで、
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\policies\Explorer\NoDriveTypeAutorunにffを入れれば、自動実行は無効化されるようだ。
あとは、ウイルス本体を除去すれば良い。http://virscan.org/にUSBに生成されたウイルス本体をuploadして調べてもらったら、ウイルスの名前が分かるので、それを元に対策すれば良いだろう。