Jump to content

Perpetual permission issue with second NAS


strager

Recommended Posts

strager

OK - so I have Emby running on a TerraMaster using TOS3. 

I've been trying to connect it to a second NAS (a WDMyCloud Ex400) that has a different library on it.

I can't mount it in Emby because the My Cloud requires a username/password and apparently Emby doesn't support connecting to a Samba share with one.

I tried mounting it using Remote Share on the Terramaster as NFS, but it tells me it doesn't have permission to read the share.

I finally mounted it as a samba share, but now it appears emby has Read permissions but not write permissions to the drive. The "admin" account on the terramaster can access it just fine.

I tried SSHing in and Chmoding the file (777 with a big 'ol -R to make it apply to all the subfolders) but no luck - the 'emby' account still can't write to it. 

No matter what I try to do, I can't write. Is there a way I can change Emby to use the "admin" account on the terramaster instead of it's own emby account?

 

Link to comment
Share on other sites

strager

Here's an example out of the logs:

 

Quote


2022-12-20 09:48:31.558 Info HttpClient: GET https://assets.fanart.tv/fanart/movies/11974/movieposter/the-burbs-521caeeea4d73.jpg
2022-12-20 09:48:31.868 Info Server: http/1.1 POST http://‌‍‍192.168.1.11‌:8096/emby/Items/77836/RemoteImages/Download?Type=Primary&ImageUrl=https://image.tmdb.org/t/p/original/1oyRR8D5WiVHwunIkOMjl30Jdg5.jpg&ProviderName=TheMovieDb&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome Windows&X-Emby-Device-Id=77b66002-70cb-4d9f-bad7-fca163d4cd54&X-Emby-Client-Version=4.7.10.0. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
2022-12-20 09:48:33.136 Info HttpClient: GET https://image.tmdb.org/t/p/original/1oyRR8D5WiVHwunIkOMjl30Jdg5.jpg
2022-12-20 09:48:33.329 Info ProviderManager: Deleting previous image /mnt/public/wdmycloudex4100/Movies/Burbs, The (1989)/poster.jpg
2022-12-20 09:48:33.455 Error Server: Error processing request
    *** Error Report ***
    Version: 4.7.10.0
    Command line: /mnt/md0/application/emby/system/EmbyServer.dll -programdata /home/emby -ffdetect /usr/local/emby/bin/ffdetect -ffmpeg /usr/local/emby/bin/ffmpeg -ffprobe /usr/local/emby/bin/ffprobe -defaultdirectory /mnt/public -updatepackage emby_TOS_APP_{version}_aarch64.tpk
    Operating system: Linux version 4.4.18-g8bcbd8a-dirty (root@developer) (gcc version 4.9.4 (OpenWrt/Linaro GCC 4.9-2015.06 r48422) ) #1329 SMP Thu Sep 17 16:54:38 CST 20
    Framework: .NET 6.0.8
    OS/Process: arm64/arm64
    Runtime: mnt/md0/application/emby/system/System.Private.CoreLib.dll
    Processor count: 4
    Data path: /home/emby
    Application path: /mnt/md0/application/emby/system
    System.UnauthorizedAccessException: System.UnauthorizedAccessException: Access to the path '/mnt/public/wdmycloudex4100/Movies/Burbs, The (1989)/poster.jpg' is denied.
     ---> System.IO.IOException: Permission denied
       --- End of inner exception stack trace ---
       at System.IO.FileSystem.DeleteFile(String fullPath)
       at System.IO.File.Delete(String path)
       at Emby.Server.Implementations.IO.ManagedFileSystem.DeleteFileInternal(String path, Boolean sendToRecycleBin)
       at Emby.Server.Implementations.IO.ManagedFileSystem.DeleteFile(String path, Boolean sendToRecycleBin)
       at Emby.Server.Implementations.IO.ManagedFileSystem.DeleteFile(String path)
       at Emby.Providers.Manager.ImageSaver.SaveImage(BaseItem item, LibraryOptions libraryOptions, IImageSource source, ReadOnlyMemory`1 mimeType, ImageType type, Nullable`1 imageIndex, Nullable`1 saveLocallyWithMedia, Boolean isFallbackImage, CancellationToken cancellationToken)
       at Emby.Providers.Manager.ProviderManager.SaveImageFromRemoteUrl(BaseItem item, LibraryOptions libraryOptions, String url, ImageType type, Nullable`1 imageIndex, Boolean isFallbackImage, CancellationToken cancellationToken)
       at Emby.Api.Images.RemoteImageService.DownloadRemoteImage(BaseItem item, BaseDownloadRemoteImage request)
       at Emby.Server.Implementations.Services.ServiceController.GetTaskResult(Task task)
       at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost appHost, IRequest httpReq, IResponse httpRes, RestPath restPath, String responseContentType, CancellationToken cancellationToken)
       at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IRequest httpReq, ReadOnlyMemory`1 urlString, ReadOnlyMemory`1 localPath, CancellationToken cancellationToken)
    Source: System.Private.CoreLib
    TargetSite: Void DeleteFile(System.String)
    InnerException: System.IO.IOException: Permission denied
    Source: 
    TargetSite: 

 

