東日本大震災 被災犬救済チャリティーバザー

Dog Design Factoryさんが開催されたチャリティーバザーに行ってきました。小規模ながら、被災した犬たちのために自分たちができることを、という思いのこもったイベントでした。大企業が一億円を寄付、なんていうのは凄い話だと思いますが、こういう"ひとり…

プロセスのメモリ使用量を計算する

構成 CentOS release 5.5 (Final) 手順 例として、Zabbixサーバーのメモリ使用量を計算してみましょう。まずはZabbix関係のプロセスをgrepします。 # ps -ely | grep zabbix以下の出力例では読みやすさのためにヘッダ行を追記しています。上記のコマンドでgr…

後置判定の繰り返し文

繰り返す内容を最低一回は実行したい、というときに使う後置判定の繰り返し文ですが、Rubyではこう書きます。begin〜endで括るのがポイントです。while文 begin # 繰り返す内容 end while 継続条件 until文 begin # 繰り返す内容 end until 終了条件

zip形式とbzip2形式の圧縮率を比較してみました

mysqldumpの出力をどちらで圧縮しようかと思い、圧縮率を比較してみました。元データはmysqldumpが出力したSQL文、使ったツールはzip形式がgzip、bzip2形式がbzip2です。 圧縮形式 ファイルサイズ(Bytes) 圧縮率 圧縮なし 5946027 100% zip形式 1114211 18…

InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes

概要 mysql-develをインストールしたところ、依存関係に引きずられてMySQL本体のバージョンも上がってしまいました。エラーによってMySQLを起動できなくなったため、InnoDBログファイルを作り直すことで修正しました。 問題 mysql-develをインストールしたと…

サービス監視ソフトウェア『Monit』

インストール CentOSの標準リポジトリには存在しないので、rpmforgeリポジトリを追加します*1。 rpm -ivh http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.1-1.el5.rf.i386.rpmインストールします。 # yum install monit --enabler…

Nginxでcould not build the server_names_hashを解決した件

CentOS 5.5 (Final) Nginx 0.8.54 Nginxの設定ファイルをテストしたところ、「server_names_hash_bucket_sizeを大きくしなさい」というエラーメッセージが表示されました。 # /etc/rc.d/init.d/nginx test [emerg]: could not build the server_names_hash, …

RMagickのLoadErrorで迷走した件

CentOS 5.5 (Final) # unicorn_rails -D -E production -c config/unicorn_production.rbUnicornを起動すると次のようなエラーが発生して、起動に失敗しました。どうやら共有ライブラリ libMagickCore.so.4が認識されていないようです。 FILE: $RAILS_ROOT/l…

NTPサーバー『ntpd』のインストール

CentOS 5.5 (Final) # yum install ntp時刻が大きく狂っていると正しい時刻が反映されないので、最初の一回は手動で同期しておきます。 # ntpdate ntp.nict.jp時刻が大きく狂っていたとき、突然正しい時刻に修正することは危険をともないます。時刻が飛ぶこ…

統合監視ソフトウェア『Zabbix』のインストール

ZABBIX-JPリポジトリの登録 # rpm -ivh http://www.zabbix.jp/binaries/relatedpkgs/rhel5/i386/zabbix-jp-release-5-3.noarch.rpmZABBIX-JPリポジトリの標準設定では1.6系が選択されているため、1.8系に切り替えます。 # alternatives --config zabbix-jp-r…

アマゾンウェブサービス クラウドアドバンテージセミナー

本日、ベルサール汐留で開催された『アマゾンウェブサービス クラウドアドバンテージセミナー』に参加してきました。主な目的は、昨今のソーシャル&ウェブサービスにおいて、AWSがどういう位置付けでどの程度使われているのか、を聴くためです。また先日リリ…

crontabの書き方

検証環境 CentOS release 5.6 (Final) コマンド crontabを編集するには、 $ crontab -ecrontabを表示するには、 $ crontab -l 設定例 # 12月31日の13:00に実行します。 00 13 31 12 * ~/bin/script.bash # 毎週月曜日の15:00に実行します。 00 15 * * 1 ~/bi…

MacにインストールしたMySQLをアンインストールする

Mac OS X 10.6.6 MySQL Mac OS X ver. 10.6 (x86, 64-bit), DMG Archive MySQL Sandboxを使ってみようと思い、素でインストールしてあったMySQLをアンインストールしたので、その手順をメモしておきます。なお、アンインストールしたMySQLはここからダウンロ…

Mac OS X 10.6 Snow LeopardにMySQL Sandboxをインストールする

Mac OS X 10.6.6 MySQL Sandbox 3.0.17 MySQL MySQL Community Server 5.5.10 Mac OS X ver. 10.6 (x86, 64-bit), Compressed TAR Archive ここを参考に、rootでCPANからMySQL Sandbox本体をインストールします。ソースコードからインストールする場合は、こ…

Finderで隠しファイルを表示する

隠しファイルを表示するには、ターミナルで以下のコマンドを実行する。 $ defaults write com.apple.finder AppleShowAllFiles TRUE $ killall Finder元に戻す(隠しファイルを隠す)には、ターミナルで以下のコマンドを実行する。 $ defaults write com.app…

