今更ながら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を適当な場所にコピー
・以下を終端行に追記して保存
・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
・タイムゾーンの設定
#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]セクションに、以下の一行を追加
・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とか、環境構築面の残件は追々。