web-dev-qa-db-ja.com

USBディスクを永続的な場所にマウントする

ブート時に特定の場所にマウントするUSB​​ハードディスクがあります。誰もログインしていないのに、そのドライブをマウントして(ローカルバックアップなどのために)使用可能な状態に保つにはどうすればよいですか?

Udevまたは同様の何かがディスクを保持しているようです。このディスクを(UUIDによって)具体的にマウントしようとするエントリを/ etc/fstabに置くと、そのマウントプロセスとudevマウントプロセスはお互いにバトルしているように見え、ディスクはマウントされません。

13
Don Faulkner

Udevを使用してディスクをマウントします。この wiki のルールを/etc/udev/user.rulesに配置し、再起動(またはUSB HDDを再接続)します。 wikiにはいくつかのルールがあります(そのため、ここにリストしませんでした)。ニーズに最適なルールを選択してください(たとえば、マウントを解除するには特定の通常のユーザーが必要です)。

/lib/udev/rules.d/80-udisks.rulesを熟読すると、yourハードディスクに対してudevが何をしているのかを理解するのに役立ちます。

上で述べたudevルールに加えて、あなたがとることができる別のアプローチがあると思う:udisksに(udevを介して)指示して、ディスクをそのままにしてfstabを介してマウントする。

このコードは私のシステムで動作します

ACTION!="add|change", GOTO="my_udisks_end"
SUBSYSTEM!="block", GOTO="my_udisks_end"

ENV{ID_TYPE}!="disk", GOTO="my_udisks_end"
ENV{ID_BUS}!="ata", GOTO="my_udisks_end"
ENV{DEVTYPE}!="partition", GOTO="my_udisks_end"

KERNEL=="sd*|hd*", ENV{UDISKS_PRESENTATION_NOPOLICY}="1"

LABEL="my_udisks_end"

ただし、汎用であり、すべてのパーティションが含まれます。特定のhdd/partitionをターゲットにできるようにするには、udevadm info --query=all -n /dev/sdXを使用してから、udevルールの特定の属性のいくつかと一致させます。

これを支援するのに役立つリソースは、 devルールの作成 です。残念ながら、古い情報が含まれています(udevinfoudevadm indoに置き換えられました)。確かに、それは読む価値があることを保証します-udevは今日の中心的なアーキテクチャであり、それを使用することで多くのことを達成できます。また、かなり柔軟です。

また、udevルールを間違えるのも簡単です:)。 udevadm test $(udevadm info -q path -n /dev/sdX)を使用して、udevの動作を「覗いて」ください。

7
Li Lo

UUIDではなく、/ dev/...で参照してみてください。/dev/sdb *である可能性が高いため、[システム]-> [管理]-> [システムモニター]に移動し、[ファイルシステム]タブをクリックして確認できます。最初にUSBドライブを挿入し、自動的にマウントする必要があります。/etc/fstabの「UUID = uuid」を「/ dev/sdb *」に置き換えます。編集する前にfstabをバックアップすることを常にお勧めします。

1
dv3500ea