「BitTorrent Sync」で「Owncloud」を置き換え

同期が遅いOwncloud 、なんとかならんか・・・

以前からDropboxに変わる環境としてOwncloudを自宅サーバに構築し、デスクトップPCとノートPCの「ドキュメント」フォルダを同期させたりなどなど、主に複数端末のフォルダの同期を目的に使ってきました。

やはり、Dropboxのような人様のサーバに大事なファイルを置くことに不安・抵抗があり、Owncloudであれば、それに対しては多少なりとも安心感があります。

ところが、Owncloudは同期が遅い。大変に遅いです。

ファイルやりとりに「webdav」を利用しており、ファイル一個を同期するたびにセッションを起こしているらしく。

1分間に5個くらいしか進みません。同期にかかる時間は、ファイルの容量ではなくファイル数で効いてきます。

例えば先日、訳あって、マイドキュメントのフォルダを再同期する必要があり、Owncloud上のデータを削除し、ローカルPCから再度同期をかけました。なんと、これに要した時間、丸三日以上です。

  • ファイル数 : 18331
  • フォルダ数 : 3586
  • 容量 : 18.5GB
  • Owncloudサーバとの同期時間 : 丸三日以上

もう一つ、私は「紙copi」というHPの取り込みソフトを使っています。これはHPをローカルのHDに綺麗に取り込んでくれるソフトですが、保存先のフォルダをOwncloudで共有しています。(→参考記事:紙copiが復活。紙copi 3。Evernoteから紙copiへの移行にトライしてみた。
ところがHPによっては、1枚で細かい部品含め100個近くのファイルで構成されることもあり、その場合owncloud同期に10分くらいかかってしまうことがあります。

これだけ遅いと、複数同時に更新をかけた場合のコンフリクトも起こりやすくなりますし、ちょっと、実用上厳しいな~と思っていました。

これ、もちろん、LAN(Gigabit Ether) 接続の話です。

 

BitTorrent Sync というソフトがあった! ファイル同期が超高速

そんな折、ネットサーフィンをしていると、BitTorrent Syncなるソフトを発見しました。

サーバ不要で、インターネットに接続さえしていれば、ピアツーピア(P2P)で特定フォルダのファイル同期が簡単にできてしまうというソフトです。

複数の端末で共有することも可能です。

フリーで公開されていましたので、早速試したところ、

  • 導入超簡単!
  • マルチプラットフォーム対応 (Windows、Mac、iPhone、Android、WindowsPhone、Linux)
  • 同期、転送が超高速 (Owncloud比)

前出のドキュメントフォルダをLAN内で同期したところ、数十分で同期が完了しました。
これは、「たまらん」くらい魅力的な速さです。
開発者も転送速度含めて同期の速度にはこだわって開発しているようです。

Owncloudは、デバイス間のファイル同期の機能もありますが、webアクセス(ブラウザ)のインターフェースもあり、全く同じ機能というわけではありませんが、私の利用目的がデバイス間のファイル同期であることを考えると、Owncloudからの「乗り換え」を考えるに十分です。

このソフト、昨年前半にはいろんなところで紹介されていたんですね。全く知りませんでした。

 

BitTorrent Syncとは

BitTorrent Syncとは、特定のユーザ間のみでファイル共有できるソフトなんですが、これをBitTorrentの技術を使って実現しています。

詳しくはこちら→ メインページ動作のしくみ技術仕様

参考記事: GigaZine 「PC同士を直接同期し巨大ファイルも高速転送できるソフト「BitTorrent Sync」」

ポイントを簡単に。

  • サーバが不要です。P2Pで共有・同期します。
  • 同期対象のデバイスは2台に限らず、何台でもOK。
  • アカウント管理も不要(というか、無い)。フォルダ毎に共通秘密鍵を設定し、それを各デバイスに設定するだけ。
  • キーは、「読み取り専用キー」「読み書き可能キー」の2種類です。いずれも20文字。
    • 読み取り専用は「片方向」、読み書き可能は「双方向」、の同期と理解できます。
  • 同期時には、その端末同士が同時にネットに接続している必要があります。
  • HTTPプロトコルを使用するので、ルータからは通常のwebアクセスに見えます。UPnPを使用するので、(UPnPが有効なら)FWの設定変更は不要です。
  • マルチプラットフォーム対応 (Windows、Mac、iPhone、Android、WindowsPhone、Linux)

Owncloudでは、同期させたいフォルダをサーバ上に全て設置し、必要に応じてデバイス側から同期したいフォルダを選択し、サーバに接続して同期をしていました。

BitTorrentSyncでは、そもそもサーバの概念がなく、同期をしたいフォルダ・ファイルを持っているデバイスから、同期が必要なデバイスへ直接同期をかけることになります。

デバイス同士で直接、です。

デバイス間のファイル同期を目的としている私としては、Owncloudの置き換え可能なツールとなります。

 

Owncloudと置き換えは可能か?

Owncloudにあって、BitTorrent Syncに無いものを挙げます。

共有フォルダへのwebアクセス画面

OwncloudにはDropbox同様、webアクセスのUIが用意されています。

OwncloudのWeb画面

OwncloudのWeb画面

ファイルをサーバに置いたまま、必要なファイルを探して閲覧したり、サーバ上に置いたまま編集したりと、シンクライアント的な使い方ができます。

プラグインを追加すれば、pdfやMS-Officeのファイルを閲覧・編集したり、ブラウザベースで何でもできてしまう環境を指向できます。

住所録、カレンダー、ニュース等

他にも、以下のようなサービスもあります。

Owncloudの提供サービス。総合ポータルを指向してる?

Owncloudの提供サービス。Dropboxだけでなく、Googleのサービスの置き換えを指向してる?

Googleの各種サービスの置き換えを意識しているようにも思います。

これらの機能は、Owncloudを使うユーザアカウントの存在がベースにあるので、共有・同期機能に特化したBitTorrent Syncにはありません。

 

結論:ファイル同期機能しか使っていないので、置き換え可能(私の場合)

Owncloudを置き換えた場合、上記の機能が使えなくなります。

私自身は、webアクセスのUIを使うことはほとんど無く、もっぱらファイル同期機能しか使っていませんので、十分置き換え可能です。

ただし、OwncloudのwebUIの可能性の検証は続けたいので、何らかの形で共存する方法も考えてみます。

 

常時同期をさせるには、常時ONの「サーバ」はあった方がよい

BitTorrent Syncはサーバ不要ですが、同期するデバイスが同時にネットにアクセスできないと同期ができないため、すれ違いでファイル同期ができない場合があります。常時ネットに接続しているデバイスがあれば、このすれ違いは回避できます。

ですので、置き換えにあたっては、サーバ的に振る舞う、常時接続・常時電源ONのデバイスを一個設けることにします。

Linux用のBitTorrent Syncアプリ(btsync)がありますので、これを自宅サーバ上で常時起動させればOKです。

WebUIを持っていますので、他のWindowsPCと同様の操作感で操作できます。WebUI用のTCPポート(デフォルト8888)はFWを空けておく必要があります。

Linux版BitTorrent SyncのwebUI画面。Windows版と変わりません。

Linux版BitTorrent SyncのwebUI画面。Windows版と変わりません。

btsyncの常時起動にあたっては、起動権限を一般ユーザにするなど、Linux的な一般的なセキュリティ条件は考慮が必要です。

 

導入

Owncloudのクライアントソフトを起動しないか、同期停止にする

いきなり、Owncloudで共有対象にしているフォルダの置き換えをトライしましたので、Owncloudのクライアントは停止させました。BitTorrent Syncとowncloudの2系統で同期をすれば、当然混乱すると思います。

各デバイスにBitTorrent Syncをインストール

私の場合、これまでowncloudで同期を取っていたデバイスは、デスクトップPC、ノートPC、スマートフォン、自宅サーバ上のitunes専用サーバ、eye-fi連動サーバの5台でしたので、各デバイスにBittorrent Syncアプリをインストールします。

また、前述のとおり、常時起動サーバ(Linux)にもインストールします。

各デバイスにおいて、自動起動するよう、適宜設定します。Linux版以外は、アプリの設定項目の中に「自動起動」のチェックがありますので、それでOK。
Linux版は、init.dに起動スクリプトを書くなど、多少手間が必要です。

共有対象のフォルダのキーを、適宜交換する

共有する対象のフォルダごとに、キーを発行し、共有先のデバイスに設定します。

最初のオリジナルのフォルダのあるデバイスを決め、そこで共有フォルダを設定し、そこで出てくるキーを、うまいこと各デバイスに送って貼り付けることになります。

スマホの場合は画面に出てくる2次元バーコードをBitTorrentSyncで写真に撮ると、キーを取り込んでくれます。詳しくは他の紹介記事に譲ります。

完了、同期開始

ということで、同期を開始したところ、数MB/sの速度で転送が始まりました。数時間後、同期が完了。

極めてあっさりと、owncloudで構築していたファイル同期環境を置き換えることができました。

1万個以上のファイルを持ったフォルダが2,3ありましたが、2,3時間後には全て同期が完了していました。

ファイル数をチェックしましたが、全て揃っていました。

 

各デバイスのBitTorrentSync管理画面を開いて目視した状態で、あるデバイスのフォルダにファイルを新規作成してみました。

作成直後、各デバイスの管理画面に送受信の印が現れ、あっという間に全デバイスに伝達されました。なんか、いかにもP2Pという風情です。

 

※注意点: 最初の同期設定時、同期先フォルダは空っぽがよいようです。

キーをコピーして共有設定する先のフォルダに、オリジナルと同名のファイルがある場合、最初の同期がいつまでも終わらない場合がありました。一部のファイルについて、アップロードとダウンロードを延々と繰り返してしまいます。

最初に共有設定する場合は、共有先のフォルダはまずは空っぽにしておいた方がよいようです。同期先にしか無いファイルがある場合は、いったん待避しておいて、初期同期が完了して落ち着いた後に、同期フォルダに放り込むのがよいと思います。

 

OwncloudのwebUIを活かす(BitTorrent SyncとOwncloudの連動)

半日で、Owncloud環境の置き換えが完了してしまいました。が、OwnlcoudのwebUIから見れると便利なフォルダがあるにはあるため、owncloudとの共存を考えます。

Owncloudのコンテンツディレクトリを直接覗くのはムズい

Owncloudの共有フォルダの実体は、webサーバのコンテンツディレクトリ内にあります。

パーミッションがwebサーバ用に合わせてあることと、暗号化していれば直接アクセスしても中身が見えないこと、仕組みはよく理解していませんが、MySQL等DBMSとも連動しているため、btsyncから直接覗いてファイルをいじるには、少しハードルが高いようです。

Owncloudの外部ストレージ共有機能を使う

Ownlcoudには、外部ストレージをマウントする機能があり、Sambaもサポートしています。こいつを使います。

btsyncの共有フォルダを、直接Sambaで共有
  ↓
Owncloud外部ストレージ機能でマウント

OwncloudのwebUIで閲覧

常時起動のbtsyncを起動しているLinuxサーバに、sambaを導入するわけです。

 

これを実行したところ、あっさり連動できました。

私の場合はOwncloud側からは閲覧専用としたかったため、sambaの共有を読み取り専用にしてOwncloudからアクセスさせました。

sambaの設定を「読み書き許可」にすれば、Owncloud側からの追加・変更・削除もできるようになると思います。

 

今回はこんなところで。

拙宅自宅サーバのドメイン運用環境

ブログのドメイン取得から1年

このブログを開設したのが昨年9月で、間もなく1年を迎えます。

開設とほぼ同時にドメイン(yattemiru.pw)も1年間取得し、更新期限の到来を告げるメールが届きました。

早速更新しましたが、ついでに拙宅ブログサーバのドメイン運用環境や維持費をご紹介します。

格安に抑える方法を検討した結果ですので、少しはお役に立てるのではないかと思います。

medium_14372046244

環境と費用

ドメインのレジストラ : みんなのドメイン

yattemiru.pwの年間維持費は850円です。

業界最安かどうかは確認していませんが、最低価格の域だと思います。

プライマリDNSサーバ : 自宅サーバ(フレッツ+固定IP)

セカンダリDNSサーバ : マイハマネット

マイハマネットは無料です。マイハマネットの運用主様が、個人のボランティアとして運用してくださっています。

自宅サーバでDNSサーバを立ち上げる場合、1台1回線が普通ですので、セカンダリDNSサーバがネックになります。これを無料で引き受けていただけます。

以上で、年間850円でドメインを維持できます。要は、ドメイン更新費のみです。(電気料や回線費は別ですが)

数年前まで、別のドメインを10年以上「お名前.com」で維持していました。

.comで2年目以降が3000円/年以上と随分高かったため、こちらに乗り換えました。

お名前.comは巧妙なキャンペーン価格で安く見えましたが、更新し続けていると随分高くなります。現在はもっと安くなっているかも知れませんが、露骨なご新規様優遇の料金体系に不信感を持ってしまいましたので、今後も使おうとは思いません。

 

プライマリDNSサーバも外部で運用する場合

拙宅の環境は、プライマリDNSサーバは自宅サーバとしていますが、プライマリサーバも外部運用する場合でも、無料で利用する方法があります。

MyDNS

ダイナミックDNSサービスですが、固定IPの運用も可能になっています。プライマリもセカンダリもまとめてお任せ可能です。

IPアドレスの通知方法がHTTPやメールなど様々な手段が準備されていたり、ドメイン情報の登録も細やかにできるようUIが工夫されていたりして、大変使いやすいです。

こちらも無料で利用できます。私もしばらくお世話になっていましたが、自分でDNSサーバ運用することにしましたので、いまは利用していません。

 

というわけで、自宅サーバで独自ドメインを運用されている方のご参考になればと思います。

紙copiが復活。紙copi 3。Evernoteから紙copiへの移行にトライしてみた。

紙copiは優れたHPスクラップ、資料管理ソフト。Evernoteより直感的。

復活という表現が正しいかどうかわかりませんが、10年以上アップデートのなかった紙copiが、先月アップデートされていました。

今回のアップデートは、取り込み機能の強化、Dropbox連携機能追加というところのようです。

記事 : 「紙copi」5年ぶりメジャーアップデート Dropbox連携、Windows 8.1対応

 

たしか最初の登場は前世紀だったと思いますが、ほぼ登場時期からずっと愛用していたHPのスクラップソフトです。

大変お世話になったソフトなので、復活は嬉しいニュースです。Evernoteなんぞに負けず、日本のソフトパワーを見せつけてほしいものです。

12022c334c73987394414e8daa9160e3

紙ラボ。無料お試し30日です。

東京新聞をキャプチャしたところ

東京新聞をキャプチャしたところ

スクラップの正確さがすばらしかった。ほとんどのページを崩れることなく取り込んでくれました。

スクラップしたHPを「紙」として、また、それらを「箱」という概念で分類して管理するコンセプトがユニークで、私には直感的に理解できました。

テキストファイルのメモも作成できます。いちいち「新規作成」とか「ファイル名をつける」などという回りくどい行為なしに、いきなりメモを起こせるのです。

作成したテキストファイルも「紙」として管理できます。

他にも、pdf、ppt等のビューワも内蔵しています。

私自身は、類似機能をもつEvernoteのノート管理より、直感的でわかりやすいと思います。

詳しくはこちら。

紙copiがネットやスマホへの対応が不十分なまま、発展が止まってしまったために、私は数年前にEvernoteに乗り換えてしまいました。

Eye-Fi(デジカメ)から自宅サーバのOwncloudへ自動転送する

Eye-Fiはものすごく便利なのだけど

Eye-FiはカメラにSDカードとして装着したまま、Wi-Fi経由で写真を自動で転送してくれる、大変便利なアイテムです。
写真を撮影したあと、SDカードをいちいち抜き差ししなくても、気づいたらPCのフォルダの中にその写真ファイルが入っているという、何とも快適なものです。

自宅サーバに立ち上げているOwncloudにEye-Fiから自動転送できると、さらによいのですが、後述する理由から叶いません。Owncloudは、簡単に言うと自前版Dropboxです。無償で自宅サーバにインストールして構築できます。
Dropboxが使用容量が増えるごとに料金が増えるのに比べ、自前のサーバのHDDの容量が許す限り無制限に好きなように使うことができます。(テラバイト使っても料金不要!)

自宅サーバにOwncloud環境を整えてからは、Dropboxから完全移行し、自前のストレージをデスクトップPCやスマホから利用しています。

実際便利なEye-Fiですが、サービス上の制限がいくつかあります。

  • デジカメから写真を転送する場合、必ずEye-Fiの用意したサーバに一度吸い上げ、ここを経由して手元のPCかオンラインサービスに転送される
    (転送先はEye-Fiの裁量で決められてしまうってことです)
  • 転送先のPCは、Eye-Fiマネージャが動作しているものに限られる(windowsかmac)
  • 転送先のPCは、1台だけ
  • PCを転送先に設定するときに、そのPCのUSBポートに、Eye-Fiカードを挿しておかなければならない
  • Eye-Fiサーバの転送先にオンラインサービスを選べるが、多くが有償サービス。Owncloudは無い。

今の環境では、WindowsのデスクトップPCにEye-Fiマネージャをインストールしていて、ここにデジカメの写真が転送されてきます。転送されてきた写真は、さらにOwncloudクライアントからOwncloudサーバに自動で転送されます。

ですが、このデスクトップPCの電源が入っていないときは、Owncloudに反映されません。

eye-fi

手元PCの電源On/Offに関わらず、「写真撮影→即、Owncloudに反映」する環境を整えるのが今回の目標です。

2TBのHDD(WesternDigital WD20EARS)のRMA交換の顛末

RMA申請から交換品受け取りまで

この記事は、WesternDigitalのHDDの故障・RMA申請から、代替品受け取りまでの経過と手順を記しています。large_6034381675

  • 故障・保証確認
  • RMA申請から発送まで
  • EMS追跡サイトで荷物の追跡
  • WDからの発送の確認と荷物の追跡
  • 代替品到着・受け取り

こんな流れを紹介します。

結果だけ先に書くと、

交換所要時間: 発送→代替品到着:10/16(水)→10/25(金)の9日間。

交換物品: 2TB→3TBへのグレードアップ。

負担送料: 送りの1,800円。

故障品。 WD20EARS。2TB S-ATA。

故障品。
WD20EARS。2TB S-ATA。

代替交換品。 WD30EZRX。 3TBにグレードアップです。^^

代替交換品。
WD30EZRX。
3TBにグレードアップです。^^

 

HDD交換往復8000kmの旅、でした。

8000kmの旅

続きを読む

自宅サーバ メール配送遅延・不達問題(後に解決)

システム用のHDDにトラブルが出て対処中にもかかわらず、新たなトラブルが出ました。

ある日突然、自宅サーバからいくつかのドメインに、メールを配送できなくなりました。

心当たり不明。スパム対策(S25Rなど)も行っているので、なぜそんなことに・・・

 #2013/10/23追記:

大変初歩的なミスが原因とわかりました。メールサーバはドメインのマスターのネームサーバも兼ねているのですが、ネームサーバのIPアドレスが変わったにもかかわらず、レジストラのネームサーバIPアドレスを変更し忘れていました。

タイミングによっては、違うIPアドレスでありながら、勝手にマスターサーバを名乗って詐称していたことになっていたわけです。そんなサーバからの接続、拒否されても当然です。

固定IPアドレスをそれほど頻繁に変えるわけではないために、その作業をすることを忘れていました・・・

レジストラの登録情報を変更したあと、メールを拒否される事象は発生していません。

 

とりあえず、ブラックリストに登録されていないか調べてみた

Blacklistalert.org

自宅のメールサーバはブラックリストには登録されて無さそう

自宅のメールサーバはブラックリストには登録されて無さそう

見たところ、ブラックリストの線はシロのようです。

他に、rbl.jpでも検索しましたが、シロでした。

キューが溜まってないか見てみた

mailqでメールの配送待ちがないか見てみたところ(mailq)、通常、溜まっているメールなんてないのに、「9通も!」溜まっていました。

溜まっている原因はどれも、

  • conversation timed out
  • lost connection while EHLO handshake
  • refused to talk to me

のどれかでした。相手サーバから「拒否」されたか、「シカト」されたってことのようです。

postfix flush

で、溜まったキューの強制配送をしてログを監視していましたが、案の定、2通は上記3つのメッセージのオンパレードでした。
2通は受け付けてくれて送れたみたいです。

 

拒否されている相手は、携帯3社(docomo.ne.jp,softbank.jp,ezweb.ne.jp)、複数のプロバイダのドメインのメールサーバでした。

同時に拒否されるってことは、これらプロバイダや携帯キャリアが共通に参照しているDBがあって、そこに登録されてしまった可能性が高いと思いますが・・・それがなんなのか、見つけられませんでした。

結局、グローバルIPアドレスを変更した。回復した。

結局、最後の策としてあまりやりたくありませんでしたが、自宅サーバに割り当てられているグローバルIPアドレスを変更してみることにしました。

現在利用しているプロバイダと(固定IPを安価に提供していて、申込み即日接続可)、追加の接続契約を結んで、新たなIPアドレスの払い出しを受けることにしました。並行運用期間を終えたら、現在の契約は解除することになります。1ヶ月程度の二重課金を覚悟しての対策です。

申込みはすんなり完了し、フレッツPPPoE用の新接続IDとともに、新IPアドレスが届きました。

HGWに新セッション情報を登録し、自宅サーバが新セッションからインターネットに出るよう設定し、新セッションと旧セッション両方からの通信が受信できるようIPマスカレードの設定を行いました。

 

この状態まで持って行ったところで、メールキューを強制配信(postfix flush)をしたところ、全部一気に配信が完了しました。便○解消!って感じ。

やっぱり、何かのきっかけでスパムサーバ扱いされていたのだと思います。
IPアドレスを変更しただけで回復したことから、スパム登録の対象はIPアドレスのみで、ドメイン名は拒否対象ではなかったようです。

結局なぜこんなことになったのか、理由はよくわかりませんが、この後メールサーバのスパム対策を強化(taRgrey)しました。結構いい感じになりましたが、これはまた後日。

自宅サーバのシステムHDDセクタ異常発生につき、交換! 2TB→3TB LVM使用 fdisk→parted その3

前回の続き。

結果的にはシステムドライブは移行成功(MBR→GPT)

Linuxの自宅サーバの、システムとして使っているHDDがセクタ異常を出し始めたため、応急処置の上、HDDを交換することにしました。

ところが、旧HDDは2TBのMBR形式(fdisk)、新HDDは3TBのGPT形式に変更しなければならず、BIOSからGPTディスクを起動するという私にとっては未知の領域に挑戦することになってしまいました。

新HDDを2TBディスクとしてMBR形式で使えば、悩む必要も無いのですが、そういう野暮な使い方は私の感性が許しませんでした。

BIOSからGPTディスクのLinuxを起動する方法が、「なんとなくできそう」というところまではわかったものの、なぜうまく起動できるのか理屈が理解できておらず、今ひとつ確信が持てませんでした。

以上が前回までの経緯。

 

その後も調査を続けましたが、いつまで経っても核心持てる情報にたどり着かないので、強行しちゃいました。

結論から言うと、うまいことHDDを旧→新、移行できましたが、grubまわりで手間取り、1時間ほどサーバを停止してしまいました。

応急処置で、197 Current_Pending_Sectorが、1→0になっていましたが、
移行作業完了後、3に増えていました。やっぱり早めの対処が必須です。恐ろしい・・・(汗)

作業概要

大まかに、以下の手順で作業を進めました。

  1. 新HDDのパーティションを切る、pvを作る
    • bios_grubパーティションを作成
    • bootパーティションを作成
    • 残りをlvm用として、50GB~100GB単位で切りまくる
    • lvm用のパーティションに対してpvcreate
  2. lvmを利用してドライブのデータを新HDDに移動する
    • vgextend でVGに新HDDのPVを追加
    • pvmove で旧HDDのPVから新HDDのPVにデータを逃がす
    • vgreduce で旧HDDのPVをVGから除外する
    • 以上を旧HDDのPVの数だけ繰り返し。
  3. 新HDDにgrubをインストール
  4. 新HDDのmenu.lst、fstabを調整する
  5. シャットダウンし、HDDのケーブルをつなぎ替え(新旧入れ替え)、電源投入
    • 旧HDDのケーブルを抜く
    • 新HDDに旧HDDにささっていたケーブルを挿す

すんなり書いていますが、実は、4をやらずに5をやったため、Linuxが起動せずかなり焦りました。

前提の環境

作業に当たっての前提条件は以下。

  • 自宅サーバのスペック:
    • OS : Vine Linux 6.1
    • CPU : Phenom2 x6 1065T
    • メモリ : 16GB
    • HD : 3TB x1 , 2TB x1 , 1TB x1 (システムドライブは2TB)
    • マザー:Giga-byte GA-880GA-UD3H Rev.2.2 (U-EFI非搭載)
  • 旧HDDの状態
    • デバイス名:/dev/sda
    • 容量:2TB
    • 領域確保の方式:MBR(fdisk)
      • /dev/sda1 :boot領域
      • /dev/sda2~15 :lvmで使用。root領域もlvm内。
  • 新HDDの状態
    • デバイス名:/dev/sdd
    • 容量:3TB
    • 領域確保の方式:GPT(parted)
      • /dev/sdd1 :bios_grub領域
      • /dev/sdd2 :boot領域
      • /dev/sdd3~34 :lvmで使用。旧HDDのVGを移行する。

といったところ。

コマンド等含めた作業詳細は次回。(書く時間がなかなかとれない・・・)

自宅サーバのシステムHDDセクタ異常発生につき、交換! 2TB→3TB LVM使用 fdisk→parted その2

前回、システムドライブがセクタエラーを吐いたため、ドライブを交換することになり、交換用ドライブが届いた件の続きです。

3TBの容量を活かすには、MBR(fdisk)ではダメ。GPTです。

今回、何も考えずに購入した交換用HDD(Seagate ST3000DM001/N)は3TBの容量です。交換前の現システムドライブは2TB。

KURODACHI」で2TB→3TBにハードコピーして、あとから領域拡張して終わることを目論んでいましたが、そうは問屋が卸さなかった。

2TBの現HDDで使っている、MBR形式(正しくは、MBR領域の情報でパーティション管理する形式)では2TB以上の容量を確保できず、捨てることになります。すっかり忘れていました。
データ用3TBドライブを既に所有していて、GPTで領域を切って運用しているというのに!(歳には勝てん)

2TBを越えるHDDを、無駄なく使用するには通常のfdiskでのMBR形式ではなく、より新しいGPT形式を使う必要があります。私のVineLinuxでは、コマンドラインの管理ツールはparted。

MBRからGPTに移行する必要があるため、「KURODACHI」は使えません

データディスクとして使う分にはpartedの使い方を調べて、領域確保してmkfsすれば普通通りに使えるのですが、今回はブートドライブとして使うため、私としては知識不足。調査が必要でした。

 MBRとGPTでは扱える容量も違うが、ブート方法も違う

マシンが起動する最初の最初は、電源投入後にマザーボード搭載のBIOSが起動し、HDDのMBR(先頭セクタ)を読み出しにいき、起動が始まります。PCはすべて、そのルールの下に作られています。

PCのHDDは、1セクタの長さは512byteと決まっています。MBR領域はHDDの先頭1セクタです。要は、たった、512byteしか容量がありません。

今時の大容量かつ複雑なHDDの起動に必要な情報すべてを、ここに入れ込むことはできないため、MBRを読んだ後、特定の別の領域にジャンプして続きの情報をゲットさせるなど、つぎはぎだらけの拡張で何とかやってきました。

fdiskでプライマリパーティションが4つ、拡張しても15個しか作れないのは、この領域の狭さに起因しています。
また、最大利用できるディスク領域も2TBまでに制限されます。MBR形式ではディスクのセクタ数を32bitで扱っていることによる制限です。

 

GPTは、この仕組みを見直すもので、セクタを取り扱うアドレスも64bitとするなど、MBR形式の弱点を克服しています。また、起動時にMBR領域を使用しません。当然、MBR領域から起動することを想定して作られているBIOSでは、GPTディスクを素直に起動することはできず、U-EFIという仕組みで起動するようにしているのだそうです。

取り扱える領域は8ZB(ゼタバイト)、128個のプライマリパーティションを扱えます。私が生きている間は十分持ちそうです。

Windows系ではBIOS+GPTの組み合わせでは起動できず、U-EFIが搭載されたマザーボードでないと起動しないようです。

Linuxではどうやら、少しの工夫を加えることで、U-EFIを搭載していないBIOSのみのマザーボードでもGPTディスクから起動できる方法がありそうな感じです。

パーティションを切るときは、AFTも要考慮

また、この新HDDはパーティションを切るときに、AFTを考慮する必要があります。

AFTはAdvanced Format Technology。最近発売のHDDはほとんどこれに対応しているようです。

AFTは、HDD内部で1(物理)セクタ長を4096バイトと、従来(512バイト)の8倍の長さにしており、その分読み書きのオーバーヘッドが少なくなり、速度が上がることになります。また、HDDの外(PC本体)に対しては、従来通りの1セクタ512バイトのフリ(論理セクタ)をして命令やデータのやりとりをしています。HDDの物理セクタ長を大きくしながらも、それに対応しないPCにも合わせてあげることができます。

 

一方OSは、1セクタ512バイトとしてHDDを読み書きしながらも、効率化のため、ブロックやクラスタという単位で、複数の連続するセクタをひとまとめにして処理して効率化しています。Linuxならその単位はブロック(だいたい1ブロック=8セクタ=4096バイト)です。Windowsならクラスタ。

Linuxは、パーティションの開始(論理)セクタを起点にして、8(論理)セクタずつをブロックとするため、パーティションの開始位置が8セクタの倍数でないと、ブロックとHDD内部の物理セクタが互い違いになって、読み書きパフォーマンスが落ちることになります。

つまり、パーティションの開始セクタは必ず8の倍数セクタの位置にするよう、注意する必要があります。

自宅サーバはU-EFI非搭載。BIOSからGPTドライブを起動する特殊な方法が必要

拙宅の自宅サーバのスペックは以下。自宅サーバ外観。

  • OS : Vine Linux 6.1
  • CPU : Phenom2 x6 1065T
  • メモリ : 16GB
  • HD : 3TB x1 , 2TB x1 , 1TB x1 (システムドライブは2TB)
  • マザー:Giga-byte GA-880GA-UD3H Rev.2.2 (U-EFI非搭載)

BIOSでGPTディスクからLinuxを起動しなければならなくなります。 調べてみたところ、

ドライブの先頭から2TBの範囲内に、”bios-grub”フラグを付けた、1MB程度のパーティションを作れば、そこを介して起動できるようです。

ですが、もう少し調べてみないと、作業にかかれません。

次回へ続きます。

自宅サーバのシステムHDDセクタ異常発生につき、交換! 2TB→3TB LVM使用 fdisk→parted その1

先日の記事で報告したとおりまだ記事にはしていませんが、自宅サーバのシステムが入っているメインHDDがセクタエラーを出したため、念のためHDDを交換することにしました。

応急対処でエラーは出ていないんですが、この異常が出た後には同様の異常が頻発することが多いらしく、リスク回避をすることにしました。

#2013/10/11 朝10時 追記。
応急処置で、197 Current_Pending_Sectorが、1→0になっていましたが、

その後のHDD移行完了直後、3に増えていました
やっぱり197あたりが出始めたら、早めの対処が必須です。恐ろしい・・・(汗)

#2013/10/11 20時 追記。
197 Current_Pending_Sectorはその後、

  • 18時 に47個
  • 20時 で131個

に激増しています。まさに、「加速度的」。(大汗)
origin_4492113186

今回のHDD交換のポイント

  1. 2TBのMBRから、3TBのGPTへの移行交換。
  2. 旧ドライブに導入済みLVMを有効利用し、最大限のオンライン移行を試みる。
    物理的なHDD交換時以外はサーバを止めないことを目指す。

特に、2.に関しては、このブログを運用しているサーバでもあるので、できる限りオンラインで移行することを目指します。

ブログへのアクセスは大した数じゃないんですよ。ええ。
止まったからといって、影響は知れてますよ。はい。
大事なのは、気持ちですから。はい。
(ちなみに、10月に入ってからのアクセスは、50ページ/日くらいです。ロボット除く。)

交換用HDDが届いた

届いた新HDD。3TBです。 Seagate ST3000DM001/N。

届いた新HDD。3TBです。
Seagate ST3000DM001/N。

昨夜amazonに注文した、交換用の新HDDがさきほど届きました。

Seagate ST3000DM001/N です。10,781円。

  • 容量 : 3.0TB
  • インターフェース : SerialATA6.0Gbps
  • 回転数 : 7,200rpm
  • キャッシュ : 64MB

特にスペックにこだわりがあるわけでは無いんですが、お約束ということで。

もう2年間も売れ筋として名前と在庫が並ぶ

余談ですが、amazonの注文履歴を見てびっくり。この型番のHDD、今回で3台目の購入でした。それほど頻繁に買うものじゃないので、たいてい買うたびに新しいモデルが出ています。同じものを3台も買っていた印象がありませんでした。

  • 2012/3/25 14,780円
  • 2013/2/26 11,772円
  • 2013/10/9 10,781円

価格.comを見ると、発売が2011年11月です。既に発売から丸2年が経過しようとしているのに、売れ筋ランキング9位という高順位です。

現在のハイエンドクラスは4TBくらいで価格も高く、この容量は2番手ですが最もこなれた価格帯です。
以前と比べて、HDDの進化は鈍化したんでしょうかね。

3TBでも使い切れない量であることには変わりないんですが。

 

早速サーバをシャットダウン(1回目)し、HDDをサーバにセットし、念のため起動後以下のテストを実施。

smartctl -t long /dev/sdd

badblocks -vs -o sddbadblock /dev/sdd

どちらも異常セクタ、異常ブロック無しでした。

既に時間も遅くなったので、今日はここまでとします。

次の記事

Bフレッツ→フレッツ光ネクスト(マンションタイプ)の工事費節約技(東日本限定)

※H26/7/29追記:Bフレッツから光ネクストへ強制移行されたユーザのための、IPoE利用のための関連記事を起こしました。

※H25/11/6追記:調査不足でした。

NTT東日本は、7/25にBフレッツをフレッツ光ネクストに移行することを発表していました。
移行期間は2013年度4Q以降~2014年度中。NTT東日本都合によるサービス変更ですので、利用者が費用負担することはないのではないかと思います。

待つことができるなら、NTT東日本が自動的にフレッツ光ネクストに変更してくれるというわけです。
ただし、開始が「第4四半期以降」という表現なので、開始が遅れることも十分ありますし、終了は翌年度いっぱいを想定していますので、遅ければ1年以上あとになってしまう可能性もありますね。

large_5404861285NTT東日本エリア限定で、NTT西日本エリアの方は悩む必要がありません。

以前使っていた、Bフレッツからフレッツ光ネクストに変更した際、少し工夫して、工事費を節約できたのでその方法と顛末を記します。 続きを読む