ClipMenuのスニペットをバックアップする方法

Macを乗り換えるときや、故障したときのためにClipMenuのスニペットをバックアップしておく方法。すぐに見つかると思っていたら、ググっても意外に見つからなかったのでメモしておく。

ClipMenuの環境設定 ≫ スニペットスニペットを書き出す

Python開発環境の構築

手元のMacBook Proにpythonbrewとvenvを使ってPython開発環境を構築しました。

構成

Mac OS X 10.7.3 ( Snow Leopard )
Xcode 4.3
pythonbrew 1.1
Python 2.7.2, 3.2

環境構築手順

pythonbrewをインストールします。
$ curl -kL http://xrl.us/pythonbrewinstall | bash

2012年8月26日、ダウンロード先のURLをhttp://github.com/utahta/pythonbrew/raw/master/pythonbrew-installから変更しました。

インストールが終わったら.bash_profileに次の一行を追記し、

FILE: $HOME/.bash_profile

[ -s "$HOME/.pythonbrew/etc/bashrc" ] && source "$HOME/.pythonbrew/etc/bashrc"

sourceしておきます。

$ source .bash_profile
Pythonをインストールします。
$ pythonbrew install 2.7.2 3.2

特定のバージョンを有効化するにはswitchコマンドを使用します。

$ pybrew switch 2.7.2
仮想環境を作成します。

作成された仮想環境は使用中のバージョンに紐付けられます。

$ pybrew venv create py272

使用中のバージョンに紐付いた仮想環境を表示します。

$ pybrew venv list
# virtualenv for Python-2.7.2 (found in /Users/tetsuyai/.pythonbrew/venvs/Python-2.7.2)
py272

仮想環境をすべて表示するには-aオプションを追加します。

$ pybrew venv list -a
# virtualenv for Python-2.7.2 (found in /Users/tetsuyai/.pythonbrew/venvs/Python-2.7.2)
py272
# virtualenv for Python-3.2 (found in /Users/tetsuyai/.pythonbrew/venvs/Python-3.2)
py32

仮想環境を選択します。

$ pythonbrew venv use py272
# Using `py272` environment (found in /Users/tetsuyai/.pythonbrew/venvs/Python-2.7.2)
# To leave an environment, simply run `deactivate`

選択した仮想環境を終了します。

$ deactivate

いらなくなった仮想環境は削除しましょう。

$ pythonbrew venv delete py272
Deleting `py272` environment in /Users/tetsuyai/.pythonbrew/venvs/Python-2.7.2

参考リンク

re: pythonbrewで構築するPython開発環境 | ninxit.blog
残念なことに、pythonbrewの積極的なメンテナンスは終了だそうです。
re: pythonbrewの今後とpythonz | ninxit.blog

ALMiniumのインストール

概要

ALMiniumとは、ALM(Application Lifecycle Management)とRedmineの合金(..nium)という意味で、Redmineを利用してALMを実現するためのツールです。簡単なインストーラで、RedmineSubversion・Git・Mercurialなどプロジェクト管理に必要なツールを一通りインストールし、ツール間のアカウント・アクセス権の連携や、チェンジセット・チケットの連携も自動で行ってくれます。

また、アジャイル開発やCIに便利な各種プラグイン(Backlogs・Hudson Plugin・Code Reviewなど)もインストールしてくれます。



構成

Scientific Linux release 6.1 (Carbon)



インストール

Gitをインストールします。
# yum install git


ALMiniumをインストールします。
# git clone https://github.com/alminium/alminium.git
# cd alminium
# bash ./smelt

インストール中、「ホスト名の設定」「SSLのサポート」「セキュリティの設定」についての質問に答えます。

*******************************************************
  ホスト名の設定
