我不断尝试安装 django 和其他 python 包,但一直收到完全相同的错误消息:
Installing django-admin.py script to /usr/local/bin
error: /usr/local/bin: File exists
因此我查看了一下以确保我的 /usr/local 文件夹没有问题。乍一看似乎没有问题,直到我尝试 cd 进入 bin。它说不能,因为它不是目录。我觉得很奇怪,所以我尝试了一个
Anchorage:local khotchkiss$ ls -a -l
total 26168
drwxr-xr-x 6 root wheel 204 Dec 26 20:18 .
drwxr-xr-x@ 14 root wheel 476 Feb 24 12:54 ..
-rwxr-xr-x@ 1 root wheel 13395080 Oct 22 23:04 bin
drwxr-xr-x 8 root wheel 272 Dec 26 20:18 git
drwxr-xr-x 4 root wheel 136 Dec 18 11:31 include
drwxr-xr-x 12 root wheel 408 Dec 18 11:31 lib
我不知道“bin”是什么,为什么它这么大,以及为什么它阻止我安装 python 包。有什么线索吗?
答案1
不知何故,一个常规文件以 /usr/local/bin 的名称创建。我要做的第一件事就是将其重命名/移动到某个不妨碍的地方,这样您的各种安装就可以正常进行。然后,您可以尝试弄清楚它是什么以及它来自哪里:尝试file
在其上运行命令以查看它是否是可识别的格式。此外,使用xattr -l
它来查看其扩展属性是否说明了任何有用的信息。
答案2
它会阻止您安装,因为您的django-admin.py
安装程序尝试创建一个目录/usr/local/bin
,但无法创建,因为有一个同名的文件。
使用文本或十六进制编辑器打开它,看看里面有什么。它“只有”13MB。不过,考虑到它的文件名,恐怕它可能是二进制数据。我建议您查看它的扩展属性是什么(ls -al@ /usr/local/bin
)。
如果属性(修改日期?)和内容都无法提示其用途,移动将它放到其他地方,看看是否有问题。可能只是脚本出现故障或 shell 命令写得不好。