Router Model
Buffalo WZR-1750DHP
Firmware Version
DD-WRT v3.0-r29968M std (06/17/16)
Kernel Version
Linux 4.4.13 #950 SMP 2016 armv7l
Disk Info
/dev/sda1
Block device, size 3.639 TiB (4000785104896 bytes)
Ext4 file system
UUID -Redacted- (DCE, v4)
Volume size 3.639 TiB (4000785104896 bytes, 976754176 blocks of 4 KiB)
/dev/sda1 mounted to /tmp/mnt/sda1
Everything works expected the small files. When transferring large files the routers RAM fills up and it crashes. After a bit of research I discovered the default for proftp writse to the location '/tmp/proftp/users/(user id)/' on a standard install. That location is a ramfs and thus writing to RAM.
Therefore I needed to setup a script to mount the disk or setup a symlink at that location of the external disk.
The hard drive is mounted to /dev/sda1 mounted to /tmp/mnt/sda1 according to the DD-WRT UI.
That means anything written to /tmp/mnt/sda1 should be written to disk.
- I've rm -f tmp/proftpd/users
- mkdir /tmp/mnt/sda1/user
- ln -s /tmp/mnt/sda1/users /tmp/proftpd
That way All proftp users are written to the HHD drive.
Yet when I transfer large file see the free RAM start to drop as if the files being written to RAM.
What am I missing?