2009年02月02日

puppy linux 覚えがき (1)

実は、2 台目の eeePC 710SD-X を買ってしまった。このマシンで、いろいろ実験しようと思っている。

まずは、puppy linux 。いままで さんざん勧めながら、backup/resotore にしか使っていなかった。ちょっと具合の悪いところを直しながら使ってみたいと思う。

まず、使いにくいと感じるのは、シングルクリック。2 つ起動してしまったりして ...

これは、ファイラー(ROX-filer) を立ち上げ、ファイルアイコンの隙間を右クリックしてメニューを出し、オプション設定で、ダイアログを出す。そのダイアログの ファイラーウィンドウ、ピンボードのところに、シングルクリックで操作する/開く というチェックボックスがあるので、外すことで ダブルクリックに変更できる。

で次、端末 Window (urxvt)で、vi(e3vi) を使うことが多いのだが ... なんか全然だめ。vim でないと死にそう。

しょうがないので、vinelinux(4.2) から /etc/vim/vimrc と /usr/bin/vim.normal を持ってきて使う。( /etc/profile で e3vi を vi に alias しているので、外し vim.normal を vi に変更。)

端末ソフトは、urxvt を使うと... なんかゴミが残って見難い。設定ファイルなどで漢字を見る必要はないから 普通は console(rxvt) を使えば良いみたいだ。

    追記: vine の 等幅フォント VLゴシック VL-Gothic-Regular.ttf を取ってきてインストールしてみた。( /usr/X11R7/lib/X11/fonts/TTF にコピーして、mkfontdir, mkfontscale を実行。)

    .Xdefaults の設定を次のようにして使ってみることにした。

    URxvt.font: xft:vl gothic:size=10:antialias=ture
    URxvt.boldFont: xft:vl gothic:bold:size=10:antialias=ture
    URxvt.italicFont: xft:vl gothic:italic:size=10:antialias=ture


次に キーボードの設定。いつも CAPS は使わない。CAPS も 左Ctrlにしたいのだがどうしたら良いのか?

Xではなく、コンソールなら /usr/share/kbd/keymaps/i386/qwerty/jp106.map があるので、これを jp106cc.map とか適当な名前でコピーして編集すればよい。そしてこのファイル名を、/etc/keymap で指定する。

X の場合は? 一応できたものの実にややこしい。
まずは、/etc/X11/xorg.conf の jp106 のところを jp106cc にする。こうすると xorg という Rule に jp106cc というモデルを追加しなければならない。

まず、/etc/X11/xkb/rules/xorg を編集。xfree(jp106) の次の行に xfree(jp106cc) を追加。

次に、/etc/X11/xkb/keymap/xfree86 を編集。jp106 という xkb_keymap が定義されているので、まねして jp106cc を作る。

で、include jp(jp106) というのがあるので、これを jpcc(jp106cc) に変更。

最後に /etc/X11/xkb/symbols/pc/jp というファイルを jpcc に コピーして、エントリを jp106 → jp106cc に書き換え <CAPS>定義を Conrol_L に変更(2ヶ所)。

面倒なら名前を定義しなおさないで、jp ファイルを直接変更しても良い。
    書いた後で気が付いたのだが... _ が入力できない。vine からコピった xev で調べると、keycode = 211 で NoSymbol 。ついでに他のキーを調べてみると ... FN+F1(サスペンド) が 223 で NoSymbol。FN+F2 〜 FN+F9 はキーが上がってこない (期待どおり機能している?)
    で、jp106 に戻すとちゃんと入力できる。

    どうも上のやりかたではダメらしい。面倒なので、いったん全部戻して ...
    /etc/X11/xkb/keycodes/xfree86 で、<CAPS>の行をコメントして、<RCTL>のところを 66 にした。これで Caps が Control_R になる。


これでまぁなんとか... といいたいのだが 800x480 の画面はとても狭い。なんとかならないものか?

eeePC 701SD-X は、デフォルトで EeePC Tray Utility というのが動いていて、1024x768 を 800x480 に表示できる圧縮モードというのが使える。それに加えて AsTray Plus というツールを入れると、1024x600 の 圧縮表示ができるようになる。

1024x600 の 圧縮表示は、アスペクト比も(ほとんど)変わらないし 字も小さくなるもののひどく読み難いという程でもなく、実にいい。

これをなんとかして、puppy でやりたいのだが ... いったいどうしたらよいのだろう?

ちょっとググった感じでは、xrandr ? 915resolution ? 両方とも入っているが ...


おまけ :

ガセガジェッター: PuppyでSpeedStepという記事を発見。ファンをあまり回したくないので、設定しようと思う。
    メモ:
    ちなみに、/proc/acpi/processor/CPU1/throttling を見ると、クロックを 12% 〜 100% まで 8 段階に変えることができるように見える。eeeXubuntu では、p4-clockmod を使って 337MHz 〜 900Mhz まで変えているみたい。
    Windows のユーティリテイ SuperHybridEngine では、FSB とかメモリクロック(クロックソースそのもの?) を変えていて、全体の消費電力を抑えるようにしている。 ACPI で、そこまでするのは無理そう。

あと、サスペンドとHWアクセラレーションも有用。

urxvt の 再描画も明らかに早くなったし、acpitool-0.5.pet のインストールで サスペンドもできるようになった。




AsTray Plus のように 800x480 にしたい。いったいどうすれば良いのだろう?

1024x600 を縮小した表示をみると、文字がぼやけているように見える。-- まさに、800x480 のエリアに テクスチャーを張ったような感じ。

いろいろググっていくと "Render Scaling" というキーワードが見つかった。で、それをサポートしている ドライバは IEGD (Intel Embedded Graphics Drivers)というものらしい。

このドライバの最新版は、9.0.2 。インテルのサイトからダウンロードできるようなのだが、... その先がよくわからない。Linux を指定してダウンロードしても、93 MB もの exe ファイルをダウンロードしてしまう。

これを実行すると、展開して なにかインストールされる。そこを見ていくと、IEGD_9_0_2_Linux.tgz とかいうファイルが見つかる。これが目指すものらしい。それを展開すると、Xorg-X11R7.X に対応したバイナリ(.so) とか、カーネルのパッチが見つかる。

カーネルのパッチは、agpgart に対するものと 追加のドライバーである iegd.ko 。で、ここで困ってしまう。カーネルのビルド環境がないと無理。... まだ、puppy と eeeXubuntu をインストールしただけで、ビルド環境など用意できていない。なんとか 縮小表示ができるようにしたいのだが、長期戦になりそうだ。

追記:
701 4G-X の FSB 制御ができているらしい eeectl(0.2.4)があってソースコードも公開されている。見てみたのだが、dciio driver というものが バイナリなので、肝心なところは分からなかった。
Linux でこれに相当するのが、eeepc-linuxというカーネルモジュールらしい。701 4G-X用なので 701SD-X では動かしたらマズそうなのだが、参考にはなりそう。もともとは、FSB を 900MHz にオーバクロックするもの。だが、701SD-X では 900Mhz から クロックダウンして消費電力が抑えられると嬉しい。

