[英]Running command line results in module not found as user postgres
我试图运行一个软件包wal-e
,我已经以root用户身份使用sudo python3 -m pip install wal-e[aws,azure,google,swift]
。
我可以使用envdir /etc/wal-ed/env wal-e backup-fetch /var/lib/postgresql/9.6/main LATEST
以root
用户envdir /etc/wal-ed/env wal-e backup-fetch /var/lib/postgresql/9.6/main LATEST
完美运行此命令。
但是,当我sudo su - postgres
然后运行envdir /etc/wal-ed/env wal-e backup-fetch /var/lib/postgresql/9.6/main LATEST
,我得到了错误
Traceback (most recent call last):
File "/usr/local/bin/wal-e", line 7, in <module>
from wal_e.cmd import main
ImportError: No module named 'wal_e.cmd'
我使用usermod -aG sudo postgres
授予用户postgres
完整的sudo权限。 另外, wal-e
软件包也安装在同一位置。
当我运行ls -la
-rwxr-xr-x 1 root root 211 Sep 20 14:24 /usr/local/bin/wal-e
我也在Ubuntu 16.04.3上
如何像root
用户一样运行命令?
为了使程序包正常运行,我必须对wal-e运行严格的设置过程 。
归根结底,实际上是在安装和创建用户postgres
之前,在要使用的机器上安装了所有必需的依赖项。 如果用户是在安装所有依赖项之前创建的,则出现权限错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.