2009.11.24
以前にUbuntu 8.10をUSBメモリーからインストールする方法を備忘録として書いた。
その後、アップデートマネージャで9.10まで版数は上がっているが、クリーンインストールしたくなって実行した。方法が以前と少し違うところがあるので、改めて記述しておくこととした。
1. 準備
準備は普段使っているWindows XPが乗っているデスクトップPCを使った。
(1) ubuntuはubuntu Japanese Teamのページから日本語版の最新の9.10のiso imageをダウンロード。
(2) インストール用のUSBメモリー作成ツールとして、unetbootinをダウンロード
(3) unetbootinはインストールする必要もなく、ダウンロードしたものを、そのままダブルクリックで起動。

a. Distributionでubuntuで9.10Liveを選択。
b. DiskimageでISOを選び、isoimageの場所を選択。
c. 最下段のTypeでUSB Driveを選び、Drive名が目的の
USBメモリーであることを確認。
OKボタンを押すと、進行状況の表示画面になり、途中で止まったように見えてハングしたかと思ったが、10分程度経過の後急に進んで終了した。
(注) 以前は出来上がったUSBメモリーを開いてファイル名の修正などが必要であったが、今回は必要ない。(修正したらインストールできなくなる)
2. インストール
インストールが終わっても、無線LANは修正が必要とのことであるので、有線のLANケーブルを接続しておく。そして、出来上がったUSBメモリーをMini 9に挿し、Power ONして”0″キーをチョンチョンと押し続けるとブートの選択画面が出るので、USBを選択してEnterキーを押すと、インストール画面になる。後はCDからのインストールと同じである。既にWindowsXPを16GBのパーティションを作って入れてあるので、残りの16GB部分にインストールした。
3. 修正作業
以前、問題であったサウンドは修正の必要もなく動作したが、無線LANは動作しなかった。
(1) 無線LAN
システム→システム管理→ハードウェアーマ・ドライバーと進んでBroadcom STA無線ドライバーを有効にする。
4. インストール後の設定
(1)以前の記述を参照
(2)デフォルトで入っているviは使い勝手が悪いので、vimに交換。
Mini 9の有線LANケーブルを外して再起動。今度は無線LANが働くので、自分の無線LANのアクセスポイント名を選んでPassword Phraseを入れ接続する。

