プロジェクト

全般

プロフィール

InstallCoLinux » 履歴 » バージョン 25

Yuumi Yoshida, 2008-07-13 23:00

1 24 Yuumi Yoshida
h1. coLinux で作る 快適Ruby on Rails開発環境
2
3
4 1 Yuumi Yoshida
質問などは、このページの一番下のコメント欄に書き込んで下さい。
5
6
7 24 Yuumi Yoshida
h2. 対象者
8 1 Yuumi Yoshida
9
10 24 Yuumi Yoshida
* Windows PC 上で快適に Ruby on Railsの開発がしたい人
11
* CUI(コマンドライン)の好きな人
12
* Linux(Unix)の基本的なコマンドや設定がわかる人、または Linux(Unix) を勉強したい人
13 1 Yuumi Yoshida
14
15
16 24 Yuumi Yoshida
h2. 参考資料
17 1 Yuumi Yoshida
18
19 24 Yuumi Yoshida
* WEB+DB PRESS Vol.40  「特集2 coLinux,Emacs,GNU screen,zsh[定番]Linux開発環境」 http://gihyo.jp/magazine/wdpress/archive/2007/vol40
20
21
22
h2. インストール
23
24
25
26
h3. 準備しておくソフト
27 1 Yuumi Yoshida
28 25 Yuumi Yoshida
* タミナルエミュレータ (例 PuTTY  http://yebisuya.dip.jp/Software/PuTTY/)
29 24 Yuumi Yoshida
* bz2が扱える解凍ソフト(例 Lhaz http://www.chitora.jp/lhaz.html)
30
* エディタ (例 サクラエディタ http://sakura_editor.at.infoseek.co.jp/)
31 1 Yuumi Yoshida
32 24 Yuumi Yoshida
33 25 Yuumi Yoshida
h3.  coLinux インストール
34 1 Yuumi Yoshida
35
36 25 Yuumi Yoshida
1.  ネットを監視するセキュリティソフト(Notne, Macfee...)を OFF にする
37 1 Yuumi Yoshida
38 25 Yuumi Yoshida
  !secure_off.png!
39 1 Yuumi Yoshida
40 25 Yuumi Yoshida
41
2. http://sourceforge.net/project/showfiles.php?group_id=98788 から以下をダウンロード
42
43
* coLinux本体:  coLinux-0.7.2.exe 
44
* Ubuntu Linux イメージ :  Ubuntu-6.06.1.ext3.1gb.bz2
45 2 Yuumi Yoshida
 
46 25 Yuumi Yoshida
3. coLinux-0.7.1.exe を実行してインストール
47 24 Yuumi Yoshida
48 25 Yuumi Yoshida
* Choose Components 画面では  *Root Filesystem image Download*  はチェックを外して下さい。
49
* インストール場所は適当に設定して下さい。ここでは *D:¥Program Files¥coLinux¥* にインストールしたとして書いています。
50 24 Yuumi Yoshida
51 25 Yuumi Yoshida
4.  Ubuntu-6.06.1.ext3.1gb.bz2 を適当な解凍ツールを使い、coLinuxをインストールしたディレクトリー(ここでは:¥Program Files¥coLinux¥)に解凍します。
52
53
5. coLinux 設定ファイルを作成します。
54
55
* D:¥Program Files¥coLinux¥xample.conf をコピーして D:¥Program Files¥coLinux¥ubuntu.conf という名前にします。
56
* ubuntu.conf ファイルを以下のように変更します。(変更した行のみ書きます)
57
58 24 Yuumi Yoshida
<pre>
59 2 Yuumi Yoshida
cobd0="c:¥coLinux¥root_fs"
60
61 1 Yuumi Yoshida
cobd0="D:\Program Files\coLinux\Ubuntu-6.06.1.ext3.1gb"
62 3 Yuumi Yoshida
63 2 Yuumi Yoshida
ro
64
65 1 Yuumi Yoshida
#ro
66 2 Yuumi Yoshida
67 1 Yuumi Yoshida
#mem=64
68
69
mem=256  
70
71
eth0=slirp
72
73
eth0=tuntap
74
</pre>
75 24 Yuumi Yoshida
    *注意* mem= は coLinux のメモリー割り当てです。メモリーをたくさん積んでいるPCの場合は大きい方が良いかもしれません、
76
     私が使っているPCはWindowsXP メモリー 1Gbyte のものです。
77 1 Yuumi Yoshida
78
 6. DOSプロンプトを開き、coLinux を起動します
79
<pre>
80 24 Yuumi Yoshida
> D:
81 2 Yuumi Yoshida
> cd ¥Proguram Files¥coLinux
82 1 Yuumi Yoshida
> colinux-daemon @ubuntu.conf
83 24 Yuumi Yoshida
</pre>
84 2 Yuumi Yoshida
85 25 Yuumi Yoshida
  !dos.png!
86 1 Yuumi Yoshida
87
88 25 Yuumi Yoshida
7.  設定に間違いが無ければ、 DOS 窓に上のようなメッセージが表示され、別ウィンドウに 以下のように coLinux が起動されます。
89 2 Yuumi Yoshida
90 25 Yuumi Yoshida
   !coLinux.png, 375!
91
92 1 Yuumi Yoshida
   上のように、 *ubuntu login:* が表示されれば成功です。
93
94 24 Yuumi Yoshida
95 1 Yuumi Yoshida
96 24 Yuumi Yoshida
h3. ネットワーク設定
97
98 1 Yuumi Yoshida
99
ネットワーク構成ですが、coLinux にはPCとは別のセングメントを割り当てます。
100
101
coLinux と PC のネットワークの間は TAP-Win32 というドライバー(ブリッジソフト)が変換するので、coLinux と PC は通信が出来ます。
102 3 Yuumi Yoshida
103
しかし coLiunx からインターネットにアクセスできません、そこでWindowsの「インターネットの共有」機能(NAT)を設定し、coLiunx からインターネットにアクセスできるようにします。
104 1 Yuumi Yoshida
105 25 Yuumi Yoshida
WindowsXP HOME Edition では、インターネットの共有で設定出来るアドレスは 192.168.0.1 に限られるので、今回は以下のように設定します。
106
107 1 Yuumi Yoshida
*  coLinux : 192.168.0.2       (192.168.0.2 〜 192.168.0.254 なら変更可能)
108 24 Yuumi Yoshida
* TAP-Win32: 192.168.0.1
109
110
また、PC 、インタネット接続のルーターは以下のアドレスになっているとして書きます。
111 25 Yuumi Yoshida
112 1 Yuumi Yoshida
* PC : 192.168.1.12
113 24 Yuumi Yoshida
* ルーター:  192.168.1.1  
114
115 25 Yuumi Yoshida
1. PC 側設定
116 24 Yuumi Yoshida
   coLinuxが立ち上がった時点で、ネットワーク接続を表示すると以下のように、TAP-Win32 Adapter とうローカルエリア接続があります。
117
ここでは「ローカルエリア接続 3」になっていますが環境によって違う名前が付きます。
118 1 Yuumi Yoshida
119 25 Yuumi Yoshida
  !net_list.png!
120 1 Yuumi Yoshida
121 25 Yuumi Yoshida
2.  TAP-Win32 Adapter のプロパティーを表示し、アドレスを 192.168.0.1 に設定します。
122 1 Yuumi Yoshida
123 25 Yuumi Yoshida
  !net_prop1.png!   !net_prop2.png!
124 1 Yuumi Yoshida
125 25 Yuumi Yoshida
3. インターネットに接続されている接続(ここでは、ワイヤレスネットワーク接続)に「インターネット接続の共有」を設定します。 
126 24 Yuumi Yoshida
インターネットの共有はプロパティーの「詳細設定」タブにあります、
127
 「インターネット接続の共有」のチェック と 「ホームネットワーク接続」に TAP-Win32 Adapterを選択します。
128 5 Yuumi Yoshida
129 25 Yuumi Yoshida
  !net_prop3.png!
130 5 Yuumi Yoshida
131 25 Yuumi Yoshida
4. coLinux console に root でログインします。パスワードは root です、インストールが終わったら変更しましょうね。
132 1 Yuumi Yoshida
133 25 Yuumi Yoshida
5. ログインできたら、ネットワークの設定を変更します
134
135 5 Yuumi Yoshida
<pre>
136 1 Yuumi Yoshida
# cp /etc/network/interfaces /etc/network/interfaces.org   ← 変更前のファイルはバックアップしておきましょう
137
# vi /etc/network/interfaces
138 24 Yuumi Yoshida
139 1 Yuumi Yoshida
 ※※  iface eth0 inet static 以下を下のように変更します  
140
141 8 Yuumi Yoshida
iface eth0 inet static
142 1 Yuumi Yoshida
   address 192.168.0.2
143 5 Yuumi Yoshida
   broadcast 192.168.0.255
144 1 Yuumi Yoshida
   netmask 255.255.255.0
145
   gateway 192.168.0.1
146 5 Yuumi Yoshida
</pre> 
147
148 24 Yuumi Yoshida
 *注意* coLinux console は英語キーボードの配列になっているので、記号がキーに書かれているのと違う文字が入ります ^^);
149 1 Yuumi Yoshida
150 25 Yuumi Yoshida
6. DNS(name server) の設定も変更します。通常のブローバンドルーターを使っている場合は、DNS はルータのIPアドレスです。
151
152 24 Yuumi Yoshida
<pre>
153 1 Yuumi Yoshida
# cp/etc/resolv.conf /etc/resolv.conf.org 
154
# vi /etc/resolv.conf
155
156
 ※※ ブローバンドルーターのIPアドレスを指定
157
nameserver 192.168.1.1
158
</pre>
159 5 Yuumi Yoshida
160 25 Yuumi Yoshida
7. ネットワークを設定
161
162 1 Yuumi Yoshida
<pre>
163
# /etc/init.d/networking restart
164 24 Yuumi Yoshida
</pre>
165 5 Yuumi Yoshida
166 25 Yuumi Yoshida
8. 確認、まずは自分(coLinux)にpingが届くこと
167
168 1 Yuumi Yoshida
<pre>
169
# ping -c 3 192.168.0.2
170 24 Yuumi Yoshida
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
171 5 Yuumi Yoshida
64 bytes from 192.168.0.2: icmp_seq=1 ttl=64 time=0.155 ms
172 24 Yuumi Yoshida
64 bytes from 192.168.0.2: icmp_seq=2 ttl=64 time=0.158 ms
173 5 Yuumi Yoshida
64 bytes from 192.168.0.2: icmp_seq=3 ttl=64 time=0.161 ms
174 1 Yuumi Yoshida
175 24 Yuumi Yoshida
--- 192.168.0.2 ping statistics ---
176 1 Yuumi Yoshida
3 packets transmitted, 3 received, 0%25 packet loss, time 2015ms
177 5 Yuumi Yoshida
rtt min/avg/max/mdev = 0.155/0.158/0.161/0.002 ms
178
</pre>
179 1 Yuumi Yoshida
180 25 Yuumi Yoshida
9. OKなら TAP-Win32 にpingが届くことを確認
181
182 1 Yuumi Yoshida
<pre>
183
# ping -c 3 192.168.0.1
184 25 Yuumi Yoshida
185 1 Yuumi Yoshida
 以下省略
186 24 Yuumi Yoshida
</pre>
187 25 Yuumi Yoshida
188
10. OKなら PC にpingが届くことを確認
189
190 5 Yuumi Yoshida
<pre>
191 1 Yuumi Yoshida
# ping -c 3 192.168.1.12
192 24 Yuumi Yoshida
 以下省略
193 5 Yuumi Yoshida
</pre>
194 25 Yuumi Yoshida
195
11. OKなら  ルーター にpingが届くことを確認
196
197 24 Yuumi Yoshida
<pre>
198 5 Yuumi Yoshida
# ping -c 3 192.168.1.1
199 24 Yuumi Yoshida
 以下省略
200 1 Yuumi Yoshida
</pre>
201 25 Yuumi Yoshida
202
12. OKなら ネット上のサイト にpingが届くことを確認
203
204 24 Yuumi Yoshida
<pre>
205 1 Yuumi Yoshida
# ping -c 3 mixi.jp
206 24 Yuumi Yoshida
 以下省略
207 1 Yuumi Yoshida
</pre>
208
209 24 Yuumi Yoshida
210 5 Yuumi Yoshida
211 1 Yuumi Yoshida
h3. アカウント作成
212
213
214 25 Yuumi Yoshida
1. 自分のログイン用アカウントを作りましょう。ログイン名/パスワードは PC と同じにして下さい。
215
216 24 Yuumi Yoshida
<pre>
217 1 Yuumi Yoshida
# adduser taro     ← ログイン名 trao を作成
218 5 Yuumi Yoshida
Adding user @taro'...
219 24 Yuumi Yoshida
Adding new group @taro' (1001).
220 1 Yuumi Yoshida
Adding new user @taro' (1001) with group @taro'.
221 24 Yuumi Yoshida
Creating home directory @/home/taro'.
222
Copying files from @/etc/skel'
223
Enter new UNIX password:                 ← パスワード
224 1 Yuumi Yoshida
Retype new UNIX password:              ← パスワード
225 24 Yuumi Yoshida
passwd: password updated successfully
226
Changing the user information for taro
227 5 Yuumi Yoshida
Enter the new value, or press ENTER for the default
228
	Full Name []:                                       ← Enter のみでよい
229
	Room Number []: 
230
	Work Phone []: 
231
	Home Phone []: 
232
	Other []: 
233 1 Yuumi Yoshida
Is the information correct? [y/N] y      ← Y を忘れずに
234 6 Yuumi Yoshida
</pre>
235
236 25 Yuumi Yoshida
2. sudo が使えるように設定します
237
238 24 Yuumi Yoshida
<pre>
239 1 Yuumi Yoshida
# vi /etc/sudoers
240
root    ALL=(ALL) ALL
241 24 Yuumi Yoshida
taro      ALL=(ALL) ALL     ←  自分のアカウントを rootと同様に追加
242 1 Yuumi Yoshida
</pre>
243 6 Yuumi Yoshida
244 5 Yuumi Yoshida
245 24 Yuumi Yoshida
h3. いったん終了、coLinux の再起動
246 7 Yuumi Yoshida
247 1 Yuumi Yoshida
248 7 Yuumi Yoshida
この辺でいったん、coLinux を終了してみましょう。
249 25 Yuumi Yoshida
250 24 Yuumi Yoshida
<pre>
251
# /sbin/shutdown -h 0
252 1 Yuumi Yoshida
</pre>
253 25 Yuumi Yoshida
254 1 Yuumi Yoshida
coLinux consoleにメッセージが数行表示され *Power down* と表示されたら 終了完了です。
255 24 Yuumi Yoshida
256 1 Yuumi Yoshida
coLinuxを起動した、DOSプロンプト上の colinux-daemon が終了しているはずです。
257 24 Yuumi Yoshida
258 7 Yuumi Yoshida
259
再起動は 以前と同じく
260 25 Yuumi Yoshida
261 7 Yuumi Yoshida
<pre>
262 1 Yuumi Yoshida
colinux-daemon @ubuntu.conf
263 24 Yuumi Yoshida
</pre>
264 1 Yuumi Yoshida
265 24 Yuumi Yoshida
266 1 Yuumi Yoshida
h3. ターミナルエミュレータからのログイン
267 7 Yuumi Yoshida
268 24 Yuumi Yoshida
269 1 Yuumi Yoshida
coLinux console はスクロールが出来ない、日本語キーに対応してないので、putty 等のターミナルエミュレータから coLinuxにログインします。
270 24 Yuumi Yoshida
ログイン先は  192.168.0.2 です。 上で作成したアカウントでログインしてみましょう。
271
272 7 Yuumi Yoshida
273
h3. Cコンパイラー等のインストール
274
275
276 24 Yuumi Yoshida
モジュール等のインストールで必要になるCコンパイラー(gcc)等をインストールします。
277 7 Yuumi Yoshida
インストールにはdebian(Ubuntuはdebianベースのlinux)の *apt* を使います。
278 24 Yuumi Yoshida
279
<pre>
280
$ sudo apt-get update    ← インストーラの更新(?)
281
$ sudo apt-get install libc6-dev gcc make 
282
</pre>
283 25 Yuumi Yoshida
284 24 Yuumi Yoshida
途中で _Install these packages without verification [y/N]?_ 等の確認がありますが *y* を入力して下さい。
285
286 1 Yuumi Yoshida
287 8 Yuumi Yoshida
288
h3. rubyのインストール
289 24 Yuumi Yoshida
290
291
debian に用意されている ruby は 1.8.4 と少し古いですが、今回はこれを使ってみます。
292 25 Yuumi Yoshida
293 24 Yuumi Yoshida
<pre>
294
$ sudo apt-get ruby1.8 rdoc1.8 ri1.8 libreadline-ruby1.8 irb1.8 ruby1.8-dev
295
$ sudo ln -s /usr/bin/ruby1.8 /usr/bin/ruby
296 12 Yuumi Yoshida
$ ruby --version
297 24 Yuumi Yoshida
ruby 1.8.4 (2005-12-24) [i486-linux]
298 12 Yuumi Yoshida
</pre>
299 19 Yuumi Yoshida
300 12 Yuumi Yoshida
301
h3. ソースからの rubyインストール(オプション)
302
303
304
最新のruby をインストールしたい場合は、ソースからインストールします。
305 25 Yuumi Yoshida
306 12 Yuumi Yoshida
<pre>
307
$ mkdir Install
308
$ cd Install
309 1 Yuumi Yoshida
$ sudo apt-get install zlib1g-dev libreadline5-dev libopenssl libopenssl-dev
310 8 Yuumi Yoshida
$ wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p111.tar.bz2
311
$ tar xvjf ruby-1.8.6-p111.tar.bz2
312 24 Yuumi Yoshida
$ cd ruby-1.8.6-p111
313
$ ./configure
314
$ make 
315 8 Yuumi Yoshida
$ make test
316
$ sudo make install
317
$ ruby -v
318
ruby 1.8.6 (2007-09-24 patchlevel 111) [i686-linux]
319
</pre>
320 1 Yuumi Yoshida
321 8 Yuumi Yoshida
322
h3. gem のインストール
323 24 Yuumi Yoshida
324 1 Yuumi Yoshida
325
<pre>
326 8 Yuumi Yoshida
$ mkdir Install
327 1 Yuumi Yoshida
$ cd Install
328
$ wget http://rubyforge.org/frs/download.php/20989/rubygems-0.9.4.tgz
329
$ tar xvzf rubygems-0.9.4.tgz
330
$ cd rubygems-0.9.4
331 24 Yuumi Yoshida
$ sudo ruby setup.rb
332
$ gem --version
333
0.9.4
334
</pre>
335 8 Yuumi Yoshida
336 1 Yuumi Yoshida
337
h3. rake,rails のインストール
338 8 Yuumi Yoshida
339 18 Yuumi Yoshida
340 8 Yuumi Yoshida
<pre>
341
$ sudo gem install rake -y
342 18 Yuumi Yoshida
$ rake --version
343 24 Yuumi Yoshida
rake, version 0.8.1
344 8 Yuumi Yoshida
$ sudo gem install rails -y
345
$ rails --version
346 25 Yuumi Yoshida
Rails 2.1.0
347 24 Yuumi Yoshida
</pre>
348
349
350 8 Yuumi Yoshida
h3. sqlite3 のインストール
351
352
353
<pre>
354
$ sudo apt-get install sqlite3 libsqlite3-dev
355
$ sudo gem install sqlite3-ruby -- --with-sqlite3-include=/usr/include --with-sqlite3-lib=/usr/lib
356
Bulk updating Gem source index for: http://gems.rubyforge.org
357
358
$ sqlite3   
359
SQLite version 3.2.8
360
Enter ".help" for instructions
361
sqlite> .exit
362
</pre>
363 9 Yuumi Yoshida
364 24 Yuumi Yoshida
365 9 Yuumi Yoshida
h3. samba のインストール(オプション)
366
367 24 Yuumi Yoshida
368
ソースファイル等の作成・編集は Windows上のエディターで行いたい場合は samba を使って、coLinux上のディレクトリーを共有すると良いでしょう。
369
370 25 Yuumi Yoshida
1. samaba のインストール
371
372 9 Yuumi Yoshida
<pre>
373 1 Yuumi Yoshida
$ sudo apt-get install samba
374
</pre>
375 25 Yuumi Yoshida
376
2. samaba 用ログインの作成、 Windowsのログイン/パスワードで作成します。
377
378 9 Yuumi Yoshida
<pre>
379 24 Yuumi Yoshida
$ sudo smbpasswd -a taro
380 9 Yuumi Yoshida
New SMB password:
381 24 Yuumi Yoshida
Retype new SMB password:      ← パスワード
382 9 Yuumi Yoshida
Added user taro.                        ← パスワード
383 10 Yuumi Yoshida
</pre> 
384 25 Yuumi Yoshida
385
3. 設定ファイルの変更
386 24 Yuumi Yoshida
<pre>
387 9 Yuumi Yoshida
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.org
388 24 Yuumi Yoshida
$ sudo vi /etc/samba/smb.conf
389 10 Yuumi Yoshida
390
 ※※  変更した行のみ書きます
391
392
workgroup = MSHOME
393
394
workgroup = EY-OFFICE.NET   ← 自分の使っているworkgroupに合わせる
395
396
server string = %25h server (Samba, Ubuntu)
397
398
server string = coLinux server
399
400
;[homes]
401
;   comment = Home Directories
402
;   browseable = no
403
404
[homes]
405
   comment = Home Directories
406
   browseable = no
407
408
;   writable = no
409
410
    writable = yes
411
412
;   create mask = 0600
413
414
    create mask = 0644
415
416
417
;   directory mask = 0700
418
419
    directory mask = 0755
420 11 Yuumi Yoshida
421
</pre>
422
423 25 Yuumi Yoshida
4. Windows 側 
424
425
426
  !my_network.png!
427 23 Yuumi Yoshida
428
429 13 Yuumi Yoshida
430 24 Yuumi Yoshida
h2. 質問
431
432
433
ご質問のある方は、"私のBlog":http://d.hatena.ne.jp/yuum3/comment?date=20080607#c にコメント願います。
434 1 Yuumi Yoshida
435
----