2010年12月31日金曜日

さくらVPS  trac+svnのインストール(ベーシック認証編)

さくらVPSへtracとsvnをインストール


環境:
/var/www/svn 以下にリポジトリを作成
例:/var/www/svn/repo1
 /var/www/trac 以下にtracプロジェクト作成
    例:/var/www/svn/pro1
 /usr/local/src 以下にダウンロードしたソフトを保管
 /var/www/.htpasswd ベーシック認証
 注意: //以下はコメント
1.apacheのインストール(http://kajuhome.com/apache.shtml)
2.svnのインストールとリポジトリ作成(ここを参考にしました http://d.hatena.ne.jp/Kshi/20100221/1266770576)
 $su -
 #yum -y install mod_dav_svn
 #mkdir -p /var/www/svn
 #svnadmin create /var/www/svn/repo1
 //ディレクトリを作ってコミットするだけなので、一行下は特には必要なし
 #svn mkdir file:///var/www/svn/repo1/trunk file:///var/www/svn/repo1/tags file:///var/www/svn/repo1/branches -m "init repository layout (trunk,tags,branches)
 #chown -R apache.apache /var/www/svn/repo1
 //adminは必ず設定しておく
 #htpasswd -c /var/www/.htpasswd admin
 #htpasswd  /var/www/.htpasswd ユーザ名
 # vi /etc/httpd/conf.d/subversion.conf
  <Location /svn>
   DAV svn
   SVNParentPath /var/www/svn
   <LimitExcept GET PROPFIND OPTIONS REPORT>
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /var/www/.htpasswd
    Require valid-user
   </LimitExcept>
  </Location>
  <LocationMatch "/svn/.*">
   AuthType Basic
   AuthName "svn"
   AuthUserFile "/var/www/.htpasswd"
   Require valid-user
  </LocationMatch>
3.tracのインストールとプロジェクト作成
 #cd /usr/local/src
 #wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
 #rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
 # vim /etc/yum.repos.d/rpmforge.repo1
  
  ・・・
  enabled = 0
  ・・・
 #yum --enablerepo=rpmforge install -y python-clearsilver
 #yum install -y mod_python
 #yum install -y python-setuptools
 #wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.6.ja1.zip                                                                                                                                                       
 #unzip Trac-0.11.6.ja1.zip                                                                                                                                                                                                        
 #cd Trac-0.11.6.ja1
 #python setup.py instal
 #yum install -y python-genshi
 //  trac プロジェクト作成
 # trac-admin /var/www/trac/pro1 initenv
  Project Name [My Project]> pro1
  Database connection string [sqlite:db/trac.db]>
  Repository type [svn]>
  Path to repository [/path/to/repos]> /var/www/svn/repo1
 //adminを管理者として設定する。
 #trac-admin /XXXX/var/trac/pro1 permission add admin TRAC_ADMIN
 // trac/*に入った場合、ベーシック認証
 #chown -R apache:apache pro1
 #vi /etc/httpd/conf.d/trac.conf
  <Location /trac>
   SetHandler mod_python
   PythonDebug On
   PythonHandler trac.web.modpython_frontend
   PythonOption TracEnvParentDir /var/www/trac
   PythonOption TracUriRoot /trac
  </Location>

  <LocationMatch "/trac/.*">
   AuthType Basic
   AuthName "trac"
   AuthUserFile "/var/www/.htpasswd"
   Require valid-user
  </LocationMatch>
 //apacheの再起動
 #/etc/rc.d/init.d/httpd reload
 #vim /var/www/trac/pro1/conf/trac.ini
  [header_logo]
  alt =
  height = -1
  link =
  src =
  width = -1
   
4.アクセス方法
    // XXXXはホスト名
 svn:  http://XXXX/svn/repo1
 trac: http://XXXX/trac/pro1


さくらVPS

さくらレンタルサーバー(スタンダード)からさくらVPSに乗り換えました。
いろんな意味でかなり快適です。
root権限があるので、いろんなソフトのインストールが大変楽です。それとさくらレンタルサーバーのCGIのみに比べるとWWW関係は速くなっています。

今までの苦労は何だったのでしょうか?VPSのほうが年間5000円ほど高いですが、インストールの苦労に比べれば、安いものです。

2010年12月27日月曜日

eeepc1015pemを購入しました

処理速度もバッテリーの持ちもいい感じです。こんなのが3万であるとはビックリです。
一つ気になる点は演算は演算処理がやたら遅いです。CPUの特徴ですかね??

2010年12月24日金曜日

ポタで驚いたこと

仕事仲間がロードバイクを初めて買ったので、近くを4人でポタしてきました。事件はその途中に発生しました。なんとその内の一人が走っている最中にリアディレーラーが落ちてしまいました。落ちたディレイラーをよく見ると、フレームとディレイラーの間にある金属が切れいました。なんと金属が切れていたのです!!
我々の推測ではその人が太っていて、シフト時に体重をかけている為に金属疲労してためだと話していました。それは違っていました。いつもの自転車屋さんに修理を出していたので、原因を聞いてみました。引き金の体重は正しかったのでが、ディレーラーが落ちるまでのシナリオが違っていました。正しくは、体重がある→リアスポークが折れやすい→折れたスポークがチェーンに絡みつく→体重をかけて踏み込む→最終的にリアディレーラーが付け根からちぎれるでした。
確かに、ディレーラーなしで走れるようにする為に、チェーンを切って短くしてつなぐ時、チェーンが曲がっているところが二箇所ほどありました。それとスポークも折れていました。

因みに、事件を起こした人は95kgです。ロードに乗るときは体重を落として乗りましょう。(最高でも80kg)そうしないとこのような事件に遭遇する可能性が高くなります。

この事件でよかったこと
1.初めてツールキットについてあるチェーン切りをはじめて使った。今まではタイヤ外しのレバーと六角があれば十分で、こんなの何でついているかな程度に考えていました。
2.ディレラーがなくてもチェーンを繋げば、固定ギアになりますが、一応は走れる。(一応動いたときは感動しました)

2010年12月23日木曜日

さくらインターネットにtracとsvnのインストール

最近仲間で使う為のソフトをアップする為にさくらインターネットのスタンダードと契約しました。
それだけでは勿体無いので、tracとsvnをインストールしました。
インストールに大変大変苦労したので、メモとして残しておきます。(実質2日かかりました。疲れた)
-------


主に参考にしたサイト:http://d.hatena.ne.jp/kawa1128/20090909/1252505459

以下の内容でTRAC SVNを構築
さくらインターネット上のファイル構成
TRACプロジェクト:$HOME/var/trac/proj
SVNプロジェクト:$HOME/var/svn/proj

WEBアクセス:$HOME/www/trac/proj
パスワード:$HOME/.tracpasswd
公開鍵:$HOME/.ssh/authorized_keys

クライアントPCのファイル構成
秘密鍵:ToritoiseSVNのインストールフォルダ/bin

クライアントPCからのアクセス
http://XXXX.sakura.ne.jp/trac/proj
svn+ssh://XXXX.sakura.ne.jp/home/XXXX/var/svn/proj

XXXXは自分のFTPアカウントです。
-------------------------------------------------
[ディレクトリの準備]
%mkdir -p local/src
%mkdir -p local/lib/python2.6/site-packages
%cd local/lib
%ln -s python2.6 python

[環境変数] $HOME/.cshrcへ以下の内容を追加
PYTHONPATH $HOME/local/lib/python: $HOME/local/lib/python/site-packages
PATH ~/local/bin/:$PATH
LD_LIBRARY_PATH ~/local/lib

[SWIGのインストール]
$cd ~/local/src
$wget http://jaist.dl.sourceforge.net/sourceforge/swig/swig-1.3.40.tar.gz
$tar -zxvf swig-1.3.40.tar.gz
$cd swig-1.3.40
$./configure --prefix=$HOME/local
$make;make install
$make clean

[ARP ARP-util]
$cd ~/local/src
$wget http://archive.apache.org/dist/apr/apr-0.9.18.tar.gz
$wget http://archive.apache.org/dist/apr/apr-util-0.9.17.tar.gz
$tar -zxvf apr-0.9.18.tar.gz
$tar -zxvf apr-util-0.9.17.tar.gz

[neonインストール]
$cd ~/local/src
$wget http://www.webdav.org/neon/neon-0.28.6.tar.gz
$tar -zxvf neon-0.28.6.tar.gz
$cd neon-0.28.6
$./configure --prefix=$HOME/local
$make
$make install

[Subversionインストール]
$cd ~/local/src
$wget wget http://subversion.tigris.org/downloads/subversion-1.6.5.tar.gz
$tar -zxvf subversion-1.6.5.tar.gz
$cd subversion-1.6.5
$mv ../apr-0.9.18 ./apr
$mv ../apr-util-0.9.17 ./apr-util
$./configure --prefix=$HOME/local --without-berkekey-db -with-python=$HOME/local/lib/python --enable-swig-binding=python --with-libs=$HOME/local --disable-static --with-neon=$HOME/local/ --with-ssl
$make
$make install
$make swig-py
$make install-swig-py
$ln -s ~/local/lib/svn-python ~/local/lib/python/site-packages/svn-python
$ln -s ~/local/lib/svn-python/svn ~/local/lib/python/site-packages/svn
$ln -s ~/local/lib/svn-python/libsvn/ ~/local/lib/python/site-packages/libsvn

[sqliteインストール]
$cd ~/local/src
$wget http://www.sqlite.org/sqlite-3.6.17.tar.gz
$cd pysqlite
$./configure --prefix=$HOME/local --disable-dynamic
$make
$make install

[PySQliteインストール]
$cd ~/local/src
$wget http://code.google.com/p/pysqlite/downloads/detail?name=pysqlite-1.1.8a.tar.gz&can=1&q=
$tar -zxvf pysqlite-1.1.8a.tar.gz
$CD pysqlite
$setenv LOCALBASE="$HOME/local"
$python setup.py build
$python setup.py install --prefix=$HOME/local

[ClearSilverインストール]
$cd ~/local/src
$wget wget http://www.clearsilver.net/downloads/clearsilver-0.9.14.tar.gz
$tar -zxvf clearsilver-0.9.14.tar.gz
$cd clearsilver-0.9.14
$./configure --prefix=$HOME/local --oldincludedir=$HOME/local/include --disable-ruby --disable-java --disable-perl --disable-csharp --disable-python --disable-static
$gmake
$gmake install
$cd python
$python setup.py build
$python setup.py install --prefix=$HOME/local

[docutilインストール]
$cd ~/local/src
$wget http://jaist.dl.sourceforge.net/sourceforge/docutils/docutils-0.4.tar.gz
$tar -zxvf docutils-0.4.tar.gz
$cd docutils-0.4
$python setup.py install --home=$HOME/local

[setuptoolインストール]
$ cd ~/local/src
$ cat > ~/.pydistutils.cfg
[install]
install_lib = ~/local/lib/python$py_version_short/site-packages
install_scripts = ~/bin
^D
$wget http://peak.telecommunity.com/dist/ez_setup.py
$python ez_setup.py

[tracインストール]
$ cd ~/local/src
$wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.5.ja1.zip
$unzip Trac-0.11.5.ja1.zip
$cd Trac-0.11.5.ja1
$python ./setup.py install --prefix=$HOME/local
$mkdir -p $HOME/www/trac/proj
$cp $HOME/local/share/trac/cgi-bin/trac.cgi $HOME/www/trac/proj
$cp $HOME/www/trac/proj/trac.cgi $HOME/www/trac/proj/trac_.cgi

[クライアントPCにtortoisesvnのインストール]
http://tortoisesvn.tigris.org/からインストーラーをダンロードして、インストール


[subversion の設定]
$sudo chmod 777 /var
$sudo mkdir /var/svn
$mkdir -p $HOME/var/svn
$svnadmin create --fs-type=fsfs $HOME/var/svn/proj
$mkdir -p tmp/proj
$cd tmp/proj
$mkdir trunk branches tags
$cd ..
$svn import proj file:///$HOME/var/svn/proj -m "Import 1st."

[trac の設定]
$cd var/
$mkdir trac
$trac-admin /home/XXXX/var/trac/proj initenv
Project Name [My Project]> My Open Project
Database connection string [sqlite:db/trac.db]>
Repository type [svn]>
Path to repository [/path/to/repos]> /home/XXXX/var/svn/proj
$cd $HOME/www/trac/proj
$vi trac.cgi
$cat trac.cgi
#!/bin/sh
LD_LIBRARY_PATH=/home/XXXX/local/lib;export LD_LIBRARY_PATH
TRAC_ENV=/home/XXXX/var/trac/proj;export TRAC_ENV
PYTHONPATH=/home/XXXX/local/lib/python:/home/XXXX/local/lib/python/site-packages;export PYTHONPATH
/usr/local/bin/python /home/XXXX/www/trac/proj/trac_.cgi

[URL設定]
//hmod 644 .htaccessは重要です。私ははまりました。
$cd ~/www/trac/proj
$vi .htaccess
$cat  .htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^$ /trac/proj/trac.cgi [L]
^D
$chmod 644 .htaccess

//ここまででtracにアクセスできます。

[パスワードの設定]
//adminとguestのパスワードを設定
$htpasswd -c $HOME/.tracpasswd admin
New password: adminのパスワード
Re-type new password: adminのパスワード

$htpasswd $HOME/.tracpasswd guest
New password: guest
Re-type new password: guest
//adminをTRAC_ADMINに設定
//WebAdminは標準装備になってます(TRAC_ADMINのユーザーからは利用出来る)
$trac-admin /home/XXXX/var/trac/proj/conf/trac.ini permission add admin TRAC_ADMIN


$cd ~/www/trac/proj
$vi .htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^$ /trac/proj/trac.cgi [L]

AuthUserFile       /home/hillclimb/.tracpasswd
AuthGroupFile     /dev/null
AuthName          "Type your password please."
AuthType           Basic
require valid-user
^D


[鍵の作成]
1.PuTTY Download Pageよりputtygen.exeをダウンロード
2.puttygen.exeを起動して、Generateボタンを押してください(マウスを動かしてください)。
3.表示されるテキストエリア(Puglib key for pasting into OpenSSH authorized_keys file)の中身をコピーし、メモ帳でテキストファイルに保存してください。
そのファイルをauthorized_keysというファイル名(拡張子な し)に変更し、FTPで$HOME/.ssh/に置いてください。
4.Save private keyボタンを押して秘密鍵をToritoiseSVNのインストールフォルダ/binにid_rsa.ppkとして保存
5.パーミッションの変更
%chmod 700 $HOME/.ssh
%chmod 600 $HOME/.ssh/authorized_keys

[クライアントPC ToritoiseSVNの設定]
ToritoiseSVNの設定画面を開いてください(エクスプローラで適当なフォルダを選び右クリック→ToriseSVN→setting(または設定))。
画面左のツリーからNetwork(またはネットワーク)を選び、SSHクライアント欄にTortoiseSVNのインストールディレクトリ\binにあるTortoisePlink.exeのフルパス
を指定してください。引数は 「-l アカウント名」と「-i 作成した秘密鍵のパス」を指定してください。
例:"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l XXX -i "C:\Program Files\TortoiseSVN\bin\id_rsa.ppk"


[クライアントからtracへのアクセス]
//adminでログインするとtrac上に管理メニューが出てきます。そこで基本設定、パーミッション、プラグインの設定が出来ます。
http://XXXX.sakura.ne.jp/trac/proj/

[クライアントからsvnへのアクセス]
//何もファイルが入っていないフォルダー内で右クリック
//SVNcheckoutを選択
//URL of repository を以下の内容にする
svn+ssh://XXXX.sakura.ne.jp/home/XXXX/var/svn/proj

2010年12月14日火曜日

通勤自転車のタイヤ交換 前後交換

ウイグル一つ1200円ぐらいで買ったVittoria RUBINOにタイヤを前後交換しました。PROがついていないRUBINOは日本で販売しているのかな?見たことないな。PROと違いタイヤの取り付けはかなり硬かった。

2010年12月12日日曜日

ruby on rails3

はじめてのruby on rails 3 清水 美樹 を読んでみました。初心者に対しては分かりやすい本です。この本を読んだ後はrailes guildsを読めば結構理解できるのではないでしょうか?
今はrailes guildsを読んでいます。だが少しわかりにくい。英語でもいいのでわかり易いrails3の本ないでしょうか?