2009.08.16
smbclientよりmount_smbfsでリモートのWindowsのディレクトリーをマウントする方が、良く使われると思われるので、これも書いておく。
# mount_smbfs -I 192.168.1.100 //nakamura@hogehoge/share /mnt
Password:xxxxxx
# ls /mnt
Thumbs.db calendar.tcl mn8300.pdf pspbrwse.jbf satoru
# umount /mnt
こちらの方が使い易いと思うのだが、好みの問題か。
極めて簡単なのだが、やはりしばらく使わないと使用方法を忘れてしまう。
まず、Windows XPで動いているデスクトップPCのホスト名がhogehogeとすると、下記のコマンドで、アクセス可能なディレクトリーを表示させる。
# smbclient -I 192.168.1.100 -L hogehoge/C$ -U nakamura
Password:xxxxxxx
Domain=[HOGEHOGE] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
Sharename Type Comment
--------- ---- -------
E$ Disk Default share
EPSONPM- Printer EPSON PM-A850
IPC$ IPC Remote IPC
D$ Disk Default share
print$ Disk プリンタ ドライバ
share Disk
ADMIN$ Disk Remote Admin
C$ Disk Default share
Domain=[HOGEHOGE] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
Server Comment
--------- -------
Workgroup Master
--------- -------
この中で、共用設定をしているディレクトリーはE Drive内に作ったshareだけなので、そこをアクセスしてみる。
# smbclient //hogehoge/share
Password:
Domain=[HOGEHOGE] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
smb: > ls
. D 0 Sun Jun 28 16:57:47 2009
.. D 0 Sun Jun 28 16:57:47 2009
calendar.tcl A 3234 Sat Jan 17 09:05:48 2009
mn8300.pdf A 1471542 Sat Sep 27 01:01:34 2003
pspbrwse.jbf A 25967 Sun May 17 09:56:50 2009
satoru D 0 Sun Jun 28 16:57:21 2009
Thumbs.db AHS 97280 Tue Aug 4 20:39:23 2009
38534 blocks of size 2097152. 29452 blocks available
smb: > q
#
2009.03.28
FreeBSDやLinuxでは、bootの過程で何が起きたかをdmesgコマンドで見ることが出来る。
しかしながら、表示内容が長くなると最初の部分が消えて見ることができない。私の例では、Firewallを設定して韓国、中国からのアクセスをブロックした途端に、その表示の長さのために、boot過程は全く見えなくなってしまった。
これを解決するためには、dmesgのバッファーサイズを広げればよいが、このためには、MSGBUF_SIZE というオプションを指定してカーネルの再構築をする必要がある。
/usr/src/sys/i386/confに移動して、GENERICを別名(MYPCなど)でコピーして、編集する。
# cd /usr/src/sys/i386/conf
# cp GENERIC MYPC
# vi MYPC
そして、下記のようにoptionsでMSGBUF_SIZE=xxxxxを追加する。
サイズはデフォルトでは4096であり、この整数倍に設定する。
options STOP_NMI # Stop CPUS using NMI instead of IPI
options AUDIT # Security event auditing
options MSGBUF_SIZE=409600
これで、kernelをコンパイルして入れ替えれば、バッファーサイズが増え、全てのメッセージを見ることが出来るようになる。
2009.03.07
FreeBSDではATAインターフェイスをコマンドでattach, detach出来る機能があり、gmirror構成したディスクの1台が壊れても、サーバの運用を続けながらhot replaceで交換きる。まず、root権限でatacontrolでlistを表示してみる。
# atacontrol list
ATA channel 0:
Master: acd0 <TSSTcorp CD-ROM TS-H192C/B504> ATA/ATAPI
Slave: no device present
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <ST3808110AS/3.AJJ> Serial ATA v1.0
Slave: no device present
ATA channel 3:
Master: ad6 <Hitachi HDS721680PLA380/P21OABEA> Serial ATA II
Slave: no device present
使用しているサーバはHPのProLiant M110であり、IDEのPrimaryとSecondaryがATA channel 0とATA channel 1として表示され、SATAがそれぞれATA cahnnel 2とATA channel 3として表示されている。
この例ではATA channel 2のMasterにad4が接続されており、ATA channel 3にad6が接続されている。
atacontrolでは、channel単位にattach, detachができるので、例えばATA channel 3につながっているad6を交換したいのであれば、このチャネルをdetachする。detachしてリストを表示すると、
# atacontrol detach ata3
# atacontrol list
ATA channel 0:
Master: acd0 <TSSTcorp CD-ROM TS-H192C/B504> ATA/ATAPI
Slave: no device present
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <ST3808110AS/3.AJJ> Serial ATA v1.0
Slave: no device present
ATA channel 3:
Master: no device present ← HDDが消えた
Slave: no device present
となり、ad6として動作していたHitachiの160GBのドライブが消える。
ここで、このドライブをサーバ運用のまま交換し、attachする。
# atacontrol attach ata3
# atacontrol list
ATA channel 0:
Master: acd0 <TSSTcorp CD-ROM TS-H192C/B504> ATA/ATAPI
Slave: no device present
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <ST3808110AS/3.AJJ> Serial ATA v1.0
Slave: no device present
ATA channel 3:
Master: ad6 <Hitachi HDP725025GLA380/GM2OA5CA> Serial ATA II
Slave: no device present
ここの例では、Hitachの250GBのドライブに交換した。
あとはgmirrorを再構成するだけである。
# gmirror statua ← statusの表示
Name Status Components
gmirror/gm0 DEGRADED ad4
# gmirror forget gm0 ← 構成情報のリセット
# gmirror status ← 再度statusの確認
Name Status Components
gmirror/gm0 COMPLETE ad4 ← DEGRADEDからCOMPLETEになる
# gmirror insert gm0 ad6 ← ad6の組み込み
Name Status Components
gmirror/gm0 DEGRADED ad4
ad6(1%) ← 進行が%で表示される
あとは、同期化が進行して完了する。