*******************************************************
ホスト名(IPアドレスもしくはDNS名)を入力してください。ホスト名はApacheのバーチャルホストで利用されます。
例えば、192.168.1.4をホスト名で入力すると、http://192.168.1.4/でアクセスすることになります。
(上記の設定ではhttp://localhost/では接続できないのでご注意ください)
ホスト名: myhost.mydomain
*******************************************************
  SSLのサポート
*******************************************************
SSLのサポートを有効にすると、httpsのみの接続を許可します。
httpでのアクセスは、全てhttpsのポートへ転送されるようになります。
SSLの証明書は認証機関により署名されたものではありません。通信の暗号化のみ
に利用します。
gitの利用では、

  $ git config --global http.sslVerify false

などのコマンドで、SSLの証明書を無効にする必要があります。

SSL(https)サポートを有効にしますか?(y/N)y
*******************************************************
  セキュリティの設定
*******************************************************
アプリケーションを動作させるために、ファイアフォールの設定とSELinuxの無効化を行います。
nと答えると手動でセキュリティの設定が必要となります。分らない場合はYと答えてください。

アプリケーションを動作させるためにセキュリティの設定を行いますか?[Y/n]y



動作確認

ALMiniumにアクセスします。

https://myhost.mydomainにアクセスします。


デフォルト管理者を無効化します。

デフォルトの管理者としてログインID: admin/パスワード: adminが作られます。速やかに新しい管理ユーザーを作成し、adminユーザーを無効化しておきましょう。



参考リンク

re alminium/alminium · GitHub

EBSボリュームやスナップショットを削除するとAMIはどうなる?

概要

AMIのDescriptionを見ると、Block Devicesという項目がありSnapshot IDが表示されています。またスナップショットのDescriptionを見ると、Volumeという項目がありVolume IDが表示されています。これらのスナップショットやEBSボリュームを削除すると、AMIはどうなるのでしょうか?



疑問

AMI、スナップショット、EBSボリュームの関係が以下のようになっているとします。ami-c299e790のBlock Devicesの項目がsnap-80162de8で、snap-80162de8のVolumeの項目がvol-022cc868という状態です。

ami-c299e790 --> snap-80162de8 --> vol-022cc868

この状態でsnap-80162de8やvol-022cc868を削除したらどうなるのでしょうか?



結論

AWSのDiscussion Forumsに似た質問があり、次のような回答がなされていました。

ご質問についてですが、AMIとして登録されたのであれば、それは既存のEBSボリューム、スナップショット、EC2インスタンスといったリソースとは別のものとして登録されます。

よってそれらを削除したとしても、登録したAMIは削除されません。

https://forums.aws.amazon.com/thread.jspa?threadID=59683

実際、EBSボリュームを削除してみましたが、AMIは削除されませんでした。

ただしスナップショットを削除しようとすると、次のようなダイアログが表示され(Yesを押しても繰り返し表示される)、削除することができませんでした。少なくともManagement Consoleからは、使用中のスナップショットを削除することができないようです。

ベンチマークしてみた 〜 さくらのVPS 512、Scientific Linux 6.1

概要

提供事業 さくらインターネット株式会社
サービス名 さくらのVPS
種別 さくらのVPS 512
物理/仮想 仮想
CPU 仮想2コア
Memory 512MB
HDD 20GB
OS Scientific Linux release 6.1 (Carbon)



サーバー構成

# uname -a
Linux www42395u.sakura.ne.jp 2.6.32-220.2.1.el6.x86_64 #1 SMP Thu Dec 22 11:15:52 CST 2011 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/redhat-release
Scientific Linux release 6.1 (Carbon)
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_www42395u-lv_root
                       18G  1.3G   16G   8% /
tmpfs                 246M     0  246M   0% /dev/shm
/dev/sda1             485M   31M  429M   7% /boot
# runlevel
N 3
# getenforce
Disabled
# which iptables
/sbin/iptables
# chkconfig --list
acpid          	0:off	1:off	2:on	3:on	4:on	5:on	6:off
atd            	0:off	1:off	2:off	3:on	4:on	5:on	6:off
auditd         	0:off	1:off	2:off	3:off	4:off	5:off	6:off
cpuspeed       	0:off	1:on	2:off	3:off	4:off	5:off	6:off
crond          	0:off	1:off	2:on	3:on	4:on	5:on	6:off
haldaemon      	0:off	1:off	2:off	3:off	4:off	5:off	6:off
ip6tables      	0:off	1:off	2:on	3:on	4:on	5:on	6:off
iptables       	0:off	1:off	2:on	3:on	4:on	5:on	6:off
irqbalance     	0:off	1:off	2:off	3:on	4:on	5:on	6:off
kdump          	0:off	1:off	2:off	3:off	4:off	5:off	6:off
lvm2-monitor   	0:off	1:on	2:off	3:off	4:off	5:off	6:off
mdmonitor      	0:off	1:off	2:off	3:off	4:off	5:off	6:off
messagebus     	0:off	1:off	2:off	3:off	4:off	5:off	6:off
netconsole     	0:off	1:off	2:off	3:off	4:off	5:off	6:off
netfs          	0:off	1:off	2:off	3:off	4:off	5:off	6:off
network        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
ntpd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off
ntpdate        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
postfix        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
psacct         	0:off	1:off	2:off	3:off	4:off	5:off	6:off
quota_nld      	0:off	1:off	2:off	3:off	4:off	5:off	6:off
rdisc          	0:off	1:off	2:off	3:off	4:off	5:off	6:off
restorecond    	0:off	1:off	2:off	3:off	4:off	5:off	6:off
rsyslog        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
saslauthd      	0:off	1:off	2:off	3:off	4:off	5:off	6:off
smartd         	0:off	1:off	2:off	3:off	4:off	5:off	6:off
sshd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off
sysstat        	0:off	1:on	2:on	3:on	4:on	5:on	6:off
udev-post      	0:off	1:on	2:off	3:off	4:off	5:off	6:off
# rpm -qa | sort
ConsoleKit-0.4.1-3.el6.x86_64
ConsoleKit-libs-0.4.1-3.el6.x86_64
MAKEDEV-3.24-6.el6.x86_64
acl-2.2.49-4.el6.x86_64
acpid-1.0.10-2.1.el6.x86_64
aic94xx-firmware-30-2.el6.noarch
alsa-lib-1.0.21-3.el6.x86_64
alsa-utils-1.0.21-3.el6.x86_64
apr-1.3.9-3.el6_1.2.x86_64
apr-util-1.3.9-3.el6_0.1.x86_64
at-3.1.10-43.el6.x86_64
atk-1.28.0-2.el6.x86_64
atmel-firmware-1.3-7.el6.noarch
attr-2.4.44-4.el6.x86_64
audit-2.1-5.el6.x86_64
audit-libs-2.1-5.el6.x86_64
authconfig-6.1.12-5.el6.x86_64
autoconf-2.63-5.1.el6.noarch
automake-1.11.1-1.2.el6.noarch
avahi-libs-0.6.25-11.el6.x86_64
b43-fwcutter-012-2.2.el6.x86_64
b43-openfwwf-5.2-4.el6.noarch
basesystem-10.0-4.el6.noarch
bash-4.1.2-8.el6.x86_64
bc-1.06.95-1.el6.x86_64
bfa-firmware-2.3.2.3-1.el6.noarch
bind-libs-9.7.3-2.el6_1.P3.3.x86_64
bind-utils-9.7.3-2.el6_1.P3.3.x86_64
binutils-2.20.51.0.2-5.20.el6.x86_64
biosdevname-0.3.6-11.el6.x86_64
bison-2.4.1-5.el6.x86_64
blktrace-1.0.1-4.el6.x86_64
bridge-utils-1.2-9.el6.x86_64
busybox-1.15.1-11.el6.x86_64
byacc-1.9.20070509-6.1.el6.x86_64
bzip2-1.0.5-7.el6_0.x86_64
bzip2-libs-1.0.5-7.el6_0.x86_64
ca-certificates-2010.63-3.el6_1.5.noarch
cairo-1.8.8-3.1.el6.x86_64
checkpolicy-2.0.22-1.el6.x86_64
chkconfig-1.3.47-1.el6.x86_64
cloog-ppl-0.15.7-1.2.el6.x86_64
coreutils-8.4-13.el6.x86_64
coreutils-libs-8.4-13.el6.x86_64
cpio-2.10-9.el6.x86_64
cpp-4.4.5-6.el6.x86_64
cpuspeed-1.5-15.el6.x86_64
cracklib-2.8.16-4.el6.x86_64
cracklib-dicts-2.8.16-4.el6.x86_64
crash-5.1.1-2.el6.x86_64
crda-1.1.1_2010.11.22-1.el6.x86_64
cronie-1.4.4-7.el6.x86_64
cronie-anacron-1.4.4-7.el6.x86_64
crontabs-1.10-32.1.el6.noarch
cryptsetup-luks-1.2.0-3.el6.x86_64
cryptsetup-luks-libs-1.2.0-3.el6.x86_64
cscope-15.6-6.el6.x86_64
ctags-5.8-2.el6.x86_64
cups-libs-1.4.2-44.el6.x86_64
curl-7.19.7-26.el6_1.2.x86_64
cvs-1.11.23-11.el6_0.1.x86_64
cyrus-sasl-2.1.23-8.el6.x86_64
cyrus-sasl-lib-2.1.23-8.el6.x86_64
cyrus-sasl-plain-2.1.23-8.el6.x86_64
dash-0.5.5.1-3.1.el6.x86_64
db4-4.7.25-16.el6.x86_64
db4-utils-4.7.25-16.el6.x86_64
dbus-1.2.24-5.el6_1.x86_64
dbus-glib-0.86-5.el6.x86_64
dbus-libs-1.2.24-5.el6_1.x86_64
dbus-python-0.83.0-6.1.el6.x86_64
desktop-file-utils-0.15-9.el6.x86_64
device-mapper-1.02.62-3.el6.x86_64
device-mapper-event-1.02.62-3.el6.x86_64
device-mapper-event-libs-1.02.62-3.el6.x86_64
device-mapper-libs-1.02.62-3.el6.x86_64
dhclient-4.1.1-25.P1.el6_2.1.x86_64
dhcp-common-4.1.1-25.P1.el6_2.1.x86_64
diffstat-1.51-2.el6.x86_64
diffutils-2.8.1-28.el6.x86_64
dmidecode-2.10-1.30.1.el6.x86_64
dmraid-1.0.0.rc16-10.el6.x86_64
dmraid-events-1.0.0.rc16-10.el6.x86_64
dosfstools-3.0.9-3.el6.x86_64
doxygen-1.6.1-4.el6.x86_64
dracut-004-53.el6.noarch
dracut-kernel-004-53.el6.noarch
e2fsprogs-1.41.12-7.el6.x86_64
e2fsprogs-libs-1.41.12-7.el6.x86_64
ed-1.1-3.3.el6.x86_64
efibootmgr-0.5.4-9.el6.x86_64
eggdbus-0.6-3.el6.x86_64
eject-2.1.5-17.el6.x86_64
elfutils-0.152-1.el6.x86_64
elfutils-libelf-0.152-1.el6.x86_64
elfutils-libs-0.152-1.el6.x86_64
ethtool-2.6.33-0.3.el6.x86_64
expat-2.0.1-9.1.el6.x86_64
file-5.04-6.el6.x86_64
file-libs-5.04-6.el6.x86_64
filesystem-2.4.30-2.1.el6.x86_64
findutils-4.4.2-6.el6.x86_64
fipscheck-1.2.0-5.el6.x86_64
fipscheck-lib-1.2.0-5.el6.x86_64
flex-2.5.35-8.el6.x86_64
fontconfig-2.8.0-3.el6.x86_64
fontpackages-filesystem-1.41-1.1.el6.noarch
fprintd-0.1-19.git04fd09cfa.el6.x86_64
fprintd-pam-0.1-19.git04fd09cfa.el6.x86_64
freetype-2.3.11-6.el6_1.8.x86_64
gamin-0.1.10-9.el6.x86_64
gawk-3.1.7-6.el6.x86_64
gcc-4.4.5-6.el6.x86_64
gcc-c++-4.4.5-6.el6.x86_64
gcc-gfortran-4.4.5-6.el6.x86_64
gdb-7.2-48.el6.x86_64
gdbm-1.8.0-36.el6.x86_64
gettext-0.17-16.el6.x86_64
gettext-devel-0.17-16.el6.x86_64
gettext-libs-0.17-16.el6.x86_64
git-1.7.1-2.el6_0.1.x86_64
glib2-2.22.5-6.el6.x86_64
glibc-2.12-1.47.el6.x86_64
glibc-common-2.12-1.47.el6.x86_64
glibc-devel-2.12-1.47.el6.x86_64
glibc-headers-2.12-1.47.el6.x86_64
gmp-4.3.1-7.el6.x86_64
gnupg2-2.0.14-4.el6.x86_64
gnutls-2.8.5-4.el6.x86_64
gpgme-1.1.8-3.el6.x86_64
gpm-libs-1.20.6-11.el6.x86_64
grep-2.6.3-2.el6.x86_64
groff-1.18.1.4-21.el6.x86_64
grub-0.97-70.el6.x86_64
grubby-7.0.15-2.el6.x86_64
gtk2-2.18.9-6.el6.x86_64
gzip-1.3.12-18.el6.x86_64
hal-0.5.14-11.el6.x86_64
hal-info-20090716-3.1.el6.noarch
hal-libs-0.5.14-11.el6.x86_64
hdparm-9.16-3.4.el6.x86_64
hicolor-icon-theme-0.11-1.1.el6.noarch
hunspell-1.2.8-16.el6.x86_64
hunspell-en-0.20090216-7.1.el6.noarch
hwdata-0.233-7.1.el6.noarch
indent-2.2.10-5.1.el6.x86_64
info-4.13a-8.el6.x86_64
initscripts-9.03.23-1.el6.x86_64
intltool-0.41.0-1.1.el6.noarch
ipa-gothic-fonts-003.02-4.2.el6.noarch
ipa-mincho-fonts-003.02-3.1.el6.noarch
ipa-pgothic-fonts-003.02-4.1.el6.noarch
ipa-pmincho-fonts-003.02-3.1.el6.noarch
iproute-2.6.32-16.el6.x86_64
iptables-1.4.7-4.el6.x86_64
iptables-ipv6-1.4.7-4.el6.x86_64
iputils-20071127-16.el6.x86_64
ipw2100-firmware-1.3-11.el6.noarch
ipw2200-firmware-3.1-4.el6.noarch
irqbalance-0.55-29.el6.x86_64
ivtv-firmware-20080701-20.2.noarch
iw-0.9.17-4.el6.x86_64
iwl100-firmware-39.31.5.1-1.el6.noarch
iwl1000-firmware-128.50.3.1-1.1.el6.noarch
iwl3945-firmware-15.32.2.9-4.el6.noarch
iwl4965-firmware-228.61.2.24-2.1.el6.noarch
iwl5000-firmware-8.24.2.12-3.el6.noarch
iwl5150-firmware-8.24.2.2-1.el6.noarch
iwl6000-firmware-9.221.4.1-1.el6.noarch
iwl6000g2a-firmware-17.168.5.2-1.el6.noarch
iwl6000g2b-firmware-17.168.5.2-1.el6.noarch
iwl6050-firmware-41.28.5.1-2.el6.noarch
jasper-libs-1.900.1-15.el6_1.1.x86_64
kbd-1.15-11.el6.x86_64
kbd-misc-1.15-11.el6.noarch
kernel-2.6.32-220.2.1.el6.x86_64
kernel-devel-2.6.32-220.2.1.el6.x86_64
kernel-firmware-2.6.32-220.2.1.el6.noarch
kernel-headers-2.6.32-220.2.1.el6.x86_64
kexec-tools-2.0.0-209.el6.x86_64
keyutils-libs-1.4-1.el6.x86_64
kpartx-0.4.9-41.el6.x86_64
krb5-libs-1.9-22.el6_2.1.x86_64
less-436-4.el6.x86_64
libICE-1.0.6-1.el6.x86_64
libSM-1.1.0-7.1.el6.x86_64
libX11-1.3-2.el6.x86_64
libX11-common-1.3-2.el6.noarch
libXau-1.0.5-1.el6.x86_64
libXcomposite-0.4.1-2.el6.x86_64
libXcursor-1.1.10-2.el6.x86_64
libXdamage-1.1.2-1.el6.x86_64
libXext-1.1-3.el6.x86_64
libXfixes-4.0.4-1.el6.x86_64
libXft-2.1.13-4.1.el6.x86_64
libXi-1.3-3.el6.x86_64
libXinerama-1.1-1.el6.x86_64
libXrandr-1.3.0-4.el6.x86_64
libXrender-0.9.5-1.el6.x86_64
libXtst-1.0.99.2-3.el6.x86_64
libacl-2.2.49-4.el6.x86_64
libaio-0.3.107-10.el6.x86_64
libart_lgpl-2.3.20-5.1.el6.x86_64
libattr-2.4.44-4.el6.x86_64
libblkid-2.17.2-12.4.el6.x86_64
libcap-2.16-5.5.el6.x86_64
libcap-ng-0.6.4-3.el6_0.1.x86_64
libcom_err-1.41.12-7.el6.x86_64
libcurl-7.19.7-26.el6_1.2.x86_64
libdrm-2.4.23-1.el6.x86_64
libedit-2.11-4.20080712cvs.1.el6.x86_64
libertas-usb8388-firmware-5.110.22.p23-3.1.el6.noarch
libffi-3.0.5-3.2.el6.x86_64
libfprint-0.1.0-19.pre2.el6.x86_64
libgcc-4.4.5-6.el6.x86_64
libgcj-4.4.5-6.el6.x86_64
libgcrypt-1.4.5-5.el6.x86_64
libgfortran-4.4.5-6.el6.x86_64
libgomp-4.4.5-6.el6.x86_64
libgpg-error-1.7-3.el6.x86_64
libidn-1.18-2.el6.x86_64
libjpeg-6b-46.el6.x86_64
libnih-1.0.1-6.el6.x86_64
libnl-1.1-14.el6.x86_64
libpcap-1.0.0-6.20091201git117cb5.el6.x86_64
libpng-1.2.46-1.el6_1.x86_64
libproxy-0.3.0-2.el6.x86_64
libproxy-bin-0.3.0-2.el6.x86_64
libproxy-python-0.3.0-2.el6.x86_64
libselinux-2.0.94-5.el6.x86_64
libselinux-utils-2.0.94-5.el6.x86_64
libsemanage-2.0.43-4.el6.x86_64
libsepol-2.0.41-3.el6.x86_64
libss-1.41.12-7.el6.x86_64
libssh2-1.2.2-7.el6.x86_64
libstdc++-4.4.5-6.el6.x86_64
libstdc++-devel-4.4.5-6.el6.x86_64
libtasn1-2.3-3.el6.x86_64
libthai-0.1.12-3.el6.x86_64
libtiff-3.9.4-1.el6_0.3.x86_64
libtool-2.2.6-15.5.el6.x86_64
libudev-147-2.35.el6.x86_64
libusb-0.1.12-23.el6.x86_64
libusb1-1.0.3-1.el6.x86_64
libuser-0.56.13-4.el6_0.1.x86_64
libutempter-1.1.5-4.1.el6.x86_64
libuuid-2.17.2-12.4.el6.x86_64
libxcb-1.5-1.el6.x86_64
libxml2-2.7.6-4.el6_2.1.x86_64
libxml2-python-2.7.6-4.el6_2.1.x86_64
logrotate-3.7.8-12.el6_0.1.x86_64
lsof-4.82-1.2.el6.x86_64
lua-5.1.4-4.1.el6.x86_64
lvm2-2.02.83-3.el6.x86_64
lvm2-libs-2.02.83-3.el6.x86_64
m4-1.4.13-5.el6.x86_64
mailcap-2.1.31-1.1.el6.noarch
mailx-12.4-6.el6.x86_64
make-3.81-19.el6.x86_64
man-1.6f-29.el6.x86_64
man-pages-3.22-17.el6.noarch
man-pages-ja-20100115-3.el6.noarch
man-pages-overrides-2.5-1.el6.noarch
mdadm-3.2.1-1.el6.x86_64
mingetty-1.08-4.1.el6.x86_64
mlocate-0.22.2-3.el6.x86_64
module-init-tools-3.9-17.el6.x86_64
mpfr-2.4.1-6.el6.x86_64
mtr-0.75-5.el6.x86_64
mysql-libs-5.1.52-1.el6_0.1.x86_64
nano-2.0.9-7.el6.x86_64
ncurses-5.7-3.20090208.el6.x86_64
ncurses-base-5.7-3.20090208.el6.x86_64
ncurses-libs-5.7-3.20090208.el6.x86_64
neon-0.29.3-1.2.el6.x86_64
net-tools-1.60-105.el6.x86_64
netxen-firmware-4.0.534-3.1.el6.noarch
newt-0.52.11-2.el6.x86_64
newt-python-0.52.11-2.el6.x86_64
nspr-4.8.8-1.el6_1.x86_64
nss-3.12.10-2.el6_1.x86_64
nss-softokn-3.12.9-3.el6.x86_64
nss-softokn-freebl-3.12.9-3.el6.x86_64
nss-sysinit-3.12.10-2.el6_1.x86_64
nss-util-3.12.10-1.el6_1.x86_64
ntp-4.2.4p8-2.el6.x86_64
ntpdate-4.2.4p8-2.el6.x86_64
ntsysv-1.3.47-1.el6.x86_64
openldap-2.4.23-15.el6.x86_64
openssh-5.3p1-52.el6.x86_64
openssh-clients-5.3p1-52.el6.x86_64
openssh-server-5.3p1-52.el6.x86_64
openssl-1.0.0-10.el6_1.5.x86_64
pakchois-0.4-3.2.el6.x86_64
pam-1.1.1-8.el6.x86_64
pam_passwdqc-1.0.5-6.el6.x86_64
pango-1.28.1-3.el6_0.5.x86_64
parted-2.1-13.el6.x86_64
passwd-0.77-4.el6.x86_64
patch-2.6-6.el6.x86_64
patchutils-0.3.1-3.1.el6.x86_64
pciutils-3.1.4-9.el6.x86_64
pciutils-libs-3.1.4-9.el6.x86_64
pcmciautils-015-4.2.el6.x86_64
pcre-7.8-3.1.el6.x86_64
perl-5.10.1-119.el6_1.1.x86_64
perl-Compress-Raw-Zlib-2.023-119.el6_1.1.x86_64
perl-Compress-Zlib-2.020-119.el6_1.1.x86_64
perl-Error-0.17015-4.el6.noarch
perl-Git-1.7.1-2.el6_0.1.noarch
perl-HTML-Parser-3.64-2.el6.x86_64
perl-HTML-Tagset-3.20-4.el6.noarch
perl-IO-Compress-Base-2.020-119.el6_1.1.x86_64
perl-IO-Compress-Zlib-2.020-119.el6_1.1.x86_64
perl-Module-Pluggable-3.90-119.el6_1.1.x86_64
perl-Pod-Escapes-1.04-119.el6_1.1.x86_64
perl-Pod-Simple-3.13-119.el6_1.1.x86_64
perl-URI-1.40-2.el6.noarch
perl-XML-Parser-2.36-7.el6.x86_64
perl-libs-5.10.1-119.el6_1.1.x86_64
perl-libwww-perl-5.833-2.el6.noarch
perl-version-0.77-119.el6_1.1.x86_64
pinentry-0.7.6-5.el6.x86_64
pinfo-0.6.9-12.el6.x86_64
pixman-0.18.4-1.el6_0.1.x86_64
pkgconfig-0.23-9.1.el6.x86_64
plymouth-0.8.3-22.sl6.1.x86_64
plymouth-core-libs-0.8.3-22.sl6.1.x86_64
plymouth-scripts-0.8.3-22.sl6.1.x86_64
pm-utils-1.2.5-9.el6.x86_64
policycoreutils-2.0.83-19.8.el6_0.x86_64
polkit-0.96-2.el6_0.1.x86_64
popt-1.13-7.el6.x86_64
postfix-2.6.6-2.2.el6_1.x86_64
ppl-0.10.2-11.el6.x86_64
prelink-0.4.4-1.el6.x86_64
procps-3.2.8-17.el6.x86_64
psacct-6.3.2-63.el6.x86_64
psmisc-22.6-15.el6_0.1.x86_64
pth-2.0.7-9.3.el6.x86_64
pygpgme-0.1-18.20090824bzr68.el6.x86_64
python-2.6.6-20.el6.x86_64
python-ethtool-0.6-1.el6.x86_64
python-iniparse-0.3.1-2.1.el6.noarch
python-iwlib-0.1-1.2.el6.x86_64
python-libs-2.6.6-20.el6.x86_64
python-pycurl-7.19.0-8.el6.x86_64
python-urlgrabber-3.9.1-8.el6.noarch
ql2100-firmware-1.19.38-3.1.el6.noarch
ql2200-firmware-2.02.08-3.1.el6.noarch
ql23xx-firmware-3.03.27-3.1.el6.noarch
ql2400-firmware-5.03.16-1.el6.noarch
ql2500-firmware-5.03.16-1.el6.noarch
quota-3.17-16.el6.x86_64
rcs-5.7-37.el6.x86_64
rdate-1.4-16.el6.x86_64
readahead-1.5.6-1.el6.x86_64
readline-6.0-3.el6.x86_64
redhat-logos-60.0.14-2.sl6.4.noarch
redhat-rpm-config-9.0.3-33.el6.noarch
rfkill-0.3-4.el6.x86_64
rng-tools-2-8.el6.x86_64
rootfiles-8.1-6.1.el6.noarch
rpm-4.8.0-16.el6_1.1.x86_64
rpm-build-4.8.0-16.el6_1.1.x86_64
rpm-libs-4.8.0-16.el6_1.1.x86_64
rpm-python-4.8.0-16.el6_1.1.x86_64
rsync-3.0.6-5.el6_0.1.x86_64
rsyslog-4.6.2-3.el6_1.2.x86_64
rt61pci-firmware-1.2-7.el6.noarch
rt73usb-firmware-1.8-7.el6.noarch
sed-4.2.1-5.el6.x86_64
selinux-policy-3.7.19-126.el6_2.4.noarch
selinux-policy-targeted-3.7.19-126.el6_2.4.noarch
setserial-2.17-25.el6.x86_64
setup-2.8.14-12.el6.noarch
setuptool-1.19.9-3.el6.x86_64
sgpio-1.2.0.10-5.el6.x86_64
shadow-utils-4.1.4.2-9.el6.x86_64
sl-indexhtml-6-2.sl6.5.noarch
sl-release-6.1-2.x86_64
sl-release-notes-6.1-1.noarch
slang-2.2.1-1.el6.x86_64
smartmontools-5.39.1-3.el6.x86_64
sos-2.2-17.el6.noarch
sqlite-3.6.20-1.el6.x86_64
strace-4.5.19-1.10.el6.x86_64
subversion-1.6.11-2.el6_1.4.x86_64
sudo-1.7.4p5-5.el6.x86_64
swig-1.3.40-5.el6.x86_64
sysstat-9.0.4-18.el6.x86_64
system-config-firewall-base-1.2.27-3.el6_1.3.noarch
system-config-firewall-tui-1.2.27-3.el6_1.3.noarch
system-config-network-tui-1.6.0.el6.2-1.el6.noarch
systemtap-1.4-6.el6_1.2.x86_64
systemtap-runtime-1.4-6.el6_1.2.x86_64
sysvinit-tools-2.87-4.dsf.el6.x86_64
tar-1.23-3.el6.x86_64
tcp_wrappers-7.6-56.3.el6.x86_64
tcp_wrappers-libs-7.6-56.3.el6.x86_64
tcpdump-4.0.0-3.20090921gitdf3cb4.1.el6.x86_64
tcsh-6.17-12.el6.x86_64
time-1.7-37.1.el6.x86_64
tmpwatch-2.9.16-3.el6.x86_64
traceroute-2.0.14-2.el6.x86_64
tzdata-2011l-4.el6.noarch
udev-147-2.35.el6.x86_64
unzip-6.0-1.el6.x86_64
upstart-0.6.5-10.el6.x86_64
usbutils-0.86-2.el6.x86_64
usermode-1.102-3.el6.x86_64
ustr-1.0.4-9.1.el6.x86_64
util-linux-ng-2.17.2-12.4.el6.x86_64
vconfig-1.9-8.1.el6.x86_64
vim-common-7.2.411-1.6.el6.x86_64
vim-enhanced-7.2.411-1.6.el6.x86_64
vim-minimal-7.2.411-1.6.el6.x86_64
virt-what-1.3-4.4.el6.x86_64
vlgothic-fonts-20091202-2.el6.noarch
vlgothic-fonts-common-20091202-2.el6.noarch
vlgothic-p-fonts-20091202-2.el6.noarch
wget-1.12-1.4.el6.x86_64
which-2.19-5.1.el6.x86_64
wireless-tools-29-5.1.1.el6.x86_64
words-3.0-17.el6.noarch
xdg-utils-1.0.2-15.20091016cvs.el6.noarch
xorg-x11-drv-ati-firmware-6.13.0-6.el6.noarch
xz-4.999.9-0.3.beta.20091007git.el6.x86_64
xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64
xz-lzma-compat-4.999.9-0.3.beta.20091007git.el6.x86_64
yum-3.2.29-17.el6.noarch
yum-autoupdate-2-2.noarch
yum-conf-sl-other-6-2.noarch
yum-metadata-parser-1.1.2-16.el6.x86_64
yum-plugin-fastestmirror-1.1.30-6.el6.noarch
yum-utils-1.1.30-6.el6.noarch
zd1211-firmware-1.4-4.el6.noarch
zip-3.0-1.el6.x86_64
zlib-1.2.3-25.el6.x86_64



ネットワーク転送速度

# yum -y update
Total     2.6 MB/s |  60 MB     00:22

CentOS 5にPostgreSQLをインストールする

概要

CentOS 5にPostgreSQL 9.1.2をインストールします。



構成

CentOS release 5.7 (Final)
PostgreSQL 9.1.2



インストール済みパッケージの確認

インストール済みのPostgreSQLがないか確認します。

# psql --version
-bash: psql: command not found

インストール済みの関連パッケージも検索しておきます。

# rpm -qa | grep postgresql

postgresql-libsが見つかりました。

postgresql-libs-8.1.23-1.el5_7.3
postgresql-libs-8.1.23-1.el5_7.3
Name       : postgresql-libs
Arch       : x86_64
Version    : 8.1.23
Release    : 1.el5_7.3
Size       : 507 k
Repo       : installed
Summary    : The shared libraries required for any PostgreSQL clients.
URL        : http://www.postgresql.org/
License    : BSD
Description: The postgresql-libs package provides the essential shared libraries for any
           : PostgreSQL client program or interface. You will need to install this package
           : to use any other PostgreSQL package or any clients that need to connect to a
           : PostgreSQL server.



インストールするパッケージの検索

インストールするパッケージを検索します。

# yum --disableplugin=priorities info postgresql-server

CentOSの標準リポジトリで見つかりましたが、バージョンが8.1.23とかなり古いものでした。

Name       : postgresql-server
Arch       : x86_64
Version    : 8.1.23
Release    : 1.el5_7.3
Size       : 3.9 M
Repo       : updates
Summary    : The programs needed to create and run a PostgreSQL server.
URL        : http://www.postgresql.org/
License    : BSD
Description: The postgresql-server package includes the programs needed to create
           : and run a PostgreSQL server, which will in turn allow you to create
           : and maintain PostgreSQL databases.  PostgreSQL is an advanced
           : Object-Relational database management system (DBMS) that supports
           : almost all SQL constructs (including transactions, subselects and
           : user-defined types and functions). You should install
           : postgresql-server if you want to create and maintain your own
           : PostgreSQL databases and/or your own PostgreSQL server. You also need
           : to install the postgresql package.

PostgreSQL RPM Repository (with Yum)からRPMファイルをダウンロードして、本家のリポジトリを追加します。

$ wget -P /tmp http://yum.postgresql.org/9.1/redhat/rhel-5-x86_64/pgdg-centos91-9.1-4.noarch.rpm
$ sudo rpm -ivh /tmp/pgdg-centos91-9.1-4.noarch.rpm

もう一度検索します。

$ yum --disableplugin=priorities info postgresql-server

やはりCentOSの標準リポジトリにあるものしか見つかりません。

Name       : postgresql-server
Arch       : x86_64
Version    : 8.1.23
Release    : 1.el5_7.3
Size       : 3.9 M
Repo       : updates
Summary    : The programs needed to create and run a PostgreSQL server.
URL        : http://www.postgresql.org/
License    : BSD

本家のリポジトリで見つからないのはおかしいので、パッケージを列挙してみます。

$ yum list | grep postgresql

9.1系はpostgresql91-xxxxというパッケージ名になっていました。

postgresql91.x86_64                        9.1.2-1PGDG.rhel5           pgdg91
postgresql91-contrib.x86_64                9.1.2-1PGDG.rhel5           pgdg91
postgresql91-debuginfo.x86_64              9.1.1-1PGDG.rhel5           pgdg91
postgresql91-devel.x86_64                  9.1.2-1PGDG.rhel5           pgdg91
postgresql91-docs.x86_64                   9.1.2-1PGDG.rhel5           pgdg91
postgresql91-jdbc.x86_64                   9.1.901-1PGDG.rhel5         pgdg91
postgresql91-jdbc-debuginfo.x86_64         9.1.901-1PGDG.rhel5         pgdg91
postgresql91-libs.x86_64                   9.1.2-1PGDG.rhel5           pgdg91
postgresql91-odbc.x86_64                   09.00.0310-1PGDG.rhel5      pgdg91
postgresql91-odbc-debuginfo.x86_64         09.00.0310-1PGDG.rhel5      pgdg91
postgresql91-plperl.x86_64                 9.1.2-1PGDG.rhel5           pgdg91
postgresql91-plpython.x86_64               9.1.2-1PGDG.rhel5           pgdg91
postgresql91-pltcl.x86_64                  9.1.2-1PGDG.rhel5           pgdg91
postgresql91-python.x86_64                 4.0-2PGDG.rhel5             pgdg91
postgresql91-python-debuginfo.x86_64       4.0-2PGDG.rhel5             pgdg91
postgresql91-server.x86_64                 9.1.2-1PGDG.rhel5           pgdg91
postgresql91-tcl.x86_64                    1.9.0-1.rhel5               pgdg91
postgresql91-tcl-debuginfo.x86_64          1.9.0-1.rhel5               pgdg91
postgresql91-test.x86_64                   9.1.2-1PGDG.rhel5           pgdg91

もう一度検索します。

$ yum --disableplugin=priorities info postgresql91-server.x86_64

ようやく9.1系のパッケージが見つかりました。

Name       : postgresql91-server
Arch       : x86_64
Version    : 9.1.2
Release    : 1PGDG.rhel5
Size       : 5.1 M
Repo       : pgdg91
Summary    : The programs needed to create and run a PostgreSQL server
URL        : http://www.postgresql.org/
License    : PostgreSQL
Description: The postgresql91-server package includes the programs needed to create
           : and run a PostgreSQL server, which will in turn allow you to create
           : and maintain PostgreSQL databases.  PostgreSQL is an advanced
           : Object-Relational database management system (DBMS) that supports
           : almost all SQL constructs (including transactions, subselects and
           : user-defined types and functions). You should install
           : postgresql91-server if you want to create and maintain your own
           : PostgreSQL databases and/or your own PostgreSQL server. You also need
           : to install the postgresql package.



8.1系のアンインストール

9.1系のパッケージをインストールする前に、postgresql-libs-8.1.23-1.el5_7.3をアンインストールしておきます。

$ sudo yum remove postgresql-libs-8.1.23-1.el5_7.3



9.1系のインストール

インストールします。

$ sudo yum --disableplugin=priorities install postgresql91-server.x86_64
Dependencies Resolved

==================================================================================================
 Package                      Arch            Version                       Repository       Size
==================================================================================================
Installing:
 postgresql91-server          x86_64          9.1.2-1PGDG.rhel5             pgdg91          5.1 M
Installing for dependencies:
 postgresql91                 x86_64          9.1.2-1PGDG.rhel5             pgdg91          1.5 M
 postgresql91-libs            x86_64          9.1.2-1PGDG.rhel5             pgdg91          217 k

Transaction Summary
==================================================================================================
Install       3 Package(s)
Upgrade       0 Package(s)

Total download size: 6.8 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): postgresql91-libs-9.1.2-1PGDG.rhel5.x86_64.rpm                      | 217 kB     00:00    
(2/3): postgresql91-9.1.2-1PGDG.rhel5.x86_64.rpm                           | 1.5 MB     00:01    
(3/3): postgresql91-server-9.1.2-1PGDG.rhel5.x86_64.rpm                    | 5.1 MB     00:01    
--------------------------------------------------------------------------------------------------
Total                                                             1.5 MB/s | 6.8 MB     00:04    
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : postgresql91-libs                                                          1/3
  Installing     : postgresql91                                                               2/3
  Installing     : postgresql91-server                                                        3/3

