ubuntu server 9.10 install メモ

最近毎日のようにインストールしているので、スラスラインストールできるけど、安定期に入ってインストールしなくなると、たぶん忘れちゃうと思うので、その時のための自分用のメモ。

■インストール
・AOC-SASLP-MV8にHDDが刺さってると面倒(インストーラーがRAIDを作ろうとしてすごい待たされる)なので、ドライバが動作するようになるまでは抜いておく(最初にF6でnodmraidを設定して置けば大丈夫だった)。
・ubuntu server 9.10 x64のDVD(たぶんCDイメージ)からBoot
・言語を日本語、KeyboardをUSに設定
・F4で最小限の構成でインストール
・LVMを使う。
・追加でSambaも一緒に入れる。
・ユーザー名はWindowsのと一緒にする
10分程でインストール完了。
■初期設定
・Loginして、
sudo -s
でrootになる。

apt-get install tcsh

コンソールで日本語が化けるので
LANG=C;export LANG
またはtcshで
setenv LANG C

apt-get install xinetd
apt-get install telnetd

・telnet用の設定。
/etc/xinetd.d/telnetを下記の内容にした。
{
        disable         = yes
        flag            = REUSE
        id              = echo-stream
        socket_type     = stream
        server          = /usr/sbin/in.telnetd
        log_on_failure  += USERID
        protocol        = tcp
        user            = root
        wait            = no
}
これでtelnet出来るようになる。

■Sambaの設定
とりあえずWindowと最低限のファイルのやり取りを可能にする。
/etc/samba/smb.confを編集。
[global]
   dos charset = CP932
   unix charset = UTF-8
   display charset = UTF-8
   workgroup =Windowsで使ってる奴
[homes]
   comment = Home Directories
   browseable = no
   read only = no
その後serverをrestart
/etc/init.d/samba restart
これでLinuxのDiskにWindowsから書き込めるようになる。

■その他。
・HDDの温度を見たりする
apt-get install smartmontools

・ソフトウエアRAIDの管理ソフト
apt-get install mdadm

・HDDの設定
hdparm -B 254 /dev/sda
これをやらないとロードリロードが凄い事になる。
/etc/hdparm.confの最後にも追加。
command_line {
       hdparm -q -B 254 /dev/sda
}

・パッケージの更新
apt-get update
apt-get upgrade
apt-get dist-upgrade

■カーネルの作成
・作成に必要な物Get
apt-get install build-essential
apt-get install kernel-package libncurses5-dev libqt3-mt-dev

・ソースGet
apt-get install linux-source-2.6.31
/usr/srcで展開
tar xvjf linux-source-2.6.31.tar.bz2

・カーネルの設定
cd linux-source-2.6.31
cp /boot/config-2.6.31-19-server .config
make oldconfig
make menuconfig
またはmake localmodconfigってやると使ってるモジュールだけONにしたconfigを作ってくれる。
・コンパイル(Phemon X4 905eで、4並列でやって30分ぐらい。localmodconfigの場合は10分ほど)
setenv CONCURRENCY_LEVEL 4
make-kpkg clean
make-kpkg –initrd –revision=001 kernel_image kernel_headers

・カーネルのインストール
cd /usr/src
dpkg -i linux-image-2.6.31ほげほげ.deb

