繁体   English   中英

OError: [Errno 26] 文本文件忙:'/...myvirtualenv/bin/python'

[英]OError: [Errno 26] Text file busy: '/…myvirtualenv/bin/python'

我尝试重新创建 virtualenv:

foo_bar_d@aptguettler:~$ virtualenv --system-site-packages . 

我得到这个例外:

foo_bar_d@aptguettler:~$ virtualenv --system-site-packages .
New python executable in /home/foo_bar_d/bin/python
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 711, in main
    symlink=options.symlink)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 924, in create_environment
    site_packages=site_packages, clear=clear, symlink=symlink))
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 1230, in install_python
    shutil.copyfile(executable, py_executable)
  File "/usr/lib/python2.7/shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 26] Text file busy: '/home/foo_bar_d/bin/python'

有人知道为什么会发生这种异常吗?

我遇到了完全相同的问题:)

virtualenv 通过修改 virtualenv 目录区域中的 python 可执行文件的副本来工作(afaik)。

您必须已经有一个使用 virtualenv 的进程,因此 python 可执行文件的副本“正在使用”(从技术上讲,它在执行时将 mmap() 放入内存中)。

除非您需要更改 virtualenv 的设置,否则您不需要每次都重新运行 virtualenv 命令 - 一旦设置好,您只需在需要时激活它。

至于为什么会发生 - 您可能在启动时运行了一项服务:

ps -ef | grep python

使用pkill python杀死系统上运行的 Python 进程

我会工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM