2009年9月21日月曜日

Ubuntu復活

自宅PCにデュアルブートして使っていたUbuntuが天に召されてから1ヶ月くらい。
最近慌しかったので、あまり手をつけられてませんでしたが、
連休の最初に、この事態を冷静に見つめなおそうと対処したところ、復活しました。

そもそもこういう表示があったのを見逃していた。
Unclean shutdown /dev/sda3


よくよく観察してみると、Ubuntuが動かないんじゃなくて、
起動途中にファイルシステムまでたどり着かないってのが問題だったみたいです。
エラー表示の中で「マニュアルにてファイルシステムを修復しろ」ってのもありました。

色々調べた結果、コマンドラインにて以下のコマンドを実行することで解決。
sudo fsck /dev/sda3

この後いくつかのジョブ(メモリ上のデータ?)を消すけどいいか?
みたいな警告メッセージが出ましたが、全てYesで進みました。

fsck(file system consistency check)は、unix系OSでファイルシステムの一貫性を調査するためのツール。
OSがクラッシュした後に再起動すると自動実行されるらしいけど、
今回の場合、それが自動的に行われなかったので手動で行う必要があったみたいです。

今回、Xまで動かなかったので、問題が複数あるように思えましたが、
結局この方法だけでUbuntuが復活したので、意外と単純なミスだったかもしれません。

2009年9月15日火曜日

[Redmine] ezFAQプラグイン導入メモ

プロジェクト内での課題管理として、
このプラグインが使えないものかと思い、導入してみたときのメモです。

http://github.com/zouchaoqun/ezfaq/tree/master
で最新版を公開していますが、
僕が利用しているredmine-0.8.4のようなリリース版に導入するためには、古いバージョン(ezFAQ-0.2.1)じゃないと使えないようです。

http://www.r-labs.org/wiki/r-labs/EzFAQ
では、ezFAQ-0.3.5をRedmine-0.8.4で動作するように修正したものを公開中です。
日本語にも対応済み。
ここから ezfaq_plugin-0.3.5-0.8.4.zip をダウンロード&解凍して、
C:\Program Files\redmine-0.8.4\vendor\plugin に
ezfaq_plugin の名前で放り込みます。
※どのプラグインでもそうかもしれませんが、xxx_plugin の名前じゃないと使えないみたいです。

