Hatena::ブログ(Diary)

白米と小説とプログラムのブログ

2012-06-17

昔のノートパソコンに入れたLinuxを消してcoLinuxをインストールしたときのメモ


環境構築という戦いが終わる気配がないのだけど、そろそろ終わりにしたい。

Mintを入れたけど、サスペンドをどんなに頑張っても有効にできず、また、Windows XPよりも高速に起動させることも難しかったので、Windowsを入れ直して、開発環境としてcoLinuxを投入することにした。VMは重いので使うのを諦めた。Cygwinは以前ある程度使って楽しかったけど、もういいかな。

colinuxのインストール

全てのWindowsユーザに贈る、coLinuxインストール完全マニュアルまとめ · DQNEO起業日記に大体書いてあることと同じ。UbuntuではなくDebianを使う。Ubuntuはなんか色々入っていそうでイヤw、でも、Archは情報が少なくて僕には難しい、という理由。

  1. Cooperative Linux - Browse Files at SourceForge.netからcolinux-stableの最新版とDebianイメージの最新版を入手する。
  2. colinuxのexeインストーラーを起動すると、どのコンポーネントをインストールするか聞いてくるところでRoot Filesystem image Downloadのチェックを外しておく。外さないと要らない古いイメージをダウンロードすることになる。インストール先はD:\Applications\coLinuxにした。
  3. インストール中にハードウェアのインストールという画面が出てくるので、続行を選択。インストーラーのウィンドウよりも小さいので、インストールが停止してしまったと思ったら、裏に隠れているという事例があるので注意しましょう。
  4. Debianの40MBほどの7zのイメージを展開する(Noahなどでいけます)と2GBのフォルダができます( ゚д゚)。展開したら全てのファイルをcoLinuxをインストールした場所(ここではD:\Applications\coLinux)に移動。
  5. squeeze.confを編集する。メモリの使用量を増やす&ネットワークの設定をTAPドライバにする。ネットワークでslirp使っていいのは小学生までです。mem=512、eth0=tuntapと変更。
  6. squeeze.batをダブルクリックすると起動。起動したらログイン名rootで入る。パスワードの設定などはされていないはず。されている場合はパスワードもrootとするらしい。
  7. apt-get update、apt-get upgradeをする。

Windowsでのネットワークの設定

coLinuxを立ち上げつつやる。軽快なLinux環境をつくれる、coLinuxのセットアップ手順 - UNIX的なアレ [coLinuxインストール完全マニュアル]ネットワークの設定をする · DQNEO起業日記を参考に。

  1. スタート>設定>ネットワーク接続より
    1. ワイヤレス ネットワーク接続(普段のネットワーク)を無効化。
    2. プロパティ>詳細設定より、インターネット接続の共有を有効にし、ホームネットワーク接続にcoLinux起動で生成された接続(以下接続TAP)を指定する。
    3. 有効にしたのち、念のためネットに繋がるか確認する。
    4. 接続TAPのプロパティ>全般>インターネットプロトコル>プロパティよりIPを確認。
      • この環境ではIPアドレスは192.162.0.1、サブネットマスクには255.255.255.0が入っていた。サブネットマスクが違う場合はよくわからないが、IPアドレスは192.162.X.Yのはず。

Linuxでのネットワークの設定

  1. viは難しいのでeditor(nano)を使いましょう。下にヘルプが出ているのはCtrl押しながらの操作。
  2. editor /etc/network/interfaces でネットワークの設定を書く。
    • #から始まる行はコメント行なので無視する。
    • 以下設定。

標準だとこんな感じ。

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp

これはdhcpにIPの設定を任せる記述なので設定し直す。

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
  address 192.168.0.2
  netmask 255.255.255.0
  gateway 192.168.0.1

最初の三行はそのまま。四行目がdhcp→staticなのに注意。addressは192.162.X.Y+1、netmaskはサブネットマスクの値、gatewayは192.162.X.Yって感じ。

  1. editor /etc/resolv.conf でネームサーバーを設定。IPの部分を192.168.0.1(192.162.X.Y)に変更。
  2. service networking restart でネットワークの再起動をかける。
  3. ping 192.168.0.1(192.162.X.Y)、ping google.comがそれぞれ通るか確認。
    • 通らなかったらどこか間違えている or 使っているネットワークが何か違う。
    • ファイアウォールを一時的に無効にするなども試してみるべき。

ディスクの拡張

coLinuxのディスク容量を増やす - Perl日誌を参考にする。

  1. shutdown -h now で一度終了する。
  2. Windowsのcolinuxのインストール場所で fsutil file createnew debian10g.img 10737418240 を実行し、10GBのファイルを作る。
  3. squeeze.confのcobd1の下に、cobd2="debian10g.img"を追加する。
  4. 起動したら、rootで入り、システムを設定していく。
