2012年4月29日日曜日

【自分用メモ】ソースコード表示用preタグ

<pre style="background: #fff; border: dashed 5px #ccc; color: black; line-height: 1.3em; margin: 0px; padding: 5px;white-space: pre-wrap;"></pre>

2012年4月27日金曜日

xkeymacsをWindows7で使用する方法

実はレジストリの書き換えが必要です。
xkyemamcsをインストールしてキーバインドの設定変更を行ったあとに以下を行ってみてください。


----------------
①regeditを起動して、"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout"配下に"Scancode map"という名前でバイナリ値を新規追加する。
(まだバイナリ値の編集は必要ありません)

②"HKEY_CURRENT_USER\Keyboard Layout\Scancode Map"の値を先程作った、"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Keyboard Layout\Scancode map"にコピーする。
(右クリック→バイナリデータの修正から値のデータの部分に表示されている情報を選択してコピー、コピーしたらさきほどのScancode mapに対してバイナリデータの修正から貼り付けを行えばOKです)

③再起動してみましょう
再起動後にxkeymacsに設定したキーバインドが設定されているはずです

----------------

レジストリを書き換えるので責任は自己責任でお願いしますということと
念のためレジストリ全体をバックアップしておくのが良いかもしれません

emacsユーザの方が是非お試しあれ!

2012年4月26日木曜日

Windows7でクイック起動バーを表示、作成する方法

①デスクトップを表示し、タスクバー上で右クリック→「ツールバー」→「新規ツールバー」を選択

②フォルダを選択するダイアログが出現するので以下フォルダを選択
---
C:\Users\[ユーザ名]\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch 
([ユーザ名]の部分をご使用のPCのユーザ名を選択してください)
---

③タスクバーに「Quick Launch」が出現するので、右クリックから
「ボタン名」と「タイトル名」を消す

④タスクバー上のお好みの場所に移動すれば完成
(移動するときには「タスクバーを固定する」を解除してから移動できます)

2012年4月25日水曜日

Bloggerでソースコードをスタイルシートで綺麗に見せる方法【prettify.css, prettify.js】

Bloggerの場合を書きますが、おそらく普通のブログサイトでもテンプレート的なHTMLさえ編集できれば使えると思います。

①Bloggerにログイン後、左メニューから「テンプレート」→「HTMLの編集」でHTMLを編集
(このとき警告のようなダイアログが出現するが「続行」をクリックする)

②HTMLの編集画面になった以下の2箇所にソースコードを追加する

1. <head>タグの中に以下の1文を追加
---
<link rel="stylesheet" href="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css"/>
---
⇒「<head>」などで検索するとすぐに該当の場所に飛べます

2. </body>の終了タグの直前に以下の2文を追加
---
<script src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js"></script>
<script>prettyPrint();</script>
---
⇒「</body> 」で検索してすぐ上に貼り付けてしまいましょう

③対象のソースコードを以下のタグで囲ってみましょう
---
<pre class="prettyprint linenums">
XXX
</pre>
---

一応これでできるはず・・・自分はこのスタイル背景とかが綺麗に表示されなかったのでちょっとやめてしまいましたがw
できない場合は対象のcssとjsファイルが存在しているか確認するといいかと思います
http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js
http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css

まぁ書いていて思ったんですが、
なんか「シンタックスハイライト」とか「Syntax Highlighter」とかで検索するともっと良い感じの情報に出会えるかもしれませんw
あとは自分で<pre>に対してスタイルシート適用して作っちゃうとかねw

まぁいろいろと応用が効く方法だと思ったので、一応メモがてらに書いておきました。
参考までにー

2012年4月24日火曜日

LhaplusをWindow7で右クリックに表示させる方法

http://www.sharkpp.net/soft/tool/lhaplus-x64-shell-extension.html

