私はリムーバブルハードドライブをいくつか持っています。/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形式の場合は、PARTUUID
fstabで使用する必要があります。