Rubyバージョン管理ツール『RVM』

概要 RVM = Ruby Version Managerとは、Wayne E. Seguin氏によって開発された、複数のRubyの処理系をインストール、共存させるためのツールです。MRI・REE・JRubyといった複数の有力な処理系が存在するとともに、1.8系から1.9系への過渡期でもある現在、複数…

MySQLのパーティショニング

パーティショニングはMySQL 5.1で追加された新機能です。 パーティショニングの種類 種類 内容 RANGE パーティションごとに範囲を指定して振り分けます。 LIST パーティションごとに格納する値で振り分けます。 HASH 1つのカラムの値を式の結果で振り分けま…

swfmillとswfmill_rubyのインストール

CentOS 5.5 (Final) swfmill 0.3.1 いろいろハマッたので、最終的にインストールに成功するまでの経緯を残しておきます。なお、swfmill 0.3.1より前のパッケージは、Flash Lite 1.xの日本語エンコーディング形式であるcp932に対応していません。0.3.1より前…

GNU AutoconfとGNU m4のインストール

概要 GNU Autoconfはシステムに最適化したconfigureファイルを生成するプログラムです。m4に依存しています。m4はUNIX系システムに標準で付属するマクロプロセッサです。GNU m4はm4 SVR4版にいくつかの機能拡張が施されています。どちらのインストールも、./…

RailsでURLエンコードする方法

ERB::Utilを使う方法 >> ERB::Util.url_encode("http://www.foobar.jp/baz/?qux=123&quux=xyz") => "http%3A%2F%2Fwww.foobar.jp%2Fbaz%2F%3Fqux%3D123%26quux%3Dxyz" CGIを使う方法 # エンコード >> CGI.escape("http://www.foobar.jp/baz/?qux=123&quux=xy…

RDocのアップデート

RDocをアップデートする Rubyと一緒にインストールされたRDocのバージョンが古いので、 # rdoc --version RDoc V1.0.1 - 20041108最新版にアップデートします。 # gem install rdoc NOTE: If you are running Ruby 1.9.2 you can ignore this message. RDoc …

ファイルの各行から一部分を切り出す cut

構文 cut -b<byte position> <filename> cut -c<char position> <filename> cut -f<field position> [-d<delimiter>] <filename>delimiterを省略するとタブ文字が区切り文字として扱われます。 例 5Byte目を切り出す $ cut -b5 access.log 5Byte目と10Byte目を切り出す $ cut -b5,10 access.log 5Byte目から10Byte目までを切り出す $ cut -b5-10 acces</filename></delimiter></field></filename></char></filename></byte>…

Gitのインストール

概要 Gitをインストールし、共有リポジトリを作成してみます。GitはLinus Benedict TorvaldsによってLinuxのソースコードを管理するために作られた分散型バージョン管理システムです。 構成 CentOS 5.5 (Final) Git 1.7.4.rc2 インストール yumパッケージで…

MySQL標準 負荷測定ツール mysqlslap

mysqlslapはMySQL専用の簡易な負荷測定ツールです。MySQL 5.1.4からは標準で提供されているため、これ以降のバージョンがインストールされていれば追加のソフトウェアをインストールすることなく実行できます。またmysqlslap自身はMySQLのクライアントとして…

telnetコマンドでメールを送信する

$ telnet mail.foobar.jp 587 Trying 192.168.10.19... Connected to mail.foobar.jp (192.168.10.19). Escape character is '^]'. 220 mail.foobar.jp ESMTP HELO foobar.jp 250 mail.foobar.jp MAIL FROM: mail_from@foobar.jp 250 ok RCPT TO: mail_to@fo…

TCPポートで接続できるかを確認する

$ telnet TCPポートで接続できるかを確認するには、telnetコマンドが便利です。 $ telnet 192.168.10.19 25 Trying 192.168.10.19... Connected to 192.168.10.19 (192.168.10.19). Escape character is '^]'. 220 192.168.10.19 ESMTP Postfix たとえば、サ…

ネームサーバーに問い合わせを行う dig(とnslookup)

digとはdomain information groperの略で、ネームサーバーに問い合わせを行い、その応答結果を表示するコマンドです。digとよく似た機能を提供するコマンドにnslookupがあります。その違いは、nslookupがネームサーバーからの応答を見やすいように加工して表…

MuninによるNginxの監視

Muninのプラグインリポジトリ Munin Exchange からプラグインをダウンロードします。 # cd /usr/share/munin/plugins # wget http://exchange.munin-monitoring.org/plugins/nginx_status/version/3/download -O nginx_status # wget http://exchange.munin-…

Ruby Enterprise Editionのインストール

環境 CentOS 5.5 (Final) Amazon Linux 2010.11.1 (beta) 念のため、既存のyumパッケージをアップデートしておきます。 # yum check-update # yum update 開発ツール一式(GCCなど)をインストールします。 # yum groupinstall "Development Tools" ビルドに…