2009/07/01

まるちSkype (4.0以降ですよ!)

私は裏表があります。その場その場で態度が変わります。
なので、Skypeもいろいろと使い分けたいです。
ので、こんなものを作ってみました。

multi_skype.js

//アカウント設定
var account = [
{
id : ''
,pw : ''
}
,
{
id : ''
,pw : ''
}
];

//Skypeプログラムへのパス
var SKYPE = '"C:\\Program Files\\Skype\\Phone\\Skype.exe"';

//------------------------------------------------

var wsh = new ActiveXObject("WScript.Shell");
var cmd;
var opt = new Array();

for(var i = 0; i < account.length; i++){
opt = [
"/username:" + account[i].id
,"/password:" + account[i].pw
,"/nosplash"
,"/minimized"
,(i > 0) ? "/secondary" : ""
];
cmd = SKYPE + " " + opt.join(" ");
wsh.exec(cmd);
WScript.Sleep(1000);
}

アカウント設定のところに使い分けたい id, pw を入力したらダブルクリックで起動します。
Skypeの自動起動オプションはチェックを外して下さいね。


2009/05/20

IPv6?

なんだか、MySQL5.1にしたら、リモートから接続できなくなった・・・?

mysql> SELECT version();
+------------------------------+
| version() |
+------------------------------+
| 5.1.32-ndb-7.0.5-cluster-gpl |
+------------------------------+
1 row in set (0.00 sec)


[root@ ~]# mysql -u root -p -h 192.168.1.xxx
Enter password:
ERROR 1130 (00000): Host '::ffff:192.168.1.nnn' is not allowed to connect to this MySQL server

ああ、もう・・・。

CentOSのIPv6をきっちりOFFにすればいいのかなぁ?
でも、おんなじ環境でMySQL5.0のサーバには接続できるしなぁ。

bind-address というのを設定すればいいのか?
[root@ ~]# vi /etc/my.cnf
[mysqld]
bind-address = 192.168.1.xxx

[root@ ~]# /etc/init.d/mysql restart

わーい、つながった。

2009/03/08

ライブラリはあるのに、無いと怒られるとき

CentOS 5 の話です。
configure なんかでライブラリが無いっていうから、あれれ?って探すとあるじゃん!
なんで無いっていうの!もう!ってときは、ありかをそっと教えてあげてください。
[root@ ~]# vi /etc/ld.so.conf.d/local-lib.conf
/usr/local/lib

[root@ ~]# ldconfig

 

namazu.so の作り方

(2010/02/06)
Sourceforgeのphp-i18に移動したようですのでそちらにあわせて手順を変更
[root@ ~]# wget 'http://sourceforge.jp/frs/redir.php?m=iij&f=%2Fphp-i18n%2F14174%2Fnamazu-2.3.1.tgz'
[root@ ~]# tar zxvf namazu-2.3.1.tgz
[root@ ~]# cd namazu-2.3.1
[root@namazu-2.3.1 ~]# phpize
[root@namazu-2.3.1 ~]# ./configure --with-namazu
[root@namazu-2.3.1 ~]# make
[root@namazu-2.3.1 ~]# make install
[root@ ~]# cd ..
[root@ ~]# rm -rf namazu-2.3.1
[root@ ~]# rm -f namazu-2.3.1.tgz


ソース取得
cvs -d:pserver:cvsread@cvs.php.net:/repository co pecl/namazu


コンパイル
[root@ ~]# cd pecl/namazu
[root@ namazu]# phpize
[root@ namazu]# ./configure --with-namazu
[root@ namazu]# make
[root@ namazu]# make install


phpize がない場合
[root@ ~]# yum install php-devel


エラーが出る場合
configure: error: Cannot find libnamazu.h. Please specify correct Namazu installation path
Namazuがインストールされているか確認する
[root@ ~]# which namazu

 

2009/02/15

MySQLのSLAVEが切れて涙目

Slave_IO_Running: No
Slave_SQL_Running: No

とかなって、切ない気持ちになることあるじゃないですか。
ほんで、どーにか簡単に復旧できねーかなぁと思ったらようやく見つけましたよ。

mysql> STOP SLAVE;
[root@ ~]$ /etc/init.d/mysqld stop
[root@ ~]$ rm -f /var/lib/mysql/relay-log.info
[root@ ~]$ /etc/init.d/mysqld start
mysql> START SLAVE;

これでどうにか復旧できることもあると思いますよ。

 

