さて・・・

最近色々と試しているが、子どもが生まれてきゃ~きゃ~してるため、書いてる時間がない。
ちなみに最近あそんでるのは以下です。
KVM
VPN
(VNC、SPICE)
usbカメラ~音声解析~音声認識
mac

おされー☆でmac book proを買ってみたけど、やっぱりubuntuの方が便利だなぁ・・・
まーほとんどは、子供のいるところからsshとVNCでメインPCに繋いで使ってるので、使い勝手にどうこうはいいませんけどね。
もうちょい軽いといいのになー

さくらのVPS

hetemlの契約が切れてから、いくつかVPSサービスを試してるところなのですが、今回は9月1日から正式提供開始となった「さくらのVPS」でこのブログを動かしてみました。

さくらのVPSは月額980円で使えるVPS(Virtual Private Server、仮想専用サーバ)です。お試し利用2週間付きです。
スペックはOSがCentOS5、メモリが512MB、HDDが20GB,回線が100Mbps共有、データ転送量が無制限、root権限あり、とまぁ現状の他のサービスと比べても悪くはないといったところでしょうか。
コントロールパネルから起動/停止、シリアルコンソールへのアクセス、OSの再インストールができます。

さくらのVPSのページでは、おすすめの対象として「プロユース」「はじめて」「企業向け」「研究・検証」と書いていますが、「はじめて」というのはあくまで、Linuxをこれから勉強したい人に対して「Linuxサーバの管理」がはじめて、でしょうね。「さくらのVPSがいいらしいぜー。」ってだけで共用サーバから移行すると、残念な気持ちで解約することになります。

Ubuntu9.10betaにVMware Server 2をインストール

結果はモジュールのコンパイルでエラーがでたけど、適当に修正してみたらコンパイルは通ってくれて、インストールはできたよ☆ です。
実際のところ、まともに動くのかはわかりません。。

インストール

基本はここの通り
How To Install VMware Server 2 On Ubuntu 9.04

モジュールのコンパイルでエラー

今回問題だったのは、モジュールのコンパイルのところ。
エラー内容は これ とか 。以下のようなもの。

