Free tools Windows power users keep installed
One-click scans. No signup required.
A vsftpd 550 response means the server rejected an operation that would change the filesystem, such as uploading, appending, creating a directory, deleting, or renaming. For a normal Ubuntu local account, check write_enable=YES first, then verify that the account can write to the destination and traverse every parent directory. If the session is chrooted, make sure the client path exists and is writable inside that jail. Anonymous and virtual users have additional rules.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
What a 550 upload error actually means
FTP login proves only that authentication succeeded. It does not prove that vsftpd has enabled write operations or that the Unix account can modify the requested path. The server returns 550 when it refuses a filesystem-changing command. Common examples are STOR for a new upload, APPE for appending, MKD for creating a directory, RMD for removing one, and RNFR/RNTO for renaming.
As an Amazon Associate I earn from qualifying purchases.
The exact client text matters. 550 Failed to open file often points to the destination path or its permissions; 550 Permission denied usually indicates a Unix access check; and 550 Create directory operation failed indicates that the account could not create an entry in the requested parent directory. These messages are clues rather than a complete diagnosis. Read them with the login type, path shown after login, effective configuration and server log.
A 550 is not an indication that the FTP daemon is offline. In fact, the server has accepted the connection far enough to evaluate the requested command. That distinction prevents a common mistake: repeatedly changing passwords or reconnecting when the real problem is a disabled write policy or an unwritable directory.
#1 Best Overall
- BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
- EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
- COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
- LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
- WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.
Collect the four facts that determine the fix
- Account type: establish whether the client uses a regular local Unix account, anonymous FTP, or a virtual user. The required options differ.
- Operation: record whether the failure occurs on
STOR,APPE,MKD, or a rename. A successful upload does not imply that directory creation or rename is allowed. - Effective path: copy the path reported by the client immediately after login and the path in the failed command. A path that looks absolute to the client is interpreted relative to the FTP session root.
- Server evidence: save the client transcript and match its timestamp with the vsftpd log. This separates a policy rejection from a Unix permission or path error.
Also note whether the target is a new filename or an existing one. A test that creates a new file exercises the destination directory, while an append or overwrite can involve the existing file and its access controls. Record the username exactly as the server sees it; a virtual username and a local Unix username that look similar may map to different identities.
Do not change permissions before recording these facts. Otherwise you can mask the original cause and leave a wider-than-needed access rule behind.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Fixes for a regular local Ubuntu account
Enable local login and filesystem-changing commands
For a normal Unix account, the minimal policy is local login enabled, write operations enabled, and anonymous login disabled unless you have a specific reason to allow it. In /etc/vsftpd.conf, check the relevant lines:
anonymous_enable=NO
local_enable=YES
write_enable=YES
write_enable defaults to NO in the vsftpd reference. It controls whether commands that change the filesystem are allowed at all, including uploads, deletes, directory creation and renames. Setting it to YES is necessary, but it does not grant the Unix account access to any directory.
local_enable=YES controls whether local Unix users may log in. If it is disabled, the account cannot reach the upload stage; if it is enabled but write_enable remains NO, login can succeed while every filesystem-changing command is rejected. Keep these checks separate so that a read-only login is not mistaken for a broken password or client.
Do not enable anonymous access as a workaround for a local-user failure. The Ubuntu Community Help setup guidance presents anonymous_enable=NO, local_enable=YES and write_enable=YES as the basic local-user pattern. Follow that least-privilege pattern unless an anonymous workflow is an explicit requirement.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Check the destination and every parent directory
On the Ubuntu host, substitute the actual account and target path in these inspections:
id ftpuser
ls -ld /srv /srv/ftp /srv/ftp/incoming
namei -l /srv/ftp/incoming
The account needs write permission on the destination directory to create or replace an entry, and execute permission on that directory to enter it. It also needs execute permission on every parent directory, including /srv and /srv/ftp in the example. The namei -l output is useful because it shows permissions component by component rather than only showing the final directory.
Write and execute have different jobs here. The write bit permits changing directory entries; the execute bit permits searching or traversing the directory. Having write permission without execute permission, or execute permission without write permission, can still produce a 550. A parent directory does not need to be writable merely to reach a writable child, but it must be searchable by the account.
Correct ownership or group membership deliberately. For example, an administrator might assign an upload directory to a dedicated group, add the intended account to that group, and grant group write and traverse access. Apply the narrowest ownership and mode that meets the workflow. A blanket chmod -R 777 is not a real fix: it grants write access to every local account and can conceal an ownership mistake.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Rank #2
- WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
- AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
- PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
- ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
- COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed
Inspect the complete path, not just the directory displayed in the FTP client. A missing component, a typo in the remote filename, or a directory that exists outside the session root can all look like a permission failure. Compare the path from the transcript with the path examined on the Ubuntu host.
Distinguish a new-file failure from an overwrite failure
Creating a new file is controlled mainly by the destination directory. Replacing an existing file also depends on the existing file, directory policy, and whether the client is using STOR or APPE. Test with a harmless filename in the intended upload directory. If a new file works but an append or overwrite fails, inspect the existing file’s owner, mode and any ACL rather than repeatedly changing vsftpd settings.
This comparison also helps isolate client behavior. Some clients upload to a temporary name and then rename the result; that workflow can fail at RNFR/RNTO even though the initial STOR succeeded. Record every command in the transcript instead of treating the whole transfer as one operation.
Anonymous uploads need a separate, deliberate policy
Anonymous sessions do not use your local user’s permissions. Anonymous uploading requires both global write operations and the anonymous-upload switch:
write_enable=YES
anon_upload_enable=YES
The anonymous FTP account must also have write and directory-traversal permission on the destination. The Ubuntu vsftpd manpage documents anonymous upload as disabled by default. Enabling it simply to bypass a local-user error exposes an unauthenticated write surface and is usually the wrong remedy. If anonymous transfer is intentional, isolate its writable directory, limit what the anonymous account can reach, and verify the resulting modes with a test upload.
Keep anonymous_enable=NO for a local-account server. Changing it to YES does not fix a local user’s Unix permissions and can create an unexpected login path. Anonymous upload should be evaluated as its own design: identify the anonymous account, define exactly one intended drop location, and check that the account cannot write to unrelated directories.
Understand chroot paths before changing permissions
When chroot_local_user=YES, a local user is jailed at the configured login directory. Inside the FTP session that directory appears as the root of the filesystem. The client must therefore use a path that exists inside the jail, and the account must be able to write to that in-jail destination.
For example, a client may display /incoming while the host administrator is inspecting /srv/ftp/incoming. That can be correct if /srv/ftp is the jail root. Conversely, asking the client to upload to a host path that is outside that root will not work simply because the path exists on Ubuntu.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsCheck the list settings together
Review chroot_local_user, chroot_list_enable, and chroot_list_file as one set. Depending on the combination, the list identifies users who are jailed or users who are exempt when chroot_local_user=YES. A user can appear to have a correct absolute path while the FTP process is actually resolving it below a different root.
Do not infer the list meaning from its filename. Read the active option combination and then determine whether the affected username is in the file. The same list can represent jailed users in one mode and exempt users in another, so changing only the list file may have the opposite effect from the one intended.
Rank #3
- Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
- Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
- Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
- ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
- Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)
Create a writable directory below the jail
A safer layout is a non-writable jail root with a writable child directory, such as an incoming directory beneath it. Point the client at that child and grant the account write and execute permission there. Do not make the jail root writable merely to silence 550; the vsftpd reference warns that a writable chroot root has security implications. If the existing directory design cannot provide a safe writable child, change the jail deliberately and test the resulting path from a fresh connection.
After changing a jail layout, verify both sides of the boundary: the account must traverse the jail root and reach the child, while the child alone receives the intended write permission. A successful directory listing at the jail root does not prove that MKD or STOR will succeed there.
Recommended Free Tools
What local_umask and anon_umask can and cannot do
local_umask and anon_umask influence the mode of files after vsftpd creates them. They are file-mode choices, not access grants. A directory that the account cannot write remains unwritable regardless of the umask value.
Set the appropriate umask only after directory access works. Choose a value that gives the intended owner and group the required read or write access while withholding unnecessary permissions from others. Verify the mode of one newly uploaded file with ls -l; do not infer directory access from the file mode. Anonymous-upload umask examples in the Ubuntu guidance describe resulting file permissions, not a way to authorize creation in a protected directory.
Umask also does not repair a failed rename, delete or directory creation. Those operations are authorized against the relevant directory and are still subject to write_enable, Unix permissions and any host access policy. Treat umask tuning as a separate post-upload decision about who may read or modify the resulting files.
Reload the right configuration and verify the running service
After editing /etc/vsftpd.conf, use the service manager for your Ubuntu release to reload or restart vsftpd, then disconnect and reconnect the FTP client. Repeating an upload through an already-open session can leave you testing old state. Change one relevant setting at a time and retry the same operation in the same directory.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallEnable or inspect transfer logging with xferlog_enable. The vsftpd manpage documents the default log location for the service. Match the log timestamp, account and operation with the client transcript. A log entry showing a rejected policy points back to configuration; an entry that reaches a filesystem path but fails there points to ownership, traversal, ACL or another host policy.
Use a controlled test: one login, one harmless filename, one target directory and one recorded timestamp. If that succeeds, test the original filename or client workflow separately. This avoids conflating a path problem with a rename, overwrite or append problem.
If a 550 persists after the visible settings and Unix modes look correct, verify that the running service is using the file you edited. Inspect the service definition and command line, check for an alternate configuration file, and confirm that the account is the one you think it is. Do not widen permissions until the effective configuration and path are established.
Use the error operation to choose the next check
STOR or APPE fails
- Confirm
write_enable=YESfor any account type. - For a local user, verify write and execute permission on the destination and execute permission on each parent.
- For anonymous FTP, verify
anon_upload_enable=YESand the anonymous account’s directory access. - Check that the client path is inside the effective chroot and that the filename is not being redirected to an unwritable location.
- If only an existing file fails, inspect that file and its containing directory, including any ACL.
MKD fails with create-directory text
Directory creation is controlled by the parent directory, not by the mode that a future directory would have. Inspect the parent’s owner, group, write bit and execute bit. A umask cannot authorize MKD. If the parent is the chroot root, create a writable child beneath a safely protected jail instead of making the jail root broadly writable.
Rank #4
- Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
- Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
- 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
- Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
- USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC
Rename or delete fails
RNFR, RNTO and DELE are also filesystem-changing commands governed by write_enable. For Unix access, inspect the directory containing the entry and the account’s ability to traverse it. A file’s own write bit is not a substitute for write permission on the containing directory. If an upload client uses a temporary-file-and-rename workflow, both the temporary upload directory and the final directory must support the sequence.
Compare a configuration fix with a filesystem fix
When both a vsftpd setting and a permission change appear plausible, compare the account type, operation, effective path, ownership or group state, ACLs and security impact. If write_enable is disabled, changing directory modes cannot make the command run. If the policy is already enabled, changing it again adds no value and the directory path deserves attention.
Prefer the smallest change that grants the intended account access to the intended directory. A local-user upload normally needs the local-user policy and a targeted Unix ownership or group adjustment. An anonymous upload needs an explicit anonymous policy and a deliberately isolated destination. A chroot mismatch needs a path or jail correction, not a blanket permission expansion.
When ordinary modes are correct but 550 remains
Check for access controls outside the basic owner/group/mode display. An ACL can grant or remove access that is not obvious from the traditional mode bits. Ubuntu host security policy, including AppArmor, can also deny a path even when Unix permissions appear suitable. Treat these as targeted checks after confirming the account, operation, effective path and loaded configuration; do not disable a host security control as a first response.
Virtual users need their own review. The vsftpd reference describes virtual users as anonymous-like by default unless their privilege mode and PAM-backed setup are configured otherwise. Do not assume that a virtual username inherits the permissions of a similarly named Unix account. Identify the mapped service identity and inspect that identity’s destination access.
A compact decision table
| Session type | Required vsftpd controls | Filesystem requirement | Most useful first check |
|---|---|---|---|
| Local Unix user | local_enable=YES and write_enable=YES |
Account can write and traverse the destination path | id, ls -ld and namei -l |
| Anonymous user | write_enable=YES and anon_upload_enable=YES |
Anonymous FTP account can write and traverse the upload directory | Confirm anonymous policy before changing modes |
| Virtual user | Virtual-user privilege and PAM setup must permit the operation | Mapped service identity can access the effective path | Identify the mapping and inspect the running configuration |
Frequently asked questions
Why can I log in but not upload?
Authentication and write authorization are separate. Confirm local_enable=YES and write_enable=YES, then check the logged-in Unix account’s write and execute access to the destination and execute access to every parent directory.
What does “550 Failed to open file” mean?
It means vsftpd could not complete the requested file operation. Check the exact path in the transcript, whether the session is chrooted, and the destination directory’s ownership, mode and ACL. If only overwriting fails, inspect the existing file as well.
Does local_umask fix permission denied?
No. It affects the mode assigned after a file is created. It cannot grant permission to create a file, enter a directory or pass through a parent directory.
Why does MKD fail when I can list the directory?
Listing does not prove that the account can modify directory entries. Creating a directory requires write and execute permission on the parent, plus an enabled vsftpd write policy. A chroot root that is intentionally non-writable may allow listing while denying MKD.
Should I use chmod -R 777?
No. It grants broad access to every local account and can hide the real ownership, group, ACL or path problem. Assign access to the intended account or upload group and limit the writable area.
Best Value
- Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
- Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
- Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
- Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
- Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.
How does chroot_local_user change the path?
It makes the configured login directory appear as the FTP root. A client path is resolved inside that jail, so a host path outside it is not available. Review the chroot list settings together and provide a writable child directory below a protected jail root.
What must be enabled for anonymous uploads?
Use write_enable=YES and anon_upload_enable=YES, and grant the anonymous FTP account write and traversal permission on the intended directory. This is disabled by default and should not be enabled merely to solve a local-user problem.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →What if permissions look right but 550 continues?
Verify the loaded configuration and effective path, then check ACLs, AppArmor and other host policies. Compare the server log with the client transcript. Virtual users may map to an anonymous-like service identity rather than the Unix account name shown by the client.
Final verification checklist
- Record the account type, exact FTP operation and path shown after login.
- Confirm the intended settings in the configuration file: local login, global write policy and, only when deliberate, anonymous upload.
- Inspect the destination and every parent directory for ownership, write permission and traversal permission.
- Resolve the chroot list behavior and test a writable directory inside the jail.
- Leave umask tuning until creation works; use it only to set resulting file modes.
- Reload or restart the service, reconnect, perform one controlled test, and compare the client transcript with the transfer log.
- If the failure remains, verify the loaded configuration, ACLs, AppArmor or other host policy before granting broader access.
The smallest correct fix is the one that enables the required command for the right account and grants that account access only to the intended directory. A 550 response is therefore a useful boundary: it tells you to inspect policy, path and Unix access in that order rather than treating every upload failure as a generic FTP problem.
Frequently Asked Questions
Why can I log in but not upload with vsftpd?
Login only proves authentication. Check local_enable=YES, write_enable=YES, and Unix write and traversal permissions for the destination path.
Can local_umask or anon_umask fix a 550 error?
No. Umask controls modes of files after creation; it does not grant permission to create entries or traverse directories.
Why does vsftpd return 550 Create directory operation failed?
The account usually lacks write and execute permission on the parent directory, or the write policy is disabled. Check the effective chroot path as well.
How do I fix a 550 error with chroot_local_user enabled?
Use a path that exists inside the jail and provide a writable child directory below a protected jail root. Review chroot_local_user, chroot_list_enable and chroot_list_file together.
Should I enable anonymous uploads to bypass permissions?
No. Anonymous uploads require write_enable=YES, anon_upload_enable=YES and access for the anonymous account, creating an unauthenticated write surface.
What should I check when modes look correct?
Verify the running configuration and effective path, then inspect ACLs, AppArmor or another host policy and compare logs with the FTP transcript.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11The Bottom Line
Fix vsftpd 550 errors in order: identify the account and FTP operation, confirm the applicable write policy, resolve the effective path and chroot, then grant only the required Unix ownership, group or ACL access. Use umask for resulting file modes, not authorization, and use logs to confirm that the running service is evaluating the configuration you changed.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