DBのマイグレーションを行います。
C:\Program Files\redmine-0.8.4>rake db:migrate_plugins RAILS_ENV="production"
(in C:/Program Files/redmine-0.8.4)
Migrating engines...
Migrating actionwebservice...
Migrating acts_as_activity_provider...
Migrating acts_as_attachable...
Migrating acts_as_customizable...
Migrating acts_as_event...
Migrating acts_as_list...
Migrating acts_as_searchable...
Migrating acts_as_tree...
Migrating acts_as_versioned...
Migrating acts_as_watchable...
Migrating classic_pagination...
Migrating coderay-0.7.6.227...
Migrating ezfaq_plugin...
== 1 EzfaqSetup: migrating ====================================================
-- create_table("faq_categories", {:force=>true})
-> 2.1230s
-- add_index("faq_categories", ["project_id"], {:name=>"faq_categories_project_i
d"})
-> 1.0110s
-- create_table("faqs", {:force=>true})
-> 1.9530s
-- add_index("faqs", ["project_id"], {:name=>"faqs_project_id"})
-> 0.3710s
-- create_table("faq_settings", {:force=>true})
-> 1.5620s
== 1 EzfaqSetup: migrated (11.7970s) ==========================================

== 2 AddPdfTitle: migrating ===================================================
-- add_column(:faq_settings, :pdf_title, :string, {:default=>"FAQ", :null=>false
})
-> 0.2910s
== 2 AddPdfTitle: migrated (0.3110s) ==========================================

Migrating gloc-1.1.0...
Migrating gravatar...
Migrating rfpdf...
Migrating ruby-net-ldap-0.0.4...

C:\Program Files\redmine-0.8.4>ruby script/server -e production


Redmine上でプロジェクト→管理→モジュール

さっそく使ってみるもののいくつか問題発生
新規FAQをを保存するときに「担当者がない」みたいな
 エラーが生じる。

 でも作成そのものは完了している。
 ただしこれはadmin以外のアカウントを作成していない、
 今の状況としては不自然ではないエラーの気もする。

FAQ画面で、コピーを利用すると
 "project_tree_options_for_select"
 というメソッドは無い、というエラーが生じる。


そもそも"ez"FAQゆえに質問の細かい内容は
 記述するようになっていない。

 質問は一行質問が基本のようです。
 プロジェクト上の課題管理にはフォーラムの方が
 向いているかもしれません。

2009年9月12日土曜日

Redmine on Windows XP

Ubuntuが天に召されました。
(というかXが立ち上がらないのですが)
このノートもそろそろ買い替えかなと思いながらも、
次に何買うかで悩んでいるところです。
(デスクトップにするかノートにするか、
そろそろWindows7出るからそれ待つかとか)

ということで今度はWindows XP SP3(以下WinXP)に構築してみました。
以下、構築メモです。

http://rubyinstaller.org/

http://rubyforge.org/frs/?group_id=167
からruby186-26.exeをダウンロード。結構時間かかる(23.7MB)

rubyのインストール先は、C:\ruby
インストールはだいたいデフォルト通り。
必要な領域が89.9MBと言われる。

コマンドプロンプトにて、インストール確認
> ruby -v
ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]

リリースノートを読むと、この時点でgemやrakeが入っていることに少しばかり感動。

http://dev.mysql.com/downloads/
の MySQL Community Server からダウンロード。

IIJのHTTPミラー:
http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-essential-5.1.38-win32.msi/from/http://ftp.iij.ad.jp/pub/db/mysql/
から落したmysql-5.1.38(インストーラが必要なもの)を使用する。
Setup Typeとして"Typical"を選択。
MySQLのインストール先は、
C:\Program Files\MySQL\MySQL Server 5.1\とした。

Data Folderとしてデフォルトが、
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\
となっているので、そのまま。
"Configure the MySQL Server now"にチェックを入れて"Finish"

インスタンス設定のウィザードにて、"Standard Configuration"を選択。
オプションの選択では、"Install As Windows Service"と
"Include Bin Directory in Windows PATH"の両方にチェックいれた。
rootパスワードを指定。"Execute"をクリックして無事に終了。

Redmine本体のダウンロードを下記から行う。
http://rubyforge.org/frs/?group_id=1850
最新版の0.8.4のzip(4.26MB)をダウンロード。
"出力先を指定して解凍"で"C:\Program Files"を指定して解凍。
"C:\Program Files\redmine-0.8.4"が作られる。

> mysql -u root -p

でパスワードを入力。無事入れる。

mysql> create database redmine charset = uft8;
Query OK, 1 row affected (0.00 sec)

でデータベース作成。

mysql > quit;
Bye

"C:Program Files\redmine-0.8.2\config\database.yml.sample"の
コピーを同じフォルダ下に"database.yml"の名前で作成。
mysqlへのrootパスワードを加える。
データベースのマイグレーションを行うため、
rakeのバージョンアップを行う。コマンドプロンプトで、
> gem install rake
を行う。これがものすごく時間がかかってしまう。

古いバージョンでなんとかならんかと思い、次の手順を行うが、
こんなエラーが出る。
C:\Program Files\redmine-0.8.4>rake db:migrate RAILS_ENV=production
(in C:/Program Files/redmine-0.8.4)
rake aborted!
wrong number of arguments (3 for 1)
C:/Program Files/redmine-0.8.4/rakefile:10
(See full trace by running task with --trace)
http://d.hatena.ne.jp/yatmsu/20090228/1235812223
によると、rakeのバージョンが古いときにこういうのが出るらしい。
C:\Source>gem list
(中略)
rake (0.7.3)
Ruby based make-like utility.
(後略)


rakeのバージョンは0.7.3であった。
時間がかかってもrakeのバージョンを上げるしかないことに。
C:\>gem install rake
Bulk updating Gem source index for: http://gems.rubyforge.org
Successfully installed rake-0.8.7
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...
(これが終了するのに一晩かかった。多分バカPCのメモリ不足)

C:\> cd "Program Files\redmine-0.8.4\"
C:\Program Files\redmine-0.8.4>rake db:migrate RAILS_ENV=production
(101個のテーブルが作られる)
C:\Program Files\redmine-0.8.4>rake load_default_data RAILS_ENV=production
(in C:/Program Files/redmine-0.8.4)

Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl,
no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en] ja
====================================
Default configuration data loaded.