あと、eeeXubuntu についてなにも知らなかったのだが、gcc と カーネルヘッダーが 最初からインストールされているようだ。
これなら、モジュールは作れる。
posted by すz at 22:07| Comment(0) | TrackBack(0) | VineLinux

2008年09月18日

インストールしたパッケージ

ただのメモ

アプリ:

glibc-2.4 なので、新しいものはダメな場合がある。

AdobeReader_jpn-7.0.9-1.i386.rpm
OOo_2.4.1_LinuxIntel_install_wJRE_ja.tar.gz
VMware-player-2.0.5-109488.i386.rpm
eagle-lin-eng-4.16r2-1.i586.rpm


Vine 関係:

Vine 4.2 の CD 以外にインストールしたもの。ほとんどは、devel か devel 自体をインストールするのに必要だったもの。

Vine-4.2/i386/Vine/RPMS.main:

GConf2-devel-2.14.0-0vl5.i386.rpm
ImageMagick-devel-6.3.0.1-0vl1.1.i386.rpm
ORBit2-devel-2.14.3-0vl1.i386.rpm
XOrg-devel-6.9.0-0vl38.i386.rpm
aalib-devel-1.4-0.rc5vl2.i386.rpm
alsa-lib-devel-1.0.12-0vl2.i386.rpm
anthy-devel-7900-0vl3.i386.rpm
arts-devel-1.5.5-0vl5.i386.rpm
atk-devel-1.12.1-0vl1.i386.rpm
audiofile-devel-0.2.6-0vl3.i386.rpm
bzip2-devel-1.0.3-0vl2.i386.rpm
cairo-devel-1.2.4-0vl2.2.i386.rpm
curl-devel-7.15.3-0vl1.i386.rpm
esound-devel-0.2.36-0vl3.i386.rpm
firefox-devel-2.0.0.11-0vl2.i386.rpm
freetype-devel-1.3.1-5vl5.i386.rpm
freetype2-devel-2.1.10-0vl8.1.i386.rpm
gdbm-devel-1.8.0-20vl3.i386.rpm
glib2-devel-2.12.7-0vl1.i386.rpm
gnome-desktop-devel-2.14.2-0vl1.i386.rpm
gnome-keyring-devel-0.4.9-0vl1.i386.rpm
gnome-menus-devel-2.14.3-0vl2.i386.rpm
gnome-vfs2-devel-2.14.2-0vl4.i386.rpm
gpm-1.20.1-35vl8.i386.rpm
gpm-devel-1.20.1-35vl8.i386.rpm
gtk2-devel-2.8.20-0vl3.2.i386.rpm
libIDL-devel-0.8.7-0vl1.i386.rpm
libart_lgpl-devel-2.3.17-0vl1.i386.rpm
libbonobo-devel-2.14.0-0vl3.i386.rpm
libbonoboui-devel-2.14.0-0vl1.i386.rpm
libexif-devel-0.6.13-0vl1.3.i386.rpm
libglade2-devel-2.6.0-0vl1.i386.rpm
libgnome-devel-2.14.1-0vl2.i386.rpm
libgnomecanvas-devel-2.14.0-0vl1.i386.rpm
libgnomeui-devel-2.14.1-0vl2.i386.rpm
libidn-devel-0.5.18-0vl2.i386.rpm
libjpeg-devel-6b-34vl4.i386.rpm
libnotify-devel-0.4.2-0vl1.i386.rpm
libogg-devel-1.1.3-0vl1.i386.rpm
libpng-devel-1.2.21-0vl0.42.i386.rpm
libtermcap-devel-2.0.8-44vl1.i386.rpm
libtheora-devel-1.0-0.alpha7vl1.i386.rpm
libungif-devel-4.1.3-3vl3.i386.rpm
libusb-devel-0.1.12-0vl1.i386.rpm
libvorbis-devel-1.2.0-0vl2.1.i386.rpm
libwnck-devel-2.14.2-0vl1.i386.rpm
libxml2-devel-2.6.26-0vl1.i386.rpm
libxslt-devel-1.1.17-0vl2.i386.rpm
openssl-devel-0.9.7l-0vl2.41.i386.rpm
pam-devel-0.99.3.0-0vl4.i386.rpm
pango-devel-1.14.7-0vl1.i386.rpm
python-devel-2.4.4-0vl1.2.i386.rpm
readline-devel-5.1-0vl1.i386.rpm
slang-devel-1.4.9-0vl1.i386.rpm
startup-notification-devel-0.8-0vl2.i386.rpm
zlib-devel-1.2.3-0vl5.i386.rpm

VinePlus/4.2/i386/RPMS.plus:

SDL-1.2.11-0vl0.i386.rpm
SDL-devel-1.2.11-0vl0.i386.rpm
SDL_mixer-1.2.7-0vl0.i386.rpm
dmidecode-2.9-1vl4.i386.rpm
eb-4.1.1-0vl2.i386.rpm
eb-devel-4.1.1-0vl2.i386.rpm
ebview-0.3.6-0vl2.i386.rpm
freepwing-1.4.4-0vl1.i386.rpm
fuse-2.7.3-1vl4.i386.rpm
gd-2.0.35-1vl4.i386.rpm
gd-devel-2.0.35-1vl4.i386.rpm
gtk+-1.2.10-0vl10.i386.rpm
ipw3945-firmware-1.14.2-0vl1.noarch.rpm
latex2html-2002-0vl5.noarch.rpm
libdv-0.104-0vl2.i386.rpm
libelf-0.8.6-0vl1.i386.rpm
libelf-devel-0.8.6-0vl1.i386.rpm
libmad-0.15.1b-1vl1.i386.rpm
libstdc++34-4.0.2-0vl3.i386.rpm
net-snmp-5.2.1.2-5vl4.i386.rpm
net-snmp-devel-5.2.1.2-5vl4.i386.rpm
ntfs-3g-1.2412-1vl4.i386.rpm
ntfsprogs-1.13.0-0vl1.i386.rpm
p7zip-4.44-0vl1.i386.rpm
perl-Text-Unidecode-0.04-0vl0.noarch.rpm
qemu-0.9.1-1vl4.i386.rpm
smartmontools-5.38-1vl4.i386.rpm
smpeg-0.4.4-0vl7.i386.rpm
speex-1.0.5-0vl1.i386.rpm
swig-1.3.29-0vl1.i386.rpm
sysfsutils-2.1.0-0vl1.i386.rpm
sysfsutils-devel-2.1.0-0vl1.i386.rpm
syslinux-3.07-0vl1.i386.rpm
texi2html-1.78-3vl0.noarch.rpm


VinePlus/4.2/i386/RPMS.extras:

hddtemp-0.3-0vl3.i386.rpm
mrtg-2.16.1-0vl1.i386.rpm
ng-1.4.4-0vl1.i386.rpm
perl-Text-Unidecode-0.04-0vl0.noarch.rpm
texi2html-1.78-3vl0.noarch.rpm
usbutils-0.72-0vl0.i386.rpm


自分でビルドしたもの:

実は、ほとんどの devel パッケージは、単に gnome-panelを修正したかったため必要だった。あと freshrpms から取ってきた mplayer のビルドとか。

