I am completely new to Nextcloud but wanted to give it a shot after having heard so many great things.
So I setup an LXC on my PVE using this community script alpine-nextcloud
I connected a samba share where I want all my data to go.
Problem I am having is that on initial upload of my auto-upload folder, my local file system gets flooded with temp files and my server crashes. So despite me wanting everything to land on the external storage, GBs over GBs land on the internal storage and cause the system to crash.
I used AI to try and find the issue and it was suggested that this is a problem with theAndroid app.
Does anybody know if this is true and if this can be fixed?
I was trying to backup all my images and videos (~80 GB) and I got flooded with notifications of new image folders being found (I would like that disabled also) and my disk (which I already increased o 32 GB) was flooded quickly.
And why is that? From the NC client creating temp files? If is from external, do you want/need to sync the temp files? If not, you might exclude these from the sync process?
I want to auto-upload my 80 GB of images/videos from my Android phone to the external storage (Samba share) of my Nextcloud server.
The Samba share is on a NAS with > 400 GB of free disk space.
The Nextcloud server is running as an LXC in my Proxmox VE. That LXC only has 2 GB, which I then increased to 32 GB after the first system failure due to lack of free disk space.
When I upload using auto-upload, all those 80 GB of images are processed into chunks which go to temp and when all chunks of one file are on the server, the next file gets chunked. During that time, the first file is transferred to the samba share (my external storage). But the chunking is faster than the transfer to the samba share, so the chunks start to fill the tmp folder before the old ones get deleted.
At least that is my suspicion because my /var/tmp/nextcloud folder was filled with chunks.
I am of course not interested in keeping or syncing any temporary files.
So it seems that when a large batch of files is selected for auto-uploading, some process (php? chunking?) creates a loooot of temporary files which, by the looks of it, roughly equate to the size of the files being uploaded (which is why I assumed maybe the chunking).
So you may test that by limiting in your NC-Client the Upload bandwidth. I do not use the Android Client but the Linux Client does offer such an option. Limiting in your NC-Client the Upload bandwidth will slow down the upload.
From what I can see, the Android client has almost no adjustable settings. Can’t even find a setting to disable recommendations, let alone any transfer settings.
That’s a shame, because that way you could have checked whether your hypothesis was correct or not, thereby verifying the problem and looking for a specific solution.
Traditional mechanical hard drives (HDDs), especially those using SMR (Shingled Magnetic Recording), or encrypted shared folders, can bottleneck read and write operations below network maximums
Features like SMB signing or packet encryption add CPU overhead on low-power NAS devices, reducing transfer rates
Transferring hundreds of tiny files is significantly slower than moving a single large file due to constant directory updates and protocol handshakes
You might want to consider alternatives to SMB shares. For example, NFS