Link to comment
Share on other sites

squarepeg

Is there an option to mount the shared folder mapped to a specific user? This screenshot is from TOS5 and in the NFS section but maybe there is a similar option for you image.png.d2973abc10169b572162f10f13674b05.png

Also you could try doing a chown -R 999:999 on the folder (no owner) so anyone can access.

Give these a try and let me know if you have any luck

Link to comment
Share on other sites

strager

CORRECTION TO MY OP: I apparently am on TOS 4.2 not TOS 3. Not sure where I saw 3 before.

 

Thanks for your answer @squarepeg - There was no option to mount as a specific user that I could find. I also don't have that "squash" setting or "asynchronous" anywhere.

These are the only options I have for NFS:

 

image.thumb.png.2d424db1a72a8848ef9b7d083c27c2a6.png

 

I tried to chown and it did not make a difference either :(

 

 

Link to comment
Share on other sites

  • 3 months later...
  • 2 weeks later...
strager

Actually @LukeI never did... I got it to somewhat work but its still throwing the permission errors. Here's a recent one:

 

Quote

2023-04-05 18:45:06.953 Error ProviderManager: Error in metadata saver
    *** Error Report ***
    Version: 4.8.0.21
    Command line: /mnt/md0/application/emby/system/EmbyServer.dll -programdata /home/emby -ffdetect /usr/local/emby/bin/ffdetect -ffmpeg /usr/local/emby/bin/ffmpeg -ffprobe /usr/local/emby/bin/ffprobe -defaultdirectory /mnt/public -updatepackage emby_TOS_APP_{version}_aarch64.tpk
    Operating system: Linux version 4.4.18-g8bcbd8a-dirty (root@developer) (gcc version 4.9.4 (OpenWrt/Linaro GCC 4.9-2015.06 r48422) ) #1329 SMP Thu Sep 17 16:54:38 CST 20
    Framework: .NET 6.0.8
    OS/Process: arm64/arm64
    Runtime: mnt/md0/application/emby/system/System.Private.CoreLib.dll
    Processor count: 4
    Data path: /home/emby
    Application path: /mnt/md0/application/emby/system
    System.UnauthorizedAccessException: System.UnauthorizedAccessException: Access to the path '/mnt/public/wdmycloudex4100/Movies/Batman Vs Robin (2015)/Batman Vs Robin (2015).nfo' is denied.
     ---> System.IO.IOException: Permission denied
       --- End of inner exception stack trace ---
       at Interop.CheckIo(Error error, String path, Boolean isDirectory, Func`2 errorRewriter)
       at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
       at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
       at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
       at System.IO.Strategies.FileStreamHelpers.ChooseStrategy(FileStream fileStream, String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, Int64 preallocationSize)
       at System.IO.FileStream..ctor(String path, FileStreamOptions options)
       at Emby.Server.Implementations.IO.ManagedFileSystem.GetFileStream(String path, FileOpenMode mode, FileAccessMode access, FileShareMode share, Int32 bufferSize, FileOpenOptions fileOpenOptions, Int64 preAllocationSize)
       at NfoMetadata.Savers.BaseNfoSaver.SaveToFile(Stream stream, String path, LibraryOptions libraryOptions, CancellationToken cancellationToken)
       at NfoMetadata.Savers.BaseNfoSaver.Save(BaseItem item, LibraryOptions libraryOptions, CancellationToken cancellationToken)
       at Emby.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, LibraryOptions libraryOptions, ItemUpdateType updateType, IMetadataSaver[] savers, CancellationToken cancellationToken)
    Source: System.Private.CoreLib
    TargetSite: Void CheckIo(Error, System.String, Boolean, System.Func`2[Interop+ErrorInfo,Interop+ErrorInfo])
    InnerException: System.IO.IOException: Permission denied
    Source: 
    TargetSite: 

 

Link to comment
Share on other sites

@stragerit appears you enabled saving metadata to nfo files but the server is being denied write access to your media folders. I would suggest resolving those permissions or just turning off nfo file saving. Please let us know if this helps. Thanks.

Link to comment
Share on other sites

  • 1 month later...
strager

That's the bulk of the issue. I can't seem to give Emby permission to write. I've tried everything I can think of, but there seems to be no way to give it credentials and even when I changed the permissions on the folders to 777 it still gives the error. 

Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...