2009年07月07日

colinux導入

今更ながらlinuxについて勉強しようと思うのだが、自宅linux用に
PC用意するのもアレなのでcolinuxで環境を整えようと思う。
トラぶった時にさくっと環境復元できるように手順を残しつつ
まったり進めます。



■host-PC環境
Windows:vista Home Premium SP1
PC:Sony VAIO VGX-TP1XS(cpu:2.4G,mem:4GB,hdd:1TB)



■colinux本体とディストリビューションimageをDL
http://sourceforge.net/projects/colinux/files/
から以下をDL
 colinux本体:coLinux-0.7.4.exe
 image:Fedora-10-20090228.exe



■colinuxのインストール
・DLしたcoLinux-0.7.4.exeを実行
・「Next」→「I Agree」→
 →「Root Filesystem image Download」のチェック外して「Next」
 → 「Next」→「Next」→「Install」
 →インストール終わったら「Next」→「Finish」

■ディストリビューションimage展開
・DLしたFedora-10-20090228.exeを実行
・解凍先にcolinuxのインストールディレクトリを指定→「Install」
・解凍が終わるのをしばし待つ

ここまでで、とりあえずインストールは完了



■起動してみる
・エクスプローラでcolinuxインストールディレクトリに移動
・「start-Fedora-10.bat」を実行
・DOSとcolinuxのコンソールが起動して
 #localhost login:
 となるので"root"でログインできることを確認 

■終了してみる
・colinuxのコンソールで以下コマンド投入
 #init 0
・「System halted.」が表示されたらコンソールを閉じる



■ネットワークの設定
・設定の前提
 ・colinuxのTAPを使用する
 ・windows側のLANのサブネットが192.168.0.xではない
 ・colinuxのIPを192.168.0.100に設定する

[Windows側]
<colinuxの起動bat編集>
・エクスプローラでcolinuxインストールディレクトリに移動
・「start-Fedora-10.bat」を適当なディレクトリにコピー
・コピーしたbatを適当なエディタで開き、
 「eth0=slirp,,tcp:5901:5900」を「eth0=tuntap」に修正→保存
・編集したbatを元の場所に上書き

<ネットワーク設定変更>
・コンパネ→ネットワークとインターネット→ネットワークと共有センター
 →ネットワーク接続の管理
〜TAPのNW設定〜
・「ローカル エリア接続 2」を右クリック→名前の変更→「colinux」
・再度右クリック→プロパティで、
 ・IPv6のチェックを外す
 ・IPv4のプロパティで以下設定
  ・「次のIPアドレスを使う」
   ・IPアドレス:192.168.0.1
   ・サブネットマスク:255.255.255.0
   ・デフォルトデートウェイ:設定なし
  ・「次のDNSサーバのアドレスを使う」
   ・優先DNS:設定なし
   ・代替DNS:設定なし
〜HOST-PCのNW設定〜
・HOST-PCのNW(ローカル エリア接続)を右クリック→プロパティ
・共通タブの「ネットワークの他のユーザに〜許可する」をチェック
・ホームネットワーク接続でTAP-NWの「colinux」を選択
 
<HOSTSの変更>
・C:\Windows\System32\drivers\etc\HOSTSを適当な場所にコピー
・以下を終端行に追記して保存
192.168.0.100 colinux

・C:\Windows\System32\drivers\etc\HOSTSに上書き

[colinux側]
・「start-Fedora-10.bat」で起動(eth0のところでちょっと時間かかる)
・rootでログイン
・eth0のコンフィグを修正
 #vi /etc/sysconfig/nework-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.0.100
NETMASK=255.255.255.0
GATEWAY=192.168.0.1

・ホスト名の設定
 #vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=colinux

・DNSの設定
 #vi /etc/resolv.conf
search
nameserver 192.168.1.1

・HOSTSの設定
 #vi /etc/hosts
127.0.0.1 localhost
192.168.0.1 hostpc
192.168.0.100 colinux

・ネットワークの再起動
 #/etc.init.d/network restart

[導通確認]
・windowsのDOSから「ping colinux」が通る
・colinuxのコンソールから「ping 192.168.0.1」が通る
・colinuxのコンソールから「ping yahoo.jp」が通る
 ※外部へのpingが通らない。。



