使 Python 模块可供所有 Linux 用户使用

Make Python module available for all Linux users

我有一个 Python 2.7 的问题,如果有人能帮忙的话。 当我们使用 pip 安装 Python 模块时,我们如何让所有用户都可以使用它?请参阅下面的示例(带有模块 faker)。导入在我是 root 时有效,但在我是 ubuntu 用户时无效。 我已经尝试使用选项 --system 进行安装,并按照我发现的一些文章中的建议更改 umask。到目前为止没有工作。有任何想法吗? 如果我们 运行 “which python”,两个用户都指向同一个。

root@ip-172-30-244-157:/home/ubuntu# 
root@ip-172-30-244-157:/home/ubuntu# python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> import faker
>>> 
>>> exit()
root@ip-172-30-244-157:/home/ubuntu# 
root@ip-172-30-244-157:/home/ubuntu# 
root@ip-172-30-244-157:/home/ubuntu# exit
exit
ubuntu@ip-172-30-244-157:~$ 
ubuntu@ip-172-30-244-157:~$ 
ubuntu@ip-172-30-244-157:~$ python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import faker
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named faker
>>> 

好的,我解决了这个问题。 就我而言,有问题的模块是“faker”。但是,当我们安装 faker 时,也会安装另一个附加模块(在本例中 - text-unidecode)。 然后我卸载了两个模块,运行 "umask 022" 和 re-installed faker。 这解决了所有其他用户的问题。 感谢大家的帮助!