Note: The rake task load_default_data has been deprecated, please use the replac
ement version redmine:load_default_data



C:\Program Files\redmine-0.8.4\config\environment.rb
の中身を次のように修正。
(修正前) config.action_mailer.perform_deliveries = false
(修正後) config.action_mailer.perform_deliveries = true

C:\Program Files\redmine-0.8.4\config\email.yml
の中身は次のように修正した。
(修正前)
production:
delivery_method: :smtp
smtp_settings:
address: smtp.example.net
port: 25
domain: example.net
authentication: :login
user_name: redmine@example.net
password: redmine
(修正後)
production:
delivery_method: :smtp
smtp_settings:
address: smtp.example.net
port: 25
domain: example.net
# authentication: :login
# user_name: redmine@example.net
# password: redmine


起動させる。
C:\Program Files\redmine-0.8.4>ruby script/server -e production
=> Booting WEBrick...
=> Rails 2.1.2 application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2009-09-07 22:19:49] INFO WEBrick 1.3.1
[2009-09-07 22:19:49] INFO ruby 1.8.6 (2007-09-24) [i386-mswin32]
[2009-09-07 22:19:49] INFO WEBrick::HTTPServer#start: pid=8408 port=3000


WEBrickが起動して、この状態であれば利用可能。
ブラウザでhttp://localhost:3000/にアクセスして問題なく表示される。

2009年7月20日月曜日

Redmine on Ubuntu9.04

会社のプロジェクト管理にRedmineを使うことになり、
先週から勉強を始めました。
社内で使用する場合は、CentOS5.3になるようですが、
自宅の壊れかけのノートPCにこれ以上負担かけさせたくないので、
インストール作業の練習を兼ねてUbuntu9.04に入れてみます。
(自分とPCに余裕があれば仮想化の勉強もして、Win上でやってみたかった)

1. Rubyのインストール
$ sudo apt-get install ruby rails rubygems

[ruby]
RedmineはRubyで書かれているため。
ちゃんとインストールされたかの確認:
$ ruby --version
ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]

[rubygems]
RubyGemsはRuby用のパッケージ管理ツールです。
ちゃんとインストールされたかの確認:
$ gem --version
1.3.1

[rails]
Ruby on Rails.
Rubyで記述されたwebアプリケーション開発用のフレームワーク。

2. データベースのインストール
参考図書によると、RedmineはMySQL、PostgreSQL、SQLiteの
3つのDBに対応しているようです。
特に理由が無ければMySQLが一番安心な道だとか。
とりあえずここでもMySQLを使ってみます。
$ sudo apt-get install mysql-client mysql-server

/var/lib/mysql/ にDBが作られます。
場所を変える場合は、TOBY SOFTさんのページを参考。
Ubuntuではaptでmysql-serverをインストールする際に、
rootのパスワードを設定するよう指示が出るのですが、
CentOSではインストール後はブランクの状態なので、
自分で設定する必要があるようです。

MySQLでRedmine用のDBを作ります。
$ sudo /etc/init.d/mysql start
* Starting MySQL database server mysqld [ OK ]
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 36
Server version: 5.0.75-0ubuntu10.2 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database redmine character set utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on redmine.* to redmine@localhost identified by '*********';
Query OK, 0 rows affected (0.02 sec)
mysql> exit
Bye

