複数のディスクの1つをfstabの特定の場所にマウントする方法

複数のディスクの1つをfstabの特定の場所にマウントする方法

私はリムーバブルハードドライブをいくつか持っています。/backupドライブが変更されない限り、いつでもこれらのいずれかがマウントされます。私は定期的にドライブを交換します。つまり、4つのハードドライブがあり、それを回転させます。

現在のドライブを手動でマウント/マウント解除します。しかし、マシンがオフになることもあり、私が知らない間にオフになることもあります。ドライブがマウントされていない場合、毎日のバックアップスクリプトは失敗します。

これらのドライブは現在UUIDまたはラベルを共有していません。ディスクが常に利用可能であることを保証することはできません/dev/sdb1。どのドライブが接続されるのかわからない場合は、/etc/fstabで複数のドライブの1つを自動的にマウントするための良い方法はありますか?


モニターやキーボードなしのLinux(debian)システムであることに注意してください。現在のドライブは、接続後/取り外し前にSSHを介して手動でマウント/マウント解除されます。

答え1

後でこの問題を取り戻した後、私は解決策が実際に/ etc / fstabにドライブをマウントすることを選択するのと同じであることに気づきました。これはここで議論されるhttps://wiki.archlinux.org/index.php/fstab#External_devices

簡単に言えば、私の解決策は、2つのほぼ同じ項目を同じ場所にインストールすることでした。たとえば、

UUID=cd49ca72-db24-47ba-b3bc-f0ba8e290599 /backup    ext4    nofail,x-systemd.device-timeout=1  0       0
UUID=d28c6d3a-461e-4d7d-8737-40a56e8f384a /backup    ext4    nofail,x-systemd.device-timeout=1  0       0

システムの起動時にそのうちの1つだけが接続されている場合、もう1つは1秒後に「自動」タイムアウトになります。したがって、挿入されたエントリの1つがインストールされ、他のエントリは起動プロセスの失敗を引き起こしません。

注:一度に1つのドライブのみを取り付けたい場合にのみ、この回避策を使用してください。

答え2

すべてのドライブを一度に接続せずに、すべてのドライブに新しいUUIDを作成するとどうなりますか?

次のコマンドを使用して新しいuuidを作成しますuuid(一部のシステムではこのuuidgenコマンドを使用します。例:

# uuid
30dcffac-1187-11e8-8338-0050569774ad

現在のUUIDを確認し、必要に応じてどこにでも書き込みます。

# vol_id /dev/sdb1 | grep UUID
ID_FS_UUID=224990ae-1187-11e8-ba4c-0050569774ad
ID_FS_UUID_ENC=224990ae-1187-11e8-ba4c-0050569774ad

UUID変更を使用してくださいtune2fs。お持ちの各外付けドライブに対してこれを一度実行してください。

# tune2fs /dev/sdb1 -U 30dcffac-1187-11e8-8338-0050569774ad
tune2fs 1.41.3 (12-Oct-2008)

新しく作成したUUIDを使用してマウントしますfstab。例:

UUID=30dcffac-1187-11e8-8338-0050569774ad  /backup  ext4  defaults    0       0

これはmount -aドライブを動的にマウントするのに十分で、コンピュータが再起動すると自動的にUUIDを使用してパーティションをマウントします30dcffac-1187-11e8-8338-0050569774ad。実際のマシンでこれをテストしていないため、2台のディスクを同時に接続してマウントしようとすると、どのような結果が出るのかわかりません。

ディスクがGPT形式の場合は、PARTUUIDfstabで使用する必要があります。

関連情報