/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data \ 报错 initdb: error: cannot be run as roo
时间: 2023-09-01 22:13:06 浏览: 187
As an AI language model, I cannot access your system, but the error message "initdb: error: cannot be run as root" indicates that you are trying to run the "initdb" command as the root user, which is not allowed.
To fix this issue, you can create a new user with appropriate permissions to run the "initdb" command or switch to a non-root user before running the command.
You can create a new user with the following command:
```
sudo adduser postgres
```
Then, switch to the postgres user by running:
```
sudo su - postgres
```
After that, you can run the "initdb" command without any issues.
相关问题
creating directory /us/local/pgsql/data . initdb: error: could not create directory /ust/local/pgsql/data": Permission denied
这个错误提示表明你没有足够的权限在根目录下创建子目录。你需要使用管理员权限来执行此操作。可以尝试使用sudo命令来以管理员身份运行创建目录的命令,例如:
```
sudo mkdir /usr/local/pgsql/data
```
这将要求你输入管理员密码,并将创建一个名为“data”的目录。请注意,在使用sudo命令时应小心,确保你信任并理解你要运行的命令。
-bash: /usr/local/postgresql/bin/initdb: 没有那个文件或目录
这个错误提示表明您所在的系统无法找到 `initdb` 命令。这可能是因为 PostgreSQL 没有正确安装或未将其路径添加到系统的环境变量中引起的。
您可以尝试以下步骤解决问题:
1. 确认已经正确安装了 PostgreSQL,并且路径设置正确。
2. 检查您是否有足够的权限运行该命令。
3. 尝试使用完整的路径来运行 `initdb` 命令,例如 `/usr/local/pgsql/bin/initdb`。
如果上述步骤均未解决问题,请检查您的系统环境变量是否正确配置,您可以在 `.bashrc` 或 `.bash_profile` 文件中添加以下内容:
```
export PATH=$PATH:/usr/local/postgresql/bin
```
这将确保您可以在任何位置使用 `initdb` 命令。
如果您仍然无法解决问题,请提供更多详细信息,以便我可以帮助您更好地解决问题。
阅读全文