![更改主目录后 Python 和其他程序可能出现的问题](https://linux22.com/image/1180835/%E6%9B%B4%E6%94%B9%E4%B8%BB%E7%9B%AE%E5%BD%95%E5%90%8E%20Python%20%E5%92%8C%E5%85%B6%E4%BB%96%E7%A8%8B%E5%BA%8F%E5%8F%AF%E8%83%BD%E5%87%BA%E7%8E%B0%E7%9A%84%E9%97%AE%E9%A2%98.png)
问题
最近我更改了我的用户名和主目录,(从jasper-ubuntu
到jasper
(两者))我担心这可能会给 Python 和其他程序带来一些问题。
我安装的 Python 版本出现了一些问题,我被告知它不是正确的版本,而且我不知道应该安装哪一个(以及如何)才是好的版本。
我在尝试执行时注意到了这一点umake ide idea-ultimate
,一切都顺利,直到程序实际上结束安装,当发生这种情况时,我收到这个 Python (?) 错误消息。
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/umake/tools.py", line 159, in wrapper
function(*args, **kwargs)
File "/usr/lib/python3/dist-packages/umake/frameworks/baseinstaller.py", line 494, in decompress_and_install_done
add_exec_link(self.exec_path, self.exec_link_name)
File "/usr/lib/python3/dist-packages/umake/tools.py", line 362, in add_exec_link
add_env_to_user("Ubuntu Make binary symlink", {"PATH": {"value": bin_folder}})
File "/usr/lib/python3/dist-packages/umake/tools.py", line 457, in add_env_to_user
remove_framework_envs_from_user(framework_tag)
File "/usr/lib/python3/dist-packages/umake/tools.py", line 441, in remove_framework_envs_from_user
with open(profile_filepath + ".new", "w", encoding='utf-8') as f:
PermissionError: [Errno 13] Permission denied: '/home/jasper/.profile.new'
我已成功通过 JetBrains 工具箱安装该程序,这要归功于戈戈维奇。但谜题仍然存在,我是否正确安装了 Python?这与我更改主目录名称有关吗?
相关信息
当python3 -V
执行时,它返回:
Python 3.8.6
当python -V
执行时,它返回:
Python 3.8.6
我的机器上没有“python2”包。
执行
from pathlib import Path
print(Path.home())
返回/home/jasper
我的正确的实际主目录。
我在 Ubuntu 20.10 非 LTS 上运行
故障排除
我知道这是一个重要的步骤,但我特别不想摆弄与 Python 相关的东西,因为我不得不因为类似的问题重新安装我的整个机器。
答案1
您的 Python 安装应该没有任何问题,因为它位于 /usr/ 下。错误似乎是调用堆栈末尾的权限被拒绝。这是由于 IDE 进程尝试打开 profile.new 文件时缺少权限造成的。
可以通过找到文件并更改权限来修复。
你可以从终端更改它们
chmod -v 770 <filename>
答案2
解决了
看起来我的主目录不属于我,为了改变这一点,我以 root 身份运行 nautilus。sudo nautilus
,然后以图形方式将文件夹和所有子文件夹的所有权更改为我。
这也可以通过终端完成,但我没有寻找命令,而且我不希望任何人读到这个而搞乱,所以我不会试图猜测。
再次感谢戈戈维奇指出这一点。