ちなみに、なぜこんなものを修正したかったかと言うと .. インストールしてないけど gnome-applet-sensors をビルドしたかったから。

ちなみに、2.6.26 カーネルは、作ってみただけで使っていない。ちょっとしか試していない。


gnome-panel-2.14.3-0vl2suz.i386.rpm
gnome-panel-devel-2.14.3-0vl2suz.i386.rpm
kernel-smp-2.6.26-0aa1.1.i686.rpm
lame-3.97-1.fc7.i386.rpm
libsysfs-2.0.0-6.i386.rpm
libsysfs-devel-2.0.0-6.i386.rpm
lm_sensors-2.10.0-3.1.i386.rpm
madwifi-2756_ng-0vl0.i386.rpm
mplayer-1.0-0.36.rc1try2.suz1.i386.rpm
mplayer-fonts-1.1-3.fc.noarch.rpm
sysstat-7.0.0-3.i386.rpm
x264-0.0.0-0.3.20070529.fc7.i386.rpm
xvidcore-1.1.3-2.fc7.i386.rpm
posted by すz at 22:52| Comment(0) | TrackBack(0) | VineLinux

2008年09月12日

温度監視

Aspire One が故障したが、同じように使えばまた故障するのではないかという恐怖がある。故障させて、販売店やメーカにこれ以上迷惑をかけたくないというのも理由だが、それ以上に 使えない期間ができるのが痛い。

なにが原因か分かっていないのだが、ひょっとしたらマザーの温度が高くなりすぎたのかも知れない。たとえば、温度ヒューズとかが内蔵されていて作動したとすれば、もう電源は入らない。

壊れる直前になにをしていたかハッキリとは思い出せないのだが、たぶん Linux でなにかビルドしてたような気がする。

しかも、ふとんの上に置いて。
-- 直接ふとんの上に置いたわけではないけど ... 一言でいえば ... まぁ似た状況かな


大昔の話だが、リブレットを長時間 (直接)ふとんの上に置いておいたことがある。立ち上げていた OS は Linux 。

で、気がついたら、リブレットの電源が自動的に落ちていた。温度が上がりすぎて BIOS が電源を落としたのではないかと思う。

PC も故障させず、火災の配慮もする。--- こういうしくみは日本のメーカだと期待できるのだが ... はたして、海外のメーカで、しかも特にコストを抑えた製品で期待できるのだろうか?

温度ヒューズとかで PCを故障させてしまうのかも知れない。


さて、こういう心配が出てきたので、マザーの温度を Linux で監視させたい。

ここを見ると、acer_ec.pl acerfand というのがある。これは両方スクリプト。

aferfand を見ると

# acer_ec.pl ?= 58 | cut -f 3 -d' '


とするらしい、これは、0x58 のレジスタを見るということらしい。レジスタとはなにかというと、/dev/port を使って outb/inb を行うことで、見ることができる なにか (よくわからない) 。

とにかく見てみると、長時間ビルドした後は 0x41 .. 65℃までいっていた。ビルドをやめ通気性に配慮して置く場所を変えるとだんだん値が下がってきた。... が 0x30 .. 48℃で安定した。

さて、原因はビルドなのだろうか?普通は CPU が最も関係あるのだが、atom は 2W だからあんまり関係なさそう。ハードディスクのアクセスが関係しているのだろうか? それとも置き場所が悪かったのだろうか?

というわけで、VinePlus にある smartmontools をインストール。
アイドルで 40℃。

この置き場所で、再度ビルドしてみたところ、ハードディスクの温度は変化なし。マザーの温度? は、48℃から 60℃まで上がった。

結論としては、

  • ビルドなどで CPU を動かすと 12℃ぐらい上がる。ただし、置き場所がちょっと違うぐらいで、5℃ぐらいは上乗せになる。

  • ビルドでは、ハードディスクの温度は変わらなかった。ビルド以上に頻繁にアクセスして、ハードディスクの温度も上がるような使い方をすれば、さらに上乗せになりそうだ。


こんな感じか。これからは温度を気にするようにしようと思う。
で、あまりにマズそうなら、ノートPC用クーラの導入も検討したい。



さて、acer_ec.pl を調べてみる。


  • getwireless とか gettouch とかいうコマンドがあり、ちゃんと状態を読めるようだ。-- ただ set はできない。

  • また、Aspire 5020 とかいうキーワードがある。-- BIOS とのやり取りの方法は、わりと汎用的なのかも知れない。

  • そういえば、ためしに Linux-2.6.26 カーネルをビルドしてみたとき コンフィグに ACER_WMI というのがあったのに思い当たった。/drivers/misc/Kconfig のを見直してみると、無線LAN とか mail LED を制御できるもののようだ。Documentaion/laptops/acer-wmi.txt を読めとも書いてある。

    本来は、acer_ec.pl などでなんとかするものではなく、ACER_WMI の機能で制御すべきものなのだろう。

  • ちなみに VinePlus には、kernel-module-pcc-acpi というのがある。これは、Panasonic のノート用のホットキードライバ。探せば Acer 用のなにかがあるかも知れない。


そういうわけで、acer_ec.pl でいろいろできそう。ただし、同時に動くようなことがあるとヤバイと思うので注意。たとえば コマンドを使うときは、acerfand を止めるべきだろう。

補足:

温度監視の方法には、lm_sensors が有名。あと サーバー系では、IPMI による OpenIPMI 。ちゃんと試していないが、どちらもダメかも。

グラフ化するツールは、mrtg が定番らしい。fedora core には含まれているので、自力でビルドしてみた。必要な gd , gd-devel は VinePlus にあったのをインストール。

最新の 9 だと、いろいろパッケージが必要だったので、fedora core 4 のやつを使うのが良さそう。だいたいが vine-4.2 は glibc-2.3 で、それに対応するのが 4 。
posted by すz at 21:44| Comment(0) | TrackBack(0) | VineLinux

2008年09月11日

再インストール

NTT-X ストアから交換品が届いたので、再インストール。

パーティション変更

まず、siw で プロダクト ID を確認。前のマシンと同じだったので、PQSERVICE も同じと判断して、最初のバックアップはスキップ

次に EASEUS Partition Manager をインストールして、パーティションを変更。

  • PQSERVICE を 6GB から 3GB に縮小
  • C:ACER を 45GB に縮小した上で、PQSERVICE のすぐ後ろに移動。


これでまず Windows が立ち上がるかどうか確認。→問題なし。

EASEUS Partition Manager はなかなか使える。C: の移動、拡大・縮小が問題なく簡単にできるのが嬉しい。

次に Windows のカスタマイズ。アプリのインストールとかも行った。

Vine-4.2 のインストール

前に作っておいた、USB DISK を使ってインストール。

ちなみに Windows は後でバックアップを取るので、デフラグした後 (休止にせずに)シャットダウンしている。


  • インストール方法では、"ハードドライブ" を選ぶ。リストで /dev/sdb3 が出なければ、いったん "戻る" 。
  • インストールの種類で "全てインストール" に
  • ディスクパーティションの設定で "手動パーティション設定" に
  • / を sda3 ext3 60GB 、残り 6.4 GB を sda4 swap に設定
  • ファイヤーウォール設定で、SSH , FTP をとりあえずチェック


