edit.
Adding more information, as you requested.
Hardware setup:
- HDD: Seagate BARRACUDA 4TB SATA III 3.5"
- HDD enclosure: Orico 7688U3 3.5″ SATA USB3.0 HDD Docking Enclosure
- rpi: Raspberry Pi 4 B WiFi DualBand Bluetooth 8GB RAM 1,5GHz
Hard drive is entirely encrypted with LUKS and LVM is created on top of LUKS. It is automatically decrypted with key file during startup and lv's are automatically mounted by fstab. This part works perfectly fine after system boot - all mountpoints are accessible.
output from lsblk looks like this right after boot:
ubuntu@ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 48.8M 1 loop /snap/core18/1936
loop1 7:1 0 48.9M 1 loop /snap/core18/1949
loop2 7:2 0 59.9M 1 loop /snap/lxd/18152
loop3 7:3 0 27M 1 loop /snap/snapd/10494
loop4 7:4 0 27M 1 loop /snap/snapd/10709
loop5 7:5 0 63.6M 1 loop /snap/lxd/16103
sda 8:0 0 3.7T 0 disk
└─vault 253:0 0 3.7T 0 crypt
├─vg_storage-lv_ops_quarantine 253:1 0 50G 0 lvm /mnt/ops_quarantine
├─vg_storage-lv_ops_operational--data 253:2 0 50G 0 lvm /mnt/ops_operational-data
├─vg_storage-lv_ops_appdata 253:3 0 100G 0 lvm /mnt/ops_appdata
├─vg_storage-lv_repo_dotfiles 253:4 0 10G 0 lvm /mnt/repo_dotfiles
├─vg_storage-lv_repo_windows--apps 253:5 0 1G 0 lvm /mnt/repo_windows-apps
├─vg_storage-lv_repo_iso 253:6 0 50G 0 lvm /mnt/repo_iso
├─vg_storage-lv_repo_git 253:7 0 50G 0 lvm /mnt/repo_git
├─vg_storage-lv_multimedia_video 253:8 0 700G 0 lvm /mnt/multimedia_video
├─vg_storage-lv_multimedia_audio 253:9 0 400G 0 lvm /mnt/multimedia_audio
├─vg_storage-lv_multimedia_ebooks 253:10 0 100G 0 lvm /mnt/multimedia_ebooks
├─vg_storage-lv_multimedia_resources 253:11 0 200G 0 lvm /mnt/multimedia_resources
└─vg_storage-lv_data_documents 253:12 0 80G 0 lvm /mnt/data_documents
mmcblk0 179:0 0 116.5G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 116.2G 0 part /
After just a random, slight movement of usb plug from the side of raspberry pi, or after just moving rpi on the table, ORICO enclosure blinks red and after that, output from lsblk looks like this:
ubuntu@ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 48.8M 1 loop /snap/core18/1936
loop1 7:1 0 48.9M 1 loop /snap/core18/1949
loop2 7:2 0 59.9M 1 loop /snap/lxd/18152
loop3 7:3 0 27M 1 loop /snap/snapd/10494
loop4 7:4 0 27M 1 loop /snap/snapd/10709
loop5 7:5 0 63.6M 1 loop /snap/lxd/16103
sdb 8:16 0 3.7T 0 disk
mmcblk0 179:0 0 116.5G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 116.2G 0 part /
as you can notice, sda changed to sdb and is unmounted now.
I pasted logs to pastebi for brevity of this post. These are the logs, that I collected right after the issue occurred:
I did additional test with another usb drive, and I was able to reproduce the error, so it looks for me, like there is an issue with usb ports on the Raspberry Pi. Seems like I was super unlucky and maybe my vendor has a faulty batch of raspberries (it was already replaced under warranty), but I would like to hear your opinion.