WordPress.org

Make WordPress Core

Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#37431 closed defect (bug) (worksforme)

Update WordPress 4.5.2 > 4.5.3 Failed - The update could not be unpacked

Reported by: konobi Owned by:
Milestone: Priority: normal
Severity: normal Version: 4.5.3
Component: Upgrade/Install Keywords:
Focuses: Cc:

Description

Error msg:
Downloading update from https://downloads.wordpress.org/release/wordpress-4.5.3-no-content.zip
Unpacking the update…
Verifying the unpacked files…
The update could not be unpacked
Installation Failed

Web server: Apache 2 running under 'www-data' user
WP installatin directory is under 'wp-user' user
PHP: latest 5.5.37
FTP: vsftpd 3.0.2
OS: Debian 7.11

All files are set to 0644 and all directories are set to 0755, and writable by only the user and readable by everyone else, including the web server.

WP config:

<?php
define( 'FS_METHOD', 'ftpext' );
define( 'FTP_USER', 'wp-user' );
define( 'FTP_PASS', 'passw0rd' );
define( 'FTP_HOST', '127.0.0.1:21' );

Manual update is not an option because hundreds of WP installations!
It works over ssh2 method but only ftpext method is allowed. Also, 'chown -R www-data:' works but this also is not allowed (security issue).

Change History (4)

#1 @dd32
4 years ago

  • Keywords reporter-feedback added

Hi @konobi and welcome to Trac,

A few quick questions for you to help narrow down the direction to take to solving this

Does this happen on multiple installations? Did it happen with previous versions, or is 4.5.3 the first to cause it / first version you've tried upgrading on this system?

Do Plugin/Theme upgrades or installs work?

Has it previously work on this web host?


Some background: This error condition is only hit in the scenario where WordPress has successfully connected to the filesystem, written data to disk (successfully), and either a) Realised that the ZIP file it's operating on is incomplete, or corrupt (but yet the ZIP handler could read it) b) The files WordPress wrote to disk have gone missing (it happens) or c) Something is wrong with the FTP exists() method on your server.

Out of all of those, if it's reliably repeatable over multiple installs, and effects plugins/themes too, it's likely c. WP_Filesystem_FtpExt::exists() is probably failing on your server for some reason, it could be an incompatibility between PHP's FTP Extension and the FTP Server, the way we're parsing the response, or something else entirely related to your system.

Anyway, with some answers from the above it should help pinpoint your issue.

#2 @konobi
4 years ago

  • Resolution set to worksforme
  • Status changed from new to closed

Many thanks for the answers and yes, my problem was c). Based on this I've successfully managed this by replacing vsftpd with proftpd.

Last edited 4 years ago by konobi (previous) (diff)

#3 @netweb
4 years ago

  • Milestone Awaiting Review deleted

#4 @netweb
4 years ago

  • Keywords reporter-feedback removed
Note: See TracTickets for help on using tickets.