In file included from /tmp/vmware-config2/vmnet-only/vm_basic_asm.h:46,
from /tmp/vmware-config2/vmnet-only/vm_oui.h:28,
from /tmp/vmware-config2/vmnet-only/vnetInt.h:25,
from /tmp/vmware-config2/vmnet-only/netif.c:46:
/tmp/vmware-config2/vmnet-only/vm_basic_asm_x86.h:62:7: warning: “_MSC_VER” is not defined
/tmp/vmware-config2/vmnet-only/vm_basic_asm_x86.h:177:7: warning: “_MSC_VER” is not defined
/tmp/vmware-config2/vmnet-only/vm_basic_asm_x86.h:346:7: warning: “_MSC_VER” is not defined
/tmp/vmware-config2/vmnet-only/vm_basic_asm_x86.h:453:7: warning: “_MSC_VER” is not defined
/tmp/vmware-config2/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
/tmp/vmware-config2/vmnet-only/netif.c:201: error: ‘struct net_device’ has no member named ‘init’
/tmp/vmware-config2/vmnet-only/netif.c:202: error: ‘struct net_device’ has no member named ‘open’
/tmp/vmware-config2/vmnet-only/netif.c:203: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
/tmp/vmware-config2/vmnet-only/netif.c:204: error: ‘struct net_device’ has no member named ‘stop’
/tmp/vmware-config2/vmnet-only/netif.c:205: error: ‘struct net_device’ has no member named ‘get_stats’
/tmp/vmware-config2/vmnet-only/netif.c:206: error: ‘struct net_device’ has no member named ‘set_mac_address’
/tmp/vmware-config2/vmnet-only/netif.c:207: error: ‘struct net_device’ has no member named ‘set_multicast_list’
make[2]: *** [/tmp/vmware-config2/vmnet-only/netif.o] Error 1
make[1]: *** _module_/tmp/vmware-config2/vmnet-only Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.31-4-generic’
make: *** http://vmnet.ko Error 2
make: Leaving directory `/tmp/vmware-config2/vmnet-only’
Unable to build the vmnet module.

ぱっとみ、struct net_device が変更になって、メンバがないんだろうなー、という感じ。
調べてみると、ubuntu9.10になってカーネルのバージョンが2.6.31.14とかに上がったことで、struct net_deviceが変更になってりる?ぽい。
何か多少直せば動きそうだったので、試しにソースをいじってみたらコンパイルは通った(正常動作してるかは知らないw)

適当に修正してみた

直したところは他にもあるが、おそらく以下の部分でコンパイルは通る気がする。
net_deviceが変わったカーネルのバージョンやらそれぞれポインタ設定するところがあってるのか、全然確認していません。

diff -Nurp vmnet-only/netif.c vmnet-only_mod/netif.c
— vmnet-only/netif.c 2009-03-27 15:10:04.000000000 +0900
+++ vmnet-only_mod/netif.c 2009-10-15 21:04:54.000000000 +0900
@@ -193,11 +193,28 @@ VNetNetifTxTimeout(struct net_device *de
*
*———————————————————————-
*/
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,31)
+static const struct net_device_ops vm_netdev_ops = {
+ .ndo_init = VNetNetifProbe,
+ .ndo_open = VNetNetifOpen,
+ .ndo_start_xmit = VNetNetifStartXmit,
+ .ndo_stop = VNetNetifClose,
+ .ndo_get_stats = VNetNetifGetStats,
+ .ndo_set_mac_address = VNetNetifSetMAC,
+ .ndo_set_multicast_list = VNetNetifSetMulticast
+};
+#endif
+
+

static void
VNetNetIfSetup(struct net_device *dev) // IN:
{
ether_setup(dev); // turns on IFF_BROADCAST, IFF_MULTICAST
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,31)
+ dev->netdev_ops = &vm_netdev_ops;
+#else
dev->init = VNetNetifProbe;
dev->open = VNetNetifOpen;
dev->hard_start_xmit = VNetNetifStartXmit;
@@ -205,6 +222,7 @@ VNetNetIfSetup(struct net_device *dev)
dev->get_stats = VNetNetifGetStats;
dev->set_mac_address = VNetNetifSetMAC;
dev->set_multicast_list = VNetNetifSetMulticast;
+#endif

・編集するは以下の手順

  1. VMware-server-2.0.1-156745.i386.tar.gzを展開
  2. できあがったフォルダ「vmware-server-distrib」の中の「 lib/modules/source 」を開いて
  3. vmnet.tarを展開
  4. 展開された「vmnet-only」を開いて
  5. 「netif.c」を編集して上の修正を入れる。
  6. lib/modules/source に戻り、
  7. vmnet-onlyを右クリックして「Compress」
  8. ファイル名を「vmnet」、圧縮方法を「 .tar」にして、sourceに作成する。

その後、再度インストールをやり直せばいいかもしれません。

さてさて、次は9.04から治せないでいる以下の問題を確認してこよう。。。

Ubuntu9.04起動時、VM自動起動後、ネットワークをoff/onしないとVMがネットワークに繋がらない
電源Off時、VMが自動終了してくれない。
突然落ちた感じになり、次の起動時にVMWareServer2自体がうまく動作しない
これは、電源Off時にスクリプトで先にVMを終了命令投げて、30秒くらい待ってから電源Offるようにしてる。

これって、デスクトップ向けに起動と終了を早くしたがために、まともに起動&終了処理する時間がないからなのだろうか・・・

#追記
上の起動と終了時の問題は9.10だと発生しませんでした。わーい。

google code jam 2009

google が主催するプログラミングコンテストみたいなやつ。
高専時代にプログラミングコンテストで準優勝したからには!

と思ってやってみたが、なんていうかさ

英語読めない


。。。。。

といっても、英語は読めないけど、InputとOutputや例題やらからなんとなーくはわかってくるもので、そう、なんとなーくはわかって、練習問題みたいなのは解けました。

んで、引き続いてRound1が行われたので、チャレンジしてみたわけですが、あえなく撃沈

今回は、勉強もかねてRubyで組んでみてたんですが、配列!?どうやって書くんだ!?
って調べてるうちに時間が過ぎますね・・・。
ずーーーっと a[x,y]って書いて動かなかったりとか。
まぁそもそも、問題の解き方もチンプンカンプンでしたけどね。

来年も開催すればいいなー。
ちゃんと問題慣れして準備してくどーーー

Yellow Dog Linux 6.2 をibookG4にインストール

ubuntu9.04ppcもインストールはめんどうだったが、入れてしまえば割と動いた。
なので、ppc対応なydlならもっと軽く動くんじゃ!
みたいな希望を込めてインストール。

1.ダウンロード

公式サイト(Fixstars)からダウンロード

公式サイト→Get YDL!→public mirrors で適当なところを選んで

ftp://ftp.kddlabs.co.jp/Linux/packages/yellowdog/iso/

yellowdog-6.2-ppc-DVD_20090629.iso

をダウンロードする。

そしてDVDにヤキヤキ

2.インストール

DVDを入れてibookG4を再起動
起動画面でcを押してCDから起動
「boot:」が出てきたらENTER
(インストーラが起動する)

最初の画面で「NEXT」をクリック
言語の選択で「Japanese(日本語)」を選択して「NEXT」をクリック
キーボードの選択で「日本語」を選択して「次」をクリック
インストール先の選択で「選択したドライブ上のlinuxパーティションを削除してデフォルトのレイアウトを作成します。」を選択して、「次」をクリック
「本当に削除しますか?」で「はい」を選択
ネットワークデバイスはデフォルト(eth0、DHCP)のままで「次」をクリック
地域の設定で地図で東京をクリックして「アジア/東京」を選択して「次」をクリック
Rootのパスワードを設定して「次」をクリック
インストールするソフトウェアセットを「オフィスとプロダクティビティ」を選択して「次」をクリック(全部入れたいけどうちのibookさんはしょぼいので・・・)
色々がんばってくれたっぽいあとに、インストールしますよーで、「はい」をクリック(「次」だったかも。。。)
(インストール中。30分くらい?)
終わったらDVDが勝手にイジェクトされるので、「再起動」をクリック

3.起動

再起動すると色々初期設定が始まる。その後「ようこそ」画面が表示される。
「進む」をクリック
ライセンス同意書に同意して「進む」をクリック
ファイアウォールはデフォルトのまま(SSHのみ)で「進む」をクリック
YDL.netのアカウント設定。持ってないので空白のまま「進む」をクリック
時計の設定。問題なかったのでそのまま「進む」をクリック
ユーザーの作成。設定を入力して「進む」をクリック
サウンドの設定。再生ボタンを押して聞こえたら「はい」で終わったら「終了」をクリック

4.ログイン

設定が完了するとログイン画面になる。
ユーザー名とパスワードを入力してログインする。

わっしょい!

なんか今までで一番簡単にibookG4にLinuxがインストールされた。
触った感じ・・・キーボードのマッピング?がだめぽ。音がでたのはうれしい。デスクトップもかわいくていい。
Ubuntuは良いのだがPPC対応が非公式になったことでやっぱり対応度はいまいち。インストールから躓くことが多い気がする。

■キーボードをまともにする。

メニューから、アプリケーション>システムツール>キーボード で英語(アメリカ合衆国)を選ぶ。
またはコマンド大好きなら、

su
vi /etc/sysconfig/keyboard

KEYBOARDTYPE=”pc”
KEYTABLE=”us”

再起動しなくても

su
loadkeys us

でキーボード設定を変更可能。

USの配列でダメなら他に探してみるといい。

■無線LANを使えるように。GW-US54GXS

デフォルトでは使えなかった。そして、色々やっても使えなかった(T_T
Ubuntu9.04のときと一緒で、firmwareがロードできないっていってるので、以下からzd1211-firmwareをダウンロード

http://sourceforge.net/project/showfiles.php?group_id=129083

解凍してできたフォルダを「zd1211」にリネームして、/lib/firmwareにおいて再起動する。
再起動しないでも、USB抜き差しでもいいかも?

その後、/etc/modprobe.confに

alias wlan0 zd1211rw

を追加
次にwlan0のコンフィグを書く。の前に、

アプリケーション>システムツール>ネットワーク設定
デバイスで新規をクリック
ワイヤレス接続を選択して進む
ワイヤレスカードでwlan0を選択して進む
モード:管理
SSID:SSIDを入力
鍵:WEPなりなんなりキーを入力
あとは全部進んで完了

GW-US54GXSはピカピカ光るが、エラーがでて繋がらない模様。
直接設定ファイルをいじってモードを変えてみたりなんだりしたがだめ。
ubuntu 9.04に比べるとkernelが古いから対応できてないところがあるのかなぁ。でもたぶんカーネルは対応してるはずなんだよなー・・・
わからないが、とりあえず今日は無理でした・x・;

hetemlが面白いことしてる「戻るボタンアワード」

このサイトもお世話になってるレンタルサーバーhetemlさんで、面白い企画をやってます。

レンタルサーバー「heteml」 – 戻るボタンアワード

従来の概念にとらわれない面白い触って楽しめる「戻る」ボタンをYOUやっちゃいなYO

って話です。
なんと、賞金もでるみたいで、グランプリで20万円+heteml永久無料利用権!
永久無料権ほしいいいい!

  • グランプリ(1名)20万円 + heteml永久無料利用権
  • 準グランプリ(1名)5万円 + heteml永久無料利用権
  • アドビ賞(1名)Adobe Creative Suite 4 Web Premium
  • ムームードメイン賞(5名)ドメイン 5 年分 + heteml永久無料利用権

というわけで、何か考えて応募しまくってみようと思います。
他にもpaperboyの方でペパボクリエイターズコンテスト(ペパコン2009)ってのをやってるんで、ウェブページ作れる人も作れない人も明日はカレーの人もさばの味噌煮の人も応募してみるといいです。
いくつ応募してもいいらしいので、もうスパムなみに送ってみるといいと思います。(スパムといえば主人がアリクイに・・・のネタくらいなら当選したかもしれない。)
あと、一応さりげなくあからさまに宣伝すると、hetemlは激安ってわけではないけど、ある程度色々とサイト作るならすごいいいよ!


ibookにubuntu9.04をインストール

久しぶりな更新。最近はもっぱらWindowsさんにはさようならしてUbuntu生活。

〜ibook(ppc)にubuntu9.04を入れたメモ〜
機種名はなんだろうな。ibook G4? うーん。箱とか説明書を実家においてきちゃったからいまいちわからない。

動作の方は現状結構安定している。
今まではUbuntuやXubuntuをインストールして動いても、ちょっと触ってるとフリーズすることが多かったが、今は色々起動しても大丈夫です。
でも、netbook-remixいれてみたら、グラフィック性能が足りないのか画面が変だわ、ウィンドウは最大化されるわ もううざいのですぐやめた。

1.インストール
結構大変だった。
portsからppc版の9.04をダウンロードしてCDに焼き、インストール。

通常インストールすると、インストール後のログイン時に正常なユーザー名とパスワードを入れてもログインできない。
キーマップでも違うのか?
色々選択して試したけどよくわからない。

というわけで、インストール時に、「expert」指定でキーボードをGenericの106あたりを設定(あんまり覚えてないが)
あとは、イメージを選ぶところで、linux-powerppcではなくて、linux-image-xxxx-ppc というのを選択。linux-powerppcでは、起動してくれなかった。

2.インストール後
あいかわらず、インストール後も起動しない。
bootのときに

Linux break=top[ENTER]

として、Busyboxに入る。
んで

echo “xres=1024
yres=768″ > /etc/usplash.conf

として、exit

(ダメな時は modprobe ide_core も必要かも?)

3.起動後
/etc/usplash.confに

xres=1024
yres=768

を書き込んで

sudo update-initramfs -u -k all

Xはあった気がするようなないような。なかったかな。。。
apt-get install ubuntu-desktopとかでインストール。

Xとか他アプリケーションを入れたりなんだりしてると、また起動しなくなるかも。そんときは、またBusybox使って起動して、設定をかきかえる。

4.無線LAN(GW-US54GXS)

最初から認識はされているみたい。
dmesgをみると、firmwareがロードできないっていってるので、以下からzd1211-firmwareをダウンロード

http://sourceforge.net/project/showfiles.php?group_id=129083

解凍してできたフォルダをzd1211にリネームして、/lib/firmwareにおく。

最後に、ネットワークの設定だが、gnomeのネットワークマネージャではうまくいかなかったので、apt-get install wicd でインストール。
設定して無事つながる。

参考:YANO’s digital garage – PLANEX GW-US54GXS

5.XDMCPでネットワークログオン

家で使う場合、メインのPCにネットワークログオンして使った方がPCがはやいのでいいし、ibookも処理をほとんどしないから静かでいい。
普通にできた。ただ、無線LANだとちょっと重い。11nでできるならいいかも。

@まだやってないこと。
—-
GW-US300MiniS
これを使えりゃ家で11nでうほほーい。だが、Linuxのドライバでは300M(デュアルモード?)はまだ無理っぽいことをみたきがする。
PPCでなければ、いろいろやれば動作するっぽいことは見つけたが、PPCでどうなるかはわからない。

トイプードル フォー ♂ の日常 | GW-US300MiniSをUbuntu 9.04 Jauntyで使ってみる

無線LAN USB アダプタ Planex GW-USMicroN を Ubuntu で使う

ubuntuアップデートしてたらvmwareが起動しなくなった

updateしてたらVMWare起動しなくなった(ノД`)
カーネルが更新されて、vmware-config.plが必要なんだけど、カーネルのbuildがgcc-4.2.3なのに、お前が使ってるgccは4.2.4ですよー、なんていいやがる。
しょうがないのでついでにVMware2をダウンロードして、gccを一時的に4.2.3にして、入れなおした。
gccは参考サイト+linux-headerのバージョンが違ったのでそこ修正。
vmware2は持ってきて展開してインストールでOK。ubuntuの場合administratorのユーザーをrootから使えるアカウントに変更する必要あり。

