PGメモ

非エンジニアの記録

jettyがなくてsolrが動かない時。

java.io.FileNotFoundException: No XML configuration files specified in start.config or command line.
    at org.eclipse.jetty.start.Main.start(Main.java:506)
    at org.eclipse.jetty.start.Main.main(Main.java:95)

こんなのが出てしまう。
普通solrにはjettyが入っていて動くらしいのだがなぜか動かないから別でjettyを入れます。

最新版の9を入れました
http://download.eclipse.org/jetty/stable-9/dist/

wgetで落としたらunzipして解凍。

# mv jetty-distribution-9.0.6.v20130930 /usr/locla/lib/jetty
# cp /usr/local/lib/jetty/bin/jetty.sh /etc/init.d/jetty
# vim /etc/init.d/jetty
JETTY_HOME=/usr/local/lib/jetty
# /etc/init.d/jetty start

でjettyが起動

後は普通にsolrを起動すれば立ち上がる。

Ruby&Ruby on Railsインストール on Linux

centOSなのでyumでさくさく入れます。と言いたいところですが、1.8.7以降は入らないのでソースから入れます

wget http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz
tar xfvz ruby-2.0.0-p247.tar.gz
cd ruby-2.0.0-p247
./configure -prefix=/usr
make
make install
# ruby -v
ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux]

次にgemを入れます
http://rubyforge.org/frs/?group_id=126
からお好きなものを。

# wget http://rubyforge.org/frs/download.php/76729/rubygems-1.8.25.tgz
# tar zxvf rubygems-1.8.25.tgz
# cd rubygems-1.8.25
# ruby setup.rb

railsをインストール

gem install rails
 Unable to resolve dependencies: sprockets requires hike (~> 1.2), tilt (!= 1.3.0, ~> 1.1); mail requires mime-types (~> 1.16), treetop (~> 1.4.8)

と出たのでgemコマンドで次々インストール

再度railsのインストールにトライ。無事インストールされた。

vmware playerの容量を拡張する

最初に設定した容量が無くなってきたので拡張した。
パーティションを追加してhda1とhda2に増える所まではできたのだが

df -h

コマンドで見ても容量が一向に増えない。

調べた結果サイズを拡張するコマンドを打たないと認識されない。

# lvextend -L +10G /dev/VolGroup00/LogVol100

VolGroup00とLogVol100は各自の環境に合わせて変えてください。

成功すると・・

  Extending logical volume LogVol00 to 19.38 GB
  Logical volume LogVol00 successfully resized

と出ます。

あとは、ファイルシステムサイズを拡張

# resize2fs /dev/VolGroup00/LogVol00 
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol00 to 5079040 (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol00 is now 5079040 blocks long.
Filesystem          サイズ  使用  残り 使用% マウント位置
/dev/mapper/VolGroup00-LogVol00
                       19G  6.8G   12G  38% /
/dev/hda1              99M   23M   71M  25% /boot
tmpfs                 125M     0  125M   0% /dev/shm

無事に増えました。

railsを入れるがハマった。解決した。


/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.h
とでたので

yum --enablerepo=remi,remi-test -y install ruby-devel
ruby-develを入れて解決

また止まった


error No CAS operation available for this platform

gem install atomic -- --with-cflags=-march=i686

そして最後にバージョンが足りないと言われたのでバージョン指定


gem install rails -v 3.2.13

よく見るレート表示を短く書く

よく評価サイトとかで
★★★☆☆
みたいなの見るけど、これ中のコードで


if($point < 1.0){
$return = "☆☆☆☆☆";
}elseif($point < 2.0){
$return = "★☆☆☆☆";
こう書いてたりしたらなんか辛いので短く書けないか考えた。


$point = floor($point);
$empty_rate = array_fill(0, 5, '☆');
$rate = ($point == 0) ? array() : array_fill(0, $point, '★');
return implode('', $rate + $empty_rate);

4行で書ける。