Installed:
  postgresql91-server.x86_64 0:9.1.2-1PGDG.rhel5                                                 

Dependency Installed:
  postgresql91.x86_64 0:9.1.2-1PGDG.rhel5       postgresql91-libs.x86_64 0:9.1.2-1PGDG.rhel5     

Complete!



サービスの起動

インストールと同時にpostgresというユーザーが作成されています。

$ id postgres
uid=26(postgres) gid=26(postgres) groups=26(postgres)

PostgreSQLのバージョンを確認します。

$ psql --version
psql (PostgreSQL) 9.1.2
contains support for command-line editing

サービスの名前を確認します。

$ sudo /sbin/chkconfig --list | grep postgresql

サービス名はpostgresql-9.1でした。

postgresql-9.1      0:off     1:off     2:off     3:off     4:off     5:off     6:off

自動起動が無効になっているので、有効にします。

$ sudo /sbin/chkconfig postgresql-9.1 on

サービスを起動します。

$ sudo /sbin/service postgresql-9.1 start

失敗しました。エラーメッセージにはservice postgresql-9.1.2 initdbを使って初期化するように、とあります。

/var/lib/pgsql/9.1/data is missing. Use "service postgresql-9.1.2 initdb" to initialize the cluster first.
                                                           [FAILED]