# cat /etc/fstab # ファイルシステムの確認。ext3だったので、新しいディスクもそれでフォーマットする。
# /sbin/mkfs.ext3 /dev/cobd2 # ext3でフォーマットする。
# dd if=/dev/cobd0 of=/dev/cobd2 # ディスクのコピー。=は^の位置にあります(英字キーボードのため)
# /sbin/e2fsck -f /dev/cobd2
# /sbin/tune2fs -m 3 /dev/cobd2
# /sbin/resize2fs -p /dev/cobd2
# shutdown -h now
  1. squeeze.confのcobd2を消して、cobd0="rootfs_2gb.img"をcobd0="debian10g.img"に書き換える。
  2. df -H で容量が増えているか調べる。

初期設定

404 Not Foundを参考に日本語キーボード設定とタイムゾーン変更を行う。

  1. コンソール上でshift+2でダブルクォートではなく、アットマークが出ることを確認する(英語キーボード設定かどうかを確認)。
  2. dpkg-reconfigure console-data を実行する。実行できない場合はapt-get install console-dataをする。
    • apt-get installの時点で設定が出てくる場合がある。
    • Select keymap from arch list→qwerty→Japanese→Other→Japan→Japan→UTF-8→Latin 2
  3. 記号がちゃんと出ることを確認。
  4. dpkg-reconfigure tzdata を実行する。
    • Asia→Tokyo

軽快なLinux環境をつくれる、coLinuxのセットアップ手順 - UNIX的なアレを参考にrootのパスワードとユーザアカウントを作る。

# /usr/bin/passwd # ルートのパスワード設定をする
# /usr/sbin/useradd -m username # usernameアカウントを作る
# /usr/bin/passwd username # usernameアカウントのパスワード設定をする

続けて簡単に環境を設定する。

$ apt-get install sudo ssh zsh emacs less
$ visudo

sudoの設定を編集できるので、

# username	ALL=(ALL) ALL

をrootの近辺に指定する。

cofsの設定

ファイルをWindowsとやり取りする手段を設定しておく。 [coLinuxインストール完全マニュアル]cofsを使ってWindowsとファイル共有する · DQNEO起業日記Repse - 子羊は魚の夢を見るか? -: coLinux - cofs を利用して windows とファイルをやり取りするを参考に設定する。

  1. squeeze.confにcofs0="D:\filepath"を追加する。
  2. 起動したら、rootで入り、システムを設定していく。
# mkdir /mnt/share
# mount -t cofs cofs0 /mnt/share
# ln -s /mnt/share /
  1. editor /etc/fstab でroot以外のユーザ書き込みとマウントの永続化を行う。
cofs0	/mnt/share	cofs	defaults,uid=username	0	0

ターミナルから接続

minttyを使う。Windowsで最高のターミナルを構築する方法 - 純粋関数空間no titleを参考に設定する。

MinGWをインストール後、MinGW Shellから以下を実行する。

$ mingw-get update
$ mingw-get upgrade
$ mingw-get install msys-mintty

これでminttyがインストールされる。minttyを起動する前に、環境変数のPathとHOMEを設定する。再ログインする。

あと、ショートカットとして、

\MinGW\msys\1.0\bin\mintty.exe /bin/bash --login -i

を登録する。

minttyを起動したら、

$ mingw-get install msys-openssl msys-openssh msys-wget

を実行し、sshを使えるようにする。

$ ssh 192.168.0.2 # IPは上記で設定したもの

でcoLinuxを起動していたらログインできる。ログインできない場合、ユーザ名の不一致とかありえるので、sshのオプション調べたりするべき。

coLinuxをサービスに登録する

[coLinuxインストール完全マニュアル]Windowsサービスとして登録する方法 · DQNEO起業日記を参考に設定する。

Windowsのコマンドプロンプトより、

> colinux-daemon.exe @D:\Application\coLinux\squeeze.conf --install-service coDebian

を実行するとサービスに登録される。

コントロールパネル>管理ツール>サービスよりcoDebianのスタートアップを自動にして、再起動。

サービスを解除するには上記よりサービスを停止してから、

> colinux-daemon.exe --remove-service coDebian

apt先の追加

/etc/apt/sources.listに追加する。

deb http://ftp.jp.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.jp.debian.org/debian/ squeeze main contrib non-free

deb http://backports.debian.org/debian-backports squeeze-backports main

これでひと通り終わった……。あとは昔のノートパソコンにLinux Mint Debianをインストールしたときのためのメモ - 白米と小説とプログラムのブログを参考に環境を作っていくか……。