内のダウンロードリンク
http://www.sharkpp.net/soft/x64/LplsShlx64-v1.0.1.0.zip
からzipファイルをダウンロードし解凍
解凍してできたファイル内の
「install.cmd」
管理者として実行する

再起動なしで右クリックのメニューに「解凍」「圧縮」が表示されるようになります

みかか語

しらんかった・・・
まぁ隠語だから普通は知らないんですが
まぁメモしておきます

http://lifecycle.s165.xrea.com/ntt.html
http://lifescape.seesaa.net/article/104001220.html

2012年4月23日月曜日

eclipseでant用の「build.xml」を作成する方法

前回作成した
JUnitを使ってみた【サンプル】
をantからキックできるようにするためにbuild.xmlを作成してみました。
eclipseのAll in oneを使用しているとantのDTKがデフォルトでインストールされているので簡単にbuild.xmlが作成できるので、今回はその方法をご紹介いたします

①プロジェクトを右クリックしてエクスポートをクリック


②エクスポートのウィザードが表示されるので、「一般」→「Antビルドファイル」を選択し、次へを押下する


③Antビルドファイルの生成ウィザードでプロジェクトが選択されていることを確認したら完了を押下する



作成されたXMLファイルも記載しておきます。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- WARNING: Eclipse auto-generated file.
              Any modifications will be overwritten.
              To include a user specific buildfile here, simply create one in the same
              directory with the processing instruction <?eclipse.ant.import?>
              as the first entry and export the buildfile again. -->
<project basedir="." default="build" name="JUnitTest">
    <property environment="env"/>
    <property name="ECLIPSE_HOME" value="../../../eclipse"/>
    <property name="junit.output.dir" value="junit"/>
    <property name="debuglevel" value="source,lines,vars"/>
    <property name="target" value="1.5"/>
    <property name="source" value="1.5"/>
    <path id="JUnit 3.libraryclasspath">
        <pathelement location="${ECLIPSE_HOME}/plugins/org.junit_3.8.2.v20080602-1318/junit.jar"/>
    </path>
    <path id="JUnitTest.classpath">
        <pathelement location="bin"/>
        <path refid="JUnit 3.libraryclasspath"/>
    </path>
    <target name="init">
        <mkdir dir="bin"/>
        <copy includeemptydirs="false" todir="bin">
            <fileset dir="src" excludes="**/*.launch, **/*.java"/>
        </copy>
    </target>
    <target name="clean">
        <delete dir="bin"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
        <javac debug="true" debuglevel="${debuglevel}" destdir="bin" source="${source}" target="${target}">
            <src path="src"/>
            <classpath refid="JUnitTest.classpath"/>
        </javac>
    </target>
    <target description="Build all projects which reference this project. Useful to propagate changes." name="build-refprojects"/>
    <target description="copy Eclipse compiler jars to ant lib directory" name="init-eclipse-compiler">
        <copy todir="${ant.library.dir}">
            <fileset dir="${ECLIPSE_HOME}/plugins" includes="org.eclipse.jdt.core_*.jar"/>
        </copy>
        <unzip dest="${ant.library.dir}">
            <patternset includes="jdtCompilerAdapter.jar"/>
            <fileset dir="${ECLIPSE_HOME}/plugins" includes="org.eclipse.jdt.core_*.jar"/>
        </unzip>
    </target>
    <target description="compile project with Eclipse compiler" name="build-eclipse-compiler">
        <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
        <antcall target="build"/>
    </target>
    <target name="Test">
        <mkdir dir="${junit.output.dir}"/>
        <junit fork="yes" printsummary="withOutAndErr">
            <formatter type="xml"/>
            <test name="jp.geocities.www.junit.Test" todir="${junit.output.dir}"/>
            <classpath refid="JUnitTest.classpath"/>
        </junit>
    </target>
    <target name="junitreport">
        <junitreport todir="${junit.output.dir}">
            <fileset dir="${junit.output.dir}">
                <include name="TEST-*.xml"/>
            </fileset>
            <report format="frames" todir="${junit.output.dir}"/>
        </junitreport>
    </target>
