【问题标题】:Debian UnauthorizedAccessException for .NET application.NET 应用程序的 Debian UnauthorizedAccessException
【发布时间】:2017-05-31 16:17:01
【问题描述】:

我为 Debian 8 (jessi) 开发了 .NET 应用程序,我发现了这个异常(System.UnauthorizedAccessException,权限访问路径 /usr/lib/myapplication/mydir/myfile.db 被拒绝)。 已执行 mydir 的命令 chmod -R 0777。没有效果。 有任何想法吗 ?

UPD: 我正在使用 LiteDb 库来创建 lite.db 本地数据库。 调用栈: System.UnauthorizedAccessException:访问路径 'path_to_litedb_file' 被拒绝。 ---> System.IO.IOException: 权限被拒绝

在 Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func2 errorRewriter) at Interop.CheckIo[TSafeHandle](TSafeHandle handle, String path, Boolean isDirectory, Func2 errorRewriter) 在 Microsoft.Win32.SafeHandles.SafeFileHandle.Open(字符串路径,OpenFlags 标志,Int32 模式) 在 System.IO.UnixFileStream..ctor(字符串路径、FileMode 模式、FileAccess 访问、FileShare 共享、Int32 bufferSize、FileOptions 选项、FileStream 父级) 在 System.IO.UnixFileSystem.Open(字符串 fullPath、FileMode 模式、FileAccess 访问、FileShare 共享、Int32 bufferSize、FileOptions 选项、FileStream 父级) 在 System.IO.FileStream.Init(字符串路径、FileMode 模式、FileAccess 访问、FileShare 共享、Int32 bufferSize、FileOptions 选项) 在 LiteDB.FileDiskService.CreateFileStream(String path, FileMode mode, FileAccess access, FileShare share) 在 LiteDB.FileDiskService.Initialize(Logger 日志,字符串密码) 在 LiteDB.LiteEngine..ctor(IDiskService 磁盘,字符串密码,Nullable1 timeout, Int32 cacheSize, Logger log) at LiteDB.LiteDatabase.<>c__DisplayClass11_0.<.ctor>b__0() at LiteDB.LazyLoad1.get_Value() 在 LiteDB.LiteCollection`1.EnsureIndex(String field, Boolean unique)

【问题讨论】:

  • 你用什么代码来读取文件?
  • 我首先尝试创建它。对于此操作,我的代码使用 LiteDb 进行此操作。

标签: debian .net-core


【解决方案1】:

我在配置 LiteDb 数据库时使用了错误的文件路径。 问题已解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-23
    • 1970-01-01
    • 2013-02-12
    • 1970-01-01
    • 2023-03-21
    • 2021-08-27
    • 1970-01-01
    相关资源
    最近更新 更多