■基本的な設定
・日本語対応の設定
 #vi /etc/sysconfig/i18n
LANG="ja_JP.UTF-8"


・タイムゾーンの設定
 #cp /usr/share/zoneinfo/Japan /etc/localtime
 #date

・ユーザアカウントの作成
 #adduser アカウント名
 #passwd アカウント名
 あと、rootにもパスワード設定
 #passwd

・パッケージの更新
 yumの高速プラグイン導入
 #yum -y install yum-fastestmirror
 パッケージの更新
 #yum -y update
 しばし待つ…

・vimのインストール
 #yum -y install vim



■コンソール切替え
colinuxのコンソールだとコピペできなかったり等、何かと不便なのでコンソールをPoderosaに切替える。
・Poderosaをゲットしてinstall
 http://ja.poderosa.org/
・Poderosaを起動
 →ファイル→新規telnet/SSH接続
  ・ホスト:colinux
  ・プロトコル:SSH2
  ・ポート:SSH(22)
  ・アカウント:root または ユーザアカウント
  ・認証方法:パスワード
  ・パスフレーズ:アカウントのパスワード
  ・ターミナル:deault
  で「OK」
 うまいことログインできたら、
 →ファイル→接続へのショートカットを保存
 で適当に名前つけてデスクトップ辺りに保存。
 次からはcolinuxのコンソールではなくこっちから操作。



■サービス登録
colinuxの起動もいちいちbatファイル叩くのは面倒いのでサービス登録してバックグラウンドに常駐させる。
・colunxを起動してたら終了させる。
・起動に使ってたbatファイルを適当なエディタで開いて、
 先頭の「colinux-daemon.exe 」を削除して「Fedora10.conf」で
 どこかに別名保存して、そいつをcolinuxディレクトリに移動。
・スタートアップ→プログラム→アクセサリ→コマンドプロンプト
 を右クリックして「管理者として実行」でDOS起動
・以下コマンド実行
 #cd c:\
 #cd "Program files\colinux"
 #colinux-deamon @Fedora10.conf --install-service
・コントロールパネル→システムとメンテナンス→管理ツール→サービス
・サービス一覧に追加された「Cooperative Linux」を右クリック
・プロパティ→全般→「スタートアップの種類」を「自動」
・プロパティ→ログオン→「アカウント」にWindowsのアカウントとパスワードを設定
・もっかい「Cooperative Linux」を右クリ→開始

これにて常駐完了!
と思いきや、サービスで動作中はSSHで接続できない。サービスを停止してbat起動したらSSH接続できるんですけど、なんで??→サービス開始直後にcolinux-console-nt.exeでコンソール立ち上げて起動時のログを見てたらeth0のところで何かエラーが出ててlinux側のネットが不通の状態になってた模様。ググって試行錯誤した結果、登録したサービスのプロパティのログオン→アカウントにWindowsのアカウントとパスワードを設定することで回避できました。



■VNCとGNOMEのインストール
[colinux側]
・VNCサーバインストール
 #yum -y install vnc-server
・VNCのパスワードを設定
 #vncpaswd
 #パスワード
 #パスワードもう一回
・VNCサーバ起動
 #vncserver
 #パスワード
ひとまずcolinux側の設定はここまでで、次にWindowsへ。

[Windows側]
VNCクライアントをお好みで用意する。
・UltlaVNCをゲットしてinstall
 http://kp774.com/soft/uvnc_jp
・VNC起動
 接続先は「colinuxのIP:1」
 パスワードを聞かれたらVNCに設定したパスワードを入力
・無事接続できたら一旦VNC終了。

[colinux側]
・VNCサーバ停止
 #vncserver -kill :1

・GNOMEのインストール
 #yum -y groupinstall "GNOME Desktop Environment"
 しばし待つ

・日本語化
 #yum -y groupinstall "Japanese Support"
 しばし待つ
 #yum -y install scim
 #yum -y install anthy
 #yum -y install scim-athy
 #yum -y install system-config-keyboard
 #system-config-keyboard

・yum extender
 #yum -y install yumex
 →アプリケーション→システムツール からyumexが使用可能に

