At The Frontier Group, we use vsftpd with chrooted users for clients that require FTP access. It has been working well for four years, however after a recent upgrade to Ubuntu 12.04 we started receiving this error message:

500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

Ben Scobie has a good overview of the problem. One solution is adding the following to your vsftpd config file:

allow_writeable_chroot=YES

Unfortunately vsftpd 2.3.5, which is packaged in Ubuntu 12.04, doesn’t support this feature. It is only available in vsftpd 3 onwards.

As an alternative solution, we have backported it from vsftpd 3 into Ubuntu’s 2.3.5 package and made it available as a vsftpd PPA on Launchpad. To use it, run the following:

sudo add-apt-repository ppa:thefrontiergroup/vsftpd
sudo apt-get update
sudo apt-get install vsftpd

Update (31 Jan 2013): @JeyeNooks has backported the feature to Ubuntu 12.10, and has uploaded his package here.