Yukiharu YABUKI の tDiary
2008-10-10 [長年日記]
_ qemu と kvm
Debian というか Linux で、他アーキテクチャのエミュレーションが、ちょっと必要ができそうなんで、軽く下調べ。
qemuは、他アーキテクチャのエミュレーションもできる。対象アーキテクチャはこんな感じ
yabuki@yelona:~$ qemu qemu qemu-ppc64abi32 qemu-system-mips64el qemu-alpha qemu-sh4 qemu-system-mipsel qemu-arm qemu-sh4eb qemu-system-ppc qemu-armeb qemu-sparc qemu-system-ppc64 qemu-cris qemu-sparc32plus qemu-system-ppcemb qemu-i386 qemu-sparc64 qemu-system-sh4 qemu-img qemu-system-arm qemu-system-sh4eb qemu-m68k qemu-system-cris qemu-system-sparc qemu-mips qemu-system-i386 qemu-system-x86_64 qemu-mipsel qemu-system-m68k qemu-x86_64 qemu-ppc qemu-system-mips qemu-ppc64 qemu-system-mips64
lenny の d-i を x86 以外で動かしてみるのもおもしろいかもしれない。
kvmqemu をやるなら、 kvm もと、色気を出した。しかし、思うところまでは道半ばなのでメモっておく。
私の手元のマシンは、Lenovo X200 なので、kvm-intel.ko が読み込まれていないといけない。
自分でカーネルコンパイルして運用してしまっているので、kvm-sourceパッケージを導入して
make-kpkg --initrd kernel-image modules-imageをしてモジュールをそろえておく。
ここで気がつくのが遅れましたが、BIOSでvirtualzationとVT-dを有効にしたら、いったん power を off にしてから立ち上げることをしましょう。そうすると、
yabuki@yelona:~$ lsmod | grep kvm kvm_intel 33956 0 kvm 117800 1 kvm_intelと読み込んでくれます。BIOSで仮想化を有効にしておかないと、起動時に kvm_intel が load できてなかったり、modprobe しても失敗するなどしていたような気がします。
yabuki@yelona:~$ ls -la /dev/kvm crw-rw---- 1 root kvm 10, 232 2008-10-10 09:02 /dev/kvm
なので、自分もkvmグループに入っておく必要があります。
$sudo adduser yabuki kvmあたりでしょうか。逆は、
$sudo deluser yabuki kvmです。脱線しますが、vigrなどでグループを編集すると、vigr -s でも編集しろみたいなメッセージを lenny から見るようになりました。前述の adduser/deluser の方が、一回で済むのでいいのではないでしょうか。
自分が kvm グループに入っているかどうかは、id コマンドで確認します。logout や再起動してから、
yabuki@yelona:~$ id uid=1000(yabuki) gid=1000(yabuki) 所属グループ=20(dialout),24(cdrom),25(floppy),29(audio),44(video),46(plugdev),110(netdev),113(powerdev),122(kvm),1000(yabuki)
とします。 kvm 以外は、Debian GNU/Linux Lenny が設定してくれています。
で、あとはqemu-img create hogefuga.img 10Gしてディスクイメージを作り、i386のd-iを落としてきて、kvm コマンドで実行すれば kvm が動くはずですが、私の所では qemu で動いているようです。そう判断したのは、d-iが立ち上がってくるウィンドウの上部に kvm ではなく、qemu と表示されているからです。
kvm -cdrom foo/bar/debian-testing-i386-netinst.iso hogefuga.imgとまでやって、時間切れ。またどこかでチェックしましょう。vmware 6.5はサービスを停止させているので,起動時から VT-d などの仮想化機能をを取りっぱなしにしてなかったら大丈夫と思うけど....
_ iijの山本さんの「文章の書き方」
具体的で分かりやすい。一読を勧める 。(http://d.hatena.ne.jp/kazu-yamamoto/20080924/1222224226)から、pdfを開いてみるといい。
2008-10-09 [長年日記]
_ 情報システム等の脆弱性情報の取扱いに関する研究会 報告書
下の方にあるpdfファイルを参照。これは脆弱性情報について(http://www.ipa.go.jp/security/fy17/reports/vuln_handling/index.html)
プログラミングに関する件は、『セキュア・プログラミング講座』(http://www.ipa.go.jp/security/awareness/vendor/programming/intro.html)などを参考にするのも良いだろう。
(http://slashdot.jp/developers/article.pl?sid=03/06/20/1544200)の中からいくつか (後で追記する。)_ kvm + virt-manager
lennyでのお話。
yelona:~# aptitude install virt-manager
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
タスクの記述を読み込んでいます... 完了
以下の新規パッケージがインストールされます:
dnsmasq{a} dnsmasq-base{a} libpolkit-dbus2{a} libpolkit2{a} libvirt-bin{a} libvirt0{a} libxenstore3.0{a}
netcat-openbsd{a} python-gtk-vnc{a} python-libvirt{a} python-urlgrabber{a} virt-manager virt-viewer{a} virtinst{a}
更新: 0 個、新規インストール: 14 個、削除: 0 個、保留: 0 個。
2589kB のアーカイブを取得する必要があります。展開後に 7373kB のディスク領域が新たに消費されます。
先に進みますか? [Y/n/?]
ひとまず、一般ユーザで virt-manager で、仮想マシン・マネージャーを起動してみる。
2008-10-06 [長年日記]
_ 「IPAフォント使用許諾契約書の改訂作業および英語版作成作業」事前確認公募
やっと、きたー。(http://www.ipa.go.jp/software/open/ossc/2008/font/koubo.html)
2008-10-05 [長年日記]
_ 決算作業
本日も引続き、決算作業をがんばる。天気も雨だし。月曜日からもありがたいことに、いっぱいのお仕事が待っている。いっぱいの仕事があるということはいっぱい売上が上がるということで、会社が成長する余地があるということ。
_ Open JDK
ここの記事「Ubuntu 8.04 LTS」と「Fedora 9」がOpenJDK実装をサポート(http://sourceforge.jp/magazine/08/05/01/031256)では、2つのディストリビューションの名前しか出てないけど Debian GNU/Linux Lenny にも Open JDK は入ってますよ。
yabuki@yelona:~$ apt-cache search openjdk icepick - java toolchain built from OpenJDK sources icepick-gcj - java toolchain built from OpenJDK sources (native library) cacao-oj6-dbg - Java runtime based on OpenJDK (debugging symbols) cacao-oj6-jdk - OpenJDK Development Kit (JDK) cacao-oj6-jre - OpenJDK Java runtime, using CacaoVM JIT cacao-oj6-jre-headless - OpenJDK Java runtime, using CacaoVM JIT (headless) cacao-oj6-jre-lib - OpenJDK Java runtime (architecture independent libraries) openjdk-6-dbg - Java runtime based on OpenJDK (debugging symbols) openjdk-6-demo - Java runtime based on OpenJDK (demos and examples) openjdk-6-doc - OpenJDK Development Kit (JDK) documentation openjdk-6-jdk - OpenJDK Development Kit (JDK) openjdk-6-jre - OpenJDK Java runtime, using Hotspot JIT openjdk-6-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless) openjdk-6-jre-lib - OpenJDK Java runtime (architecture independent libraries) openjdk-6-source - OpenJDK Development Kit (JDK) source files
_ CIツールの cruisecontrol の Debian package.
CIツールのcruisecontrol のdebianパッケージ版をみつけたんだけど、中身は Debian policy に沿ってない。/optにそのまま展開してたり、配布の障害になりそうな部分としては、特にライセンスまわりが怪しい。意図はいいんだけど、ちとまずいことが多いので、パッケージ作者の blog に mentors.debian.net でメンタリングを受けてみてはという提案をしておいた。うまく行くといいんだけど。
- オリジナルのcruisecontrolのライセンスへのリンク(http://cruisecontrol.sourceforge.net/license.html)
- (http://code.google.com/p/cruisecontrol-debian-package/)
- (http://davidemendolia.blogspot.com/2008/04/cruisecontrol-debian-package.html)
_ GTK+/GNOME による GUI アプリケーションプログラミング
オンラインで出版されているのですね。(http://www.iim.ics.tut.ac.jp/~sugaya/books/GUI-ApplicationProgramming/)
_ smb:// 経由で音声再生
私は、毎日曜日には IC レコーダーで NHK の英語関係の講座を録音だけはしている。録音したファイルは、あとで聞けるようにしてある。私がオールドタイプだからだと思う。が、smb://経由でsmbmountとかしなくても totem ならmp3を聞こえるようになっているのですな。なまじっか、smbmount や nfs などの手段をしっているためか。試したことがなかった。
あとで、いくやさんに聞いたら、最近はふつーらしい。私の好きな audacious でもできるかしら?
_ system-config-lvm
lvmでRAIDをしてないならおすすめ。ってことか。逆に言うと Raid エレメントがなくなって涙目になりかねないので、ハードウェアRaid以外はやばいってことか?
Description: A utility for graphically configuring Logical Volumes System-config-lvm provides a graphical interface to the LVM tools (and related utilities, including fsck and resize2fs) which is good for non-emergency storage administration. It enables you to manage your logical volume and filesystem configuration with a few mouse clicks, and it prevents potentially- disasterous command-line mistakes such as reducing a logical volume size before reducing the filesystem contained within that volume. . (One word of warning: system-config-lvm does not recognize RAID elements as being in use, and therefore lists them as "Unitnitialized Entities". If you are using a LVM-on-RAID configuration, system-config-lvm will let you wipe out RAID elements by making them into PVs. Be careful!) Homepage: http://www.redhat.com
GUI好きで、RAID使ってない人でlvmを使いたい人には便利かも。Debian GNU/Linux Lenny なら (http://d.hatena.ne.jp/dayflower/20080501/1209539498)のような作業をせずに、そのまま system-config-lvm 使えました。
2008-10-04 [長年日記]
_ VMware 6.5 in Debian GNU/Linux Lenny
客先の納品物件に WORD のドキュメントが必要なんで、Debian GNU/Linux Lenny を入れている X200 に VMware 6.5 を使って Windows VISTA business をインストールしました。Lenovo から供給されている Windows VISTA business は OEM のため、MSと同じ条件で Virtual Machine 上に OS をインストールする権利を持つかどうか、問い合わせる先を聞き出せないので、ひとまずあきらめて自分でOSを入手してきました。私の場合、VMware 6.5 の プロパティにて、CD(DVD)ドライブのレガシーエミュレーションを有効にしておかないと、うまくインストールができずに悩みました。
MS の windows VISTA SP1 以降なら、今のところ virtual machine にインストールしていいことは明示してあります。(http://download.microsoft.com/documents/useterms/Windows%20Vista_Home%20Basic%20and%20Home%20Basic%20SP1,%20Supplemental_Japanese_0be7a031-3931-4ce8-9917-46ca2d67d13e.pdf)>
逆に、仮想化ははやっていますが動かす OS のライセンスは確認しておかないと、ライセンス違反になるのでご注意を。GNU/Linux なら、あまり心配しなくてもいいのですが。プロプラエタリな製品は仕方ないですね。VMwareのネットワークの設定をきちんとしていたためか、インターネットでのアクティベーションができました。電話せずに済んで一安心。
VMware 6.5 から bundle バージョンってのができましたが、これがこれまでのtar.gz版に変わるものみたいです。実行権限をつけて実行すると windows の wizard みたいにあれよあれよという間にインストールできてしまいます。any-any patch で悩まずに済んだし。
Office Personal
普段は、OpenOffice.org でいいのですが、客先へ納品する確認のための最終リファレンスとして WORD インストール。
2008-10-02 [長年日記]
_ 宴会
東京からお客様が来られているということで、宴会に参加できるか問い合わせて入れるとのこと。最寄り駅がJR環状線の桜宮のお店へ合流した。奥様にはお久しぶりにお会いしました。
そこでサプライズゲストにお会いしました。名刺交換させていただき、ちょっとびっくり。また別の方から x86 系じゃない Debian もやってる? って所から、お仕事につながりそうなお話をお伺いしました。
2008-10-01 本日から衣更え [長年日記]
_ 出版社へ要望をだしてみた。
Linuxスーパーユーザハンドブック Technical Handbook (Technical Handbook Series)(吉田 智彦/関根 達夫)を手元において見ているのだが、2005年05月30日初版出版で改定がなされていない。これは残念なことなので出版社のサイトから、問い合わせというか改定版の予定はありますか? という内容のことを書いてみた。良いと思ったら続きが欲しくなるのは人情ですよね。
_ UBIFS - UBI File-system
Linux 2.6.27-rc8 Kernel Released となり、UBIFS がカーネルに入ったのを知った。このファイルシステムを使えば、Eee-PCなどのフラッシュメモリを使うPCたちへの福音となるのだろうか。(http://www.linux-mtd.infradead.org/doc/ubifs.html)
私は知らなかったですが、サードパーティが大容量のDドライブをだしてきているのですね。
フラッシュの耐久性が、いわゆるCドライブなら10万回で、いわゆるDドライブなら1万回など、異なる書き込み回数性能や、I/O速度の差があるような環境で、どうしたら快適に過ごせるかというのは一般的な組み込み案件でもありそうな話である。
_ Emacs が daemon へ
Emacsはdaemonとなりて、各emacsクライアントから繋ぎにくるスタイルが早いということが判明したそうです。ネタもとはこちら(http://blog.orebokech.com/2008/09/emacs-now-with-built-in-daemon.html)
_ grubの初期設定は、/etc/default/grubを見よ。
先日インストールした Debian GNU/Linux Lenny の話である。初期に導入されるカーネルのコンパイルが、コンパイルされた gcc のバージョンは、lenny に含まれているバージョンが異なっている。そのためカーネルのモジュールを後からコンパイルしていれる時に、不安なので、カーネルを手元でコンパイルしなおして、
yabuki@yelona:~$ cat /proc/version Linux version 2.6.26 (2.6.26) (root@yelona) (gcc version 4.3.1 (Debian 4.3.1-9) ) #1 SMP Sun Sep 28 19:48:41 JST 2008としている。この際、grub-updateで既存の Debian の吊しカーネルと同居させているのであるが、make-kpkgの時に --initrd と kernel-image ぐらいしか指定しなかったので、gurbのメニュー上では、Debianの吊しカーネルが先に表示されて、ブートしてくる。
X200がs2diskを実行すると、リブートしてくるのもあって、grubの初期設定を替えたくなったので lenny での御作法をしらべてみた。
yabuki@yelona:~$ dpkg -l grub* 要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)維持 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留 |/ エラー?=(空欄)無/(H)維持/(R)要再インストール/X=両方(状態,エラーの大文字=異常) ||/ 名前 バージョン 説明 +++-==================-==================-==================================================== un grub <なし> (説明 (description) がありません) ii grub-common 1.96+20080724-10 GRand Unified Bootloader, version 2 (common files) un grub-efi <なし> (説明 (description) がありません) un grub-ieee1275 <なし> (説明 (description) がありません) un grub-linuxbios <なし> (説明 (description) がありません) ii grub-pc 1.96+20080724-10 GRand Unified Bootloader, version 2 (PC/BIOS version un grub2 <なし> (説明 (description) がありません)結果からいうと、/etc/default/grub を編集してから、update-gurbをするのが良い。
yabuki@yelona:~$ cat /etc/default/grub # This file is sourced by update-grub, and its variables are propagated # to its children in /etc/grub.d/ GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX= # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true
ほかにも、/etc/grub.d/というディレクトリもあるので、追っかけてみると良い。私の場合は、GRUB_DEFAULTを2に替えてみるつもり。
yabuki@yelona:/boot/grub$ sudo update-grub Updating /boot/grub/grub.cfg ... Found Debian background: debian-blueish-wallpaper-640x480.png Found linux image: /boot/vmlinuz-2.6.26-1-686 Found initrd image: /boot/initrd.img-2.6.26-1-686 Found linux image: /boot/vmlinuz-2.6.26 Found initrd image: /boot/initrd.img-2.6.26
_ wireshark/tshark
本日は、EeePCにUbuntuを入れている人に少しヘルプをしました。wiresharkを入れたいと言うことで、お手伝いをしました。そこで気がついたことがあります。ネットワークから途絶しているマシンに usb meomry 経由でパッケージをダウンロードしておいたものを、dpkg -i で列挙する形でインストールしました。Ubuntu には、root はいないので、sudo さんで、wireshark さんを立ち上げないと ethernet device を promise mode にできないのではないかと思うのです。で一般ユーザから sudo 経由でインストールしたためか、メニューから辿ると、一般ユーザ権限で wireshark を実行するメニューしかでてきません。
どっか別のところでは、wireshark を root として実行するメニューを見たような気がしたのですが、まあ時間もないので、端末から sudo 経由で wireshark を実行するようにというアドバイスだけしておいたのですが。
メニューから root として wireshark を実行させるのって、一般の Ubuntu からできてましたっけ?
あと後から思ったのは、GUIじゃなくても tshark の方が座りが良かったかなあと
_ 使っていた手帳が、ディスコンになる。
ディスコンといっても、ボディコンの親戚ではない。discontinued(製造中止で廃盤)になったのである。
能率手帳のタイムデザイナーA5ってやつだったんだが。通常の能率手帳のパーティカルを、お勧めされたがてんで気に入らず。しかたないので、また自分の使いやすい手帳を探しに時間を取らねばならない。パイロットのパーティカルか、クオ・バディスの手帳かな。
_ X200 は PC Express の所も動いていないこと判明
PC Express カードを入手して突っ込んでみたが、何も反応がない。調べてみたら、ログにも何も上がって来ない。
yelona:/home/yabuki# /etc/init.d/pcmciautils No PCMCIA bridge module specified failed!ってことで、そもそも PC Express を利用するモジュールが特定できてないんだから無理ですな。
kmutoさんのhalの所には登録しておいたけど、kernel 2.6.26 でみるとこんな感じ
yabuki@yelona:~$ lspci 00:00.0 Host bridge: Intel Corporation Cantiga Memory Controller Hub (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Cantiga Integrated Graphics Controller (rev 07) 00:02.1 Display controller: Intel Corporation Cantiga Integrated Graphics Controller (rev 07) 00:03.0 Communication controller: Intel Corporation Cantiga MEI Controller (rev 07) 00:19.0 Ethernet controller: Intel Corporation 82567LM Gigabit Network Connection (rev 03) 00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 03) 00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 03) 00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 03) 00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 03) 00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 03) 00:1c.1 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 (rev 03) 00:1c.2 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 (rev 03) 00:1c.3 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 93) 00:1f.0 ISA bridge: Intel Corporation ICH9M-E LPC Interface Controller (rev 03) 00:1f.2 SATA controller: Intel Corporation ICH9M/M-E SATA AHCI Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 03) 03:00.0 Network controller: Intel Corporation Device 4236 04:00.0 Memory controller: Intel Corporation Turbo Memory Controller (rev 11)
2008-09-30 [長年日記]
_ MIDとGoogle search
分からない言葉があったので、googleさんに聞いてみる方法を教えてもらった。define:mid とすると、web上でのmidについての定義を調べてくれる。(http://www.google.co.jp/search?source=ig&hl=ja&rlz=&=&q=define%3Amid&btnG=Google+%E6%A4%9C%E7%B4%A2&meta=)
残念ながら見付からなかったが、UMPCやMIDって違うカテゴリなのね。(http://pc.watch.impress.co.jp/docs/2008/0603/nvidia.htm)によると、
とあるので大体こんな感じのレンジなのねと、この定義をひとまず受け入れてみる。現在、MID(Mobile Internet Device)と呼ばれる機器が注目を集め始めている。MIDは狭義な定義では、通話機能を持たずにHSDPAやWiMAXなどのインターネットへの無線常時接続を前提とした携帯機器で、日本市場での製品で言えば、先日ウィルコムが発表したD4や、イーモバイルのEM・ONEなどがこれに該当するだろう。
MIDをインターネットへの無線常時接続できる機器と定義するのであれば、通話もできるスマートフォンと呼ばれる機器もMIDに分類してもよく、ウィルコムのW-ZERO3や、ソフトバンクのXシリーズ、日本では未発売だがAppleのiPhoneなどもMIDといってもいいだろう。
_ 時間、時刻、水晶発振
コンピュータの上で時間を合わせることについて、どのぐらい真剣に考えているでしょうか。ntpやntpdateに任せておけばいいやとか思っていませんか? dual boot している人や、ntpd ですぐに時刻が補正できないぐらいマシンを落す必要がある人、--- 例えばビルの計画停電や長期休みなど --- でシステムクロックに大きな狂いがでてくるとコンピュータの時刻が同期しないので、ログ関係、スケジュールされた処理など、狂ってくるでしょう。
ここまで聞いて、ピンくる Linux 管理者や開発者なら、The Clock Mini-HOWTO(http://www.linux.or.jp/JF/JFdocs/Clock/)を読む価値があると認めることでしょう。電波時計やタイムサーバも面白いと思いますが、まずは足元から。
2008-09-28 [長年日記]
_ 関西オープンソースおよび関西コミュニティ大決戦(a.k.a KOF2008)のサイト
関西オープンソース2008および関西コミュニティ大決戦(http://k-of.jp)が更新されました。申込などは、Webで内容を確認して、必要事項を揃えてから申込を行ってください。
_ 試験
久しぶりに、大規模試験を受けて来ました。感覚では、4:6の比率で女性が多い試験です。お金を払っているのに、当日空席の席が一割ぐらいでしょうか。昔に受けた情報処理技術者試験よりは出席率良かったです。
_ lookup-el
辞書サーバ経由でなく、直接lookupが辞書を読む設定をしてみた。あと ndeb って(http://d.hatena.ne.jp/kotorikotoriko/20080201/1201796157)を読むと、改善した ndebs ディレクティブが使える eblook がLookupについて(http://green.ribbon.to/~ikazuhiro/lookup/lookup.html)に紹介されていました。画像や音声の拡張もあるみたいです。
_ AVASYSのLinuxドライバー
Linuxドライバーがあると、うれしいですな。新機種に対応したLinux用ドライバをリリースしました(9/19) (http://avasys.jp/hp/page000001200/hpg000001170.htm)
_ 基本機能も高度な機能も備えたブログ・ソフトウェア、Habari
コメントスパムなどに困っているなら、選択肢の一つ?!(http://sourceforge.jp/magazine/08/09/12/0117204)
_ Photoshopフィルターを使うためのGIMPフィルター User Filter
Photoshop向けのフィルターって、よくわからないのですが Photoshop以外に使ってもいいって許可もらえるものなの? 自由に使えるのならいいのだけど。または、Photoshop 以外で使ってもサポートがないだけとか。(http://sourceforge.jp/magazine/08/09/25/0055220)
2008-09-27 [長年日記]
_ X200のwireless
Lenovo X200を買って、Debian GNU/Linux Lenny を入れているわけです。X32と比べて熱が少ないのは非常にうれしい。まだ設定途上ですが、X200の Wireless LAN は新しすぎて、Linux カーネルのおっかけをしないといけない風味。
PC Cardは、小さめのExpress PCカードっていうのですか? このタイプ。なんで、これまで買っているPC Cardが物理的制約で使えません。Emobileか、X200 に入るサイズの Wireless Card を買って来ようかと思います。内蔵 LAN は Linux Kernel のほうで落ち着いたらまた試してみようと思います。
下記のような感じで、Debian GNU/Linux Lenny から見えてます
yelona:/home/yabuki# lshw -short
H/W path Device Class Description
==========================================================
system 745423J
/0 bus 745423J
/0/0 memory 128KiB BIOS
/0/6 processor Intel(R) Core(TM)2 Duo CPU P8
/0/6/a memory 64KiB L1 cache
/0/6/c memory 3MiB L2 cache
/0/6/1.1 processor Logical CPU
/0/6/1.2 processor Logical CPU
/0/b memory 64KiB L1 cache
/0/20 memory 2GiB System Memory
/0/20/0 memory 1GiB SODIMM Synchronous 667 MHz (
/0/20/1 memory 1GiB SODIMM Synchronous 667 MHz (
/0/1 processor
/0/1/1.1 processor Logical CPU
/0/1/1.2 processor Logical CPU
/0/100 bridge Cantiga Memory Controller Hub
/0/100/2 display Cantiga Integrated Graphics Contr
/0/100/2.1 display Cantiga Integrated Graphics Contr
/0/100/3 communication Cantiga MEI Controller
/0/100/19 eth0 network 82567LM Gigabit Network Connectio
/0/100/1a bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1a.1 bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1a.2 bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1a.7 bus 82801I (ICH9 Family) USB2 EHCI Co
/0/100/1b multimedia 82801I (ICH9 Family) HD Audio Con
/0/100/1c bridge 82801I (ICH9 Family) PCI Express
/0/100/1c.1 bridge 82801I (ICH9 Family) PCI Express
/0/100/1c.1/0 network Intel Corporation
/0/100/1c.2 bridge 82801I (ICH9 Family) PCI Express
/0/100/1c.2/0 memory Memory controller
/0/100/1c.3 bridge 82801I (ICH9 Family) PCI Express
/0/100/1d bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1d.1 bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1d.2 bus 82801I (ICH9 Family) USB UHCI Con
/0/100/1d.7 bus 82801I (ICH9 Family) USB2 EHCI Co
/0/100/1e bridge 82801 Mobile PCI Bridge
/0/100/1f bridge ICH9M-E LPC Interface Controller
/0/100/1f.2 scsi0 storage ICH9M/M-E SATA AHCI Controller
/0/100/1f.2/0.0.0 /dev/sda disk 250GB HITACHI HTS54252
/0/100/1f.2/0.0.0/1 /dev/sda1 volume 243MiB Linux filesystem partition
/0/100/1f.2/0.0.0/2 /dev/sda2 volume 232GiB Linux filesystem partition
/0/100/1f.3 bus 82801I (ICH9 Family) SMBus Contro
/1 power 42T4536
_ llvmruby
llvmrubyとは、Ruby のエクステンションである。llvmruby が llvm コンパイラーをつかって、楽しく楽にツールをビルドできるようになる ためのものらしいです。(http://llvmruby.org/wordpress-llvmruby/) の What is llvmruby ってのをみるとそんな事が書いてありました。
2008-09-25 [長年日記]
_ USB Video Class
Linux UVC driver and tools(http://linux-uvc.berlios.de/) 昔は、video って IEEE1394 でやるもんだって思ってましたけど、そんなこともなくて、USB Video Class ってのがあって、いまは WebCam を探す旅にでなくても、この辺から選べば、使えそうな感じなんですね。
_ 掃除はメンテナンスの基本
埃っぽい環境でPCを動かしていると、エアフローの部分がトンでもない事になっている場合があります。こんな時に落してはいけないシステムだと、ある日突然お亡くなりになる場合があるので、防災訓練みたいに掃除するときには予備機を投入して実際に稼働するか確認してみてはいかがでしょうか。
_ Lenny upgrade advisor
Debian の Lenny へアップグレードをする際に当って、問題になりそうな部分を教えてくれる(http://lists.debian.org/debian-devel/2008/09/msg00135.html)
2008-09-24 [長年日記]
_ 組み込み屋さんとの話の中で
蟹チップで有名な、RealTek で性能がでるとか出ないとかは、データシートを見てからお話がスタートするので、巷に溢れている蟹が性能が出ないというのは、デバイスドライバーの方に問題があるのだ。とのこと。微妙にダメなソフトウェアを引きずっていると、そこに産業が生まれる。完璧なモノだけだと周辺活動が回らない。ってな話になった
ダメなモノで良いというわけではない。そもそも使う気にならないから。
_ man 1 debconf, man 7 debconf
最初、man 1 debconfだけしか、manが引けなかったが、
aptitude install debconf-docすると、man 7 debconf も読めるようになった。
_ 特定非営利活動促進法 および 一般社団法人及び一般財団法人に関する法律
社会的に認められる手段の一つとして、特定非営利活動を行う団体に法人格を取得する方法がある。次の法令を参照のこと。(http://law.e-gov.go.jp/htmldata/H10/H10HO007.html)
一般社団法人及び一般財団法人に関する法律
こちらも関係がある。どちらの法律が使いやすいかは、別途考えるべし。(http://law.e-gov.go.jp/announce/H18HO048.html)
2008-09-23 [長年日記]
_ 3D円グラフ
学生時代、円グラフって社会の教科書でみたぐらいで自分では使った事がなかった。単に、棒グラフと折れ線グラフで事が足りていたからで、円グラフの使いどころは、錯覚を誘発しやすい環境を作る事なのだな。プレゼンなどで円グラフがでてきたら、そこは質問するポイントなのかと思います。3D円グラフを使うのはやめよう(http://oku.edu.mie-u.ac.jp/~okumura/blog/node/2266)
_ FLOSSでGPSを扱っている、開発者およびユーザの情報交換としてのメーリングリスト
興味のある人は入ってみては?(http://risto.kurppa.fi/blog/invitation-for-all-open-source-gps-software-developers-and-users-to-join-foss-gps-mailing-list/)
_ sysctlによるカーネルのチューニング
結局は、カーネルの事を知らないとチューニングできないので、素人がsysctlコマンドを知ったからといって、劇的な成果がでるわけではない。結局ここも、基礎体力なのだ。sysctlによるカーネルのチューニング(http://sourceforge.jp/magazine/08/09/12/0134255)
_ Project KENAI
Source Forgeとは異なった進化を遂げようとしている。現段階ではコミュニティというか多数の業務命令でなく、自由意志で開発に参加する人達を引き付けるところに力点をおいているのかしら。(http://kenai.com/)
企業で使うのなら、いまの所なら SourceForge に分がありそうだが。さて
_ バイト列を読み取る処理のバリエーション
バイトストリームを扱う抽象のバリエーションって、こうやって整理されると設計の時にどれを選ぶかもれなく検討できるのでよいですね。細かい部分はリンク先を見てもらうとして、下記のまとめを例にして分類しているような本があるといいんだが。
- バッファをユーザが確保する方法
- 内部のバッファからコピーする read()
- ユーザのバッファに直接書き込める read_async()
- コールバックのかわりに poll_read()
- システム内部のバッファを公開する方法
- 連続したメモリ領域を仮定する read_buffer()
- 非連続なメモリを利用する read_chunk()
- 非連続を隠す normalize() と read_normalized()
- メモリブロックを引き渡す move()
_ 第2回 勉強会の開催は「メリット>コスト」
FLOSSのプロジェクトに例を出すなら、最初に立ち上げた人から次の担い手へのバトンタッチへの言及があると良かったのではないでしょうか。(http://jibun.atmarkit.co.jp/lcom01/rensai/first/02/02.html)
_ オープンソースのビジネス利用:神話と実態
参照元はこちら。(http://www.infoq.com/jp/news/2008/08/10-myths-about-oss-in-business)
_ 医学と統計と海外で働くということ
私の知り合いの一人のblogです。なかなか刺激的なことをやっているらしい。統計学(http://blog.livedoor.jp/bijoux_iris/archives/51074035.html)
場所が変われば、色々変わっているみたいですね。個人主義に必要なのはコミニュケーション能力(http://blog.livedoor.jp/bijoux_iris/archives/51074137.html)
で、これらのことを読んでから(http://www.itmedia.co.jp/enterprise/articles/0807/17/news051.html)の取り合わせをみると、統計の事と、私が知っている範囲でのIT・通信系の風土について考えさせれました。
_ PPA
インターネット上に Debian 系マシンのアカウントを持っていない場合で、debパッケージを作って置いておきたい場合に便利そうだが、作る人によってクオリティが違うだろうから、メンターする人間とコンタクトできる場所なども必要かなとおもった。mentors.debian.net とは違った切口ですね。 君にもできる PPA - アカウントを取ろうCommentsAdd Star(http://d.hatena.ne.jp/MIZUNO/20080913/1221296778)
_ strcasecmp
昔は、英文字だけの比較なら、テンポラリにupperまたはlowerで一方に合わせて比較していたものだが、strcasecmp,strncasecmpなら、その一手間ががいらない。詳しくは、man strcasecmp
2008-09-22 [長年日記]
_ ulogd_PWSNIFF.c
ulogdのソースコードをみてたら、POP3とFTPの生パスワードが流れていたら記録するエクステンションをみつけた。ネットワーク管理者が自分の組織のポリシーに応じて使うと良いんじゃないでしょうか。
_ [Debian] checkbashisms
bashism --- bash 依存症をチェックするコマンド。
$ checkbashisms Usage: checkbashisms script ... or: checkbashisms --help or: checkbashisms --version This script performs basic checks for the presence of bashisms in /bin/sh scripts.
$ dpkg -S checkbashisms devscripts: /usr/share/man/man1/checkbashisms.1.gz devscripts: /usr/bin/checkbashisms devscripts: /usr/share/man/fr/man1/checkbashisms.1.gz
2008-09-19 [長年日記]
_ ulogd の upstream
Debian GNU/Linux Etch の時点では、ulogd の upstream の URL は合っていたのかもしれないが、本日の時点では、http://www.gnumonks.org/projects/ulogd には、何もない。たぶん、プロジェクトの url は、(http://www.netfilter.org/projects/ulogd/index.html)に移っているのではないか。と思って、(http://packages.debian.org/lenny/ulogd)にアクセスして、外部の資源:を確認したら、netfilter.orgの方になってました。
移転したのがわかったので、助かった。
_ ulogd の debian/rules
cdbsをつかってあるので、下記のように複雑さが隠蔽されている。つまり簡単だということだ。--- cdbs が良きに計らってくれるからですが。#!/usr/bin/make -f include /usr/share/cdbs/1/class/autotools.mk include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/rules/simple-patchsys.mk DEB_CONFIGURE_SCRIPT_ENV = DEB_MAKE_INVOKE = make DEB_CONFIGURE_USER_FLAGS = --with-pgsql --with-mysql --with-pcap --with-sqlite3 DEB_INSTALL_CHANGELOGS_ALL = Changes
_ netstat-nat
Debian Package に netstat-nat のパッケージがあるのに気が付いた。
Ernalda:~# netstat-nat Proto NATed Address Foreign Address State
Ernalda:~# netstat-nat -h
args: -h: displays this help
-n: don't resolve host/portnames
-p <protocol> : display connections by protocol
-s <source-host> : display connections by source
-d <destination-host>: display connections by destination
-S: display SNAT connections
-D: display DNAT connections (default: SNAT & DNAT)
-L: display only connections to NAT box itself (doesn't show SNAT & DNAT)
-x: extended hostnames view
-r src | dst | src-port | dst-port | state : sort connections
-o: strip output header
-v: print version
ということで自分のマシンで nat をかけているとこれを見て楽しむ! ことができます。
_ BSDの pfsync の機能を Debian GNU/Linux でも --- conntrack, contrackd
パケットのステート情報の複製について、備えあれば憂いなし - pfSense/pfSyncでネットワーク管理を容易に(http://journal.mycom.co.jp/articles/2007/05/24/bsdcan2/)では、BSD系での話がかかれている。しかし、BSDのpfsyncじゃなくても、
aptitude install conntrack conntrackdとすれば複数台でコネクショントラックの状態について複製する準備ができる。
詳細については、(http://conntrack-tools.netfilter.org/about.html)を起点に読めばわかる。
私としては、keepalivedを使った、packetのコネクションテーブルを複製し、NAT/IP masq/firewall マシンの failover 機能も面白いが、4層(UDP, SCTPなど)のセッションをぶった切ることができそうなのが面白い。--- netfilter が奥深いというのが、ようやく実感できてきた。
_ antとmakeとCとC++
CI*1ツールとして CruiseControl が有名ですが、こいつはANTを使うんで、Linux(Unix)系の人にはあまり馴染みがない。unix系なら、makeを使っている場合が多い。CIツールで、C/C++を使い、make を主に使っている場合は、何を使うのが良いのだろうか。--- buildbot などもあるけれど、antで xml file を書いてmakeを呼び出すべきなのか。
- Antの使い方(http://www.jajakarta.org/ant/ant-1.6.1/docs/ja/manual/index.html)>
- (http://ant.apache.org/manual/coretasklist.html)
- Configuration Reference(http://cruisecontrol.sourceforge.net/main/configxml.html)
- Buildbotはディレクトリの移動ができない(http://www.tsunematsu.cc/2008/07/)
*1 Continuous Integration
_ 共有メモリ
man ipcs or
yabuki@Ernalda:~$ ipcs -h
ipcs provides information on ipc facilities for which you have read access.
Resource Specification:
-m : shared_mem
-q : messages
-s : semaphores
-a : all (default)
Output Format:
-t : time
-p : pid
-c : creator
-l : limits
-u : summary
-i id [-s -q -m] : details on resource identified by id
usage : ipcs -asmq -tclup
ipcs [-s -m -q] -i id
ipcs -h for help.
関連キーワード:共有メモリ(shared mem)、オーバーコミット(over commit)、OOM Killer
yabuki@Ernalda:~$ cat /proc/sys/vm/overcommit_memory 0これだけあれば、調べられるはず。
_ SQLite をファイルを使わずにメモリ上だけで処理させみた参考値を発見した。
(http://sebastian-bergmann.de/archives/751-Testing-with-SQLite-In-Memory-Databases.html)
_ ソフトウェアエンジニアの道
朱に交われば赤くなる。回りの環境を整えよう。という意味で、自分の居場所をどこにするかなど参考になりました。(http://docs.google.com/EmbedSlideshow?docid=dcfbwtsr_30gtpm43pv)
_ ファイルシステム暗号化
この情報って、じつは最近発売された
Software Design (ソフトウエア デザイン) 2008年 09月号 [雑誌]にまとめられているそうですね。fedoraでのlukの話Fedora9 で USB外付けHDDを暗号化してみる(http://blog.livedoor.jp/scarletwing/archives/65093304.html)。時間をみつけて自分のメモも pull out しておかないと... 忘れてしまいそうだ。
2008-09-17 [長年日記]
_ tuedaさんへ
記事元はこちら。嗚呼,でびやん(http://www.ueo.co.jp/~tueda/diary/?date=20080917#p01)まずは、操作のhisotryを、rootとsudo を使っているならそのユーザのを取って記録しておいてください。例えば、
#history > hoge
$history > fugaで、これから述べる事が合っているか確認したいです。
Debian.orgが出している、ドキュメントを読むとわかりますが、使用を推奨しているのは、apt-get コマンドじゃなくて、依存性をチェックして削除もできる、aptitude コマンドです。あ、apt-getコマンドから aptitude コマンドに乗り換える時は、下記のパッケージデータベース部分に追加情報を記録する必要があるので、apt-get と aptitude のコマンドを混在させると、apt-getで入れたパッケージは、aptitudeの必要とする追加情報がないので、いったん削除対象になってしまうので、驚くかもしれません。是非、aptitude コマンドで統一しましょう。tuedaさんなら、Debian reference(日本語版) see also (http://qref.sourceforge.net/Debian/reference/reference.ja.txt)の6. Debian パッケージ管理と 6.2.2. `aptitude' などから興味のある所を読み進めてもらえればいいでしょう。
yabuki@Ernalda:~$ sudo aptitude install apache2-mpm-prefork パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています... 完了 拡張状態情報を読み込んでいます パッケージの状態を初期化しています... 完了 タスクの記述を読み込んでいます... 完了 タグのデータベースを構築しています... 完了 以下の新規パッケージが自動的にインストールされます: apache2-utils apache2.2-common 以下の新規パッケージがインストールされます: apache2-mpm-prefork apache2-utils apache2.2-common 更新: 0 個、新規インストール: 3 個、削除: 0 個、保留: 0 個。 アーカイブ 1726kB 中 420kB を取得する必要があります。展開後に 4473kB のディスク 領域が新たに消費されます。 続けますか? [Y/n/?] 拡張状態情報を書き込んでいます... 完了 取得:1 http://ftp.debian.org etch/main apache2-mpm-prefork 2.2.3-4+etch5 [420kB] 420kB を 2s 秒でダウンロードしました (175kB/s) 未選択パッケージ apache2-utils を選択しています。 (データベースを読み込んでいます ... 現在 270509 個のファイルとディレクトリがイン ストールされています。) (.../apache2-utils_2.2.3-4+etch5_i386.deb から) apache2-utils を展開しています.. . 未選択パッケージ apache2.2-common を選択しています。 (.../apache2.2-common_2.2.3-4+etch5_i386.deb から) apache2.2-common を展開してい ます... 未選択パッケージ apache2-mpm-prefork を選択しています。 (.../apache2-mpm-prefork_2.2.3-4+etch5_i386.deb から) apache2-mpm-prefork を展開 しています... apache2-utils (2.2.3-4+etch5) を設定しています ... apache2.2-common (2.2.3-4+etch5) を設定しています ... This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! This module is already enabled! apache2-mpm-prefork (2.2.3-4+etch5) を設定しています ... Starting web server (apache2)....で、
yabuki@Ernalda:~$ dpkg -S /etc/init.d/apache2 apache2.2-common: /etc/init.d/apache2を実行して、/etc/init.d/apache2 のファイルがどこのパッケージに属しているか確認します。で、一つ予想なのですが、tuedaさんの書き方だと、apache2-commonを先に強制removeしているような気がしています。コマンドのヒストリーでどうなっているか確認できませんか? で、aptutude remove を使えば、
yabuki@Ernalda:~$ sudo aptitude remove apache2-mpm-prefork パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています... 完了 拡張状態情報を読み込んでいます パッケージの状態を初期化しています... 完了 拡張状態情報を書き込んでいます... 完了 タスクの記述を読み込んでいます... 完了 タグのデータベースを構築しています... 完了 以下のパッケージが使われていないので削除されます: apache2-utils apache2.2-common 以下のパッケージが削除されます: apache2-mpm-prefork 更新: 0 個、新規インストール: 0 個、削除: 3 個、保留: 0 個。 0B のアーカイブを取得する必要があります。展開後に 4473kB のディスク領域が解放されます。 続けますか? [Y/n/?] 拡張状態情報を書き込んでいます... 完了 (データベースを読み込んでいます ... 現在 271002 個のファイルとディレクトリがインストールされています。) apache2-mpm-prefork を削除しています ... Stopping web server (apache2).... apache2.2-common を削除しています ... No apache MPM package installed apache2-utils を削除しています ...のように、いも蔓式に入れたパッケージも削除対象になるので、ぜひ aptitude を使って下さい。よろしくお願いします。
2008-09-16 [長年日記]
_ 検査が終わったら世界が変わっていた。
たまには、こういうことがあるんだなあ。検査入院から世間にもどってきたら、リーマンブラザーズが破綻してた。株やFXはやってないので直接は関係ないけど、間接的には、経済動向として関係してくるかもしれない。
_ ulogd
iptables の -j LOG は、カーネルログとして記録され、dmseg にもiptables の log が残る。このため、-j ULOG として ulogd にログを取らせて、デフォルトでは、syslog風emuの書式でログが取られる。色々とプラグインがあって、syslogdにログを任意のファシリティ、任意のレベルで送り込めたり、MySQLやPosgreSQL, SQLiteにデータを取り込めたりする。また、PCAPを使えばWireshark(Ethereal)/tcpdump にデータを取らせて、それらの形式でログが取れる。
_ FCKeditor
もちろん、Debianにもパッケージはあるわけだが。本家のサイト(http://www.fckeditor.net/)の動作環境を提示する方法がなかなか面白かった。
FCKeditorは、HTMLを入力する際にwebサーバ側のjava scriptをclientへ送り込み Web BrowserでMS Word風味なメニューをjava scriptで作りだし、あたかもアクセスしているサイトで HTMLエディターが使えるものだと思わせるように作ってある。下記には、私の場合、backports.orgのパッケージを利用している。stable以外のパッケージを利用するので、人によっては避けた方が良い。
$ sudo aptitude install fckeditor パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています... 完了 拡張状態情報を読み込んでいます パッケージの状態を初期化しています... 完了 タスクの記述を読み込んでいます... 完了 タグのデータベースを構築しています... 完了 以下の新規パッケージが自動的にインストールされます: apache2 apache2-mpm-worker apache2-utils apache2.2-common 以下の新規パッケージがインストールされます: apache2 apache2-mpm-worker apache2-utils apache2.2-common fckeditor 更新: 0 個、新規インストール: 5 個、削除: 0 個、保留: 0 個。 2696kB のアーカイブを取得する必要があります。展開後に 9437kB のディスク領域が新たに消費されます。 続けますか? [Y/n/?] y 拡張状態情報を書き込んでいます... 完了 取得:1 http://ftp.debian.org etch/main apache2-utils 2.2.3-4+etch5 [342kB] 取得:2 http://www.jp.backports.org etch-backports/main fckeditor 1:2.6-1~bpo40+1 [924kB] 取得:3 http://ftp.debian.org etch/main apache2.2-common 2.2.3-4+etch5 [964kB] 取得:4 http://ftp.debian.org etch/main apache2-mpm-worker 2.2.3-4+etch5 [424kB] 取得:5 http://ftp.debian.org etch/main apache2 2.2.3-4+etch5 [41.5kB] 2696kB を 4m22s 秒でダウンロードしました (10.3kB/s) 未選択パッケージ apache2-utils を選択しています。 (データベースを読み込んでいます ... 現在 270601 個のファイルとディレクトリがインストールされています。) (.../apache2-utils_2.2.3-4+etch5_i386.deb から) apache2-utils を展開しています... 未選択パッケージ apache2.2-common を選択しています。 (.../apache2.2-common_2.2.3-4+etch5_i386.deb から) apache2.2-common を展開しています... 未選択パッケージ apache2-mpm-worker を選択しています。 (.../apache2-mpm-worker_2.2.3-4+etch5_i386.deb から) apache2-mpm-worker を展開しています... 未選択パッケージ apache2 を選択しています。 (.../apache2_2.2.3-4+etch5_all.deb から) apache2 を展開しています... 未選択パッケージ fckeditor を選択しています。 (.../fckeditor_1%3a2.6-1~bpo40+1_all.deb から) fckeditor を展開しています... apache2-utils (2.2.3-4+etch5) を設定しています ... apache2.2-common (2.2.3-4+etch5) を設定しています ... 設定ファイル /etc/apache2/mods-available/authn_dbd.load を新規にインストールしています ... apache2-mpm-worker (2.2.3-4+etch5) を設定しています ... Starting web server (apache2).... apache2 (2.2.3-4+etch5) を設定しています ... fckeditor (2.6-1~bpo40+1) を設定しています ...
2008-09-12 [長年日記]
_ デバイスの名前を永続化する。
kinnekoさんところ経由概要: UUID, パーティションラベルとfstab(http://manual.sidux.com/ja/part-uuid-ja.htm)、Linux の場合なら、LVMもある意味、レイヤーがあるのでデバイスの名前を永続化するのにつかえそうな気がするんだけど、組み込み機器ならそのCPUパワーも節約したい?
2008-09-11 [長年日記]
_ pthread を使う上で陥りがちな罠
bashのulimit -s でバイトサイズを適切なサイズにしておかないとデフォルト値は8Mなので、ドンドンと仮想メモリを食っていくプログラムができやすい。
_ inotify-tools
inotifyを使って、「待ち」を作りたい場合は、inotifywait を "Watch"をさせたい場合は、inotifywatchを。詳細は man inotifywait および man inotifywatch を行うこと。
Ernalda:~# aptitude install inotify-tools Reading package lists... Done Building dependency tree... Done Reading extended state information Initializing package states... Done Writing extended state information... Done Reading task descriptions... Done Building tag database... Done The following NEW packages will be installed: inotify-tools 0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 78.3kB of archives. After unpacking 442kB will be used. Writing extended state information... Done Get:1 http://security.debian.org stable/updates/main inotify-tools 3.3-2 [78.3kB] Fetched 78.3kB in 8s (8721B/s) Selecting previously deselected package inotify-tools. (Reading database ... 270755 files and directories currently installed.) Unpacking inotify-tools (from .../inotify-tools_3.3-2_i386.deb) ... Setting up inotify-tools (3.3-2) ...inotifywait実験
shell scirptなどでinotifyを使って、Daemonもどきなファイル監視スクリプトを作りたい場合に役立つ。
端末Aで inotifywait を実行すると
yabuki@Ernalda:/tmp$ inotifywait -e modify hoge Setting up watches. Watches established.のように「待ち」に入る。そこで、端末Bから、echo "fuga" > /tmp/hoge とすると、
hoge MODIFY という表示を出して、waitから抜けてくる。
2008-09-10 [長年日記]
_ RFC: Internationalized Email Headers
_ gwak で cgi
awk 好きな知り合いが、簡単な browser 情報と server 情報を表示する cgi を gawk で作るとかいってました。httpd から渡される情報を整形して表示するだけなら gawk でも十分でしょう。
_ memo:Google Releases More Patches for MySQL
(http://google-opensource.blogspot.com/2008/09/google-releases-more-patches-for-mysql.html) Google が MySQL に対するパッチをリリースした。より詳しくは原文参照のこと
- 前回のパッチより、機能拡張とバグ修正を行った
- マルチコアのサーバ上で、innoDBをより早く動かす機能が入った
- Mutexを使った接続の統計情報の表示を変更した。
- データベースのアカウント毎およびクライアントのIP毎のモニターおよびrate-limit の変更
_ 海外でセキュリティがわかるネットワークのプログラマーとしてやりたかったら
(http://iscs.sourceforge.net/)などで、プロジェクトで活躍してみるのもいいんじゃないでしょうか。自分のレベルとかわかるし、英語の勉強にもなるでしょう。
2008-09-09 [長年日記]
_ KGDB と Debian GNU/Linux Lenny
linux kernel watch 7月版(http://www.atmarkit.co.jp/flinux/rensai/watch2008/watch07a.html)で、kernel 2.6.26 の話題がでていたが、こいつにはKGDBという、カーネルをソースレベルでgdbのように、デバッグ作業ができるという機能がマージされている。
Debian Lenny は、Linux kernel が 2.6.26 でリリースとのことなので、熱心にカーネルを追っかけている人以外でも、KGDBを試す機会が増えそうである。
2008-09-07 [長年日記]
_ systemtap
カーネルのパフォーマンス計測は、oprofileなどが有名だが。これも Debian Package になっている。see also apt-cache show systemtap
Description: instrumentation system for Linux 2.6
The SystemTap project aims to produce a Linux tool that lets
application developers and system administrators take a deeper look
into a running kernel. It aims to exploit the capability of a fully
open-source Linux target to go beyond performance measurements, and
perhaps even serve as a programmable debugger.
- upstream(http://sourceware.org/systemtap/)
- (http://sourceware.org/systemtap/wiki/SystemtapOnDebian)
- もわの台所 --- systemtap @ debian(http://mowa-net.jp/~amedama/mt/2006/11/post_868.html)
_ memo:週に一度、日曜日に自問すべき20の質問
(http://www.ideaxidea.com/archives/2008/09/20_9.html)私の場合は、自分が病気になると全ての事がストップしてしまう状態なんで、「健康で毎日働くことができるか?」ってのを入れますかね。--- 年取ると、毎日チェックする項目が増えますな。体重とか血圧とか歩数とか。
私が、何時いなくなっても動くシステムができるのが理想です。
_ memo:第25回 「時間がない」は負け犬の言い訳 50代上司の好奇心に思い知る
これは、年代よりも個人差が大きいのではないか。全部、真に受ける必要はないだろうと思う。全力を出してないから長時間働けるという考え方もある。どこまで自分の体に踏み込んで生きて行くかはその人の信条だし。主に企業の場合、求められている成果を出せない人は切られて行ってしまうので難しい所です。また、人に求められないと自己承認欲も満たせませんし。(http://itpro.nikkeibp.co.jp/article/COLUMN/20080709/310486/)
あと、あるスキルを獲得するのに目安として1万時間(だっけ?)を費す必要があるというので、自分に対して時間を投資する必要がある。何に時間を費すかは自分で決められます。ある一定のスキルに到達するまではセンスはいりません。時間をかけてシステム*1に則っとり学ぶかどうかです。逆にいう、それ以上の世界を見るのにはセンスがいるのかもしれませんが。好きが有利だというのは、この時間が苦痛か楽しみかによって学習する進度が違うからなのでしょう。と私は理解しています。
とはいえ、社会生活を営んでいるのであまり極端な生活をしていると世の中のトレンドに対する感受性が落ちたりやコミュニケーションを阻害します。何をするにしても作用と反作用があるので、何をどう組み合わせるかが、その人のセンスなのかもしれません。
*1 このシステムが体系立っている方が良いが、完璧でなくても良い。普通自分で改善のサイクルを回すから。
_ memo:Microsoftの開発現場ではVSSではなくCVSが,プロジェクト管理はMS ProjectではなくExcelが使われている
コードの差分を取ると簡単に書いてあるが、、統一したスタイルの遵守はどうしているのかな。(http://gihyo.jp/dev/clip/01/orangenews/vol46/0007)
2008-09-06 大人買い [長年日記]
_ books
これまでの仕事からや、知り合いの技術者達が参考にしていた本を買い揃えておきたかったので、当面必要になりそうな2万円分の書籍を購入した。
2万円分本をかったのでジュンク堂のコーヒー券を2枚も貰ってしまった。一万円つきに一枚くれるらしい。
これだけ書籍を買うと重いので良い筋トレになる。鉄下駄や、リストおよびアンクルウェイトって感じか。後述するがうろうろとしたので、本日も一万歩達成した。予定していた用事の8割ができたのでひとまず良とする。
_ 裸族の2世代住宅
なんだこれ?って名前ですが、
センチュリー 裸族の二世帯住宅 CRNS35EU2です。対応OSとして、Linuxは書いてないですが、家庭で簡易なRaid 1(ミラーリング)をするときに、候補に上がってきたモノです。
_ バックアップ体制を、もうちょいまともにする。
いままでは、単一のHDDにデータを/homeなどのデータを置いていましたが、この裸族の2世代住宅で、ハードウェアraid1(ミラーリング)で、すこし安心度がアップしました。
ちなみに、RAID1は、だけでは上書きしてしまうファイルなどは救えないので、バックアップはpdumpfsなどの世代バックアップや、領域を分けるなど対策がいるかと思います。置いている場所が天災(地震や火事)などは、考え出すと対策費が予算を越えるのでひとまずパス。ノートパソコンのバックアップだけに使うので、平日は同じ場所にないのが救いです。
盗難などで他者にハードディスクが行ってしまった時の対策するために、dm-cryptで、対象パーティションを暗号化します。Debian Installerでもインストール時に暗号化は選べるのでやりましょう。VMwareの中でDebianのインストールをしてdm-cryptを使ってもいい。
増設した「裸族の二世代住宅」への作業メモまずは、(http://www.debian.org/releases/stable/i386/ch06s03.html.ja#di-partition)を眺めておきます。
前提として、「裸族の二世代住宅」は、ミラーモードで使用します。usbで挿したら以下のようなdmesgが出てます。
usb 4-1: new high speed USB device using ehci_hcd and address 15 usb 4-1: configuration #1 chosen from 1 choice scsi4 : SCSI emulation for USB Mass Storage devices usb-storage: device found at 15 usb-storage: waiting for device to settle before scanning Vendor: External Model: AL25744_12345678 Rev: Type: Direct-Access ANSI SCSI revision: 02 SCSI device sda: 625142449 512-byte hdwr sectors (320073 MB) sda: Write Protect is off sda: Mode Sense: 1a 0c 00 00 sda: assuming drive cache: write through見たら判りますが、HDDは320GBのを2本入れてます。
2008-09-05 [長年日記]
_ FbTerm
memo:X不要で動作する高機能ターミナルエミュレータFbTerm の続き。 武藤さんも記事にしているFBTerm(http://kmuto.jp/d/index.cgi/debian/fbterm.htm)
早さは正義だとすると、画面描画が早い fb 上で動くアプリケーションが増えるだろうなあ。
2008-09-04 [長年日記]
_ gdb に関する情報
マイミクさんに、gdbの使い方を尋ねられました。知っている所を書いておきます。
- gdbがインストールしてあるマシン
- まずは、man gdb
- ドキュメントがあるかどうかをチェックする。ちなみに Debian GNU/Linux Etch の /usr/share/doc/gdb/の下には、refcard.(ps|dvi|tex)が圧縮された状態である。他の Linux ディストリビューションでも何らかのドキュメントがあるだろう。また別にgdb-docというパッケージがありドキュメントが別になっている。gdbがインストールしてあるマシンの中を確認してみるのが良い。また gdb を GUI で使いたいなら、 ddd などある。パッケージのインストールのなど必要があれば管理者に相談すること。
- web --- "gdb" でGoogleるといろいろと出てくると思います。
- 本 --- 手もとで常に参照するなら、紙か本が良いかと思います。書き込みもできますし。さっきの refcardを印刷するもよし、会社に本があれば、それを借りるのも良いでしょう。--- 私の持っている本だと
- GDBデバッギング入門 ---
amazon で探しても原書しかないので絶版?2008/09/06に大阪梅田のジュンク堂で見付けました。まだ売ってます。それで、調べ直して見付けました。
GDBデバッギング入門(リチャード ストールマン/ローランド ペシュ)英語版の方が新しいバージョンですが。ひとまず日本語版を出しておきます。
GDBハンドブック(アーノルド ロビンス)
があります。他にも良い本はあるでしょうが参考になれば。
- GDBデバッギング入門 ---
_ GNU Indent を日本語で語る場所は?
どこかある? 私が知らないだけだと思うのだけど。GNU Indent の recipe 集とか欲しい。とくに DOS や Windows で開発していた人が、困らないように。
具体例だと、秀丸に代表されるようなDOS/Windows系エディタがデフォルトで整形するソースコードに合わせる時に欲しい。私が秀丸などを使っていれば良いんだが、使ってないからなあ
_ memo:X不要で動作する高機能ターミナルエミュレータFbTerm
(http://sourceforge.jp/magazine/08/09/04/015224) FbTerm(http://code.google.com/p/fbterm/)とjfbterm(http://sourceforge.jp/projects/jfbterm)とは違うものみたいだけど
2008-09-03 [長年日記]
_ memo:PPLサマースクール2008 --- 今日から使える! みんなの静的解析・バグ検出ツール
9月9日に東京の文教区か。liloの松本さんが興味を持ちそうなネタだな。(http://www.logos.t.u-tokyo.ac.jp/ppl_ss08/index.php/Top)
_ memo:SONY VAIO Type Z (VGN-Z90S)にDebian GNU/Linuxを入れる
_ memo:PFIとNTTレゾナントが共同調査で報告 -- Hadoopは耐障害性に課題があるが実用性十分
PFIって、吉田さんの所の会社だったはず。(http://www.atmarkit.co.jp/news/200808/25/hadoop.html)
_ XML関係2つ
- UML による XML 設計ガイド (改訂版)(http://www.ogis-ri.co.jp/otc/hiroba/technical/UML2XML/index.html)
- XML情報セット (第2版)(http://www.doraneko.org/xml/infoset/20040204/Overview.html) この文書のNoticeとして
この文書は、W3Cにより作成されW3C勧告として公開されている "XML Information Set (Second Edition)" (http://www.w3.org/TR/2004/REC-xml-infoset-20040204/) を、どら猫本舗が翻訳したものです。
とのこと。詳しくはリンク先を参照せよ。
2008-09-02 [長年日記]
_ BSoD
客先での会話中に、BSoD という単語が出て来て、(?_?)な状態になる。わからないのでGoogleってみると、Blue Screen of Death の略語とのこと。RRoDとBSoD (http://d.hatena.ne.jp/imakitasangyo/20080216/1203154682)では、MSが正式に使っている用語との解説あり。どこの世界でも頻繁に使われる用語は、短縮されて行きますね。
_ Logitec LAN-GTJ/U2
FreeBSDでは、このUSB ether(http://www.logitec.co.jp/products/lan/langtju2.html)が動いているので、Linuxでも簡単に動くかなーとおもって、Debian Etch kernel 2.6.18 の該当箇所に、usb の vender id product idを登録してasixドライバを動かしてみた。
Macアドレスが読めるが、link upしない。Mii層までいっているみたい?だけど残念
_ memo:世界の幸福度は向上〜国別ランキング調査 --- 「富」だけではなく「選択の自由」と「寛容性」が大切
(http://business.nikkeibp.co.jp/article/world/20080901/169377/)
2008-09-01 [長年日記]
_ libssp0
Debian GNU/Linux で、gcc に -fstack-protector-all を付けてコンパイルするときundefined reference to `__stack_chk_guard' undefined reference to `__stack_chk_fail'などのエラーが出る場合、
- libssp0 がインストールされているか確認する。
- -lssp を付けているか確認する。
2008-08-29 [長年日記]
_ memo:会社で飯を出すのは簡単じゃない
世の中にはいろいろと不思議なことがある。会社の仕組みを勉強したおかげでわかった事がある。税金や社会保険などは、会社から従業員に食事などを支給して手厚い事をしようと思うと、それらの価値をお金に換算して収入とみなす。そして料率が上がってしまうのだ。(http://www.nurs.or.jp/~ogochan/essay/archives/1367)
_ 29日と言えば、にくの日。
最近、29日に定期的にリリースしているソフトウェアってどのぐらいあるのかしら。29の日すばらしい所は、定期的にリリースされるという所なので、別に拘る必要はないのだけれど。
UNIXネットワークプログラミング〈Vol.2〉IPC:プロセス間通信(W.リチャード スティーヴンス)
_ Henrich [typo fix: /usr/s"ha"re/...]
_ yabuki [ありがとう。指摘されたTYPOを直しておきました。]