*********のところはユーザパスワード。

3. Redmineのインストール
最新版をhttp://rubyforge.org/frs/?group_id=1850からインストールします。
wget http://rubyforge.org/frs/download.php/56909/redmine-0.8.4.tar.gz
tar xvfz redmine-0.8.4.tar.gz
sudo mv redmine-0.8.4 /var/lib/redmine

ここでは、/var/lib/以下に移しました。

/var/lib/redmine/config/以下にある、
database.yml.exampleを使ってDBのMySQLの設定をします。
cd /var/lib/redmine/config
cp database.yml.example database.yml
vi database.yml

以下のような感じで編集しました(diffの結果):
13,14c13,14
< username: root
< password:
---
> username: redmine
> password: *********
15a16
> socket: /var/run/mysqld/mysqld.sock

socketは以下のコマンドの結果を入れる。
$ cat /etc/mysql/my.cnf | grep socket


データベースの初期化を次のコマンドで行います。
$ rake db:migrate RAILS_ENV=production
$ rake redmine:load_default_data RAILS_ENV=production
Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en] ja
====================================
Default configuration data loaded.

1行目がDBの生成。2行目が初期データの投入。
3行目では使用言語をja(日本語)に指定。
5行目が表示されたら成功かな?

4. Redmineの実行
/var/lib/redmineで以下のコマンドを実行します。
$ sudo script/server -e production

うまくいくとRuby付属のwebサーバ「webrick」が
3000番ポートで起動しています。
http://localhost:3000にアクセスすると閲覧できます。



ログインしたのち、myaccountにて、
言語やadminのパスワード変更など行います。
とりあえずローカルではこれでおしまい。
会社で使用する際には、apacheとの連携などが必要のようです。

参考図書:
「入門Redmine Linux/Windows対応」 前田剛・著
http://www.amazon.co.jp/%E5%85%A5%E9%96%80Redmine-Linux-Windows%E5%AF%BE%E5%BF%9C-%E5%89%8D%E7%94%B0-%E5%89%9B/dp/4798021377

参考サイト(すでに先達が多くの記録を残されていました):
http://d.hatena.ne.jp/Chisei/20090422/1240410046
http://tobysoft.net/wiki/index.php?Ubuntu%2FRedmine

2009年5月14日木曜日

UbuntuにCOBOL開発環境を。

会社の研修でCOBOLを勉強することになり、
自宅でも勉強できるようにCOBOLの開発環境を構築しました。
自分の持ってるノートPCには、CドライブにXP、
DドライブにUbuntu9.04をデュアルブートにて使えるようになっています。
そこで以下のサイトを参考にしながら、
Ubuntuにopen-cobol-1.0を導入しました。
http://d.hatena.ne.jp/itoasuka/20090314/1237011447
http://l-w-i.net/m/20080626_01.txt
*上の2つのサイトではいずれもsourceforgeからtarを拾ってきているのですが、
あとで調べてみるとパッケージにもopen-cobolがありました。
確認はしてませんが、そっちのが導入は楽かもしれません。

1. まずはソースの入手。以下のページから。
http://sourceforge.net/project/showfiles.php?group_id=34923
好きなところに置いて構わないかと思いますが、
自分の場合は、COBOL用のディレクトリを作ってその中に放りこみました。
あとはイトウアスカさんのブログにもあるとおり、
gcc、libgmp3-dev、libdb-devもインストール。
(自分の環境ではgccは既に導入済み)

$ sudo apt-get install libgmp3-dev


2. 放り込んだディレクトリ下で展開して、おまじない。

$ tar zxvf open-cobol-1.0.tar.gz
$ ./configure
$ make
$ sudo make install


3. キャッシュの最新化

$ sudo ldconfig


