PR

今月の回答者

初級
高橋 秀和 : 日経バイトBest Way担当
中級
山田 努 : SRAネットワーク&サービスカンパニー オープンソースソリューション部 オープンソースサポートグループ主任

Q 初級:
壊れてしまったハードディスクからデータを取り出したい

2年ほど使っていたハードディスクが壊れました。データの復旧サービスは高額で手が出ません。分解してディスクを取り出し,自力でデータを復旧できる可能性はどの程度あるのでしょうか?

A
写真●ハードディスクの制御回路基板は交換可能
 2年前のハードディスクですと,すでにディスク1枚で30Gバイト超の容量がある大容量ドライブのはずです。記録密度の高いハードディスクですと,分解した時点でホコリによって回復不能なダメージを受けます。容量がMバイト単位だった時代は,ディスクを別のハードディスクに移植して読み出す“荒技”が通用したこともありました。

 データ復旧サービスは,最終的にハードディスクのディスクをクリーンルーム内で露出させ,専用機材を使ってデータを読み出しています。手間をかけるぶん,修理費用は高価です。

 故障の状況が不明ですので,自力で復旧可能な代表例を二つ挙げます。まず,モーターは回転するものの,起動時に認識しない場合。同じ型番のハードディスクを用意して,制御回路基板を交換することで復活するかもしれません。特に基板とドライブ本体の接続がフィルム状のフレキシブル・ケーブルではないハードディスクでは比較的容易です(写真[拡大表示])。ただ基板とドライブは星形のネジ(トルクスネジ)で留めてあることがほとんどですので,工具としてトルクス・ドライバーが必要になります。

 次に,モーターが回転しなくなった場合です。ヘッドとディスク,またはモーターのベアリングが固着している可能性があります。特にヘッドがディスクの退避領域に接地するような古いハードディスクでは起こりやすい故障です。電源を入れた状態で軽く叩いたり,ゆっくりと振ったりすると回転し始める場合があります。もっともこれは最後の手段です。ヘッドがディスクを傷つけてしまう可能性がありますので,後でデータ復旧サービスを頼りたくなった場合に後悔するかもしれません。

(高橋)

Q 中級:
Linuxの動作速度,チューニングの定石は?

Linuxのデスクトップ環境としてGNOMEを使っています。しばらく使ってみて,やや動作にもたつきを感じることがあります。Windowsではレジストリ・チューニングが定石でしたが,Linuxでのパフォーマンス・チューニングのポイントはどこにあるのでしょうか?

A

表●Linux ディストリビューションの主なチューニング手法
画面●不要なフォントを削除
画面はKDEの場合。デスクトップ環境ごとにツールは異なる。
 LinuxはWindowsのレジストリのように,設定を一元管理する仕組みがありません。そのためLinux自体のカーネル・パラメータやLinuxディストリビューションに含まれるアプリケーションの設定ファイルなど,ソフトウェアごとに設定を変えて調整する必要があります。設定方法は個々のソフトウェアによってまちまちです([拡大表示])。チューニングの対象とするソフトウェアの知識がなければ手が出しにくく,少々面倒な作業になってしまうのが現状です。

 結論から言ってしまいますと,どのLinuxディストリビューションであっても,総じて初期状態で最適動作するように調整されているものがほとんどです。これはLinuxだけに限った話ではありません。一般にシステム全般でより良い性能を目指すとなると,無駄なソフトウェアを削るといった方向にならざるを得ない部分が多いです。不要なデーモン(サービス)は起動しないというのが定番ですが,すべてのデーモンが高い負荷をかけている訳ではないので,苦労の割に微々たる効果しか得られないかもしれません。

 不要なデーモンを止める手法以外となると,まずはシステムの稼働状態の現状を調べて,改善した方が良い部分を洗い出すのが先決です。メモリーやスワップ・ファイルの利用量などを確認するには「free」コマンドが,ディスクに対する入出力の把握には「iostat」コマンドが使えます。これらのコマンドで,まずはシステム全体の負荷状況を把握して下さい。

 体感速度への影響が大きいソフトウェアがGUIを担う「X Window System」です。X Windowの反応は,デスクトップ環境の操作性に直結します。簡単かつ効果的な手法としては,使用する画像を減らすこと,使用するフォントの数をなるべく抑えることなどがあります(画面[拡大表示])。Window Systemで多数の画面・画像・フォントを利用すれば,それらを同時に処理するための負荷が上がります。これらの設定は利用しているデスクトップ環境の設定ツールから調整します。X Windowのサーバーは「XF86Config」で調整できますが,あまり改善する余地がないかもしれません。どうしても処理が遅い場合に,色数(depth)を減らす程度でしょう。X Window Systemのチューニングには,XサーバーとXクライアントの両者が関連します。最近のデスクトップ環境では複数プロセスが協調動作しているため,原因の特定や改善が難しい部分です。

 冒頭で述べた通り,Linuxカーネルは汎用的な設定がなされているため通常であればそのまま利用して問題ありません。ただ特定の用途で利用するのであれば,カーネル・パラメータを調整することで性能が改善されることがあります。カーネル・パラメータは「sysctl」コマンドで操作することができます。procファイルシステム経由で操作することもできます。ただしカーネルの内部動作に直接かかわる部分ですので,少々専門的な知識が必要です。ネットワークの動作や,メモリー割り当てに関連するパラメータなどを変更することで,システム全体のパフォーマンスを調整します。効果があるようでしたら,カーネルを再構築して特定用途向けにカスタマイズしても良いでしょう。

(山田)