おいふぉりーのぶろぐ

きっと趣味のブログに違いないです!!

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

[玄箱T4]システムクロック誤差大によりNTPサーバーが同期しないことの対処

玄箱 T4 のシステムクロックの精度が悪いということは,前に調べて一応知っていたんだけど,”NTP サーバーを設定すれば問題ないだろう”と安直に考えていたのがマズかったようです.

まず,玄箱 T4 がどのくらいズレるのかというと,1 時間に 27 秒程度らしい.ちなみに 1 ヶ月に換算すると,
27 秒×24×30 = 19440 秒 = 5.4 時間
で,ちょっとシャレにならない.

このくらいズレがあると,NTP サーバーでもうまく同期できないらしく,ntpq -p で NTP サーバーの状態を確認しても,左側に同期中マーク"*"が付きませんでした.(前に設定したときは・・・"*"を見落としてました

対処方は伊藤氏が公開している kuro_nas_t4-mod.itb をダウンロードして,/boot ディレクトリにコピーし,オリジナルの kuro_nas_t4-mod.itb のかわりに uImage.buffalo へシンボリックリンクを作ります.
この辺をミスると玄箱が起動しなくなると思われるので,ちょっと注意です.kuro_nas_t4-mod.itb のオーナーはオリジナルと同じように root とし,パーミッションも 644 としました.

後は,再起動したら出来上がり.

情報を公開している伊藤氏に感謝☆です.


参考資料

伊藤氏の wiki LinkStation/TeraStation/玄箱/PPC/KURO-BOX/T4/SystemClock

スポンサーサイト
  1. 2010/09/01(水) 00:45:33|
  2. サーバー
  3. | トラックバック:0
  4. | コメント:0

[玄箱T4]ファイルサーバーSambaの設定

Sambaの設定をします.玄箱では,デフォルトでインストールされていて,サービスの起動の設定もされています.

1. Sambaのユーザーの追加

ホームディレクトリを Samba でアクセスできるようにするので,Linuxのアカウントを追加していないときは, adduser コマンドで次のようにユーザーを追加してください.

# adduser ユーザー名
Adding user `XXX' ...
Adding new group `XXX' (1000) ...
Adding new user `XXX' (1000) with group `XXX' ...
Creating home directory `/home/XXX' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for XXX
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

Samba のユーザーは Linux のアカウントとは別に管理されているそうなので,次のコマンドでユーザー名と,パスワードを設定します.

# smbpasswd -a ユーザー名
New SMB password:
Retype new SMB password:

2. 設定ファイル /etc/samba/smb.conf の編集

次のように設定ファイル /etc/samba/smb.conf を修正します.
・ワークグループ名(workgroup).
・ホスト名(netbios name).
・接続を許可するIPアドレス.ここでは,192.168.1. または 127. ではじまるIPアドレスのみ許可します.
・文字のエンコードの設定.玄箱では UTF-8,接続側 (Windows) では CP932とします. ・ホームディレクトリへの書き込みを許可します.

[global]
   workgroup = ワークグループ名
   netbios name = kurot4
   hosts allow = 192.168.1. 127.
   dos charset = CP932
   unix charset = UTF-8
   display charset = UTF-8

[homes]
   read only = no

testparm コマンド (testparam ではないことに注意!) で設定ファイルが正しいことを確認した後, Samba を再起動します.
# testparm /etc/samba/smb.conf
# /etc/init.d/samba restart

3. システム ロケールを日本語に変更

玄箱のシステムはデフォルトで日本語になっていないので,変更します.

# dpkg-reconfigure locales
実行すると,ncurses的な擬似GUI画面が出てくるので,"ja_JP.UTF-8 UTF-8"にチェックを付けて OK します.
さらに,システムのデフォルト ロケールの選択画面で,UTF-8を選択して OK します.

ここで設定したデフォルト ローケルは /etc/default/locale に書き込まれます.

このままだと,ターミナルではまだ日本語を使えないので,ホームディレクトリの設定ファイル .profile を次のように修正します.

#LANG=C
#LANGUAGE=C
LANG=ja_JP.UTF-8
LANGUAGE=ja_JP.UTF-8

使っている SSH クライアントも UTF-8 を選択します.私は PuTTYjp を使っていますが,[ウィンドウ]-[変換]の文字コードの変換の設定を, EUC-jp から UTF-8 に変更します.

参考資料

1. ももすけさんのマイノート
2. Sambaの基本設定 - Homeserver on Vine Linux
3. Sambaの設定 | Samba講座 [Smart]
4. 第08回 「ロケールを正しく設定する」 - LANDISK HACKING DIARY

  1. 2010/06/28(月) 02:02:26|
  2. サーバー
  3. | トラックバック:0
  4. | コメント:0

[玄箱T4]RAID1を構築する

玄箱T4でRAID1(ミラーリング)を構築します.玄箱では,Linuxカーネルのソフトウェア RAID ドライバを利用します.とりあえず,エラーが出ているHDDも使いまわすことにします.金銭的余裕が出来たら,2TBのハードディスクに置き換えようかなと.

1. ハードウェアの準備

まず,ハードウェアの方ですが,現在1番のケーブルにのみHDDを接続し,Linuxをブートしている状態です.2番のケーブルにもHDDを接続します.玄箱T4は,4台までHDDを取り付けられるスペースがあるので,隙間のあるうちは,より熱がこもりにくいように,1番と3番の場所にHDDを取り付けました.

さて,色々設定をする前に,玄箱ではGPTというパーティションテーブルを使用していること,パーティションは fdisk でなはく parted で編集することを頭に入れておきましょう.基本的な設定の流れは,ももすけさんのマイノートを参考にさせていただきました.

2. parted のバグの対処

最初にパーティションの設定をしなければならないわけですが,どうも玄箱にインストールされている parted は,バグ持ちらく,アサーションが発生することがあります.そのとき "Ignore/Cancel?" で "i" を入力して無視すれば一応使えるようですが,気持ち悪いので修正します.この問題に関しては,sahd さんが"PowerPC上のpartedでGPTを使ってる場合に遭遇する事象に対処 - 個人的まとめ@RentalWiki"で対処法を公開されているそうなのですが,リンクが切れていたので,【玄箱】疑問・質問・雑談用スレッドの57番に張っていただいたリンクから,次の2つのファイルをダウンロードしました.

libparted1.8-10_1.8.8.git.2008.03.24-11.2_powerpc.deb
parted_1.8.8.git.2008.03.24-11.2_powerpc.deb

これらのファイルをインストールします.これで,アサーションは発生しなくなりました.
# dpkg -i libparted1.8-10_1.8.8.git.2008.03.24-11.2_powerpc.deb
# dpkg -i parted_1.8.8.git.2008.03.24-11.2_powerpc.deb

3. parted によるパーティションの設定

気をとりなおして,パーティションを設定します.まずは,ブートしているHDD(/dev/sda)を設定します.玄箱のインストーラは,先頭の 7.6GB に, /boot, /(ルートディレクトリ), swapの3つのパーティションを作成するようで,残りの部分(7680MB以降)を割り当て,RAIDフラグをセットします.

# parted /dev/sda
(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? 7680
End? -1
(parted) set 4 raid on
(parted) quit

次に,追加したHDDのパーティションを /dev/sda と同様に切ります.
※/boot,/(ルートディレクトリ)はミラーリングしません.

# parted /dev/sdb
(parted) mklabel gpt

(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? 17.4kB
End? 512MB

(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? 512MB
End? 5632MB

(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? 5632MB
End? 7680MB

(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? 7680MB
End? -1

(parted) set 4 raid on
(parted) quit

4. パーティションの確認

# parted /dev/sda print
Model: ATA Hitachi HDS72161 (scsi)
Disk /dev/sda: 165GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name   Flags
 1      17.4kB  512MB   512MB   ext3         /boot
 2      512MB   5632MB  5120MB  ext3         /
 3      5632MB  7680MB  2048MB  linux-swap   swap
 4      7680MB  165GB   157GB                       raid

# parted /dev/sdb print
Model: ATA Hitachi HDS72161 (scsi)
Disk /dev/sdb: 165GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      17.4kB  512MB   512MB
 2      512MB   5632MB  5120MB
 3      5632MB  7680MB  2048MB  linux-swap
 4      7680MB  165GB   157GB                      raid

5. ソフトウェア RAIDの構築

まず,ソフトウェア RAID の管理ツールをインストールします.
# apt-get install mdadm

/dev/sda4 と /dev/sdb4 をミラーリングした /dev/md0 デバイスを作成します.
# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sd[ab]4

ブート時にミラーリングが有効になるようにします.
# mdadm --detail --scan >> /etc/mdadm/mdadm.conf

ちなみに,mdadm --detail --scanの出力は次のようになっているようです.
# mdadm --detail --scan
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=d9fb001e:3d3d6ecc:80cf0a07:b18219cf

作成した /dev/md0 を ext3 でフォーマットします.このとき,予約ブロックを 1% に設定して,多くの容量を利用できるようにします.
# mkfs.ext3 -m 1 /dev/md0

6. ホームディレクトリへのマウント

/home にミラーリングしたデバイス /dev/md0 をマウントして使うことにします.

一時的に,/mnt/tmp に仮マウントし,ホームディレクトリの内容をコピーします.
# mkdir /mnt/tmp
# mount /dev/md0 /mnt/tmp
# rsync -av /home/ /mnt/tmp/
# umount /mnt/tmp
# rmdir /mnt/tmp

ブート時に自動でマウントされるように,/etc/fstab に次の内容を追加します.
/dev/md0 /home ext3 defaults 0 0

7. マウントの確認

再起動し,
# mount
を実行した結果に,
/dev/md0 on /home type ext3 (rw)
という行があることを確認します.でけぇたぁ-.

参考資料

1) GUIDパーティションテーブル - Wikipedia
2) ももすけさんのマイノート
3) GNU Partedの使い方
4) GNU parted - Parted User's Manual
5) MDADM man page
6) Linuxファイルシステムを最適化する - SourceForge.JP Magazine
7) HDDを2台追加してRAID 1を構成するには - @IT

  1. 2010/06/26(土) 12:39:03|
  2. サーバー
  3. | トラックバック:0
  4. | コメント:1

[玄箱T4]ネットワークの設定とかNTPとか(せんせーっ!viエディタの使い方がわかりませーん)

1. よく使うコマンドのインストール

引き続き玄箱T4の設定です.最初に,よく使うコマンドを追加しました.

テキストファイルのビューアーのインストール.設定ファイルを見るのに便利.
# apt-get install less

ファイルを効率よくコピーできるツール?
# apt-get install rsync

2. vi エディタの使い方

次に,設定ファイルを編集するための vi エディタの使い方の復習です.vi エディタには,「コマンドモード」と「入力モード」があって,ESC キーで「コマンドモード」に移行します.

最低限覚えておいたほうがよさそうなコマンドをメモしておきます.

:q終了
:q!強制終了(内容を保存しない)
:wファイルに書き込み
iカーソルに左から入力開始(入力モードに移行)
o現在の行の下に1行挿入し,その行頭から入力開始(入力モードに移行)
xカーソル上の1文字を削除
Xカーソルの左の1文字を削除

カーソルは「コマンドモード」中にのみ矢印キーで移動できる.

3. IPアドレスの固定

長い前置きでしたが,ここから設定の続きです.玄箱はデフォルトで,IPアドレスをDHCPで取得するようになっていますが,固定IPに変更します.後々のルータの設定で,静的NATを利用するので,IPアドレスを固定しておきます.

設定ファイル /etc/network/interface の iface eth0 inet dhcp の行をコメントアウトして次のように書き換えます.ここでは,玄箱のプライベートアドレスを 192.168.1.XXX,デフォルトゲートウェイを 192.168.1.1 としています.

#iface eth0 inet dhcp
iface eth0 inet static
  address 192.168.1.XXX
  netmask 255.255.255.0
  gateway 192.168.1.1

再起動して,IPアドレスが 192.168.1.XXX になっていることを確認します.
# ifconfig

4. ネットワークタイムサーバー(NTP)の導入

玄箱はシステムクロックがずれるようなので,NTP を導入して対処します.

NTP サーバーをインストールします.
# apt-get install ntp

設定ファイル /etc/ntp.conf を編集して,次のように問い合わせるサーバーを書き換えます.できるだけ,公開されているサーバーのうち,物理距離が近いサーバーを選びました.サーバーの指定は DNS の名前解決が発生しないように,ドメイン名ではなく IP アドレスで指定したほうが良いらしいです.

(P.S. 普通はこれで正しく同期できますが,玄箱 T4 の場合はシステムクロックの誤差が大きすぎるために,NTP が同期しないということが発覚しました.システムクロック誤差の対処を先にする必要があります.
あと,個人サーバーで Stratum1 (第1階層サーバー) に負荷をかけるなということで,上位サーバーの指定をプロバイダで提供しているサーバーに変更しました.サーバー名の後ろに iburst を付けると同期が早くなるらしい?です.dynamic はなんだろ?)

#server 0.debian.pool.ntp.org iburst dynamic
#server 1.debian.pool.ntp.org iburst dynamic
#server 2.debian.pool.ntp.org iburst dynamic
#server 3.debian.pool.ntp.org iburst dynamic
server 130.34.11.117
server 130.34.48.32
ntp1.plala.or.jp iburst dynamic
ntp2.plala.or.jp iburst dynamic

NTP サーバーを再起動します.
# /etc/init.d/ntp restart

NTP サーバーの動作確認をします./etc/ntp.conf で設定したサーバーが表示されるはずです.
# ntpq -p

参考資料

1) vi コマンドリファレンス
2) NTPサーバーによる時刻同期
3) NTPサーバー一覧

  1. 2010/06/26(土) 04:17:07|
  2. サーバー
  3. | トラックバック:0
  4. | コメント:0

不良セクタを代替セクタに置き換えたハードディスクをつかっていいものやら

日曜の19:00ごろからはじめた Drive Fitness Test での Erase Disk(物理フォーマット)が,今日(昨日か?)帰ってきたらやっと終わっていました.160GBのハードディスクですけど,ほんとに時間かかるなー.念のため Advanced Test も実行して,不良セクタが検出されないことも確認しました.

さ~て,このハードディスクをサーバー構築に使うべきか使わざるべきか.とりあえず練習として使ってみて,そのうち金銭的余裕が出来たら,置き換えようか.

  1. 2010/06/15(火) 01:45:27|
  2. サーバー
  3. | トラックバック:0
  4. | コメント:1
次のページ

来客数

プロフィール

Euphorie

Author:Euphorie
"おいふぉりー"って呼んでくださいな☆
ハードウェアとかソフトウェアとかの開発に興味があったり。。。
連絡先は上の画像。

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。