Archive for 1月, 2012

ファイルシステムの確認について

火曜日, 1月 31st, 2012

2回ググったのでメモ。

稼働中サーバーのファイルシステムを確認する方法です。

自分でどのフォーマットでmkfsしたかどうか忘れたデバイスがあります。

また、後から管理するサーバーのファイルシステムが分らない場合もきっとあります。

df -T

Filesystem    Type   1K-blocks      Used Available Use% Mounted on

/dev/sda3     ext4   271223832   1765368 254991932   1% /

/dev/sda1     ext3     1019208     40720    925880   5% /boot

tmpfs               tmpfs     8211244         0   8211244   0% /dev/shm

/dev/vgca0     xfs   1028677632     34256 1028643376   1% /mnt/storage

 

mysql5.5をソースからインストール

金曜日, 1月 27th, 2012

中途半端に投稿しました。

動かなくても責任とれません。参考程度にしてください。

 

http://www.mysql.com/downloads/mysql/5.5.html

ソースを持ってくるときには注意が必要です。

・Select Platform⇒Linux-Generic⇒mysql-5.5.9-linux2.6-x86_64.tar.gz

・Select Platform⇒Source Code⇒mysql-5.5.9.tar.gz

上のルートは死亡フラグですのでお気を付け下さい。

CMakeLists.txtがありません。

CMakeLists.txtがなんなのかを理解して、ご自身で書く人にはどちらでもいいと思います。たぶん。

 

mysql5.5系からcmakeが採用となりました。

cmake ncurses-devel gcc gcc-c++

bisonがないとwarningが出るので、一応入れました。

上記パッケージが必須となります。debian系などディストリビューションによってはパッケージ名が違うのでご注意下さい。

wget http://www.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.20.tar.gz/from/http://ftp.iij.ad.jp/pub/db/mysql/

tar xzvf mysql-5.5.20.tar.gz

cd mysql-5.5.20

cmake .

make

make install

prefix等指定する場合はcmakeに引数を渡します。

今までは./configure –helpでオプションを参照出来ましたが、

cmakeではcmake -iでインタラクティブに進められます。

今回使用したオプションは以下のとおり

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=ujis -DMYSQL_DATADIR=/var/lib/mysql/ -DWITH_EMBEDDED_SERVER=on -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=yes

 

-DWITH_EMBEDDED_SERVER=onをつけてmake installしたらError吐いて止まった。

CMake Error at libmysqld/examples/cmake_install.cmake:41 (FILE):  file INSTALL cannot copy file  “/usr/local/src/mysql-5.5.20/libmysqld/examples/mysql_embedded” to  “/usr/bin/mysql_embedded”.Call Stack (most recent call first):  cmake_install.cmake:99 (INCLUDE)

make: *** [install] Error 1

どうやら組み込み系で使う用途らしい。要するに商用かな。ライセンスキーがいるのかどうか不明だが、CallStack吐いてmake installが止まる。
オプション変えて再実行
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=ujis -DMYSQL_DATADIR=/var/lib/mysql/  -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=yes

 

generalオプションとレイアウトは下記参照

http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#cmake-general-options

http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#cmake-installation-layout-options

 

公開鍵登録について

水曜日, 1月 11th, 2012
ssh-copy-id -i ~/.ssh/id_rsa.pub example.com
最初のアクセスでパスワード認証が行われ、正常にログインできるとログイン先のサーバーのauthorized_keysに自動で書き込んでくれるらしい。
ユーザ指定があればホスト名の前にuser@example.comとして下さい。
今までの手順だと
cat ~/.ssh/id_rsa.pub
上記出力をコピー
sshでリモートサーバにログイン
mkdir ~/.ssh
vi ~/.ssh/authorized_keys
先ほどコピーしたファイルをペースト
アナログでしたね。これからはssh-copy-idコマンドで鍵の登録をしますよ。
ちなみに、接続元で鍵を作ってからじゃないとうまくいきませんので。
また、何回も実行すると同じ記述がリモートホストのauthorized_keysに重複して書かれますので。あしからず。

ソフトウェアRAIDについて

水曜日, 1月 4th, 2012

ソフトウェアRAIDはRAIDカードを必要としない、LINUXのOSで実現するRAIDです。

これが一度壊れるとコマンドをごにょごにょして復旧するのですが、DISKサイズが大きいと

Rebuildに時間が掛かります。

cat /proc/mdstat

md2 : active raid1 hdb3[1] hda3[0]      242091392 blocks [2/2] [UU]      [>………………..]  resync =  3.6% (8801920/242091392) finish=606.3min speed=6411K/sec

606分っていつ終わるのか分りません。

そこでマシンに負荷は掛かりますがカーネルパラ-メータを弄ります。

/proc/sys/dev/raid/speed_limit_min

/proc/sys/dev/raid/speed_limit_max

上記が最低限のスピード設定で下記が上限値ですね。

デフォルトでは下限が1000、上限が200000となっています。

ディストリビューションによっては差異があるかもしれません。

この下限を上げることで強引にREBUILDのスピードを上げる事が出来ます。

上限も同様です。

実際にどのように上げるかというと、

echo 100000 > /proc/sys/dev/raid/speed_limit_min

以上です。