11

我正在为 Node / Express 教程安装 MongoDB,并在创建 /data/db 文件夹和以下命令时:

sudo chown 'id -u' /data/db

我收到以下错误:

chown: id -u: illegal user name
4

2 回答 2

18

您可以查找当前用户名,然后尝试设置权限。

$ whoami
username
$ sudo chown username /data/db

希望有帮助。

于 2014-02-25T03:34:04.297 回答
4

失败的原因是您的语法错误,并且您误解了从找到它的源中引用的内容。您需要使用这样的引号来执行命令id

chown `id -u` /data/db

看到不同?

此外,您似乎对如何安装 mongodb 产生了误解,并且可能已经从 tarball 进行构建。/data/db路径不是必需的,它只是默认位置。

但是您通常可以为您的系统安装软件包:

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/

这些通常会布置具有适合您的系统约定的目录结构的安装,并创建具有所有适当权限mongodbmongod进程运行的用户。它们通常有一个配置文件,您也可以在其中设置选项。该过程通常也设置为“服务”,因此您无需在每次要使用时手动调用它。

您可以在启动时或在配置文件部分中指定--dbpath选项,这当然是由--config选项加载的。

无论如何,您通常应该mongod使用为该用户设置的数据和日志目录的选项和权限,以自己的用户(而不是 root)身份运行进程。

于 2014-02-25T04:01:10.070 回答