</project>

■ポイント
・一旦実行した起動構成がプロジェクト内にある場合は<target name="Test">としてbuild.xmlから実行できる形式でエクスポートされます
・antで使用できるXMLタグの詳細はこちらで確認できます
http://www.javadrive.jp/ant/buildxml/index1.html
http://www.ne.jp/asahi/hishidama/home/tech/ant/index.html#h2_Task


2012年4月21日土曜日

JUnitを使ってみた【サンプル】

ソースコードはこちらで公開してます(超簡単ですがw)
http://www.geocities.jp/kakakikikeke_new/cui/cui29.html

とりあえず気になってことをメモしておきます。
・基本的にテストの整合性をチェックするのは「assertXXX」系のメソッド
(メッセージが引数で与えらえるほうが便利)
・setUpとtearDownは各テストメソッドが実行される前と実行された後に実行されるメソッド
・eclipseのオールインワン系を使うと非常にJUnitのテストケースを作るのが簡単
(Ganymade, Galileo, Helios, Indigo etc)
・レベル的には単体、結合テストのときに使える
・デグレを引き起こさないためにもパターンは(面倒でもw)細かく作っておくべき
antからキックすることが可能
(つまり build.xml から実行することが可能)
(つまりジェンキンスから実行することが可能)
⇒これがかなりすごいというか便利だなーと感じました

最近テスト自動化にはまっております・・・

2012年4月19日木曜日

Javaのクラスファイル(.class)からソースファイル(.java)を作成する方法

http://java.decompiler.free.fr/

からGUI版をダウンロードしてインストールしましょう
(eclipseのプラグイン版もあるようです)

インストールして実行したらそのままソースコードを見たいクラスファイルを
ドラックアンドドロップしてください。
ソースコードが表示されます
また、jarファイルをドラックアンドドロップすることもできます
ツリー構造でいきなり表示してくれます(これは非常に楽です)
ただ、ソースコード中に記載したコメントはすべてなしの状態で表示されるようです

どうしてもソースコードが手に入らないときは最適のツールだと思います

お試しあれ!

2012年4月18日水曜日

JavaでWebUIをテストする方法【ブラウザ、Webアプリケーション】

http://java-source.net/open-source/web-testing-tools
http://alternativeto.net/software/selenium/
http://en.wikipedia.org/wiki/List_of_GUI_testing_tools


結構たくさんあるんですねー。
まだほとんど触ってないのですが、とりあえずメモしておきます。
新しいの触りたいけど、やっぱり Selenium なのかなー・・・

2012年4月17日火曜日

GoogleIMEをインストールするとF1,F2,F2による音量調節ができなくなる【ThinkPad Edge 14 英語キーボード】

原因ふめいです。。。
ThinkPadのEdgeシリーズでインストールすると音量関係のショートカットキー(F1, F2, F3)が全て無効になってしまうようです。
GoogleIMEをOFFにしてMS-IMEにするとショートカットキーは有効になったのでおそらくはGoogleIMEのせいでしょう。
キーバインドがいろいろとカスタマイズできるようなので、どうやらキーが被っているかもしれません。
いろいろと調べたけど結局解決できなかったです。。。

泣く泣くGoogleIMEをアンインストールしてMS-IMEにしました。
なんでだろう。。。

P.S 20140224
だいぶ昔に書いた記事ですが、以下を実施するとGoogle IMEが正常に動作します
104キーボード対応が原因だったようです
http://kakakikikeke.blogspot.com/2013/03/google-ime.html

2012年4月15日日曜日

DeltaCloud構築メモ

[root@yoshi3 ~]# ruby -v
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-linux]
[root@yoshi3 ~]# gem -v
1.8.21
[root@yoshi3 ~]# rake -V
rake, version 0.9.2.2