ここまでで、コンパイラと共有ライブラリのインストールが終了です。
ソースコードをhogehoge.cobで作成し、
以下のようにコンパイル&実行します。
(コンパイルするとhogehogeという名の実行ファイルができるはず)

$ cobc -x hogehoge.cob
$ ./hogehoge
(hogehogeの中身の実行)

2009年2月24日火曜日

ImageMagickによる文字列の画像化

文字列を画像化する作業は、
メールアドレスをwebサイト上に置くときなどに行う。
いくつかのサイト上では、フォントや背景色など
細かな指定まで対応可能なものもある。

TEXT-IMAGE.com
文字画像変換ツール

ただしImageMagickを使って一番シンプルなスタイルで
文字列を画像化することができる。
以下のコマンドを実行するだけ。

convert label:"How are you?" moji.png


↓のようになる。


もうちょっと手を加えて
対話式にフォントを指定するとか、
web上のインターフェイスまで作れるとか。
そこまでできるといいけど。

2009年2月17日火曜日

移動先ファイルの上書き防止

unixコマンドのmvを使ってファイルを
別ディレクトリへ移動させるとき、
移動先のディレクトリに同じ名前のファイルが存在すれば、
次の2つの場合に移動させない、というオプション。

・その修正時刻が移動元ファイルと同じ
・修正時刻が移動元ファイルより新しい

mv -u myfile mydirectory/

-u、または、--update
mvによるファイル消失のセーフティネットになるのかな。
デフォルトでつけてもいいかもしれない。

詳しくは、Manpage of MV

目盛りのフォントを変える

Kawanoさんのgnuplot tipsにも無かったので、
あまり知られていない方法なのかもしれない。

set xtics "Helvetica,18"


double quotationの中はラベルと同様に指定できる。
ただ目盛りにTimesを指定するのはなんか不自然な気になる。

このとき、自分のDebian環境では、
gnuplotでGaramondをデフォルトで使えることを知った。
まじでイラレいらず。

2009年2月16日月曜日

TeXclip

http://maru.bonyari.jp/texclip/

webアプリとして、ブラウザ上でTeXによる数式を作成可能。
テキストの色や解像度、fontは自由に選べる。
数式書くときに、$で囲むのを忘れないこと。

convertのオプション

ImageMagickのconvertを使うとeps形式からの
別の画像形式の変換が楽なのだけど、
gnuplotで作ったepsの図を変換するとぼやける。
(特にpostscript epsなどでは出力される画像サイズが小さいので)

こういうとき次のようなオプションをつける。

convert -density 600 -geometry 40% fig.eps fig.jpg


-densityオプションは画像の解像度の指定。
デフォルトは72×72(dots per inches)。

-geometryオプションは画像サイズの変換。

詳しくは、【Proton.jp】 ImageMagickの便利な使い方

HTMLの特殊文字

http://e-words.jp/p/r-htmlentity.html

ついつい忘れてしまうので。
そうはいっても特殊文字をなるべく使わないような文章術を
身につけていきたいものです。

shellscriptでgnuplotを使う

卒業した先輩に教えてもらった方法。

#!/bin/sh
gnuplot « END > gnuplot.eps
set terminal postscript eps enhanced color

set size 0.8,0.8

set xlabel 'xlabel' font "Times-Roman,18"

set ylabel 'ylabel' font "Times-Roman,18"

set title 'title' font "Times-Roman,18"

plot 'plotdata.1' ti 'plotdata.1' w l, \

'plotdata.2' ti 'plotdata.2' w l, \

'plotdata.3' ti 'plotdata.3' w l

END


ラベルを大きなサイズにするために、
代わりに図の大きさを80%にするところがデザイン的にミソ。

イラレで編集するときに、
"set term postscript eps enhanced color"の"eps"を抜かすと、
90°回した感じになってしまう。

用途

Linuxコマンドやソフトウェアの使い方、便利なサイトなどの忘備録です。
ときどき天文関係・マンガ関係の話もまざるかもしれません。