Hard Drive Active Protection System

提供: ArchWiki
ナビゲーションに移動 検索に移動

ハードディスクアクティブプロテクションシステム (Hard Drive Active Protection System, HDAPS) はハードドライブを突然の衝撃から保護します (ノートパソコンを机から落としたりバンバン叩いたりするなど)。ディスクのヘッドを停止することで、衝撃によってドライブのプラッタにぶつからないようにすることで保護します。これによって致命的な問題が発生するのを防ぎます。

ノート: SSD ドライブには機械的な部品が存在しないため HDAPS は不要です。

衝撃検出

ハードウェアが何らかの衝撃検出をサポートしている必要があります。ノートパソコンのマザーボードに加速度計などが搭載されていれば OK です。ハードウェアが検出に対応していたら、次に、ハードウェアが検出したものをオペレーティングシステムに伝える手段が必要になります。このセクションでは加速度計の状態を OS に伝えるドライバーについて説明します。ドライバーを使うことによって衝撃を検出して保護することが可能です。

tp_smapi

tp_smapi は ThinkPad ノートパソコンのドライバーのセットです。サポートされている ThinkPad を使っている場合、たとえ HDAPS を使う予定がなくても、ドライバーをインストールすることを強く推奨します。たくさんある便利なことの一つとして、tp_smapi は加速度計の出力をジョイスティックデバイス /dev/input/js# として表します。

ノート: これがシステムの他のジョイスティックデバイスに干渉することもあります。

tp_smapi を community リポジトリからインストールしてください。インストール後、tp_smapi/etc/modules-load.d/tp_smapi.conf ファイルに追加します (systemd を使っている場合)。再起動後、ドライバーが有効になって、/sys/devices/platform/smapi ファイルシステムで確認できます。

カーネルには HDAPS ドライバーが初めから組み込まれています。以前は、デフォルトのドライバーがロードされないように /etc/rc.local から手動でモジュールを insmod する必要がありました。community の tp_smapi パッケージは hdaps.ko/lib/modules/$(uname -r)/updates にインストールするため、内蔵のモジュールよりも優先して使われます。そのため、MODULEShdaps を追加することが可能です。

ノート: According to this bug report, certain ThinkPad laptops use different firmware which tp_smapi does not support and is unlikely to support in the near future. This includes the following series: Edge, SL, L, X1xxe. Only one of these is listed in the "unsupported hardware" page for the project, however, and that listing suggests that the x121e should mostly work. I get the same error with the x121e listed at the bottom of the bug report as a different and more fundamental problem, though, so it may be that some models of the x121e are mostly supported and others are entirely unsupported.

Invert モジュールパラメータ

ThinkPad の中には、X・Y 回転軸を正しく扱うために invert モジュールパラメータを設定する必要があるものがあります。そのような場合、/etc/modprobe.d/modprobe.conf にオプションを追加します:

options hdaps invert=1

invert=1 は ThinkPad T410 で使用する値です。invert オプションには以下の値を設定できます:

  • invert=1 はX・Y 軸両方を反対にします。
  • invert=2 は X 軸を反対にします (既に反対になっている場合、元に戻します)。
  • invert=4 は X 軸と Y 軸を交換します (反対にする前に交換します)。

Note that options can be summed. For instance, invert=5 swaps the axes and inverts them. The maximum value of invert is obviously 7. If you do not know which option is correct for you, just try them out with hdaps-gl or some other GUI (see below). Alternatively, you can determine the exact value for your thinkpad model from this table under the column labelled "HDAPS axis orientation".

As an alternative to reloading the hdaps module, the invert value can also be written directly to /sys/devices/platform/hdaps/invert.

衝撃保護

ハードウェアが検出した衝撃を OS に報告するようになったら、データを使って何かをする必要があります。このセクションではセンサーの出力を衝撃の保護に変えるソフトウェアユーティリティを説明します。

hdapsd

hdapsd は HDAPS ジョイスティックデバイスの出力を監視して衝撃が起こりそうなのを確認して、カーネルにディスクのヘッドを停止するように命令します。

hdaps の設定を変更したときは SMART の "Load cycle count" をチェックするようにしてください。感度が高すぎてヘッドが頻繁に停止し、ロードサイクルカウントが跳ね上がることがあります。

hdapsd をインストールしてください。hdapsd.service を使って hdapsd デーモンを起動できます。

systemd の記事で書かれているように、ユニットファイルを編集することで hdapsd の動作パラメータを調整することができます。例えば、以下のファイルは感度と hdapsd デーモンのログの挙動を変更します:

/etc/systemd/system/hdapsd.service.d/sensitivity.conf
[Service]
ExecStart=
ExecStart=/usr/bin/hdapsd --sensitivity=40 -blp

その後、設定をリロードしてください。

GUI ユーティリティ

Utilities exist to monitor hdapsd's status so you know what is going on while you are using your laptop. These are entirely optional, but very handy.

gnome-hdaps-applet

ハードドライブの現在の状態を表示する GNOME パネルアプレットです。

ノート: Xfce は GNOME パネルアプレットを使うことができます。

パッケージが AUR に存在します: gnome-hdaps-appletAUR[リンク切れ: アーカイブ: aur-mirror]。デフォルトでは sda や hda を監視したくない場合、コンパイルする前に PKGBUILD を編集してください。

kdeplasma-applets-hdaps-monitor

KDE4 には HDAPS を監視する plasmoid が存在します: HDAPS monitorAURkdeplasma-applets-hdaps-monitorAUR パッケージでインストールできます。

xfce4-hdaps

ハードドライブの現在の状態を表示する Xfce4 のパネルアプレットです。AUR からインストールできます: xfce4-hdapsAUR。インストールしたら、アプレットをパネルに追加してください。

HDAPSicon

HDAPSicon (旧名 thinkhdaps)、HDAPS のディスク保護状態を表示するスタンドアロンの GTK アプレットです。通知エリアにアプレットアイコンが表示されます。AUR からインストールできます: hdapsicon-gitAUR

hdaps-gl

Thinkpad の 3D アニメーションを表示するシンプルな OpenGL アプリケーションです。Lenovo が Windows で配布しているアプリケーションに似ています。AURhdaps-glAUR でインストールできます。

参照