![通过 SSHFS 挂载的文件系统的配额](https://linux22.com/image/742093/%E9%80%9A%E8%BF%87%20SSHFS%20%E6%8C%82%E8%BD%BD%E7%9A%84%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E9%85%8D%E9%A2%9D.png)
在客户端 C 上,通过 SSHFS(以用户 U 的身份进行身份验证)挂载了来自服务器 S 的目录。S 上的相关文件系统设置了配额。C 上的用户如何查看自己的配额?quota
在 C 上运行的命令不显示任何内容。有没有什么办法可以让它正常工作?S 使用 XFS,如果这有什么不同的话。
解决方法:
- 以 U 身份通过 SSH 进入 S 并
quota
在那里运行命令。问题是,不应允许 U 访问 S 的 shell。目前,这是通过ForceCommand internal-sftp
中的Match
块实现的sshd_config
。我们必须编写一个包装器脚本来允许sftp-server
和quota
。 - 让 S 上的 CRON 作业定期
quota
为每个用户运行,并将结果放在其主目录中的文件中,例如~/.quota
。优点:SSHD 配置保持整洁;缺点:服务器负载更大,没有实时的用户信息。