上記のようにRuby環境の構築が終了していることが前提です
過去記事でもいろいろとインストール方法について書いているのでまだの方は参考に
-------------------------------------------------------
CentOS5.6にRubyをインストールする
It seems your ruby installation is missing psych (for YAML output)
-------------------------------------------------------

上記の環境が構築できていればDeltaCloudの構築を開始しましょう

=======================================================
yum install -y libxml2 libxml2-devel libxslt libxslt-devel
yum install -y rubygem-nokogiri
gem install deltacloud-core
ls /usr/local/lib/ruby/gems/1.9.1/gems/deltacloud-core-0.5.0/lib/deltacloud/drivers/
(上記に現在DeltaCloudがサポートしているドライバーたちがあるみたいです)
deltacloudd -i mock -r localhost -p 3001 &
(mockモードで起動します、実際は操作できないモードです)
deltacloudd -i ec2 -r localhost -p 3001 &
(ec2モードで起動したい場合には以上のようにします)
=======================================================


で完了です。
ブラウザでhttp://localhost:3001/へアクセスしてみましょう
以下のような画面が表示されればOKです



これでとりあえずは操作できるはず(すいません。操作はまだやってませんw)
まぁいろいろやってみたいと思います

参考になれば!

2012年4月14日土曜日

eclipseでカラーテーマを変更する方法

http://stackoverflow.com/questions/96981/color-themes-for-eclipse

ここを参考にすると全てわかります。
Eclipse 3.6 (Helios)のバージョンから「The Eclipse Color Theme Plugin」という簡単にカラーテーマを変更できるプラグインが登場しているのですが、
小生が使用しているeclipseがEclipse 3.4 (Ganymede)というバージョンでこれがプラグインに対応していない古いバージョンだったので、ちゃんとテーマファイルを適切な場所に置く必要があるわけです。
最新使えば問題ないのですがw

一応メモしておきます

2012年4月13日金曜日

emacsにruby-modeを設定する方法

[root@yoshi3 ~]# rpm -qa | grep emacs
emacs-common-21.4-24.el5
emacs-21.4-24.el5