サービス名はpostgresql-9.1の間違いだと思うのですが、、、試しに実行してみます。

$ sudo /sbin/service postgresql-9.1.2 initdb

やはり間違っていました。

postgresql-9.1.2: unrecognized service

postgresql-9.1.2postgresql-9.1に修正して、もう一度実行します。

$ sudo /sbin/service postgresql-9.1 initdb

無事に初期化できました。

Initializing database:                                     [  OK  ]

もう一度、サービスを起動します。

$ sudo /sbin/service postgresql-9.1 start

起動できました。

Starting postgresql-9.1 service:                           [  OK  ]



PostgreSQLの基本操作

ここから先はpostgresユーザーにsuして操作します。デフォルトではログインアカウントと同じユーザー名でPostgreSQLに接続しようとしますが、-Uオプションを使うと別のユーザー名を指定できます。

$ sudo su - postgres
-bash-3.2$

データベースの一覧を表示します。

-bash-3.2$ psql -l
                             List of databases
   Name    |  Owner   | Encoding  | Collate | Ctype |   Access privileges  
-----------+----------+-----------+---------+-------+-----------------------
 postgres  | postgres | SQL_ASCII | C       | C     |
 template0 | postgres | SQL_ASCII | C       | C     | =c/postgres          +
           |          |           |         |       | postgres=CTc/postgres
 template1 | postgres | SQL_ASCII | C       | C     | =c/postgres          +
           |          |           |         |       | postgres=CTc/postgres
