Uploading content to the library fails with error: Content Library Service does not have write permission on this storage backing
search cancel

Uploading content to the library fails with error: Content Library Service does not have write permission on this storage backing

book

Article ID: 321244

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:
You will see the following warning in the upgrade logs when upgrading from vCenter Server appliance 6.0 if the user vdcs did not have user id of 1006.

"User vdcs does not have the expected uid 1006"

Note: You can safely ignore this message if you are not using Content Library Service before the upgrade, or using it only for libraries not backed by NFS storage.

If you are using VMware Content Library Service for NFS backed directories, you may be unable to modify content stored in these directories. When trying to perform such operation, you will get a message indicating that Content Library Service does not have write permission on this storage backing.

The exact error message will differ based on the operation you are trying.

For example : While uploading content to such library you see message similar to:

The "Upload Files to a Library Item" operation failed for the entity with the following error message.

The provided storage backing /etc/vmware-content-library/nfsmounts/library-nfs-mount-e72b03d9-6626-4301-8d1f-4c47ca6c6679 for library e72b03d9-6626-4301-8d1f-4c47ca6c6679 is invalid.
Content Library Service does not have write permission on this storage backing. This might be because the user who is running Content Library Service on the system does not have write permission on it.


Environment

VMware vCenter Server Appliance 6.0.x

Resolution

To resolve this issue:

Note: Perform this step only once after upgrade, and only for the nfs backed libraries that were created before the upgrade.
  1. Login to the NFS server and cd to the mount point
  2. Run the following command for each NFS mounted library

sudo find <library-id> --exec chown 1006 {} \;


Note: The NFS library ids can be found using the following database query. The storageuri part after nfs:// will give the NFS server name and the mount point.


select l.id library_id, l.name, s.storageuri
    from
        cl_library l, cl_library_storage ls, cl_storage s

    where
        l.id = ls.library_id
        and ls.storage_id = s.id
        and s.storageuri like '%nfs%:%';



Example output:


              library_id              |  name   |  storageuri                                                                                                                   
--------------------------------------+---------+---------------------------------------------------------------------------------------------------------------------------------------------------------------
 e72b03d9-6626-4301-8d1f-4c47ca6c6679 | 65-CL01 | file:///etc/vmware-content-library/nfsmounts/library-nfs-mount -e72b03d9-6626-4301-8d1f-4c47ca6c6679-ClsPathSeparator-nfs://cls-nfsv4.eng.vmware.com/nfs3share