POSKeyError: 'No blob file'

I'm trying to recreate a site from a backup of an existing plone 5site, but am unable to display images, receiving the following error after running ./bin//instance fg

Traceback (most recent call last):
File "/home/user/sos/buildout-cache/eggs/ZODB3-3.10.5-py2.7-linux-x86_64.egg/ZODB/Connection.py", line 860, in setstate
self._setstate(obj)
File "/home/user/sos/buildout-cache/eggs/ZODB3-3.10.5-py2.7-linux-x86_64.egg/ZODB/Connection.py", line 922, in _setstate
obj._p_blob_committed = self._storage.loadBlob(obj._p_oid, serial)
File "/home/user/sos/buildout-cache/eggs/ZODB3-3.10.5-py2.7-linux-x86_64.egg/ZODB/blob.py", line 644, in loadBlob
raise POSKeyError("No blob file", oid, serial)
POSKeyError: 'No blob file'

I've recreated the data.fs using repozo, and tried copying the blobstorage (previously created using rsync) and also tried restoring from a tar.gz archive.

The instance works fine, except there are no images.

My understanding is that the blobstorage shouldn't change much over time, except for the most recent changes, so I should at least be able to see some images even if the data.fs and blobstorage were not backed up at precisely the same time.

Any help would be appreciated on the easiest way to do restore images.

Plone 5.0.6 (5016)
CMF 2.2.10
Zope 2.13.24
Python 2.7.12 (default, Oct 12 2016, 13:45:40) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)]
PIL 3.3.0 (Pillow)

did you check if ...

  1. filesystem permissions for the blobdir are rw?
  2. the blobdir contains a .layout file? Often backups are skipping dot-files?

Yes, .layout was the problem. I'll have to recheck my rsync and tar commands. It seems that .layout file should contain the word 'bushy' not 'lawn'. Is that the only difference? Thanks for your help, been looking at this for a while.