(3 rows)



sysstatのインストール

概要

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



構成

CentOS release 5.7 (Final)
RPM バージョン 4.4.2.3



SRPMからのインストール

/usr/src/redhat/SRPMSディレクトリにSRPMをダウンロードします。

# wget -P /usr/src/redhat/SRPMS http://pagesperso-orange.fr/sebastien.godard/sysstat-10.0.3-1.src.rpm

リビルドしようとすると次のようなエラーメッセージが表示されました。どうやら配布されているSRPMに問題があるようです。

# rpmbuild --rebuild sysstat-10.0.3-1.src.rpm
sysstat-10.0.3-1.src.rpm をインストール中です。
エラー: アーカイブの伸長に失敗: ファイル /usr/src/redhat/SPECS/sysstat-10.0.3.spec;4f069b14: cpio: MD5 チェックサムが適合しません。
エラー: sysstat-10.0.3-1.src.rpm をインストールできません。

MD5チェックサムの検証をスキップするため、rpmコマンドに--nomd5オプションを付けてSRPMをインストールします。

# rpm -ivh --nomd5 /usr/src/redhat/SRPMS/sysstat-10.0.3-1.src.rpm

rpmbuildコマンドを使って、RPMをリビルドします。--bbオプションはバイナリパッケージのみをビルドする(ソースパッケージはビルドしない)、--cleanオプションは最後にビルドツリーを削除することを意味しています。

