我正在Windows机器上开发和构建asp.net核心,但将在linux机器(ubuntu)上运行。
这是一个小的辅助项目-我将在visual studio的发布模式下构建文件夹,然后手动将其通过FTP传输到服务器。
设置文件夹或文件权限是否需要执行任何步骤?我记得在某个地方读到过,在windows上创建并复制到linux上的文件默认情况下会打开权限吗?
发布于 2020-12-06 21:53:05
默认情况下,Linux上的文件系统权限比Windows上的更严格一些。不过,这通常只会影响写访问。如果通过FTP复制文件,则通常会以目标计算机上的所有用户都能够读取这些文件的方式创建这些文件。
这也意味着在您的Linux机器上执行您的应用程序的服务可能已经被允许访问这些文件,因此能够通过.NET运行时(使用dotnet
可执行文件)来执行它们。
如果您处于以下任何一种情况,则可能需要格外注意权限:
在这种情况下,在执行应用程序的计算机上没有全局dotnet
可执行文件,但在应用程序的分布式文件中会有一个可执行文件。但是,当您尝试运行应用程序时,您会很快注意到这一点,因为它将无法将您的应用程序写入文件系统,例如,为了保存用户的文件上传,或者如果您有基于文件的数据库(例如,SQLite),则服务用户将需要对它需要访问的文件夹或文件的写访问权限。
https://stackoverflow.com/questions/65163598
复制相似问题