Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encryption Error while deleting folder Error: fread(): Read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#860 #21578

Closed
AndyXheli opened this issue Jun 25, 2020 · 52 comments
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap bug

Comments

@AndyXheli
Copy link

AndyXheli commented Jun 25, 2020

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce

  1. Create a folder then delete it

Expected behaviour

Tell us what should happen

Actual behaviour

Tell us what happens instead

Error PHP fread(): read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#861

Server configuration

Operating system:
Ubunti 18.0.4
Web server:
Apache2
Database:
MySQL
PHP version:
7.4.7
Nextcloud version: (see Nextcloud admin page)
19.0
Updated from an older Nextcloud/ownCloud or fresh install:

Where did you install Nextcloud from:

Signing status:

Signing status
Login as admin user into your Nextcloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

List of activated apps:

App list Enabled: - accessibility: 1.5.0 - activity: 2.12.0 - admin_audit: 1.9.0 - bruteforcesettings: 1.6.0 - cloud_federation_api: 1.2.0 - comments: 1.9.0 - contactsinteraction: 1.0.0 - dav: 1.15.0 - encryption: 2.7.0 - federatedfilesharing: 1.9.0 - federation: 1.9.0 - files: 1.14.0 - files_external: 1.10.0 - files_pdfviewer: 1.8.0 - files_rightclick: 0.16.0 - files_sharing: 1.11.0 - files_trashbin: 1.9.0 - files_versions: 1.12.0 - files_videoplayer: 1.8.0 - firstrunwizard: 2.8.0 - logreader: 2.4.0 - lookup_server_connector: 1.7.0 - nextcloud_announcements: 1.8.0 - notifications: 2.7.0 - oauth2: 1.7.0 - password_policy: 1.9.1 - photos: 1.1.0 - privacy: 1.3.0 - provisioning_api: 1.9.0 - recommendations: 0.7.0 - richdocuments: 3.7.2 - serverinfo: 1.9.0 - settings: 1.1.0 - sharebymail: 1.9.0 - socialsharing_email: 2.0.0 - support: 1.2.1 - survey_client: 1.7.0 - systemtags: 1.9.0 - text: 3.0.1 - theming: 1.10.0 - twofactor_backupcodes: 1.8.0 - updatenotification: 1.9.0 - viewer: 1.3.0 - workflowengine: 2.1.0
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

Nextcloud configuration:

Config report
If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder

or 

Insert your config.php content here. 
Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …)

Are you using external storage, if yes which one: local/smb/sftp/...

Are you using encryption: yes/no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

LDAP configuration (delete this part if not used)

LDAP config
With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your Nextcloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser:

Operating system:

Logs

Web server error log

Web server error log
Insert your webserver log here

Nextcloud log (data/nextcloud.log)

Nextcloud log
Insert your Nextcloud log here

Browser log

