远程设置 SAMBA 共享目录的大小限制

Btz*_*Btz 3 administration samba cifs

我被要求在我管理的服务器上为同事设置一个共享目录。我在该服务器上为他创建了一个帐户,使用smbpasswd设置了 Samba 密码,创建了一个目录并将其设置在 smb.conf 文件中,我将其复制到下面:

[global]
workgroup = OURWORKGROUP
server string = Samba Server %v
netbios name = server_i_run
security = user
map to guest = bad user
name resolve order = bcast lmhosts host wins 
dns proxy = no
[coworkerguy]
path = /samba/coworkerguy
valid users = coworkerguy
guest ok = no
writable = yes
browsable = yes
Run Code Online (Sandbox Code Playgroud)

现在我被要求将此空间限制为 2Gb。我在网上寻找想法,但我找不到最近的任何东西,并且设置磁盘配额显然是最受欢迎的解决方案之一。我承认我没有那么自信这样做,而且经常出现我必须在单用户模式下重新启动 - 除非我误解了一些东西。这是不可能的,因为我只能远程 ssh 到该服务器。有我可以使用的技术吗?如果没有,有人可以指点我一个防白痴指南吗?

the*_*rpy 9

我知道我的解决方案不是最好的,但它有效;-)。编辑:也请阅读我的其他答案,这个答案是一个邪恶的黑客!

使用 dd 创建一个 2Gb 文件,格式化文件,例如 ext3,挂载它,将其添加到 fstab 并将其用作共享。

$ dd if=/dev/zero of=filename bs=1024 count=2M
$ sudo mkfs.ext4 filename
$ cat /etc/fstab
/path/to/filename /mount/point ext4 defaults,users
Run Code Online (Sandbox Code Playgroud)

现在您将共享指向/mount/point(或您选择安装它的任何位置),因此

path = /samba/coworkerguy 变成 path = /mount/point

在 UNIX 中,一切都是文件。