Google Chrome 拡張(Chrome Extension) はてなブックマークのエントリー数を表示する Chrome拡張を作った

Chromeエクステンション? Chromeアドオン? ・・わかりやすく日本語で「Chrome拡張」と書きました

追記2009/08/11

いつの間にかインストール出来なくなっていたので調べたら、
http://dev.chromium.org/developers/design-documents/extensions/packaging
パッキングがchrome.exe自身でできるようになっていた。その影響? とりあえず更新して設置しなおしました。


Chrome拡張を使う為には、Chromeをdevチャンネルに切り替えて、拡張機能を有効にする必要があります。

Devチャンネルへの切り替え方

    1. Google Chrome Channel Chooser ダウンロード -> 実行します。
    2. Beta か Dev を選択するラジオボタンで、Dev を選択し Update を実行


あとは、Chromeが自動でDevチャンネル版に差し替えてくれるのだけど、自動更新がかかるまで
待つのも面倒なので、Google Chrome の設定アイコン(スパナのマーク)から「Google Chrome について」
を開くと即座にDevチャンネルバージョンに置き換えてくれます。後はChromeを全て閉じて
Chromeを再起動すると完了です。

拡張機能をONにするショートカットの作成

    1. Google Chrome の起動ショートカットファイルをコピーし、プロパティを開いて以下のように 「リンク先」のchrome.exeの後ろに 「--enable-extensions」 を付け足す。


このショートカットからChromeを起動して、拡張のインストールは、.crxファイルをクリックで入ります。

どうも上記のオプション指定なしで普通起動で有効になるようになったもよう。(Ver 4.0.206.1現在)

拡張のアンインストール方法

アドレスバーに「 chrome://extensions 」と入力し開くとインストールしている拡張の一覧が表示されます。
要らない拡張のUninstallボタンを押す事で削除できます。

その他の拡張

http://www.mychromeaddons.com/
こちらのサイトにいくつかあるようです

iptables-apply 便利そう

lenny には /usr/sbin/iptables-apply という iptables-restore で設定を変更して、確認待ちをして 15 秒間確認がなければ、もとの iptables の設定に戻してくれるという便利なスクリプトが入っていた。 リモートのサーバの iptables の設定変更で失敗すると大変なことになるので、非常に便利かもしれない。

http://znz.s1.xrea.com/t/?date=20090415#p02

これはかなり便利そうである。
ubuntu 9.04にも入っている。

libvirt kvm NIC interface名の固定方法

      <interface type='bridge'>
        <source bridge='br0'/>
        <target dev='vnet7'/>
      </interface>

普通に、上記の例のように設定し、virt startを実行しても vnet0からの連番に振りなおされてしまう。
固定でインターフェース名を振って、自分好みのiptablesを書きたい
ということで、よくわからないからソースを読んでみた。
どうやら devがvnetの名前で始まる場合は、 がかき消されてしまいオートジェネレートに
なってしまうようだ。

<target dev='hoge'/>

とかにすると hogeという名前でインターフェースができた。

http://libvirt.org/formatdomain.html#elementsNICSBridge

KVM libvirt qcow2ファイルのリサイズ(ディスク増量)

http://www.brabbel.net/wp/archives/174


qcow2 -> rowイメージに変換して
ddのseekを使って拡張
resize2fsを使ってext3を拡張
row -> qcow2に戻す
qcow2のイメージの中に複数のパーティションがあるので簡単にいかない。

http://www.saitoudaitoku.com/wordpress/?p=523
こっちの方法になりそうな気配

http://itsignals.cascadia.com.au/?p=28
もしくはこちら

試してみたところ、 parted のコマンドライン版では
”File system has an incompatible feature enabled” のエラーが出てしまい駄目だった。
検索しても解決に至っている物がみつからないのであきらめて、CDイメージのgpartedを実行してみたら
うまくいった。
-> gpartedはこちらから http://gparted.sourceforge.net/livecd.php

手順

qcow2 -> rowイメージに変換して

qemu-img convert -f qcow2 mydisk.qcow2 -O raw mydisk.raw

ddのseekを使って拡張

dd if=/dev/zero of=disk0.raw bs=10M count=0 seek=4096

row -> qcow2に戻す

qemu-img convert -f raw disk0.raw -O qcow2 newdisk0.qcow2

gpartedのCDイメージで起動してリサイズ

/usr/bin/kvm -m 512 -smp 1  -boot d -drive file=newdisk0.qcow2,if=ide -cdrom gparted-live-0.4.4-1.iso   -vnc 127.0.0.1:0

(vncで接続して操作)

KVM .qcow2ファイルのShrink(縮小化?)

vmbuilderで作成したディスクイメージはqcow2形式で、
作成時に指定したdiskサイズより小さい、追記があるたびに増えていくタイプのようだ。
複数ゲストOSを立てて運用してるとごちゃごちゃになりそう。
たまに最適化を兼ねてディスクイメージをshrinkするしかないのかな?

http://www.kotodama.jp/blog/index.php/2009/04/10/qemu-qcow2-shrink

$ sudo qemu-img convert -O qcow2 hoge.qcow2 hoge.qcow2.new

libvirt によるKVMのホストOSのシャットダウン時のオートシャットダウン(auto suspend)

ubuntu 9.04のKVM libvirtが思ったより良く出来ていていろいろ試してみた。
ホストOSを普通にシャットダウンすると、自動でゲストOS側もシャットダウンしてくれるんだろうな
と思い込んでいたが、違った。ゲストOS側はブッツリ切られてしまうようだ。

自動シャットダウン的なもの無いかと探したがなかなか見つからなくて
やっと見つけたのがこれだった。
http://www.vogelweith.com/debian_server/14_kvm.php#x1-170004

/usr/share/doc/libvirt-bin/examples/libvirt-suspendonreboot
こんなものが用意されてました。
中身は、↓の感じ。

#! /bin/bash

# (c) Andi Barth <aba@not.so.argh.org> 2008
# Distributable under the terms of the GNU GPL version 2.
#
# copy to /etc/init.d/libvirt-suspendonreboot and use
# update-rc.d libvirt-suspendonreboot defaults 21 19
# to enable

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

suspenddir=/var/lib/libvirt/autosuspend

case "$1" in
  start)
    for domain in ${suspenddir}/*dump; do
        if [ -f $domain ]; then
            domain=$(basename $domain .dump)
            echo "resuming $domain ..."
            virsh restore ${suspenddir}/${domain}.dump && rm ${suspenddir}/${domain}.dump
        fi
    done
    ;;
  stop)
    for domain in /etc/libvirt/qemu/*xml; do
        domain=$(basename $domain .xml)
        state=$(virsh domstate $domain)
        if [ "$state" == "running" ]; then
            echo "suspending $domain ..."
            virsh save ${domain} ${suspenddir}/${domain}.dump
        fi
    done
    ;;
  reload|force-reload|restart)
    # No action, nothing to reload
    ;;
  *)
        echo "Usage: $0 {start|stop|restart|reload|force-reload}" >&2
        exit 1
esac

使い方は、以下のようにしろと書いてます

 cp /usr/share/doc/libvirt-bin/examples/libvirt-suspendonreboot /etc/init.d/ 
 chmod 755 /etc/init.d/libvirt-suspendonreboot 
 mkdir -p /var/lib/libvirt/autosuspend/ 
 update-rc.d libvirt-suspendonreboot defaults 21 19

まだ試して無いですが・・・多分動くでしょう。 動きました。