相変わらず世の中のすばらしい方々に感謝です。

古いgccの入れ方:http://d.hatena.ne.jp/nikumanhr/20061204/1165258010
VMWare2のUbuntuでの注意点:http://d.hatena.ne.jp/limitusus/20080925/1222358124

xubuntu8.04rcをibookにいれてみたw

あと数日で正式リリースだってのにいれてみちゃった。まぁ、どうせ最先端の機能は使わないんでなんでもいいんだけどね。。。

で、ubuntuは重くてきちーので初のxubuntuをいれてみることにしました。
hardy-alternate-powerpc.isoを焼き焼きして、普通にインストールして、さぁ起動。

はい。画面まっくろ。起動しない。

さぁ、どうすりゃいいのか。と。実のところ何度もやってるからもういいんだけど・・・

うちの現象は

boot:

からそのまま行くと画面真っ黒な状態。
この場合、まずはboot:で 「 Linux break=top 」します。ちなみに、先頭はLだよ! 「 l 」じゃないよ。あと「=」も意外とめんどい。まぁ、いろいろ押しながら記号のところ押しまくって探してみるといいですね。

すると、Busyboxに入るので、

(initramfs) echo “xres=1024
>yres=768″>/etc/usplash.conf

を入力します。
よく modprobe ide_core って書いてるけど、それはいらないかも。やっといても損はナイw

