PHP のバージョンをコントロールしたい on Ubuntu
まぁ、だいたい /usr/local/php-5.4.3 的なインストールをして
/usr/local/php からソフトリンクを /usr/local/php-5.4.3 に貼るよね。
具体的に記憶をたどると
/usr/local/src/php-5.4.3 に tar ボールを展開
.configure --prefix=/usr/local/php-5.4.3 make; make test; make install
だった気がする。
まぁ、そこまでやってある前提で、話を進めます。
ubuntu は Debian 由来の alternatives というプログラムで
デフォルト起動のプログラムを選定しています。
そのため、まぁ、このプログラムを使えば、普段から
/usr/local/php/bin/php
を参照させるようにして、 リンクを張り替えれば幸せになるということ。
まず、/usr/local/php を alternatives に認識させよう。
ここで、/usr/bin/php は whereis php で確認している。
他の言語の場合、やはりwhereis で確認するほうが良いだろう。
最後の 1 はプライオリティだ。ここを 51 以上にすると、勝手に選ばれるようになる。
sudo update-alternatives --install /usr/bin/php php /usr/local/php/bin/php 1
まぁ、個人的には、ばかみたいに大きい値は好きじゃないので、
小さい値を入れることにした。
次に、/usr/bin/php を実行したら、/usr/lo... を実行するように設定する。
sudo update-alternatives --config php
下のように聞かれるので、 2 を押そう。
There are 2 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/php5 50 auto mode 1 /usr/bin/php5 50 manual mode 2 /usr/local/php/bin/php 1 manual mode Press enter to keep the current choice[*], or type selection number:
このように表示が出てきたら、終わりだ。
update-alternatives: using /usr/local/php/bin/php to provide /usr/bin/php (php) in manual mode.
%php --version PHP 5.4.3 (cli) (built: May 18 2012 20:07:19) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
今後は、/usr/local/php-x.x.x にインストールをして、php のリンクを張りかえれば
システムワイドに使うphp のバージョンが変わるという寸法さ。
ま、似たようなことは、みんなすでにやっているだろうけど〜。
python の開発環境を作る
もはや Python の開発環境作成が面倒くさすぎて、他人には勧めないけど
必要にかられて環境を途中まで作ったので、記載しておきます。
distribute のインストール
Python のパッケージ管理ソフトcurl -O http://python-distribute.org/distribute_setup.py sudo python distribute_setup.py exec $SHELL
Pythonz
Python をホームディレクトリにインストールしてくれるソフトインストールされた場所に VirtualEnv をほげほげするように Path を通すとよいらしい
(ここではやってない。各自で調べてね)
curl -kL https://raw.github.com/saghul/pythonz/master/pythonz-install | bash
.zshrc に下記の項目を記載する
[[ -s $HOME/.pythonz/etc/bashrc ]] && source $HOME/.pythonz/etc/bashrc rehash
Python をローカルにダウンロード
(ここで、すぐ使えるわけではない)
pythonz install 3.2.3
環境を作る
pip - ライブラリをインストールするための標準ツールvirtualenv* - rbenv 的な何か
easy_install pip sudo easy_install virtualenv sudo easy_install virtualenvwrapper rehash source /usr/local/bin/virtualenvwrapper.sh
ここで、virtualenv にローカルにダウンロードした Python を使うように
指示するとうまいことやってくれるようにできるらしい。
sakura VPS で mongodb を動かす
いろいろあって Sakura の VPS にMongoDB をインストールした。
能力とか、MongoDB の落ちやすい性質を考えると、正気の沙汰とは思えないけど
テストなので淹れるっちゃ。
公式ドキュメント通りにやると、次の二つのコマンドが必要になった。
sudo yum install ld-linux.so.2 sudo yum install libstdc++.so.6
MongoDB の起動
sudo service mongod start
MongoDB の停止
sudo service mongod stop
test 起動
mongo
A bridge too far
コーネリアス・ライアン原作の歴史映画。
たぶん三回目。
第二次世界大戦の西部戦線のお話。当時の西部戦線は、ノルマンディー上陸作戦後、大きく分けて 2つのチームがドイツを目指していた。北側はモントゴメリー、南側はパットン。フランスのノルマンディーからオランダまで進軍を続けた 2つのチームは補給線に大きな問題を抱えていた。予想よりも進軍スピードが早かった、そして、撤退するドイツ軍が港を破壊していったため海からの補給が行えず、主に長大な陸上の補給路に頼らざるを得なくなっていた。そのため、必要な物資が届かなくなり始めていたのだ。
そこで、世界でも有数の港であり、破壊もされていないオランダの港にモントゴメリーは目をつけた。その港までに辿り着くまでには主に5つの橋を渡る必要があった。様々な検討を加えた結果、パラシュート部隊で奇襲を仕掛けて橋を確保、各橋を戦車部隊が素早く渡り、歩兵部隊が各橋を守り、なるべく早くパラシュート部隊を回収するという作戦を立案した。
この作戦は、結果として、モントゴメリーの立案した作戦のなかでも最低の作戦と言われることになる。
コーネリアス・ライアンの作品は、全てにおいて念密に調査した上で書かれているのがポイント。実際に、この最低の作戦の中で何があったのか、各個人の心の動きなども描かれている。
僕はこの映画を見るたびに、戦争は嫌だな…と思う。同時に戦略ゲームや Civ を辞めないのは、病気だな、想像力が足りないなぁ、と思いながら遊ぶ。このへんは、自分の中の矛盾。
あと、作戦自体も複雑だったけど、この映画自体も複雑で、正直、三回見てもわからないところが多々ある…。
# 肩の紋章で 82 か 101 かを見分ける能力は着いた。
checkinstall を使ってインストール
削除を綺麗にしたいため checkinstall を使ってパッケージを作って
インストールするようにしている。
Sakura の VPS でも使っている。
インストール方法
sudo git clone http://checkinstall.izto.org/checkinstall.git cd checkinstall sudo chown -R user:group src cd src cd checkinstall ./configure --prefix=/usr/loca make ./checkinstall
使い方
コードを落としてきて、./configure と make をしたところで止める。
make all はしない
checkinstall -t [rpm|deb]
で、rpm なり deb が作成されるので、インストールすれば OK
まぁ、僕の手元だと毎回インストールが終わっているように見える。
rpm -ivh をしなくても…
sakura の VPS の CentOS に zsh とか git を入れた話
zsh
$ sudo yum -y install zsh
yum の -y は、質問されたら yes と答える設定
sudo
sudo を使えるようにするには、次のコマンドで編集する。# visudo
下記の部分をコメントアウト
%wheel ALL=(ALL) NOPASSWD: ALL
group の編集をする。次のコマンドで編集する。
# vigr
git
git のインストールsudo yum install git
screen
screen のインストールsudo yum install screen
yum について
yum で uninstall するには。sudo yum remove xxx
あれ?結局、全部 yum でインストールしたった。
この投稿は必要なのだろうか…