[root@yoshi3 misc]# cd /root/ruby-1.8.7-p358/misc
[root@yoshi3 misc]# pwd
/root/ruby-1.8.7-p358/misc
[root@yoshi3 misc]# ls -l
合計 88
-rw-r--r-- 1 10347 10347   369  4月 10  2008 README
-rw-r--r-- 1 10347 10347 14452  3月 11  2007 inf-ruby.el
-rw-r--r-- 1 10347 10347  6747  2月 13  2007 ruby-electric.el
-rw-r--r-- 1 10347 10347 38653  5月 19  2008 ruby-mode.el
-rw-r--r-- 1 10347 10347  1746  3月 19  2008 ruby-style.el
-rw-r--r-- 1 10347 10347  4481  2月 13  2007 rubydb2x.el
-rw-r--r-- 1 10347 10347  4613  2月 13  2007 rubydb3x.el
[root@yoshi3 misc]# mkdir /root/.emacs.d/elisp/
[root@yoshi3 misc]# cp -ip * /root/.emacs.d/elisp/
[root@yoshi3 ~]# cd
[root@yoshi3 ~]# emacs .emacs
以下の内容を追記
--------------------------------------------------------------------------------------
(add-to-list 'load-path "/root/.emacs.d/elisp/")

(autoload 'ruby-mode "ruby-mode" "Mode for editing ruby source files" t)
(setq auto-mode-alist (append '(("\\.rb$" . ruby-mode)) auto-mode-alist))
(setq interpreter-mode-alist (append '(("ruby" . ruby-mode)) interpreter-mode-alist))
(autoload 'run-ruby "inf-ruby" "Run an inferior Ruby process")
(autoload 'inf-ruby-keys "inf-ruby" "Set local key defs for inf-ruby in ruby-mode")
(add-hook 'ruby-mode-hook '(lambda () (inf-ruby-keys)))
(global-font-lock-mode 1)
(setq default-frame-alist (append '(
  (foreground-color . "gray")  ;
  (background-color . "black") ;
  (cursor-color     . "blue")  ;
)
default-frame-alist))


(setq ruby-indent-level 2)
(setq ruby-indent-tabs-mode nil)
--------------------------------------------------------------------------------------
[root@yoshi3 ~]# emacs /root/ruby-1.8.7-p358/rubytest.rb
を表示してカラーモードで表示されていればおk


■注意事項
・emacsのバージョンが23じゃないとrubyの1.9系のruby-modeがどうやら使用できない様子
・File mode specification error: (void-variable ruby-font-lock-keywords)
が出る場合は以下を参照
http://www.ruby-forum.com/topic/154226
⇒自分は上記URLを下に「ruby-mode.el」の該当箇所を書き換えたのですが、治らず
⇒上述した.emacsの内容の太線で部分を記載することで対応することができました

2012年4月12日木曜日

Ubuntu10.04でシングルユーザーモードでログインする方法

①GRUBメニューに入る
起動時に「ESC」and「Shift」キーを押しぱなしにする
(どうやらUbuntuのバージョンによってGRUB起動が「ESC」か「Shift」で分かれる様子)
(Ubuntuは起動が本当に早いので起動する前から押しておいたほうがいいかもしれません)
②カーネルバージョンが表示される画面(GRUB画面)に入ったらカーソルが一番上にある状態で「e」を押下しエディットモードに入る
(「recovery mode」と記載されていないほうでやる)
③先頭が「linux」で始まる記述があるのを確認する
④その行末の(または行内にあるであろう)「ro」という記述を「rw」にする
⑤④に加えて以下を行末に追加する「linux single init=/bin/sh」
⑥起動する
(おそらく「Ctrl + x」で起動可能)
⑦起動後に「#」と表示されたら「bash」と入力し「root@(none)」と表示されればシングルユーザーモードでもログインが成功している
===============================================
【追記】異なるパターンの場合もある
④はやらないで⑤の記述する内容を「Linux single init=/bin/bash」にするとできる場合もある
カーネルのバージョンの違いかも・・・
ただし
「ro」はReadOnlyの状態でシングルユーザーモードログインしていることになるので
passwdが打てない状態になります(おそらく以下のようなエラーでます)
------------------------------------------------
passwd: Authentication token manipulation error
------------------------------------------------
このエラーが出た場合「pwconv」コマンドで/etc/passwdと/etc/shadowを同期させるのが定石ですが
------------------------------------------------
pwconv: cannot lock /etc/passwd; try again later.
------------------------------------------------
で弾かれるでしょう。これはReadOnlyモードでシングルユーザーモードログインしているため
ロックファイルの操作ができず発生するエラーのようです
こうなるとパスワードの変更もできない状態になるので、パスワードを変更したい場合には
やはり「rw」に書き換えてログインする必要があります
===============================================

passwdコマンドも打てるのでrootのパスワードを忘れてしまった場合も救済可能です

そもそもUbuntuにはリカバリーモードと呼ばれる救済モードがあるのですが、
これを使うときにはどうやらrootのパスワードが必要になるみたいです
rootのパスワードを忘れてしまったり、rootのパスワードを設定していない場合にはリカバリーモードが使用できないので、そんな場合には上記のシングルユーザーモードを使うといいと思います

お試しあれ!


P.S
成功した際のスクリーンショットです


2012年4月11日水曜日

Adobe Readerをインターネットなし(オフライン)でインストールする方法

P.S 20141106
この記事がGoogleの検索結果で上位に表示されるようになったので内容を確認しました
追記した日付でまだexeをダウンロードできるURLは生きています
また、バージョン11.x系も追加になっているようなので最新版がほしい場合はURLを変更してダウンロードしてみてください
exeを配布しているサイトが死んだときのためにexeをこのブログでキャッシュしておいたほうがいいのだろうか。。



みなさんもご存知AdobeのPDF閲覧ツール「Adobe Reader」ですが、
これをインストールしようとするとインストーラはWebからデータを落とすので
ネットワーク環境がないとインストールすることができません
そのため他のPCでインストーラをダウンロードして他のPC、しかもネットワークが
つながらないスタンドアロンのPCにプライベート側からFTPなどでファイル転送しても
そのPC自体インターネットには出れないので、インストールすることができません
・・・
まぁ最近はWebインストールが簡単で流行っていますが、
スタンドアロンPCへのインストールには困ります。

そんなときにスタンドアロンPCでもAdobe Readerをインストールできるインストーラがあります

------------------------------------------------------
ftp://ftp.adobe.com/pub/adobe/reader/

投稿時点での日本語版の最新バージョンはこちら
ftp://ftp.adobe.com/pub/adobe/reader/win/10.x/10.1.2/ja_JP/
------------------------------------------------------

どうやら非公式の裏サイトみたいな感じですw
こんなことを書いてなんですが、
利用は自己責任でお願いいたします。

個人的に利用するにはいいかもしれまんね。
参考までに

2012年4月10日火曜日

【シェルスクリプト】文字列を分割するコマンド

cut -b 1-2 test.txt

1文字目から2文字目まで取得します
test.txtの中のすべての行を精査します
開始のインデックスは1からなので直感的にしようできます

シェルスクリプトは本当に便利ですね
Javaで書こうとするとsubstringを使ってかつファイル処理も使ってと
結構大変な処理になると予想できます

本当にちょっとした処理ならシェル一本でやったほうがよっぽどらくですね

2012年4月9日月曜日

wgetのプロキシ設定

以下の設定ファイルに

/etc/wgetrc

以下のパラメータを設定します

http_proxy
ftp_proxy


これでプロキシ経由でwgetができます
デフォルトだと以下のような設定があったので表記のサンプルにでもしていただければ
http_proxy = http://proxy.yoyodyne.com:18023/
ftp_proxy = http://proxy.yoyodyne.com:18023/

お試しあれー

2012年4月8日日曜日

It seems your ruby installation is missing psych (for YAML output)

[root@yoshi3 ~]# gem -v
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
1.8.21

前に
http://kakakikikeke.blogspot.jp/2012/04/centos56ruby.html
という記事を書きましたが、今回Rubyの最新版「ruby-1.9.3-p125」という
最新版をインストールすることいなりました。
最新版のRubyはソースコードからのインストールでした。

で、Rubyのインストールをしgemのインストールも完了したのですが、
gem関係の処理が絡むと冒頭の警告が出続けてしまいます。
どうやらRubyの1.9からYAMLという技術をデフォルトで使うようになっており
yamlをインストールする必要があるようです。
がこのyamlをインストールするのも結構たいへんでした
一応、YAMLインストール方法を記載しておきます。

■rpmforgeをrpmリポジトリにしyumでYAMLをインストール
---------------------------------------------
rpm -Uvh http://fr2.rpmfind.net/linux/dag/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
yum search yaml
yum -y install libyaml-devel
---------------------------------------------
で最新版のyaml
libyaml-devel-0.1.4-1.el5.rf
libyaml-0.1.4-1.el5.rf
がインストールされます
いろいろ調べているとソースコードからもインストールする方法があるので
もし上記がダメなら以下の手順も試してyamlをインストールしてみてください
http://d.hatena.ne.jp/donbulinux/20111111/1321004527
あともし、rpmパッケージ配下にすでに古いyamlがインストールされていたらrpmコマンドから削除しておきましょう
一応・・・

で、ここからが本題です。
yamlをインストールし、Rubyのソースコードを再度コンパイルし直し
gemも再度setup.rbを実行してみたのですが、やはり冒頭のエラーがでます
なぜだ・・・

で結論からいうと以下を実行することで解決しました。

-------------------------------
gem install psych
-------------------------------

ワタシも詳しく調べていないのですが、どうやらpsychというモジュールを動作させるために
yamlが必要だそうな。
で今回はyamlは無事にインストールできたが、肝心の「psych」をインストールしてなかったと。
他のサイトでもyamlをインストールすると警告は出なくなりましたという報告が非常に多かったので自分はなかなかこのコマンドまで辿りつけませんでした。
気がついたのはやはり直接ソースコードを見たからですかね。
冒頭のエラーで「/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':」だよー
と教えてくれていたので、ここを見てgemでinstallしてみるかという発想にいたりました。

やっぱりソースコードを見るのは重要ですね

P.S あとはこのへんが非常に参考になりました

2012年4月6日金曜日

CentOS5.6にRubyをインストールする

■まずはyumを使って簡単にインストール

------------------------------------------------------------------------
yum -y install ruby
ruby -v
yum -y install ruby-lib
yum -y install ruby-rdoc
yum -y install ruby-ri
yum -y install ruby-devel
yum -y install ruby-irb
yum -y install eruby
wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
tar xvf rubygems-1.3.5.tgz
cd rubygems-1.3.5
ruby setup.rb
gem -v
gem install bundle
------------------------------------------------------------------------

CentOS5.6でyumインストールした場合rubyのバージョンが1.8.5になってしまう
そうなるとrubyの肝と言ってもよいgemのバージョンが1.3.5と現行の最新版とは
程遠いバージョンがインストールされてしまう

■というわけで、ソースコードからインストール
※ソースインストールなので「gcc」「make」が必要になります

------------------------------------------------------------------------
wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p358.tar.gz
tar xvf ruby-1.8.7-p358.tar.gz
cd ruby-1.8.7-p358
./configure
make
make test
make install
./ruby -v
ruby -v
cd /usr/bin/
ls ruby
mv ruby ruby_20120405
ln -s /usr/local/bin/ruby ruby

ruby -v
wget http://rubyforge.org/frs/download.php/75952/rubygems-1.8.21.tgz
tar xvf http://rubyforge.org/frs/download.php/75952/rubygems-1.8.21.tgz
cd rubygems-1.8.21
ruby setup.rb
gem -v
gem install rake
rake -V
------------------------------------------------------------------------

これでひと通りの安定版がインストールされました
今回インストールした中でポイントだったのは、「/usr/local/bin/」にすでにrubyのパスが
通っていたこと。これによりrubyコマンドを叩いてもyumでインストールした古いrubyが
使用されてしまっていたので、今回インストールしてできたrubyコマンドにシンボリックリンクを
貼ることで対応しました

最終的には「gem」「rake」までインストールしましたが、
やはりRubyをやるならここまでインストール必要はあると思いますw

以下、最終的なインストール状況です。


[root@yoshi3 ~]# ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [x86_64-linux]
[root@yoshi3 ~]# gem -v
1.8.21
[root@yoshi3 ~]# rake -V
rake, version 0.9.2.2


今回は以上です。

2012年4月5日木曜日

svnクライアントのプロキシ設定

yum -y install subersion

でインストールができます。
以下の設定ファイルに

~./.subversion/servers

以下のパラメータを設定します
(上記のファイルがない場合は適当に「svn help」とか打つとでてきます)

http-proxy-host
http-proxy-port
http-proxy-username
http-proxy-password

これでプロキシ経由でwgetができます
デフォルトだと以下のような設定があったので表記のサンプルにでもしていただければ
http-proxy-host = proxy1.some-domain-name.com
http-proxy-port = 80
http-proxy-username = blah
http-proxy-password = doubleblah

お試しあれー

2012年4月4日水曜日

ニフティクラウドストレージを使ってみた

そもそもクラウドストレージって何なの?
っていうの(自分なりに)簡単に説明すると

API利用して容量無限無限のデータ空間にデータを置いたり、参照したり
参照権限などを変更できるもの

って感じです。
で今回はニフティクラウドさんのクラウドストレージサービスを使ってみました。
必要なのはニフティクラウド上で使用できるAPIの認証キー。
認証キーはコントロールパネルの「API認証」から取得できます
AWSのS3もこんな感じで使えるのかなーw
S3も機会があれば触っておこう
いかコマンドレベルで。
参考になれば。

wget http://cloud.nifty.com/api/storage/NiftyCloudStorage-SDK-CLI.zip
unzip NiftyCloudStorage-SDK-CLI.zip
ls -ltr
cd NiftyCloudStorage-SDK-CLI
emacs -nw credentials.properties
chmod 744 ncs_cli.sh
./ncs_cli.sh ls
./ncs_cli.sh --acl-private mb ncss://bucket001
./ncs_cli.sh --acl-private mb ncss://bucket001
./ncs_cli.sh del ncs_cli.sh ncss://bucket001/ncs_cli.sh
./ncs_cli.sh

サンプル的にはこれくらいですが、やっていて気になったのは
どうやら既に作成誰かが作成した同一名のオブジェクトは
作成できないみたいです(たぶん)。
あと公式でも以下のようなサンプルサイトを公開しているみたいなので
利用すること自体は本当に簡単ですね
http://cloud.nifty.com/help/storage/howto.htm
今回はCLIを使ってみましたが、SDK for Javaもあるので、
Javaからも操作できるようなので、非常に応用はききそうです。

【追記】
使っていて設定を入れ込んだほうがよさげなものがあったので、一応メモしておきます

●バケット内のオブジェクトの「数」を知る方法がないのでバケット名でgrepしてカウントする必要がある
例)./ncs_cli.sh ls ncss://log-batch-bucket | grep " ncss://bucket001/" | wc -l

●ログの出力がデフォルトだとDEBUGレベルになっており、ファイルをputするときにファイルの内容をDEBUG文で出力してしまうためログレベルを変更したほうがいい感じの標準出力になる
例)log4j.logger.org.apache.http.wire=INFO
(cli/log4j.propertiesを編集)

●バケット配下のオブジェクトが1000を超えた場合は「max-keys 」オプションを指定しないと1000件以上のオブジェクトを取得できない
例) ./ncs_cli.sh ls ncss://log-batch-bucket max-keys=10000

●オブジェクト一覧を取得するときにprefixが使用できる
例) ./ncs_cli.sh ls ncss://log-batch-bucket prefix=log
「log」ではじめるオブジェクトを全部取得する

2012年4月3日火曜日

シェルスクリプトでファイル読み込み【サンプル】

------------------
#!/bin/sh
while read line
do
  echo $line
done < ./list.txt
------------------


ファイルに記載した内容を全行表示します。
ポイントは
while read line

done < ./list.txt
かなーと思います。
whileの代わりにforだと動作しません。
また、lineは変数ですのでお好きなもので大丈夫です

参考になれば

2012年4月2日月曜日

sshで公開鍵認証なし+root許可の設定方法

/etc/sshd/sshd_config
を編集
以下の設定になってるか確認します

PasswordAuthentication yes
#PermitRootLogin without-password


以上の状態になってることを確認します。
GSSAPIAuthenticationの設定はどちらでも大丈夫でした。
あくまでもGSSベースの認証をするかどうかのフラグだそうです。

お試しあれ

2012年4月1日日曜日

Windowsで使える強力なシェルスクリプト【コマンドプロンプトではありません】

WScript

CScript
ってのがありますと

WScriptはGUI向け
CScriptはCUI向け

WScript=Windows Scripting Host
CScript=Console Based Script Host

みたいです
どのバージョンのWindowsでも使えるのかな
インターネットオプションとかこれで操作できたりするのかなw

http://wsh.style-mods.net/topic3.htm