2009/02/11

mknmzでインデックスを作成する際に文字コードが正しく認識されないようです

Namazu: FAQ
mknmzはLANGに `ja' から始まるlocale名が指定されていない時は日本語の処理を行いません。
Namazu 2.0 tutorialの 日本語の文書を扱うにはを参照してください。

ほー、そうなのか。日本人が作ったからって油断してちゃダメってことですね。わかります。
mknmz に --indexing-lang=ja をつければいいんですね。

2009/01/03

LVS+keepalived で負荷分散

LVS と keepalived で負荷分散に挑戦してみましたよ!
CentOS release 5.2 ですよ。

構成はこんな感じ
              |192.168.1.100
+-----------+
| LVS |
+-----------+
|
+---------------+
| |
+-----------+ +-----------+
|192.168.1.4| |192.168.1.5|
+-----------+ +-----------+



ロードバランサにするマシンにLVSとkeepalivedをインストールします。
LVSは、RPMでさくっと入ります。
yum -y install ipvsadm

keepalived RPM が無いから作ります。
[root@~ ] yum -y install kernel-devel
[root@~ ] cd /usr/src/redhat/SOURCES/
[root@~ ] wget http://www.keepalived.org/software/keepalived-1.1.15.tar.gz
[root@~ ] tar zxvf keepalived-1.1.15.tar.gz
[root@~ ] cd keepalived-1.1.15

おもむろに ./configure する
[root@~ ] ./configure
Keepalived configuration
------------------------
Keepalived version : 1.1.15
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lpopt -lssl -lcrypto
Use IPVS Framework : No
IPVS sync daemon support : No
Use VRRP Framework : Yes
Use LinkWatch : No
Use Debug flags : No

あれ?Noばっかし・・・・
カーネルのソース指定が必要なんだそうな
http://d.hatena.ne.jp/yoshifumi1975/20070731/p1
でも、何を指定すりゃいいんだろ?
Makefile.in に rpm なんてオプションがあるから試してみる。
[root@~ ] make rpm

んーなになに。うちの環境ではこれですか。
--with-kernel-dir=/lib/modules/2.6.18-92.el5/build

もっかい試す
[root@~ ] ./configure --with-kernel-dir=/lib/modules/2.6.18-92.el5/build

でも、だみだよー
/usr/src/kernels/2.6.18-92.1.6.el5-x86_64/net/core/link_watch.c... no
Keepalived configuration
------------------------
Keepalived version : 1.1.15
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lpopt -lssl -lcrypto
Use IPVS Framework : Yes
IPVS sync daemon support : Yes
Use VRRP Framework : Yes
Use LinkWatch : No
Use Debug flags : No

link_watch.c がないってさ。なんだよー
とりあえず、ここに入ってるってさ。
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.8.tar.gz
カーネルに近いのを探して、ターゲットの下にコピーして下さい。
[root@~ ] cd ..
[root@~ ] tar zxvf linux-2.6.18.8.tar.gz
[root@~ ] cp -r linux-2.6.18.8/net/core /lib/modules/2.6.18-92.el5/build/net/

そんでなんとかこんな状態に持ってって下さい。
[root@~ ] ./configure --with-kernel-dir=/lib/modules/2.6.18-92.el5/build
Keepalived configuration
------------------------
Keepalived version : 1.1.15
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lpopt -lssl -lcrypto
Use IPVS Framework : Yes
IPVS sync daemon support : Yes
Use VRRP Framework : Yes
Use LinkWatch : Yes
Use Debug flags : No

できた?ほしたらこれでRPMができるはず
[root@~ ] make rpm
[root@~ ] rpm -ivh /usr/src/redhat/RPMS/x86_64/keepalived-1.1.15-5.x86_64.rpm


後片付け
[root@~ ] cd ..
[root@~ ] rm -rf keepalived-1.1.15
[root@~ ] rm -f keepalived-1.1.15.tar.gz
[root@~ ] rm -rf linux-2.6.18.8
[root@~ ] rm -r linux-2.6.18.8.tar.gz




ロードバランスされる側のマシン(192.168.1.4,192.168.1.5)に、仮想IPの192.168.1.100を認識させてやります。
[root@~ ] vi /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.1.100
NETMASK=255.255.255.255
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
[root@~ ] ifup lo:0

[root@~ ] vi /etc/sysctl.conf
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
[root@~ ] sysctl -p

Google Analytics