我正在为 Node / Express 教程安装 MongoDB,并在创建 /data/db 文件夹和以下命令时:
sudo chown 'id -u' /data/db
我收到以下错误:
chown: id -u: illegal user name
您可以查找当前用户名,然后尝试设置权限。
$ whoami
username
$ sudo chown username /data/db
希望有帮助。
失败的原因是您的语法错误,并且您误解了从找到它的源中引用的内容。您需要使用这样的引号来执行命令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/
这些通常会布置具有适合您的系统约定的目录结构的安装,并创建具有所有适当权限mongodb
的mongod
进程运行的用户。它们通常有一个配置文件,您也可以在其中设置选项。该过程通常也设置为“服务”,因此您无需在每次要使用时手动调用它。
您可以在启动时或在配置文件部分中指定--dbpath选项,这当然是由--config选项加载的。
无论如何,您通常应该mongod
使用为该用户设置的数据和日志目录的选项和权限,以自己的用户(而不是 root)身份运行进程。