linux

ALMiniumのインストール

概要 ALMiniumとは、ALM(Application Lifecycle Management)とRedmineの合金(..nium)という意味で、Redmineを利用してALMを実現するためのツールです。簡単なインストーラで、Redmine・Subversion・Git・Mercurialなどプロジェクト管理に必要なツールを一通…

sysstatのインストール

概要 システムの統計情報を収集するためにsysstatパッケージをインストールします。 CentOSの標準リポジトリにあるsysstatは7.0.2と古く、8.0から追加されたpidstatコマンドも使えないので、最新のSRPMをダウンロードしてインストールします。 構成 CentOS r…

単独のサーバーの「負荷」の正体を突き止める

指標を読む ロードアベレージ # uptime 15:40:33 up 357 days, 22:34, 2 users, load average: 0.19, 0.17, 0.12 コマンド uptime。load averageに続く3つの数字が過去1分間、5分間、15分間の平均値を表します。 意味 処理を実行したいが、なにかしらの要因…

cURLを使ったファイルのアップロード

構成 CentOS release 5.6 (Final) cURL 7.15.5 (x86_64-redhat-linux-gnu) ファイルのアップロード 例としてHTTPを取り上げていますが、FTP / FTPS / SFTP / SCPについても同様です。 HTTPを使うときはHTTPサーバーがPUTを許容するように設定されている必要…

Memcacheのstatsコマンド

概要 Memcacheのstatsコマンドでどんな情報を表示できるのか、というメモ。 構成 CentOS release 5.5 (Final) memcached version 1.4.5 statsコマンドで表示できる情報 項目名 説明 例 pid プロセスID 18622 uptime memcachedの稼働時間(秒) 10699178 time…

net.core.somaxconnについて調べてみた

概要 ↓ memcachedのtcp_backlogのデフォルト値は1024で、stats settingsにも1024と表示されているのですが、 stats settings ... STAT tcp_backlog 1024 ... END↓ net.core.somaxconnがデフォルト値のままだと128に切り詰められてしまい、 # cat /proc/sys/n…

トラブルシューティングでよく使うコマンド<各種サービス編>

Unicornが8080ポートへのHTTPリクエストにレスポンスしていることを確認したい localhostの8080ポートに、/helpsを要求するGETリクエストを送信します。Unicornが8080ポートをlistenしていれば、レスポンスとして/helpsの内容が返ってきます。 $ curl http:/…

hdparmコマンドを実行すると「HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device」になる

構成 CentOS release 5.6 (Final) 問題 hdparmコマンドを実行すると「HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device」と表示されます。 # hdparm -t /dev/vda1/dev/vda1: Timing buffered disk reads: 412 MB in …

共有ライブラリの追加

概要 共有ライブラリをシステムに認識させるには、そのディレクトリを共有ライブラリ検索パスに追加する必要があります。/libディレクトリと/usr/libディレクトリはデフォルトで含まれていますが、FedoraやCentOSでは/usr/local/libディレクトリが含まれてい…

RPM Cheat Sheet

拡張子 多くのRPMパッケージにはバイナリパッケージとソースパッケージが用意されています。 バイナリパッケージであれば.i586.rpmや.alpha.rpmといったハードウェアの名前を含む拡張子が、ソースパッケージ(SRPMと呼ばれます)であれば.src.rpmという拡張…

hdparmコマンドでハードディスクを簡易ベンチマークする

概要 ハードディスクの簡易ベンチマークとして、hdparmコマンドを使う方法を紹介します。hdparmコマンドはハードディスクのパラメータを設定・取得するコマンドですが、-tオプション・-Tオプションを指定することで、シーケンシャルアクセスの読み込み速度を…

Apacheのディレクティブの意味

概要 Apacheの設定ファイル(/etc/httpd/conf/httpd.conf)に登場するディレクティブが多すぎて、毎回覚えきれないので、少しずつまとめていくことにしました。 構成 CentOS release 5.6 (Final) Apache 2.2.3 ディレクティブ一覧 ServerTokens クライアント…

GitHubにおけるSSLの認証エラーを回避するため、EV SSL用ルート証明書を追加する

概要 2011年5月末以降、github.comにはDigiCertのEV SSL証明書(DigiCert HighAssurance EV CA-1)が使われるようになりました。しかし、CentOS 5の標準パッケージにはDigiCertのEV SSL用ルート証明書(DigiCert High Assurance EV Root CA)が含まれていな…

Jenkinsのインストール

概要 JenkinsリポジトリのRPMパッケージから、Jenkinsをインストールします。 構成 CentOS release 5.6 (Final) JDK 2000:1.7.0-fcs Jenkins 1.430-1.1 準備 JDKをダウンロードして、インストールします。そのままダウンロードすると、途中でリダイレクトさ…

Ruby 1.9.2のインストール

概要 Ruby 1.9.2のソースコードからRPMパッケージを作成し、インストールします。 構成 CentOS release 5.6 (Final) checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux] 準…

checkinstallのインストール