# rpmbuild -bb --clean /usr/src/redhat/SPECS/sysstat-10.0.3.spec

リビルド中は多くのメッセージが表示されますが、最後の方で次のようなメッセージが出力されます。これを見るとRPMの作成先を確認できます。

書き込み完了: /usr/src/redhat/RPMS/x86_64/sysstat-10.0.3-1.x86_64.rpm

リビルドされたRPMをインストールします。

# rpm -ivh /usr/src/redhat/RPMS/x86_64/sysstat-10.0.3-1.x86_64.rpm



統計情報の収集

インストールしただけでは統計情報は収集されません。統計情報の収集はcronで実行されます。cronの設定ファイルはすでに作られているのですが、中身がコメントアウトされているので、エディタで開いて編集します。

FILE: /etc/cron.d/sysstat

--- /etc/cron.d/sysstat	2012-01-06 19:44:04.000000000 +0900
+++ /etc/cron.d/sysstat	2012-01-06 19:46:19.000000000 +0900
@@ -1,6 +1,6 @@
 ## Run system activity accounting tool every 10 minutes
-#*/10 * * * * root /usr/lib64/sa/sa1 1 1
+*/10 * * * * root /usr/lib64/sa/sa1 1 1
 ## 0 * * * * root /usr/lib64/sa/sa1 600 6 &
 ## Generate a daily summary of process accounting at 23:53
