I run Plex server at home, and the only way that I was able to solve this with USB hard drives was to manually add them to the
/etc/fstab file so they would come up on the same mount after every reboot.
First, get the UUID of the partition of the drive:
Mine that we are going to use is a Seagate external drive.
/dev/sda1: LABEL="Seagate Backup Plus Drive" UUID="6AAA4323AA42EB61" TYPE="ntfs"
Or you can use
:~$ lsblk -o NAME,LABEL,TYPE,UUID
NAME LABEL TYPE UUID
└─sda1 Seagate Backup Plus Drive part 6AAA4323AA42EB61
We can see the
UUID there of
6AAA4323AA42EB61. Now, we create a mount point where we are going to have that drive mount every time:
sudo mkdir -p /media/Seagate
We will now add the information to the
/etc/fstab file so that every time we boot the computer it will mount that drive in the same location. We will add a
nofail option so that if the drive is disconnected or not powered on the boot process will still complete.
First, backup your
/etc/fstab file in case something goes wrong.
sudo cp /etc/fstab /etc/fstab.orig
Then use your favorite editor with sudo access and add the following line to
/etc/fstab. Or I will put a line below it that will allow you to add it via an echo line:
UUID=6AAA4323AA42EB61 /media/Seagate ntfs defaults,nofail 0 0
That line can be added via
echo like so:
sudo bash -c 'echo "UUID=6AAA4323AA42EB61 /media/Seagate ntfs defaults,nofail 0 0" >> /etc/fstab'
You can then run
sudo mount -a to mount the drive in that location now, or you can reboot the host and it should come up in the same location every time now.
Hope this helps!