■AOC-SASLP-MV8を使えるようにするためにカーネルに組み込む。
・SCSTを取ってくるのにSubversionをInstall
apt-get install subversion
・SCSTをGet
cd ~
svn co https://scst.svn.sourceforge.net/svroot/scst
・Kernelに組み込み
ln -s ~/scst/trunk/scst/src /usr/src/linux-source-2.6.31/drivers/scst
mv /usr/src/linux-source-2.6.31/drivers/scsi/mvsas /usr/src/linux-source-2.6.31/drivers/scsi/mvsas.old
ln -s ~/scst/trunk/mvsas_tgt /usr/src/linux-source-2.6.31/drivers/scsi/mvsas
・KernelにPatch当て
cd /usr/src
ln -s linux-source-2.6.31 linux-2.6.31
patch -p0 < ~/scst/trunk/scst/kernel/in-tree/Kconfig.drivers.Linux-2.6.31.patch
patch -p0 < ~/scst/trunk/scst/kernel/in-tree/Makefile.scst-2.6.31
patch -p0 < ~/scst/trunk/scst/kernel/in-tree/Makefile.dev_handlers-2.6.31
patch -p0 < ~/scst/trunk/scst/kernel/in-tree/Makefile.drivers.Linux-2.6.31.patch
patch -p0 < ~/scst/trunk/scst/kernel/io_context-2.6.31.patch
patch -p0 < ~/scst/trunk/scst/kernel/readahead-2.6.31.patch
patch -p0 < ~/scst/trunk/scst/kernel/scst_exec_req_fifo-2.6.31.patch
Makefile中のincludeディレクトリの指定が合わなくなるようなので、
SCST_INC_DIR := ~/scst/trunk/scst/include
をscst/Makefile scst/dev_handlers/Makefile scsi/mvsas/Makefileに加える。

・Kernel作成
make-kpkg –initrd –revision=001 –append_to_version -mvsas kernel_image
って感じに–append_to_versionでカーネルの名前に文字列をつけるとよさげ。

後は上記カーネルの作成と同様。configではSCSTとSCST_DISKをYにした。
rebootして/var/log/messagesにmvsas: driver version 0.8.4と出てればOK。AOC-SASLP-MV8にHDDを繋げてbootする。

■RAID作成
・fdiskで構成するHDDにパーティションを作る。
パーティションを作らないでやるとHDD全体を使うようになる。容量をそろえるって意味でパーティションを作るのが良いらしい。手動で1個づつやるのが面倒だったのでこんなcsh scriptで16台分fdiskした。
#!/bin/csh -fx
foreach dev ( /dev/sd[b-q] )
fdisk $dev << EOF
n
p
1

121589
t
1
fd
w
EOF
end
・このパーティションでRAID6を作成。
mdadm -C /dev/md0 -l6 -n16 -f /dev/sd[b-q]1
これでHDD1台あたり976663488バイトらしい。16台に同じパーティションを作ってそれをRAID6にした。。
Build中もすぐ使えるが、使えば使うだけBuildに時間が掛かるようになる。フォーマットもせずに触らないで使わないで居たら1TBx16のRAID6のBuildは9時間で終わった。ちょこちょこ触ってたら14時間かかった。

rebootしてもRAIDが認識されるように/etc/mdadm/mdadm.confに情報を加える。
mdadm -Ds >> mdadm.conf
でもmetadata=00.90というのがBugのためにエラーの元になるので、metadata=0.90と修正する。

・現状の/etc/mdadm/mdadm.confをコピペ
DEVICE partitions
CREATE owner=root group=disk mode=0660 auto=yes
HOMEHOST <system>
MAILADDR root
ARRAY /dev/md0 level=raid6 num-devices=16 metadata=0.90 UUID=88399850:033c599f:e368bf24:bd0fce41

今は13TB1個のアレイにしてる。

■JFS
jfsでフォーマットするコマンドが入って無いのでInstallする
apt-get install jfsutils
・フォーマット
mkfs.jfs /dev/md0
容量がでかくても一瞬で終わる。

■mount
mount pointを作ってmountする
mkdir /work/data0
mount /dev/md0 /work/data0

■fstab
/dev/md0 /work/data0  jfs defaults 1 2
を追加した。

■Sambaで公開
/etc/samba/smb.confにこれを加えた。
[public]
    comment = Public Directory
    path = /work/data0
    guest ok = No
    browseable = Yes
    writable = Yes

とりあえずこれでNASとしては十分使えてる。上記作業は5回ほどやって慣れたのでカーネルの作成の30分をあわせても1時間ほどで終わる。それでもやらないといけない事が多くてめんどくさいので、システムを丸ごとバックアップして、Restoreするだけで復元できるようにしたいと思っている。どうやったら出来るのかな。

最後に、参考にさせてもらった記事の直リンク
「mdadm」によるRAID5の構築
・カーネル再構築のススメ
telnetd
今はググると色々と参考になる記事があって良い。

Sponsored Links
Pocket
LINEで送る

About Whellie