我有一个程序,它使用root
用户作为脚本参数提供的目录旁边的目录创建一些日志目录。我稍后将chown
它们发送给我的网络服务器用户。
问题是,如果所有这些都在 上,external drive
那么目录确实会创建,但 Web 服务器用户无法写入它们,即其中的文件。我猜这主要是因为目录/media/<my-user>
对 没有执行权限other users
。外部驱动器自动挂载在/media/<my_user>/external-drive
。
我可以通过正确的权限安装fstab
或nautilus
使用打开sudo
然后更改权限,但也许有更好的解决方案。我的应用程序最终用户没有使用 ubuntu/linux 的经验。
我也尝试添加网络服务器用户,plugdev
但没有效果。
答案1
我看不出外部或内部有什么不同:Linux 将安装您要求其安装的内容。这里的区别是,如果 HD 由系统安装,它将以系统认为应该安装的方式安装,这可能会导致权限问题。我从不使用/媒体安装外部驱动器。
如果您将外部硬盘添加到 /etc/fstab,它将以您想要的权限挂载,并像任何其他文件系统一样被考虑。这是我自己的 fstab 的示例:
#<file system> <mount point> <type> <options> <dump> <pass>
UUID=a05fab8c-5c4c-42be-9898-830ec5ad45dc /here/external-drive ext4 defaults,noatime,nofail,noauto 0 0
假设您的日志文件创建于/此处/外部驱动器/日志,只需更改权限以允许 Web 服务器用户在那里写入,一切都应该没问题。
只需记住添加无失败,无自动到您的 fstab 否则每次系统重启时您都会遇到问题。