概要 ソースコードだけでパッケージが提供されていない。アンインストールの手間などを考えるとパッケージ管理システムで一元管理したいが、独自にパッケージを作成するノウハウはない。多くのソフトウェアがパッケージで提供されるようになったいまでも、こ…

リモートリポジトリのURLの変更

概要 git remote add origin 〜でタイポして間違ったURLを登録してしまったり、中央リポジトリが引っ越してしまった場合に、リモートリポジトリのURLを変更する方法です。 構成 git-core @1.7.6.1_1+doc+pcre+python27 git-flow @0.4.1_0 URLの変更方法 $ gi…

Zabbixプロキシサーバのインストール

概要 Zabbixプロキシサーバをインストールします。 構成 CentOS release 5.7 (Final) Zabbix Proxy v1.8.8 (revision 21965) (28 September 2011) ZABBIX-JPリポジトリのインストール ZABBIX-JPリポジトリをインストールします。 # rpm -ivh http://www.zabb…

Zabbixエージェントのインストール

概要 Zabbixの監視対象とするノードに、Zabbixエージェントをインストールします。 構成 CentOS release 5.6 (Final) ZABBIX-JPリポジトリのインストール ZABBIX-JPリポジトリをインストールします。 # rpm -ivh http://www.zabbix.jp/binaries/relatedpkgs/…

spiderストレージエンジンのインストール

概要 spiderストレージエンジンはMyISAMやInnoDBと同じMySQLのストレージエンジンであり、斯波健徳氏によって開発されています。spiderストレージエンジンは、それ自身ではデータを持たない変わったストレージエンジンです。代わりに、異なるMySQLインスタン…

ImageMagick + RMagickのインストール

概要 ImageMagickとRMagickをインストールします。 構成 CentOS release 5.7 (Final) ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux] バージョンの選択 今回のプロジェクトではRuby 1.9 + Rails 3を使うことが決定しています。http://rmagick.r…

yum-prioritiesのインストール

概要 パッケージをアップデートしたとき、追加リポジトリに公式パッケージよりも新しいバージョンがあると、意図しない不安定なバージョンをインストールしてしまうことがあります。そのため、意図的に追加リポジトリからインストールするとき以外は、追加リ…

sudoしているのに、リダイレクトすると「許可がありません/Permission denied」になる

構成 CentOS release 5.6 (Final) GNU bash version 3.2.25(1)-release (x86_64-redhat-linux-gnu) 問題 リダイレクトすると「許可がありません/Permission denied」と表示されます。これはlsのみがsudoされて、リダイレクトはログインユーザーで実行された…

シェルスクリプトの二重起動禁止

検証環境 Fedora release 8 (Werewolf) Bash GNU bash, version 3.2.33(1)-release (i386-redhat-linux-gnu) プロセスを見る方法 [ $$ != `pgrep -fo $0` ] && { echo 'Cannot run multiple instance.' >&2; exit 9; } $$ 自分自身のプロセスID pgrep パター…

RVMのインストール 〜 CentOS 5.6編

検証環境 CentOS release 5.6 (Final) RVM 1.6.31 インストール 依存パッケージをインストールします シェルのバージョンを確認します。 $ bash --version GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu) Copyright (C) 2005 Free Software…

MySQLデータディレクトリの移動

Fedora release 8 (Werewolf) MySQL Ver 14.12 Distrib 5.0.45 # /etc/rc.d/init.d/mysqld stop Stopping MySQL: [ OK ]MySQLを停止します。 # mkdir /mysql # cp -rp /var/lib/mysql/* /mysql # mv /var/lib/mysql /var/lib/mysql.bak移動先となる/mysqlデ…

シャットダウンの予約

検証環境 CentOS release 5.6 (Final) シャットダウンの予約 19:50にサーバーをシャットダウンします。シャットダウンを予約すると、即時、すべてのログインユーザーに19:50になるとサーバーがシャットダウンされる旨が通知されます。 # nohup shutdown -h 1…

SWF出力ライブラリ『Ming』

Ming 0.4.3 Ubuntu - Amazon Linux release 2011.02.1.1 (beta) インストール for Ubuntu Ming # cd /usr/local/src # wget http://jaist.dl.sourceforge.net/sourceforge/ming/ming-0.4.3.tar.gz # tar zxvf ming-0.4.3.tar.gz # cd ming-0.4.3 # ./configu…

VPSのチューニングに役立ちそうな記事

さくらVPSで一日6万PVを処理するためにしたこと - 新卒インフラエンジニア2年目 さくらのVPS 512で6万PV/日のサイトを運用するため、ApacheやPHPに施したチューニングがまとめられています。

nkfによる文字コードの変換

# nkf --guess index.php EUC-JPファイルのエンコードを確認します。 # nkf -Ew index.php -Eは入力形式をEUC-JPに、-wは出力形式をUTF8に指定します。index.phpを読み込み、変換した結果を標準出力に出力します。 # nkf -Ew **/*.php | nkf --guess# nkf -E…