-#53 23 * * * root /usr/lib64/sa/sa2 -A
-#
+53 23 * * * root /usr/lib64/sa/sa2 -A
+

ちなみに以下の二行は同じ意味なので、どちらかひとつを有効化すればOKです。

*/10 * * * * root /usr/lib64/sa/sa1 1 1
0 * * * * root /usr/lib64/sa/sa1 600 6 &

/etc/cron.d/sysstatでは10分毎に/usr/lib64/sa/sa1を起動して情報を収集しています。収集された情報は/var/log/sa/sa日にバイナリ形式で保存されます。1日の終わり(23:53)には/usr/lib64/sa/sa2を起動し、/var/log/sa/sa日をテキスト形式に変換して/var/log/sa/sar日に保存しています。

統計情報の収集間隔はcronの実行間隔を変更することで変更できます。デフォルトは10分間隔です。



保存期間の変更

統計情報の保存期間は/etc/sysconfig/sysstatのHISTORYで変更できます。デフォルトは7日間です。

--- /etc/sysconfig/sysstat	2012-01-06 20:50:03.000000000 +0900
+++ /etc/sysconfig/sysstat	2012-01-06 20:53:36.000000000 +0900
@@ -3,7 +3,7 @@
 # How long to keep log files (in days).
 # If value is greater than 28, then log files are kept in
 # multiple directories, one for each month.
-HISTORY=7
+HISTORY=365
 
 # Compress (using gzip or bzip2) sa and sar files older than (in days):
 COMPRESSAFTER=10

HISTORYに28より大きな数字を指定すると、記録されるパスが/var/log/sa/sa日(/var/log/sa/sar日)から/var/log/sa/年月/sa日(/var/log/sa/年月/sar日)に変わります。

また、/var/log/sa/sar日は一定期間を経過するとgzipもしくはbzip2で圧縮して保存されます。この期間はCOMPRESSAFTERで変更できます。デフォルトは10日間です。



参考リンク

SYSSTAT