Browser log
Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log
c) ...
![image](https://user-images.githubusercontent.com/59488153/85640490-89e03580-b651-11ea-9235-0b672653aa26.png)
@AndyXheli AndyXheli added 0. Needs triage Pending check for reproducibility or if it fits our roadmap bug labels Jun 25, 2020
@AndyXheli
Copy link
Author

AndyXheli commented Jun 25, 2020

Looks like it may have something to do with PHP 7.4.7 I went back to PHP 7.3.19 and did not get that error.

@AndyXheli AndyXheli changed the title NC 17 Error PHP fread(): read of 8192 bytes failed with errno=21 NC 19 Error PHP 7.4 fread(): read of 8192 bytes failed with errno=21 Jun 25, 2020
@closingin
Copy link

I can confirm this bug. I have the same error using the docker image with PHP 7.4.7.

@AndyXheli
Copy link
Author

AndyXheli commented Aug 3, 2020

Hello any updates on this.

Still have this issue

Fatal webdav TypeError: Argument 2 passed to OC\Files\Storage\Wrapper\Encryption::modifyMetaData() must be of the type array, null given, called in /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php on line 208   16 minutes ago
Error PHP Trying to access array offset on value of type null at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#208   16 minutes ago
Fatal webdav TypeError: Argument 2 passed to OC\Files\Storage\Wrapper\Encryption::modifyMetaData() must be of the type array, null given, called in /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php on line 208   17 minutes ago
Error PHP Trying to access array offset on value of type null at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#208   17 minutes ago
Error PHP fread(): read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#861

@AndyXheli
Copy link
Author

Still having this issue on Nextcloud 19.0.1 PHP: Version: 7.4.8

@AndyXheli
Copy link
Author

@MorrisJobke Is this something thats being worked on?

fread(): read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#862

@AndyXheli
Copy link
Author

@MorrisJobke any updates on this issue?

@MorrisJobke
Copy link
Member

@MorrisJobke any updates on this issue?

Not really. I linked just the wrong ticket 🙈

@AndyXheli
Copy link
Author

@MorrisJobke Okay thank you for the update. Anyway we can have someone look into this please!

@AndyXheli
Copy link
Author

Same issue on NC 19.0.3

@toxpal
Copy link

toxpal commented Sep 24, 2020

Have exactly the same problem after updating to 19.0.3. All previous versions worked just fine.

@RedKage
Copy link

RedKage commented Oct 12, 2020

@axheli I do have these errors in the log as well.

And also in the client
image

But it doesn't seem to affect Nextcloud beyond these errors.
Everythings gets deleted fine, and uploaded fine.
Or did I miss something?

@AndyXheli AndyXheli changed the title NC 19 Error PHP 7.4 fread(): read of 8192 bytes failed with errno=21 NC 20 Error PHP 7.4 fread(): read of 8192 bytes failed with errno=21 Nov 8, 2020
@kesselb kesselb reopened this Nov 11, 2020
@AndyXheli AndyXheli changed the title NC 20 Error PHP 7.4 fread(): read of 8192 bytes failed with errno=21 Encryption Error while deleting folder Nov 13, 2020
@Kuphi
Copy link

Kuphi commented Nov 17, 2020

Please fix asap. Also having this issue on NC 19.0.4
I have an encrypted nextcloud (encrypted for each user separately). The error occurs, when a user tries to delete a folder in a folder, that is shared with him.
It also occurs when I try to cut and paste a folder.
Error: fread(): read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#862

Operating system: Ubuntu server 18.0.4
Web server: Apache2
Database: MySQL / MariaDB
PHP version: 7.4.3
Nextcloud version: (see Nextcloud admin page) 19.0.4
Updated from an older Nextcloud/ownCloud or fresh install: From Nextcloud 18 (Nextcloud 18 was fresh install)

@Kuphi
Copy link

Kuphi commented Nov 18, 2020

Getting dozens of those:

`Error: fread(): read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#862
<>

OC\Log\ErrorHandler::onError()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php - line 862:

fread()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php - line 930:

OC\Files\Storage\Wrapper\Encryption->readFirstBlock()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php - line 961:

OC\Files\Storage\Wrapper\Encryption->getHeader()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php - line 294:

OC\Files\Storage\Wrapper\Encryption->getEncryptionModule()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php - line 278:

OC\Files\Storage\Wrapper\Encryption->rename()

/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php - line 572:

OC\Files\Storage\Wrapper\Wrapper->rename()

/var/www/nextcloud/apps/files_trashbin/lib/Trashbin.php - line 294:

OC\Files\Storage\Wrapper\Wrapper->moveFromStorage()

/var/www/nextcloud/apps/files_trashbin/lib/Trash/LegacyTrashBackend.php - line 108:

OCA\Files_Trashbin\Trashbin::move2trash()

/var/www/nextcloud/apps/files_trashbin/lib/Trash/TrashManager.php - line 103:

OCA\Files_Trashbin\Trash\LegacyTrashBackend->moveToTrash()

/var/www/nextcloud/apps/files_trashbin/lib/Storage.php - line 192:

OCA\Files_Trashbin\Trash\TrashManager->moveToTrash()

/var/www/nextcloud/apps/files_trashbin/lib/Storage.php - line 118:

OCA\Files_Trashbin\Storage->doDelete()

/var/www/nextcloud/lib/private/Files/View.php - line 1161:

OCA\Files_Trashbin\Storage->rmdir()

/var/www/nextcloud/lib/private/Files/View.php - line 350:

OC\Files\View->basicOperation()

/var/www/nextcloud/apps/dav/lib/Connector/Sabre/Directory.php - line 308:

OC\Files\View->rmdir()

/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php - line 183:

OCA\DAV\Connector\Sabre\Directory->delete()

/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 295:

Sabre\DAV\Tree->delete()

/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php - line 89:

Sabre\DAV\CorePlugin->httpDelete()

/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 474:

Sabre\DAV\Server->emit()

/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 251:

Sabre\DAV\Server->invokeMethod()

/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 319:

Sabre\DAV\Server->start()

/var/www/nextcloud/apps/dav/lib/Server.php - line 320:

Sabre\DAV\Server->exec()

/var/www/nextcloud/apps/dav/appinfo/v2/remote.php - line 35:

OCA\DAV\Server->exec()

/var/www/nextcloud/remote.php - line 167:

require_once("/var/www/ne ... p")`

@AndyXheli
Copy link
Author

AndyXheli commented Nov 18, 2020

Based on what i can see its happening on PHP 7.4 if you downgrade to 7.3 i dont see this error, but that's not a solutions. There should be a fix of this.

@Kuphi
Copy link

Kuphi commented Nov 18, 2020

Based on what i can see its happening on PHP 7.4 if you downgrade to 7.3 i dont see this error, but that's not a solutions. There should be a fix of this.

Hopefully for NC 19.0.6 and 20.0.3. This error is crowding my logfiles for weeks already.

@AndyXheli

This comment has been minimized.

@MorrisJobke

This comment has been minimized.

@jknockaert
Copy link
Contributor

The fix is now merged and I guess it will be included in the next point release of NC 21.

@AndyXheli
Copy link
Author

AndyXheli commented Apr 6, 2021 via email

@AndyXheli
Copy link
Author

#24966 should be fixed in the next 21 release

@jknockaert
Copy link
Contributor

Fixed in #24966

@AndyXheli
Copy link
Author

@jknockaert sorry must of opened it on accident

backportbot-nextcloud bot pushed a commit that referenced this issue Jun 6, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
backportbot-nextcloud bot pushed a commit that referenced this issue Jun 6, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
backportbot-nextcloud bot pushed a commit that referenced this issue Jun 6, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
skjnldsv pushed a commit that referenced this issue Jul 1, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
@AndyXheli
Copy link
Author

AndyXheli commented Jul 2, 2021

@jknockaert This is still an issue on 21.0.3 looks like the #24966 fix has not been added can you please add this?

@jknockaert
Copy link
Contributor

@AndyXheli I am no longer using the encryption app (I disabled it) and I do no longer support any code I wrote including #24966. Maybe someone else can help you.

@AndyXheli
Copy link
Author

@jknockaert Thank you for your effort. Since this is not fixed can you please reopen this ticket ?

@jknockaert
Copy link
Contributor

@AndyXheli You can reopen it or create a new one. For me the issue is gone.

@AndyXheli
Copy link
Author

@jknockaert Thank you very much.

@AndyXheli AndyXheli changed the title Encryption Error while deleting folder Encryption Error while deleting folder Error: fread(): Read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php#860 Jul 2, 2021
@RedKage
Copy link

RedKage commented Jul 2, 2021

I have just updated to 21.0.3
And the file Encryption.php hasn't changed since @jknockaert fix.
There's just some additional comments, that's all.
So the fix should still work.
I'm applying it, and we will see

@AndyXheli
Copy link
Author

@RedKage I did apply the fix and it still dose work. Someone just need to backport it

github-actions bot pushed a commit that referenced this issue Jul 27, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
nextcloud-command pushed a commit that referenced this issue Sep 3, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
nextcloud-command pushed a commit that referenced this issue Sep 3, 2021
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
@RedKage
Copy link

RedKage commented Sep 30, 2021

Seems like this patch is live on version 21.0.5
Which is kinda weird as I don't remember seeing this in the changelog https://nextcloud.com/changelog#21-0-5

@dzaziz
Copy link

dzaziz commented Dec 22, 2022

I have similar issue, not sure what cause the error in the logfile.

Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:16+0800
Error PHP Error: hash_file(): Read of 8192 bytes failed with errno=21 Is a directory at /snap/nextcloud/32871/htdocs/lib/private/Files/Storage/Local.php#390   2022-12-22T08:33:15+0800

@afzl-wtu
Copy link

afzl-wtu commented Nov 6, 2023

LOL Issue is still present in 27.1.3

@olivka86
Copy link

27.1.4 has this issue too
{"reqId":"H14hMo8rHwStihWXsXXm","level":3,"time":"2023-12-13T12:33:06+00:00","remoteAddr":"192.168.1.191","user":"owner","app":"PHP","method":"MOVE","url":"/remote.php/dav/uploads/owner/ee1871439985347b926ae0b34eb9f924/.file","message":"fread(): Read of 8192 bytes failed with errno=5 Input/output error at /var/www/html/3rdparty/icewind/streams/src/Wrapper.php#55","userAgent":"Mozilla/5.0 (Android) Nextcloud-android/3.26.0","version":"27.1.4.1","data":{"app":"PHP"}}

@metorm
Copy link

metorm commented Apr 25, 2024

Hello, this is v28.0.4 and the error is still there

[PHP] 错误: file_get_contents(): Read of 8192 bytes failed with errno=21 Is a directory at /var/www/nextcloud/lib/private/Files/Storage/Local.php#331
from ? by -- at 2024年4月25日 10:53:22

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap bug
Projects
None yet
Development

No branches or pull requests