次に、とりあえず VinePlus にある ntfsprogs をインストール

バックアップ・リストアの実験

ここで、ntfsclone でバックアップ・リストアがちゃんとできるか試してみることにする。

バックアップ先は、nfs でマウントした NAS 。

# ntfsclone -s -o - /dev/sda2 | gzip > /mnt/pub/aa1-win.img

とすると

NTFS volume version: 3.1
Cluster size : 4096 bytes
Current volume size: 47180201984 bytes (47181 MB)
Current device size: 47180206080 bytes (47181 MB)
Scanning volume ...
100.00 percent completed
Accounting clusters ...
Space in use : 7129 MB (15.1%)
Saving NTFS to image ...
xx.xx percent completed

というメッセージが出て バックアップを取りはじめた。

なかなかに時間がかかる。

なにはともあれ、終わった。できあがったファイルのサイズは、2494336079 バイト

さて、次は D2D リカバリをしてみる。

前にも書いたが ALT + F10 は効かないので、/boot/grub/grub.conf に次の記述を追加して、grub で起動する。

title D2D Recorvery
rootnoverify (hd0,0)
chainloader +1

さて、実際にやってみたところ、パーティション 2 が初期状態になった。ただ、予想に反してブートローダまでは初期状態にはならず、grub がそのまま使えた。

Windows が初期状態なのを確認して、

# gunzip < /mnt/pub/aa1-win.img | ntfsclone -r -O /dev/sda2 -

を実行する。

ntfsclone v1.13.0 (libntfs 9:0:0)
NTFS volume version: 3.1
Cluster size : 4096 bytes
Image volume size : 47180201984 bytes (47181 MB)
Image device size : 47180206080 bytes
Space in use : 7129 MB (15.1%)
Restoring NTFS from image ...
xx.xx percent completed

これは、24分ぐらいで終了

ちゃんと元に戻ったのを確認。

パーティション変更と Linux 再インストール

さて、こうやって Windows パーティションの snapshot を時々取ろうと思う。その場合、システムだけ バックアップしたい。

というわけで、データ用 Disk を別に作ることにする。
45GB を 15GB , 30GB に分けようと思う。データ用は、ntfs にして、クラスタサイズは 32KB にしておこう。

Windows のフォーマットだと 4KB までしか選べないが、EASEUS Partition Manager なら 32KB,64KB まで選べる。今回はこれを使ってフォーマットした。

というわけで、まずは、EASEUS Partition Manager で 15GB に縮小する。

さて、Linux は、再インストールすることにして、データ用 パーティションを作る。

方法はいろいろあると思うが、今回は、Vine の Rescue モードを使った。

パーティションを作る場合、いままでのシステムを mount しないようにする。( 後で umount しようとしたがうまくいかなかったため)

ついでに、Rescue モードを確認。非常に沢山のコマンドがあるが、ntfsclone も入っていた。ネットワークに DHCP で接続して、nfs マウントもできたので、Rescue モード だけで Windows のリカバリもできそうだ。

さて、Rescue モードで、/dev/sda3 に 30GB の ntfs パーティションを作りあとは消した。

こうすると、grub が使えなくなりブートもできなくなるが、すぐに 再インストールするので問題ない。

さて、Linux のほう、とりあえず システム用 (/) 7.5GB , swap 4GB にした。あとは /home と /arc の2つに均等に分けることにした。ちなみに /home はなんでもアリ。ビルドしたりするので、量が多い /usr/src とか /root/rpm とかを home に持っていく。/arc は、辞書とか動画とかバックアップとか 大きなファイルで更新をあまりしないもの用。

Windows のバックアップ・リストアテスト 2

今度は正式なバックアップを取ってみる。

# ntfsclone -s -o - /dev/sda2 | gzip > /arc/aa1-win-080910.img.gz

どうも disk-to-disk だと、多少速いようだ。top で見ると gzip の cpu が 80% 〜 99% の間なので、ボトルネックは、gzip 。

結果は、18分28秒

ボトルネックが gzip ならば --fast (-1) オプションでどうなるのか?

時間 サイズ (MB = 1024*1024)
default 18分28秒    2371 MB
--fast 12分13秒 2476 MB

これなら --fast オプションで十分だ。

つぎにリストアがちゃんとできるか再度テスト -- 5分39秒。

これで、入れたいアプリを全部入れ、最低限度の設定をした状態にいつでも戻せるようになった。パーティションの構成(パーティション2 の位置とサイズ) が変わっていないのが前提なので、どのように設定したかの情報は別に保存しておかなければならない。

ここでメモっておくことにしよう。

isk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot Start End Blocks Id System
/dev/sda1 1 382 3068383+ 12 Compaq 診断
/dev/sda2 * 383 2294 15358140 7 HPFS/NTFS
/dev/sda3 2295 5942 29302560 7 HPFS/NTFS
/dev/sda4 5943 14593 69489157+ 5 拡張領域
/dev/sda5 5943 6898 7679038+ 83 Linux
/dev/sda6 6899 7408 4096543+ 82 Linux swap / Solaris
/dev/sda7 7409 11056 29302528+ 83 Linux
/dev/sda8 11057 14593 28410921 83 Linux

おわりに

インストールと設定はまだまだ続くのだが、一番心配なのは Windows 。これはとりあえずクリアできた。

次は、Linux のバックアップとか Rescue モードでのリストアについて書こうと思う。
posted by すz at 03:43| Comment(0) | TrackBack(0) | VineLinux

2008年09月09日

設定(その4)

今回は、マシンが故障するまでにやったこと や 調べたことのメモ。

vine-4.2 では音が出ない

2.6.26 に上げたりしていろいろやったのだが、どうしても音が出ない。

サウンドドライバーは、snd-hda-intel で、それは 2.6.16 でも存在するのだが、RealTek ALC662 サポートが入っていない。

調べてみると

に書いてあった、2.6.25 はちゃんと動く。だが、2.6.26 では、オマジナイが必要とのこと。

オマジナイの内容は、

options snd-pcsp index=2

これを /etc/modprobe.conf か /etc/modprobe.d/alas-base に書くらしい。

gnome のパネル

vine (gnome) だと上限にパネルがある。このため画面の上下が狭くなり、場合によっては、ダイアログのキャンセルすら押せなくなる。

このため上のパネルは、左に移動し、下のパネルには "隠す" ボタンをつけた。

パネル上なにもないところを右クリック→プロパティで設定を変更できる。

VMwarePlayer (guest)

vine-4.2 の仮想DISKイメージを持っていたので、VMwarePlayer を使ってみた。画面が狭く使いづらかったのだが、VMwareTools-XXX.i386.rpm をインストールすることで、全画面で 1024x600 が使えるようになり快適になった。Window 化した場合、guest の スクリーンのサイズが Window のサイズに自動的に合う。

ちなみに、VMwareTools をインストールするには、kernel-devel がインストールされている必要がある。

ところで、VMware Player での guest os インストールでは、普通 空の仮想DISKイメージを qemu-img.exe で作り、CD/DVD ドライブからインストールする。

