0

我试图让项目在 solaris 9 (SPARC) 中运行,所以我可以限制一些用户的内存使用。

根据我读过的内容以及我在 solaris 10 中的回忆,我应该能够

  1. 创建一个组(prodsupt),并将其设为用户默认组
  2. 创建一个名为“group.prodsupt”的项目
  3. 限制组中的资源。

我已经这样做了,但是我的用户仍然没有获得有限的资源

> grep prodsupt /etc/group
prodsupt::6011:
> grep prodsupt /etc/project
group.prodsupt:100:Production Support Project:::process.max-address-space=(privileged.16777216.deny)

这应该将使用 prodsupt 作为默认设置的任何人限制为大约 16mb 的地址空间,但是,如果我以该组中的用户身份登录

> id -p
id=1055(mwatson) gid=6011(prodsupt) projid=100(group.prodsupt)
> prctl -n process.max-address-space $$
3084:   zsh
process.max-address-space                [ lowerable deny no-local-action ]
   18446744073709551615 system     deny           [ max ]

谁能发现我在这里做错了什么?

4

1 回答 1

1

问题是权限中的拼写错误。

group.prodsupt:100:Production Support Project:::process.max-address-space=(privileged.16777216.deny)

本来应该

group.prodsupt:100:Production Support Project:::process.max-address-space=(privileged,16777216,deny)

这解决了问题。

于 2009-03-05T09:17:25.413 回答