アイ・オー・データが販売している自作のLAN接続ハードディスクGLAN TankをRAID1でセットアップする際のガイドです。まとめWikiなどありましたがやはりDebian初心者でいろいろ苦労したので、設定のログを残しておきます。使用したHDDはまとめWikiで動作が確認されていたWesternDigital WD3200JBを2台。追加インストールしたソフトウェアは以下の通り。
- Samba(GLAN TankはデフォルトではWebDAVでファイルのやり取りをするようになっているので)
- SSH
- netatalk
- hddtemp、ruby、GLANTANK用fandrv/fanctld
まず、組み立てからOSインストールまではマニュアル通りに行う。そして、GLAN Tankの電源を入れて初期設定完了を待つのだけれど、マニュアルの『7.動作を確認する』には以下のように記述がある。
1.GLAN Tankの「電源ケーブル」をコンセントに接続し、「電源スイッチ」をONにします。
2.起動後、自動的に初期設定に入ります。
初期設定中はピッ・ピッ・ピッと音が鳴り続けますので、鳴り終わるまでそのままお待ち下さい。
※HDDの容量によっては20分近く掛かる場合があります。
※次回以降の起動では「ピッ・ピッ・ピッ・ピー」という音が正常起動の合図となります。3.音が鳴り終わり、「POWER LED」が常時点灯したら、初期設定完了です。
文字通り受け取ると、「POWER LED」が常時点灯したらすぐに使えるかと思うのだが、そうではない(一応使えるけれど)。この状態では起動ができるようになっただけで、RAID1の構築が完了していない。一応書き込みなどは行えるが、RAID構築中のため遅い(Gbit Ether直結で1MB/sぐらいしか出ない)。RAIDの構築状況は以下のコマンドで把握できます。
# cat /proc/mdstat Personalities : [linear] [raid0] [raid1] [raid5] md0 : active raid1 hdb3[1] hda3[0] 312054528 blocks [2/2] [UU] [================>....] resync = 83.0% (259315584/312054528) finish=56.8min speed=15449K/sec unused devices: <none>
resync = 83.0%
などと表示されているときはまだRAID構築中。finishというのは終了までにかかる予想時間かな。終わると以下のような表示になります。
# cat /proc/mdstat Personalities : [linear] [raid0] [raid1] [raid5] md0 : active raid1 hdb3[1] hda3[0] 312054528 blocks [2/2] [UU] unused devices: <none>
さて、ソフトウェアのインストールに移ります。まず、パッケージを取得してくるサイトを近くのサイトに変更。ミラーリストはこちら。
# vi /etc/apt/sources.list deb http://ftp.riken.go.jp/pub/Linux/debian/debian/ sarge main contrib non-free deb-src http://ftp.riken.go.jp/pub/Linux/debian/debian/ sarge main contrib non-free #deb http://ftp.debian.org/debian sarge main #deb-src http://ftp.debian.org/debian sarge main deb http://security.debian.org/ sarge/updates main deb-src http://security.debian.org/ sarge/updates main
その後、ミラーを反映させるために以下のコマンドを実行。
# apt-get update
sambaをインストール
# apt-get install samba
sambaの設定。まずは文字コードを設定するために/etc/samba/smb.confの[global]セクションに以下の記述を追加する。そうするとWindowsでもMacでも文字化けしない。
dos charset = CP932 unix charset = UTF-8 display charset = EUC-JP
sambaで共有するパスの設定。GLAN Tankでは/share/以下を共有することになっているので、そのようにする。/etc/samba/smb.confの末尾あたりに以下の記述を追加。
[share] comment = share browseable = yes writable = yes path = /share public = no create mode = 0666 directory mask = 0777 use sendfile = yes
sambaを再起動して設定を反映させる。
# /etc/init.d/samba restart
今時Telnetもどうかと思うので、SSHをインストールする。
# apt-get install ssh
SSHでのrootログインを禁止。/etc/ssh/sshd_configのPermitRootLoginをコメントアウトコメントを外す。
#PermitRootLogin yes
sshdを再起動して設定を反映させる。
# /etc/init.d/ssh restart
telnetを自動起動しないようにしておく。
# update-rc.d -f telnetd remove
netatalkをインストールする。AppleTalkでのファイル共有が必要ない人は行う必要はないです。
# apt-get install netatalk
AppleTalkで/share/以下を共有するように/etc/netatalk/AppleVolumes.defaultの末尾に以下の記述を追加。options:usedotsをつけないと、「.DS_Store」などのファイルが「:2eDS_Store」という名前で保存されるようになってしまい、Sambaでやり取りするときに困る。
/share/ "Share" options:usedots
netatalkを再起動して設定を反映させる。
# /etc/init.d/netatalk restart
HDDの温度に応じてファンを制御したい人は、hddtempとrubyとGLANTANK用fandrv/fanctldをインスールします。
# apt-get install hddtemp # apt-get install ruby
GLANTANK用fandrv/fanctldからファイルをダウンロードし、/tmpなどに展開する。その後、fanctldとfandrv.koを/usr/local/binにコピー。そして、/etc/init.d/fanctldとして以下の起動用スクリプトを作成。(-i<監視間隔> -t<ファン始動温度> -d <監視対象のドライブ>)
#! /bin/sh
NAME=fanctld
DESC=fanctld
case "$1" in
start)
echo -n "Starting $DESC: "
insmod /usr/local/bin/fandrv.ko
/usr/local/bin/fanctld -t45 -i60 -d /dev/hdb
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
echo 1 > /proc/fandrv
rmmod fandrv
kill -INT `pidof fanctld`
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop}" >&2
exit 1
;;
esac
exit 0
/etc/init.d/fanctldを自動起動するようにする。
# update-rc.d fanctld defaults
GLAN TANKファン&HDD停止のまとめではHDL-GXシリーズの新しいファームウェアアップデートに含まれているusbhdmngで、GLAN TANKのファンもHDDも自動停止することに成功しているようなです。
とりあえずこんな感じで運用してますが、Internet Security Barrier X4のPersonal Backup X4を使ってAppleTalk経由で同期などをすると、すでに同期したはずのファイルも再度同期されてしまって困っていたり。。。これも解決方法をご存知でしたら教えてください。
> SSHでのrootログインを禁止。/etc/ssh/sshd_configのPermitRootLoginをコメントアウト。
だけですとログイン可能になっていました。
PermitRootLogin no
にしたところログイン不可でした。
れおまるさん、
ご指摘ありがとうございます。
コメントアウトではなく、コメントを外すでしたね。