・VNC起動時のGNOME環境設定
 #vi ~/.vnc/xstartup
#!/bin/sh

vncconfig -iconic &
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm & ←コメントアウト
LANG=ja_JP.UTF8 ←追加
export GTK_IM_MODULE=scim ←追加
exec scim -d & ←追加
export XMODIFIERS="@im=SCIM" ←追加
gnome-session & ←追加


・VNCサーバ起動&VNC接続
 #vncserver
 #パスワード
・VNCクライアント起動
 接続先は「colinuxのIP:1」
 →GNOMEのデスクトップが表示されればOK!
・キーボード設定
 コンソール起動して
 #system-config-keyboard
 →日本語選択してOK
・日本語入力切替えキー設定
 コンソール起動してvi
 →Ctrl+SpaceでSCIM起動して日本語入力できることを確認
 →SCIMの「anthy」上で右クリック→SCIMを設定
 →全体設定→ホットキー で開始/終了を全角キーに変更
 で良いらしいが全角キーが認識されませn。。orz



■xinetdの設定
VNCクライアントからの接続要求で自動的にVNCサーバを起動させる環境構築
・xinetdのインストール
 #yum -y install xinetd
・サービスファイル設定
 #vi /etc/services
 以下のvncautoを追記
 :
vnc-server 5900/tcp # VNC Server
vnc-server 5900/udp # VNC Server
↓この行を追加
vncauto 5901/tcp # VNC Server AutoRun by VNC Client
 :

・VNC自動起動用設定ファイル作成
 #vi /etc/xinetd.d/vncauto
 以下の内容で保存
service vncauto
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query 192.168.0.100 -once -geometry 1024x768
-depth 16 -securitytypes=none
log_on_success += DURATION USERID
log_on_failure += USERID
}

・GDMの設定変更(rootでのログイン許可)
 #vi /etc/gdm/custom.conf
 [security]セクションに、以下の一行を追加
AllowRemoteRoot=true

・xinetdの再起動
 #/etc/init.d/xinetd restart
・VNCクライアント起動
 接続先は「colinuxのIP:5901:1」

GNOMEのデスクトップが表示されればOK!
→VNCサーバが起動しませーん。。



■開発環境のインストール
(この間yumexで色々適当にインストールしたので最短手順じゃないかも)
 #yum -y install gcc
 #yum -y install gtk2-devel
 #yum -y install anjuta glade2 devhelp gtranslator
 #yum -y install libglade-devel libglade2-devel
 #yum -y install intltool libtool



■anjutaを使う
・適当なフォルダにanjutaプロジェクト作成用のdirを作成
 #mkdir /home/xxx/anjuta
 #mkdir /home/xxx/anjuta/00_test_prj
・IDE起動
 アプリケーション→プログラミング→anjuta IDE
・プロジェクトの新規作成
 ファイル→新規→プロジェクト でウィザード起動
 進む→GTK+選択して進む→基本的な情報の項目を適当に入れて進む
 →「プロジェクトのフォルダ」で↑で作成したdirを指定して進む
 →適用 でプロジェクトの自動生成が始まる。
 途中エラーがあると赤字で表示されるので、パッケージ不足なんかは
 指示に従ってインストールする。
・コンパイル→ビルド→実行してみる
 ファイルツリーの「src」を展開して「main.c」をダブルクリック
 →editor云々聞かれるのでGtkSourceView選択
 →右ペインにコード表示される

 その状態で、ビルド→コンパイル でコンパイル
 →下ペインでエラーが出なければコンパイル成功!

 その状態で、ビルド→ビルド でビルド
 →下ペインでエラーが出なければビルド成功!
 
 その状態で、実行→プログラムの実行
 →「プログラム」のドロップダウンから対象選んで適用
  この例では「/home/xxx/anjuta/00_test_prj/src/gtk_foobar」
 →windowと言うタイトルのしょっぼいwindowが表示されればOK!

ということで、なんとかIDEでGTKプログラミングできる環境まで辿り着きました。
赤字の件と、colinuxのディスク増設とかsambaとか、環境構築面の残件は追々。

posted by カブトラ at 23:40| Comment(0) | TrackBack(0) | ぃぬx | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/123034484

この記事へのトラックバック