• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

踏み台ホストとターゲットホストで異なるユーザIDの場合に
ProxyCommandによる多段SSHをするための設定メモ。

.ssh/config

pre>>
Host targethost
ProxyCommand ssh -l gatewayuser gatewayhost nc %h %p
User targetuser
<<--

posted by genki genki on Sat 14 Aug 2010 at 00:08 with 0 comments
私の場合はCucumberのfeatureをもちろん英語で書いた方が楽なんだけど、日本で生活している以上、日本語で書いた方がいい場合もある。そのため、簡単な日英対訳表をCucumber v0.3.101時点の[languages.yml](http://github.com/aslakhellesoy/cucumber/blob/master/lib/cucumber/languages.yml)からまとめました。 フィーチャの定義 ===========
英語 (原文)日本語 (推奨)日本語 (alt)
Featureフィーチャ機能
Background背景-
Scenarioシナリオ-
Scenario Outlineシナリオアウトラインシナリオテンプレート
テンプレ
シナリオテンプレ
シナリオの定義 (Given-When-Then) ============
英語 (原文)日本語 (推奨)日本語 (alt)
Featureフィーチャ機能
Given前提-
Whenもし-
Thenならば-
Andかつ-
Butしかし但し
Examplesサンプル
参考リンク ====== * [Cucumberの翻訳定義ファイル](http://github.com/aslakhellesoy/cucumber/blob/master/lib/cucumber/languages.yml) * [moroさん作](http://d.hatena.ne.jp/moro/20090603/1244042258)の[misoというwebrat用 日本語step_definitionジェネレータ](http://github.com/moro/miso/tree)は便利だよ
posted by lchin lchin on Fri 18 Sep 2009 at 23:02 with 0 comments

事前にパスの調整をする。Macでは 、/etc/pathsで定義した方が楽だ。どのシェルを使っても、デフォで入るパス設定だ。以下のようにするといいかな。
shell-unix-generic>>
$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin
<<--
パスがこうなる:
shell-unix-generic>>
echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/X11/bin
<<--
/usr/X11/bin/etc/paths.d/X11から設定されている。詳しくはman path_helperで。

MacではReadlineのかわりにBSD系Editlineを使っているけど、これは日本語などとの相性が悪くいためMac標準のRubyのirbが使いものにならない。なので、まずは最新のReadlineを入れる。
shell-unix-generic>>
curl -O ftp://ftp.cwru.edu/pub/bash/readline-6.0.tar.gz
tar xzf readline-6.0.tar.gz
cd readline-6.0
./configure --enable-multibyte --enable-shared
make
sudo make install
<<--

Readlineの用意ができたら、Rubyを入れる。Ruby 1.9でもいいけど、まだ自信がないので1.8.7にする。
shell-unix-generic>>
curl -O ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p174.tar.gz
tar xzf ruby-1.8.7-p174.tar.gz
cd ruby-1.8.7-p174
./configure --enable-shared --enable-pthread --with-readline-dir=/usr/local CFLAGS=-D_XOPEN_SOURCE=1
make
sudo make install
<<--

しめとしてRubyGems
shell-unix-generic>>
curl -O http://files.rubyforge.vm.bytemark.co.uk/rubygems/rubygems-1.3.5.tgz
tar xzvf rubygems-1.3.5.tgz
cd rubygems-1.3.5
sudo /usr/local/bin/ruby setup.rb
<<--

はい、カンタンですね。これくらいなら、まだまだMacPortsは要らない。

posted by lchin lchin on Mon 7 Sep 2009 at 17:49 with 0 comments

gluLookAtでMultiplyされる行列を自前で作る場合、以下のようにすればokです。

If you want to get the matrix that is generated by gluLookAt, here is the way to do it.

c>>
//gluLookAt(
// eye[0], eye[1], eye[2],
// at[0], at[1], at[2],
// 0.0, 1.0, 0.0);
// equivalent pseudo code
float lookat[16];
midentity(lookat);
vec3 s = (vec3)&lookat[0];
vec3 u = (vec3)&lookat[4];
vec3 f = (vec3)&lookat[8];
vec3 t = (vec3)&lookat[12];
vcpy(t, &eye);
vneg(t);
vsub(f, &at, &eye);
vnormalize(f);
vec3 up = {0, 1, 0};
vcross(s, f, &up);
vcross(u, s, f);
vneg(f);
glMultMatrixf(lookat);
<<--

posted by takiuchi takiuchi on Sun 16 Aug 2009 at 14:34 with 0 comments

今までのネットワーク接続はeth0でTAP-WIN32のアダプタに接続し、ホストマチン(Windows)のインターネット共有している。この方法で簡単にゲストのLinuxから外部(インターネットなど)に接続することはできるけど、外部(社内ネットワーク)からはゲストので動いているサーバへアクセスできない。社内ネットワークではcoLinuxのインスタンスに勝手にIPアドレスを与えることはできない場合サーバを公開したいならホストからゲストへポートをフォーワードするしかない。

以下の設定はetho0にTAP-WIN32の設定が既にあることを前提としている。

  1. ホスト(Windows)側のcoLinuxの設定ファイルにslirpのインタフェースを追加する:
    shell-unix-generic>>
    eth1=slirp,,tcp:22:22/tcp:80:80/tcp:443:443
    <<shell-unix-generic

  2. ゲスト(Linux)側の/etc/network/interfacesにeth1を追加:
    shell-unix-generic>>

secondary network for external network access

iface eth1 inet static
address 10.0.2.15
network 10.0.2.0
broadcast 10.0.2.255
netmask 255.255.255.0
gateway 10.0.2.2
<<shell-unix-generic
10.0.2.15は適当なアドレスだけど、gatewayの10.0.2.2は特別で、slirpデーモンのデフォルトアドレスだ。

この記事ではcolinux0.7.3のUbuntuで行なったけど、DebianやFedoraでも設定が同じだろう。ちなみに、XAMPPやandLinuxのようなパッケージを使えばこの設定は不要らしい。

注意点

  • windows側のfirewall設定
  • 複数default gatewayのルーティング問題。解決策が二つ:
  1. SLiRPのgatewayのみにする。要するにeth0/tapにgatewayを定義せず、インターネットの通信をslirpに通す。このやりかたがわりと簡単だけど、SLiRPが若干遅いことと10.0.2.2(slirpデーモン)以外のところにpingできない
  2. 複数default gatewayのルーティングの設定をする (iproute2でpolicy routing)
  3. SLiRPはIPv6に対応していないため、ゲスト側で効果したいサービスがIPv6のアドレスにバインドしてしまうとうまくいかない。netstat -n --inet6 --listeningなどで確認んできる。たとえば、sshの場合は:
    shell-unix-generic>>
    Proto Recv-Q Send-Q Local Address Foreign Address State
    tcp6 0 :::22 :::* LISTEN
    <<shell-unix-generic
    この問題を解決するにはIPv6を無効化にするか、各種サービスを明示的にIPv4のアドレスに設定する。

参考

posted by lchin lchin on Thu 27 Nov 2008 at 15:59 with 0 comments

自分用メモ。
Ubiquityコマンドを作る時や、ビルトインコマンドを見るときに便利なのでまとめてリンクをはっておきます。

about:ubiquity
chrome://ubiquity/content/editor.html
chrome://ubiquity/content/builtincmds.js
chrome://ubiquity/content/cmdutils.js
http://ubiquity.s21g.com/

posted by satoko satoko on Fri 12 Sep 2008 at 05:51 with 0 comments

EC2onRailsでpostfixを使ってaliasesを設定する方法のメモです。

まずはaliasesの定義ファイルの場所ですが、/etc/aliasesにあります。
これを開くと

pre>>
postmaster: root
<<--

というようなエイリアスのリストがあるので、これを編集します。
あて先が複数ある場合はコンマで区切ります。
"@"や":"などの記号を含む場合は二重引用符で囲みます。

あて先に指定できる項目は以下の通り。

  • ユーザ名 or メールアドレス 所定のあて先に転送されます。
  • PATH 指定のファイルに追記されます。
  • | command 指定したコマンドが実行され、標準入力に渡されます。

他にもありますが、詳細は下記のSee Alsoを参考にしてください。

編集し終わったら、DBを更新するために以下のコマンドを実行します。

pre>>

postalias /etc/aliases

<<--

以上で完了。

See Also

posted by genki genki on Fri 9 May 2008 at 17:27 with 0 comments

EC2のインスタンスのイメージをバックアップする手順のメモです。
以下はEC2上のインスタンスにSSHでログインしての作業です。
まずは以下のようなコマンドでイメージを書き出します。

shell>>

ec2-bundle-vol -d /mnt -k /mnt/pk-XXXXXXXXXX.pem -c /mnt/cert-XXXXXXXXXX.pem -u <AWSのユーザID>

<<--

AWSのユーザIDはAWSの「Your AWS Profile」のページから参照できます。
XXXX-XXXX-XXXXのような数字の羅列でした。

結果として、/mnt/の下にimage.manifest.xmlimage.part.XXというファイルが書き出されます。

処理が終了するまでの間に、10分弱ぐらいかかったかな。
Have a coffee break!

続いてはイメージのS3へのアップロードです。以下のコマンドで先ほど生成されたファイル群をS3にアップロードします。

shell>>

ec2-upload-bundle -b s21g-ubuntu -m /mnt/image.manifest.xml -a <アクセスキー> -s <秘密アクセスキー>

<<--

アクセスキーと秘密アクセスキーはAWSのページで確認してください。
-bで指定した名前は、S3のバケット名になります。

こちらは2分ぐらいで終了。トータルで10分ちょっとですね。

最後に、ローカル環境から以下のコマンドを実行して、作成したイメージを登録します。

sh>>
% ec2-register s21g-ubuntu/image.manifest.xml
IMAGE ami-8a789de3
<<--

これによって、AMIを指定してインスタンスを起動できるようになります。

posted by genki genki on Fri 25 Apr 2008 at 16:55 with 0 comments