ところが、CD/DVD ドライブは、ATAPI 接続の内蔵型である必要があるようで、Aspire One 単体ではたぶん guest os はインストールできない。

実際にやってみたら、USB CD/DVD どころか 仮想 CD/DVD ドライブで OK だった。なら、VMWarePlayer に Vine をインストールするのは簡単だ。

で、普通でない方法を1つ発見。

qemu-img は、convert というコマンドがある。これを使うと、RAW イメージを vmdk ファイルに変換できそう。

ただし、Windows 版で作成できる ファイルサイズは 2GB が上限。
Linux 版なら、たぶん大丈夫だし、大丈夫でないとしても作りなおせる。

これを使って、AspireOne 単体で guest os インストールにトライしてみたいと思う。

VMwarePlayer (host)

Vine に VMwarePlayer を入れてみた。

この場合も、kernel-devel がインストールされている必要があった。

さて、Linux 版ならいろいろいじれるかと思っていたのだが、 Windows とほとんど同じことしかできないようだ。

逆に同じことがだいたいできる。便利な反面、自由度が低い。

ただ、困ったことがある。それは、hibernate がエラーになること。

エディタ関係

vi (vim) を使っているのだが、バックアップファイル (xxx~) が大量にできてしまって見苦しい。

これは、/etc/vim/vimrc.jp (など)を編集して、

set nobackup

を最後にでも入れておけば OK 。

あと、実は文書編集用には、ng () を愛用している。ng は、VinePlus の pool に含まれている。

ng もまた、デフォルトでは、xxx~ というバックアップファイルを作る。が、rpm のデフォルト設定では 作らないようにしているようだ。

カーネル

どうも、音が出ないとか SD カードが使えないとか、いろいろ不具合があるので、カーネルを最新版に上げたい。

ただ、モジュールの rpm とかのビルド では kernel-devel も必要だし、rpm になっている方が便利。fedora 9 あたりのカーネルパッケージが使えないか試してみたい。

実は、2.6.26 カーネルは自分でビルドしてみた。ビルド自体は簡単なのだが、config の編集がとても面倒。それぞれをどうすべきか考えていくと何時間もかかる。それで作ってみたものの、はたしてそれで良かったか自信がないし、なかなか fix できない。それはそれで楽しいし、いずれは Aspire One 専用にカスタマイズしてみたいが、まずは使えるようにしておきたい。

ググる


  • D945GCLF RTL8102E ALC662
    Aspire One のデバイスは、Intel D945GCLF マザーと似ているので有用な情報が見つかる。


バックアップ

Windows の パーティションのまるごとバックアップ程度なら、Linux が動いていれば比較的簡単だ。vine の Rescue でも 外付けハードディスクはもとより、NAS にバックアップするとかまでできると思う。

ただ、clonezillaだと、NTFS や EXT3 に対して 使用していないブロックをスキップして バックアップ/リストアできるそうだ。

でちゃんと読むと、ntfsclone を使っていると書いてある。ntfsclone は VinePlus に入っている ntfsprogs にあるので、それをインストールするだけで使えるようになる。

↑で紹介されている Forking a XP-installationも参考になりそう。


ちなみに、同じように EXT3 のバックアップ/リストアをするコマンドは dump/resoure 。

マシンが届いて再インストールしたら、これらのコマンドでバックアップを取っておこうと思う。
posted by すz at 22:53| Comment(0) | TrackBack(0) | VineLinux

2008年09月04日

設定メモ(その3)

カードリーダについて調査

Aspire One は、JMicron JMB38X というチップを使っている。

まず、これが 最新の Linux-2.6.26 で対応されているか調べてみると ... drivers/mmc/host/sdhci.c に次の記述が見つかった。