入力し終わったらexitで抜けると、たぶんいけます。

起動したら、ブラウザやUbuntuを楽しむ前に

/etc/usplash.conf

を編集して、さっきと同じ行を追加してやります。
そしてすかさず

$ sudo updete-initramfs -u -k all

これで再起動しても設定が反映されます。
が、どうもたまにだめになるらしい?
だめになったらまた同じことすれば一応いいはず。

というわけで、ubuntu ppc版いれて、起動しても画面真っ黒で起動しないときは

1.起動時に
boot:Linux break=top[ENTER]

2.BusyBoxで
cat echo “xres=1024[ENTER]
yres=768″ > /etc/usplash.conf[ENTER]
exit[ENTER]

3.起動後、ターミナルで、sudo vi /etc/usplash.conf して 以下を追加
xres=1024
yres=768

4.ターミナルで以下を実行
sudo updete-initramfs -u -k all

以上!

Passenger

メモって寝ようと思ったら余計なサイトみまくっちゃった・・・
というわけで、ほんとにメモ。

Apache単独でRailsアプリケーションを実行可能なPassengerというものがリリースされているようです。
mongrelのようにいちいち起動しなくてもいいし、ポート気にしなくていいし、(多少の設定は必要だが)apacheで普通のサイトのような感じでDocumentRoot設定すればOKってのはすばらしい。
まぁ、すばらしさを感じるほどRailsには触っていませんけどね。
とりあえず、redmineが気になるので、redmineをPassengerで動くようにしてみました。
インストールなどは下記サイト参照。

Overview — Phusion Passenger (a.k.a. mod_rails)

Redmine.JP | Apache上でRedmineを動かす/Passenger(mod_rails for Apache)の利用

MOONGIFT: » チェック必須!Rails新時代の到来か?「Passenger(mod_rails for Apache)」:オープンソースを毎日紹介