New Nextcloud Installation with own (external) disk for data

Hey guys,

For a couple of years now, I am running Nextcloud on a server at home.

The server is a mini PC that was only used for Nextcloud back then and now has some other VMs installed. Everything is virtualised by Proxmox.

Since it was only used for Nextcloud and I gave the Ubuntu VM ~600GB of SSD storage.

Now I need this (fast) storage, for other VMs and am planning to reinstall Nextcloud on the SSD and store the user data to an external USB 3.0 drive.

I have already backed up the data to another external hard drive just to be safe, as well as created a Proxmox backup of the entire VM in case something goes wrong.

Now I would like to reinstall the VM, then pass the HDD through to the VM (this has worked so far), but I can’t get the storage selected in Nextcloud.

Can you help me with this?

The guide I have used to install and configure nextcloud is this one. It is in german, but the steps are the same in each language.

Kind Regards

Borotes

Why are you using virtual machines for a home server?

Hi @Borotes

Basically, there are two ways you can use an external USB disk together with Nextcloud.

  1. you can mount it to the file system of your Ubuntu server e.g. /mnt/yourUSBdrive and then create the Nextcloud data folder in /mnt/yourUSBdrive during the installation of Nextcloud.

  2. you can add /mnt/yourUSBDrive as a “local” storage to your Nextcloud via the “External Storage app”.

1 Like

I have several services running, and if I ever break a VM due to updates, I can simply retrieve it from a backup.

Hi @bb77 , thank you!

I already had the idea, but do you know how I get the name of the disk when it is mounted?

sudo fdisk -l does list all connected storage devices and their device path e.g. /dev/sda, /dev/sdb/ etc…

If you want to know whether the filessystem of a device is mounted and where in your filessystem it is mounted, you could use the following command:

lsblk -o KNAME,TYPE,SIZE,MODEL,MOUNTPOINT

It will show you the path where the filessystem of your disk is mounted in the “MOUNTPOINT” column. If it does not show a path there, you have to mount the disk manually…

https://linuxconfig.org/howto-mount-usb-drive-in-linux

1 Like

I also use Proxmox. Running your services in VMs has many advantages. You can run services completely isolated from each other in different network segments. You can backup and restore the entire system in a VM very easily. You can take a snapshot of the VM before you make any configuration changes and easily revert it back if something goes wrong etc etc… But you know that of course :wink:

1 Like

Thank you very much! I will try it this evening :slight_smile:

You don’t need VM’s to run many services, and you should use a stable OS like Rocky (the new CentOS) to avoid breaking things due to updates. VM’s create needless complexity, consume resources, and kill performance. The main application for VM’s is for shared servers.

While not completely wrong, this is of course nonsense when said in such absolute terms.

Yes, and maybe that’s exactly what some of us want for many diffrent reasons. I mentioned a few of them in my perevious post. And especially for inexperienced users, who are still learning, VMs are imho an ideal playground to experiment on. Because you can very easily go back to a previous state of the VM, if you messed something up.

So I tried it, like you told me and it worked like a charm :slight_smile:

But now I have the problem, that the write speed is super slow… ~1MB/s.

How did you mount your drive? I chose the external storage method but it would be impossible to copy all my data back into the cloud like that.

I don’t use any USB-Drives on my server. But I doubt that the problem is related to Nextcloud, the External Storage app, or to anything inside the VM at all…

Does your server hardware support USB3? If so, did you check the “Use USB3” box when you added the USB device to the VM in Proxmox? Otherwise the disk will only run at USB1.1 speed, which would be around 1MB/sec…

If this doesn’t work, maybe you could try to passthrough the entire usb controller instead of just the disk. Or a better approach would probably be to mount the USB disk to the Proxmox host and then add it as a Block Storage Device to the VM. However this would have the disadvantage that you then couldn’t access the files directly, when the disk is plugged in to another computer.

But this goes probably beyond the scope of this forums anyways… :wink: If my tips don’t help, search for “Proxmox slow USB Disk” on Google or in the Proxmox Forums…

1 Like

What you’re trying to do is already done here:

Hi @bb77,

thank you for your help!

I tested the hdd case on windows and everything worked like it should. On Proxmox it was recognized as USB-2.0 Device. I added it by command line, that’s why I did not saw it.

I asked for a refund, and my new case supports USB 3.0. It is not super fast, but fast enough for my needs :wink:

1 Like