{
.vendor = PCI_VENDOR_ID_JMICRON,
.device = PCI_DEVICE_ID_JMICRON_JMB38X_SD,
.subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID,
.driver_data = SDHCI_QUIRK_32BIT_DMA_ADDR |
SDHCI_QUIRK_32BIT_DMA_SIZE |
SDHCI_QUIRK_RESET_AFTER_REQUEST,
},
             :
             :
{ /* Generic SD host controller *
PCI_DEVICE_CLASS((PCI_CLASS_SYSTEM_SDHCI << 8), 0xFFFF00)
},


この sdhci.c は、 Secure Digital Host Controller Interface driver という意味で、2.6.26 では JMB38X は対応済みのようだ。そして、.driver_data にある 3 つのフラグは JMB38X のために新設されてものらしいが、対応する処理は短い。
あと、登録されていなくとも Generic SD host controller として動作するように見える。

さて、Vine-4.2 のカーネルは 2.6.16 。このバージョンでは、JMB38X は登録されていなかった。

setpci -d 197b:2381 AE=47

というのは、Generic SD host controller として動かせるようにするオマジナイらしい。

ところで、197b は PCI_VENDOR_ID_JMICRON と同じ値、2381 は、PCI_DEVICE_ID_JMICRON_JMB38X_SD と同じ値である。
lspci すると

4:00.0 System peripheral: JMicron Technologies, Inc. Unknown device 2382
04:00.2 SD Host controller: JMicron Technologies, Inc. Unknown device 2381
04:00.3 System peripheral: JMicron Technologies, Inc. Unknown device 2383
04:00.4 System peripheral: JMicron Technologies, Inc. Unknown device 2384

と 4 つ出てくる。このうち 2383 は、Linux で PCI_DEVICE_ID_JMICRON_JMB38X_MS として定義されている。この define を grep すると drivers/memorystick/host/jmb38x_ms.c で見つかる。--- 要するに メモリースティックは、全然別のドライバを使う。

次に sdhci をググってみる。
sdhci - mmc_core - mmc_block という階層で デバイスファイルとしては、/dev/mmcblk0 (全体) , /dev/mmcblk0p1 ..として見えるということが分かった。

ドライバの名前が分かったので、dmesg を sdhci で grep してみると次のメッセージが出ていた。


sdhci: Secure Digital Host Controller Interface driver, 0.12
sdhci: Copyright(c) Pierre Ossman
sdhci: SDHCI controller found at 0000:04:00.2 [197b:2381] (rev 0)
sdhci:slot0: Unknown controller version (1). Cowardly refusing to continue.


2.4.16 では、controller version は、0 以外対応していない。対応したコードを作る以外にどうやっても使えないようだ。... で、2.4.26 はというと version 0,1 に対応している。

この対応は、2.4.24 で SDIO サポートと共に入ったようだ。
diff の量はそれなりに大きいが、sdio を無視すればなんとかなりそうなレベル。



Vine-4.2 (linux-2.6.16)で動かせるものを作る

対応するのは、SD カードのみで、SDIO もあきらめ、2.6.23 - 2.6.24 の差分を見ながら 最低限度必要な部分のみ変更していけば、わりと簡単に作れると思う。

それはともかく、できたものを RPM 化しておかないと 管理が面倒。カーネルのバージョンを上げたら作り直さないといけないし ... 時間が立てば何をどうするのか忘れてしまうかも知れない。

前に madwifi を見ているので、それを手本にすれば、カーネルモジュールの RPM 化は簡単そう。

  • kernel-source パッケージをインストールする。
  • /usr/src/linux-2.6.16/drivers/mmc/* を (バックアップしておいて) 修正
  • make -C /lib/modules/2.6.16-0vl76.27/build SUBDIR=`pwd` modules
    ( pwd は drivers/mmc ) で mmc だけのビルドができる。
  • /usr/src からのパッチを作る。
  • オリジナルの mmc を linux-2.6.16-mmc.tar.gz とかして作成しておき パッチと共に rpm/SOURCES に置く。
  • madwifi を参考に Spec ファイルを作る。
  • インストール先は、/lib/modules/2.6.16-0vl76.27/misc/mmc

まぁこんな手順で作ることにした。



なんとなく、できてしまったのだが... 大きな問題があった。
実は、遅いのだ。read も 5.7MB/sec で USB の 1/3 程度なのだが、write が桁違いに遅い。実に 186kb/sec 。

# dd if=/dev/zero of=/dev/mmcblk0 bs=256k count=10 oflag=direct
# dd if=/dev/mmcblk0 of=/dev/null bs=256k count=10 iflag=direct


残念ながら、とりあえずは使い物にならない。

カーネルを最新バージョンに上げた方が良さそうな気がしてきた。


追記: ためしに 2.6.26 に上げてみたら、read 10.7 MB/sec , write 4.5 MB/sec になった。
ただし、同じ microSD (1GB) を USB カードリーダで使ったら read 18.1 MB/sec, write 4.9 MB/sec 。--- USB の方がまだ速いという結果になった。
posted by すz at 16:50| Comment(0) | TrackBack(0) | VineLinux

2008年09月03日

クリア再インストール考察

たとえば、ハードディスクが壊れたとき、どうやって再インストールすればよいのだろう。そして、なにをバックアップしておけばよいのか? これについて考察してみる。

まずは、できることが大事なので、便利なうまい方法である必要はない。1 つでも確実な方法があれば、不安にならずに別の方法を試してみることもできる。

さて、なにが必要か ... というと 前記事で書いたように パーティション 1 の PQSERVICE とそれをインストールし、ブートする手段。

なんとかして Linux を立ち上げれば、それは可能だ。Linux 自体は Linux をインストールしなおすことが簡単で確実だ。

インストール時に やるべきことを簡単に列挙すると

  • パーティション 1 を PQSERVICE が入るサイズ以上で作成し、ID を 12(Compaq 診断) にする。
  • XP 用の パーティション 2 を作成し ID を 7(HPFS/NTFS) にする。


で、インストールした Linux が立ち上がってきたときに

  • バックアップしておいた PQSERVICE を パーティション 1 に dd で書き込む。
  • /boot/grub/grub.conf に以下の行を追加して PQSERVICE を立ち上げられるようにする。

    title D2D Recorvery
    rootnoverify (hd0,0)
    chainloader +1



次に 立ち上げなおし、D2D Recorvery を起動する。

こうすることで、パーティション 2 に XP がインストールされて、おまけで mbr が書き換わり、Linux が立ち上がらなくなる。

確実な方法としては、無駄なのをあえて享受し、Linux をまた再インストールすればよい。

さて、最低限度必要なものはなにか ... というと


  • パーティション 1 PQSERVICE のバックアップ

      Linux での例: dd if=/dev/sda1 of=aa1-d2d.img bs=1024k

  • パーティション 1 のサイズに関する情報

      fdisk の画面コピーと、先頭から パーティション 1 が始まるまでのイメージを保存しておくと安心。

      Linux での例: dd if=/dev/sda of=aa1-head.img bs=8225280 count=1
      (bs には、Unit のサイズを入力 )

  • Linux をインストールするための 手段

    • パターン1)USB CD/DVD ドライブ と Linux インストール CD
    • パターン 2) diskboot.img をインストールした USB ディスク と HTTP/FTP あるいは NFS インストールできる LAN環境



残念ながら、USB ディスクのみの環境での 確実な方法は思いつかなかった。




うまい方法はないか

できれば、4GB の USB メモリ 1 つで リカバリと Linux のインストール ができれば嬉しい。

さて、そういうことができるうまい方法はないものか -- ということを diskboot.img ベースで考えてみることにする。

まず、diskboot.img は、パーティションにおいても良い。そして、Vine の場合 ext2/3 か VFAT の ローカルDISK に ISO イメージを置くことで そこからインストールできる。

ということは、USB DISK に 8MB 程度のパーティションを diskboot.img 用に 1つ作り、残り全部を ext3 にして、grub をインストールすればよい。で、ext3 のほうに Vine42-i386.iso と PQSERVICE イメージを置けばよい。

このようにすれば、次の手順で Windows XP と Vine の環境をインストールできるはず。


  • Step1) Vine を ローカルDISK -- /dev/sdb2 から インストールする
  • Step2) Vine が立ち上がったら PQSERVICE をリストアし、ブート可能にする。
  • Step3) PQSERVICE を起動して、Windows XP を再インストールする。
  • Step4) USB DISK の grub で インストールした Vine を立ち上げ grub-install /dev/sda で MBR を作りなおす。


さあ、はたして うまくいくだろうか?




クリアインストール用 USB ディスクを作ってみよう

USB ディスクとして、SanDisk 4GB microSD + カードリーダを使って、リアインストール用 USB ディスクを作ってみることにする。

上に書いたことは、方針で、ここでは実際に行ったことを書くので、上とは違うので注意。

Step1 パーティション 作成

パーティション1 -- PQSERVICE 用 3200MB
パーティション2 -- diskboot.img 用 8MB
パーティション3 -- grub と Vine ISO イメージ用 残り (ext2)

パーティションを 3つに分けて、PQSERVICE用を別にすることにした。


Disk /dev/sdb: 4075 MB, 4075290624 bytes
126 heads, 62 sectors/track, 1018 cylinders
Units = シリンダ数 of 7812 * 512 = 3999744 bytes

デバイス Boot Start End Blocks Id System
/dev/sdb1 1 801 3128675 12 Compaq 診断
/dev/sdb2 * 802 804 11718 b W95 FAT32
/dev/sdb3 805 1018 835884 83 Linux


Step2 ファイルシステム作成とイメージのコピー

PQSERVICE用イメージは、EASEUS Partition Manager でパーティション を 3GB に縮小した後 dd で吸い上げたものを使い、ベタでコピーすることにした。

縮小前の オリジナルはもちろん保存してある。オリジナルを使う場合は、6GB あるので、gzip などで圧縮する。


# ls -l aa1-d2da.img
-rw-r--r-- 1 root root 3142024704 9月 1日 20:37 aa1-d2da.img
# dd if=aa1-d2da.img of=/dev/sdb1 bs=1024k
# dd if=diskboot.img of=/dev/sdb2
# mkfs.ext2 /dev/sdb3
# mount /dev/sdb3 /mnt
# cp Vine42-i386.iso /mnt
# tar -C /boot -cf - grub | tar -C /mnt -xvf -


Step3 grub のインストール

まず、/boot/grub/device.map に次の行を加える。

(hd1) /dev/sdb


つぎに grub-install

# grub-install /dev/sdb


これが済んだら、リブートし、BIOS 画面で F12 を入力して USB ディスクから立ち上げる。

うまくいけば、grub のメニューが出る。-- ただし、これは ハードディスクのメニュー。USB DISK 用のほうを使うように設定しなおす。

立ち上がる前に(すばやく) c を入力し、コマンドモードにする。


grub> root (hd0,2)
grub> configfile (hd0,2)/grub/menu.lst
( c で戻る )
grub> setup (hd0) (hd0,2)


Step4 grub の設定

reboot し、再度 F12 で USB DISK から立ち上げてみると .. メニューは出るものの エラーで立ち上がらないはずだ。

再度 Linux を立ち上げ、USB ディスクの grub/grub.conf (menu.lst) を編集する。


default=0
timeout=5

title Vine Installer
rootnoverify (hd0,1)
chainloader +1

title Vine Linux (Hard Disk)
root (hd1,4)
kernel /boot/vmlinuz ro root=LABEL=/ resume2=swap:/dev/sda6 vga=0x314
initrd /boot/initrd.img

title D2D Recorvery (USB test)
rootnoverify (hd0,0)
chainloader +1


インストーラのテスト

再度 F12 で立ち上げると作成したメニューが出る。
まずは、Vine Installer を選ぶ。

boot: でリターンを入力するとインストーラが立ち上がってくる。

そして、インストール方法のところで、ハードドライブを選び /dev/sdb3 を選択すれば、インストーラが起動する。
注意) 選択枝に /dev/sdb3 が出ない場合がある。これは、まだ USB DISK をカーネルが認識していないためで、いったん "戻る" を選びやりなおせば OK になる。

ここまで来たら OK Ctrl+ALT+DEL でリブート。

次に同じように F12 → Vine Installer を選択し、
boot: で linux resque を入力。

同じように 選択していく。次にいろいろ聞かれるが、

ネットワークの設定 → いいえ
レスキュー → 続行


を選択すると、ハードディスクが /mnt/sysimage に マウントされて、コマンド画面になる。

そのままでも良いが、たとえば、

# chroot /mnt/sysimage


とすれば、ssh/telnet で login したのと似た環境になり、復旧作業が楽にできる。

ここまで確認して、Ctrl+ALT+DEL でリブート。

ハードディスクのブートのテスト

次に F12 → Vine Linux (Hard Disk) が立ち上がるか確認。

grub の設定は、オリジナルの root のところを hd0 → hd1 に変えたもの。grub(BIOS) からは (hd1) に見えるが、Linux からは、相変わらず /dev/sda なのでこのようにする。

D2D Recorvery (USB test)のテスト

ダメもとでやってみた。

すると...


NTLDR is missing
Press any key to restart


ググってみると、本来とは別の場所からブートしようとしたときに出るらしい。要するに このままでは、USB DISK からはブートできないようだ。

なにか変更すると、逆にハードディスクにイメージを コピーしたとき立ち上がらなくなってしまうので、今は このままで OK 。

おまけ 作った USB イメージのダウンロード

ext2 パーティション 150MB ほど縮小し、
PQSERVICE と Vine42-i386.iso を削除した ディスクイメージファイルを aa1-usbsetup0.img.gz で置いておく。
このファイルは 15MB だが、gunzip すると 4GB になる。


# gunzip < aa1-usbsetup0.img.gz | dd of=/dev/sdb bs=1024k


とすることで、4GB の USB ディスクに書き込めるはず。
SanDisk の 4075 MB, 4075290624 bytes より 小さめの ディスクだと 全部は書き込めないが問題はない。ただし、SanDisk より 145 MB 以上小さいとダメ。

書き込んだ後、いったん 抜き差しする。このとき dmesg で見てエラーが出ていればダメ。

次に、/dev/sdb3 を マウントして、Vine42-img.iso をコピーすることで、インストーラとして使えるようになる。PQSERVICE は自分の Aspire One のものを使うべし。

おまけ 他の方法について

キーワード Aspire One PQSERVICE でググればいろいろ出てくる。

実はサッパリ分からないのでコメントできないのだが、日本語の記事も 現時点で 2 つほどあるようだ。

  • imagexが使えるbootable Windows PE cdを使う方法
  • Acronis True Image Personal2 を使う方法


おわりに

以上のメモは、Vine Linux を対象にしたものだが、インストーラ CD の中に diskboot.img がある、RedHat 系のディストリビューションなら 応用できると思う。

また、PQSERVICE が必要なければ、1GB の USB ディスクで作ることができて、一般のマシンで USB ディスク版 インストーラとして使える(はず)

なお、クリアインストール用 USB ディスクを使って実際にクリアインストールする予定はいまのところない。このやりかたで大丈夫だと思うが、保証できないどころか確認もできていないということだ。もし、SSD など別の DISK に換装するとかの目的で使ってみた人がいれば、コメントに書き込んでほしい。
posted by すz at 01:53| Comment(0) | TrackBack(0) | VineLinux

2008年09月02日

設定メモ(その1)

X の 解像度を 1024x600 にする

/etc/X11/xorg.conf に対して次の変更をすれば OK 。

1. Driver を "i810" から "intel" に変更
2. Modes に "1024x600" を追加


USB メモリを挿したとき勝手に mount するのをやめる

デスクトップ→設定→リムーバブル・ディスクとメディアを選択し、
ストレージの、チェックマークを全部はずせば OK。

メモ(未確認)


  • /usr/sbin/hibernate で ハイバネーションができる。( WindowsXP での 休止に相当 )

    FN+ F4 での ハイバネーションはダメ。pcc-acpi のようなもので Aspire One に対応したものが必要。

  • 無線 LAN はそのままではダメらしい。

    wifi%d: unable to attach hardware: 'Hardware did'nt respond as expected' (HAL Status 3)

    だが、https://help.ubuntu.com/community/AspireOne によると madwifi-hal-0.10.5.6-r3835-20080801 なら OK と書いてある。vine のバージョン は 0.9.3.3 だから 最新版を 自分でインストールすれば使えるのかも。

    あと https://help.ubuntu.com/community/AspireOne より

  • カードリーダは、

    setpci -d 197b:2381 AE=47
    とすれば、使えるかも

  • ファン制御も可能らしい(未確認)。acer_ac.pl と acerfand をダウンロードして設定すれば OK。
posted by すz at 20:41| Comment(0) | TrackBack(0) | VineLinux

2008年08月29日

Vine を入れてみよう

Aspire One に Vine Linux をインストールしてみた。とりあえずは、うまくいったようなので、メモ。


  • このメモは、USB メモリ (or USB カードリーダ + メディア) と 本体のみで インストールする方法について記している。

  • USB CD/DVD ドライブがあり、CDを持っていれば、作業 その1)のみでインストールできる。BIOS の条件も関係ない。

  • USB メモリがあり、(無線LAN ではなく)LAN で インターネットに接続できる環境ならば、作業 その1)、その3)だけしてHTTP/FTP で直接インストールすることも可能だ。


条件

USB DISK からの ブートができること。おそらく BIOS バージョン v0.3114 以降。

用意するもの


作業 その 1) パーティションの縮小

Linux をインストールするには、Windows の領域(C:)を縮小して 領域を空ける必要がある。EASEUS Partition Manager を使うと、中身を壊さずに縮小できるようだ。

元の パーティション構成
番号 ドライブ FS  ラベル   サイズ
1    なし  FAT32 PQSERVICE 5GB
2   C: NTFS ACER 105GB(残り全部)

C:ドライブのサイズを変更すると、自動的にリブートするようになっている。

もし、中身を壊さずに縮小できるかどうかについて、信用できないなら、サイズ変更後の起動時に ALT + F10 を入力して リカバリする手もある。

リカバリは、完全に初期化するものではなく、パーティション2をフォーマットし、パーティション1にあるファイルから パーティション2 にコピーするもののようだ。


作業 その 2) FAT32 パーティション作成

インストール元として ローカルDISK を使う。その際 ext2/3 か FAT32 でないといけないようなので、ファイル置き場として FAT32 パーティションを作る。EASEUS Partition Manager は、パーティションの作成だけでなく、フォーマットする機能があるのでついでにフォーマットしておく。

フォーマットしたら、そこに Vine42-i386.iso をコピーする。ディレクトリを作りその先に置いても良いが、日本語名はダメ。

作業 その 3) diskboot.img の取り出し

仮想CD/DVD ソフトを使って CDROM(ISO)ファイルの中を見ると images ディレクトリに diskboot.img というファイルがある。このファイルを DDforWindows などを使って USB メモリの 先頭セクタから書き込む。別に Linux マシン があるならば dd コマンドを使ってもよい。




インストール

インストール自体は、作った USB メモリからブートし、インストール元として Vine42-i386.iso がある disk (/dev/sda3) と ディレクトリを指定することでうまくいく。


  • FAT32 パーティションは使用中だから、(インストール中は)パーティション 1,2,3 は変更してはならない。パーティション4 (sda4) から後ろを使わざるを得ないが、sda4 は拡張パーティションに使うことになるので、sda5 から後を使うことになる。

  • パーティショニングが特殊なので、自動でパーティション設定はしない方がよい。また、/boot は特に必要ない。sda5 / , sda6 swap で良いと思う。

  • swap のサイズは、メインメモリ以上とっておいたほうが良さそう。理由は ... よく知らないのだが、grub.conf に resume2= で swapパーティションを指定しているから。

    追記: なにも設定しなくとも hibernate コマンドを実行することで、ソフトウェアサスペンド ができる。参考→ http://jegog.phys.nagoya-u.ac.jp/~tkonishi/cn/T4/vine4/swsusp.html 
    なので、メインメモリの 2 倍以上にするのが望ましいらしい。

  • (追記) ちなみに、インストールする内容は、"全部" を使用した。CD 1 枚分しかないし、全部インストールしてしまった方が良いと思う。


インストール後のリカバリ方法について

Linux をインストールしてしまうと、ALT + F10 でのリカバリができなくなってしまう。

そのかわり、grub のメニューから起動できるようにすることができる。
Windows 用のメニューを参考に、パーティション 0 からブートするメニューを追加すればよい。

title D2D Recorvery
rootnoverify (hd0,0)
chainloader +1


ただし、これを実行すれば MBR が上書きされるはずだ。Windows のみが立ち上がるようになり、ALT + F10 も復活するはず。

注意点

このメモは無保証です。このメモの通りやって、システムを壊してしまったとしても自己責任でお願いします。

とはいえ、そのようなことにならないよういくつか気がついたことを記しておく。


  • パーティション 1 PQSERVICE を(ファイル単位ではなく)、ボリュームまるごと バックアップしておくこと。RAW データで 5GB だが、圧縮すれば 2.6GB ほどになる。

    Linux なら dd 使えば簡単だし、dd for windows でも同等のことはできるようだ。(Examples の最後が参考になりそう)

    これさえ残っていれば どうにかなる。後日うまい方法も見つかるだろうが、最悪でも Disk を取り出すことで、他のマシンを使って復旧できるはずだ。

  • C:\I386 をファイル単位でバックアップしておくと nLite などで、AspireOne 専用の インストール CD を作れる(かも)知れない。

    これについてはよく知らないので、これ以上コメントできない。

  • Linux が動いている間に GRUB用の起動イメージを作っておいてバックアップしておくべき。

    リカバリーしたら Windows が立ち上がるかわり、Linux が立ち上がらなくなってしまう。GRUB用の起動イメージ を USB メモリに DDforWindows か "dd for windows" で書き込み ブートすることでなんとかなる。


おまけ -- Vine インストール後の fdisk 情報


Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot Start End Blocks Id System
/dev/sda1 1 764 6136798+ 12 Compaq 診断
/dev/sda2 * 765 4588 30716280 7 HPFS/NTFS
/dev/sda3 4589 8413 30724312+ c W95 FAT32 (LBA)
/dev/sda4 8414 14593 49640850 5 拡張領域
/dev/sda5 8414 13512 40957686 83 Linux
/dev/sda6 13513 13894 3068383+ 82 Linux swap / Solaris


おわりに

現時点では、Vine をインストールできただけの状態だ。カードリーダや 無線LAN など まだ使えていないデバイスがあるし、不具合もあるかも知れない。

これから、ぼちぼち使えるようにしていきたいと思う。

追記 nLite を使って WindowsXP インストールCDを作る

nLite とかがすこし分かってきたので、メモ。

nLite を使えば、Aspire One に含まれているファイル・情報だけでクリアインストールできる CD が作れる。ただし、この CD は、Aspire One 専用。最悪のときしか使える場面はないが、緊急用に持っておくと良いかも。


  • 1) 作業用ディレクトリ (仮に C:\WinAA1 とする) を作成
  • 2) 新規ファイル WIN51 WIN51IC WIN51IC.SP3 を C:\WinAA1 に作成。内容は Windows と書いた1行で良い。( 空白行でも良いらしい )
  • 3) C:\I386 を 全部 C:\WinAA1 にコピー
  • 4) C:\WINDOWS\system32 にある、oembios.bin を lhaplus などを使って cab で圧縮 しできた oembios.cab を OEMBIOS.BI_ にリネームして C:\WinAA1\I386 にコピー
    同様にして、oembios.dat,oembios.sig を cab で圧縮したものを OEMBIOS.DA_ , OEMBIOS.SI_ にリネームしてコピー
    さらに、C:\WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE にある OEMBIOS.CAT を cab で圧縮したものを OEMBIOS.CA_ にリネームしてコピー。

  • 5) C:\WinAA1 の内容を nLite で 指定して、最後の ISOイメージ作成のみを行う。
  • 6) プロダクトキーは、シールのものではなく、実際に設定されているものを使う。( siw とか keyfinder とかで見ることができる。たぶん CXCY9-.... になっているはず )


ちなみにドライバは、Aspire One wiki の ドライバを参照

注意) これを用いて クリアインストールはしたことがないので、動作の確認すらできていない。ただのメモなので、あまりアテにしないように。
posted by すz at 16:26| Comment(3) | TrackBack(0) | VineLinux