对于想了解OSError:[Errno2]在Django中使用python子进程时,没有此类文件或目录的读者,本文将提供新的信息,我们将详细介绍python子进程没有连接怎么办,并且为您提供关于/.p
对于想了解OSError:[Errno 2]在Django中使用python子进程时,没有此类文件或目录的读者,本文将提供新的信息,我们将详细介绍python子进程没有连接怎么办,并且为您提供关于/.platform/hooks/':将Django App部署到AWS Elastic Beanstalk时没有此类文件或目录、Cython:“严重错误:numpy / arrayobject.h:没有此类文件或目录”、django -supervisorctl总是报告错误:ERROR(没有此类文件)、Heroku和Django:“ OSError:无此类文件或目录:'/ app / {myappname} / static'”的有价值信息。
本文目录一览:- OSError:[Errno 2]在Django中使用python子进程时,没有此类文件或目录(python子进程没有连接怎么办)
- /.platform/hooks/':将Django App部署到AWS Elastic Beanstalk时没有此类文件或目录
- Cython:“严重错误:numpy / arrayobject.h:没有此类文件或目录”
- django -supervisorctl总是报告错误:ERROR(没有此类文件)
- Heroku和Django:“ OSError:无此类文件或目录:'/ app / {myappname} / static'”
OSError:[Errno 2]在Django中使用python子进程时,没有此类文件或目录(python子进程没有连接怎么办)
我正在尝试运行一个程序以使用Python代码在subprocess.call()
其中进行一些系统调用,从而引发以下错误:
Traceback (most recent call last): File "<console>", line 1, in <module> File "/usr/lib/python2.7/subprocess.py", line 493, in call return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 679, in __init__errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory
我的实际Python代码如下:
url = "/media/videos/3cf02324-43e5-4996-bbdf-6377df448ae4.mp4"real_path = "/home/chanceapp/webapps/chanceapp/chanceapp"+urlfake_crop_path = "/home/chanceapp/webapps/chanceapp/chanceapp/fake1"+urlfake_rotate_path = "/home/chanceapp/webapps/chanceapp.chanceapp/fake2"+urlcrop = "ffmpeg -i %s -vf "%(real_path)+"crop=400:400:0:0 "+ "-strict -2 %s"%(fake_crop_path)rotate = "ffmpeg -i %s -vf "%(fake_crop_path)+"transpose=1 "+"%s"%(fake_rotate_path)move_rotated = "mv"+" %s"%(fake_rotate_path)+" %s"%(real_path)delete_cropped = "rm "+"%s"%(fake_crop_path)#system calls:subprocess.call(crop)
我可以得到一些有关如何解决此问题的建议吗?
答案1
小编典典使用shell=True
,如果你传递一个字符串subprocess.call
。
从文档:
如果传递单个字符串,则
shell
必须为True
,否则该字符串必须简单地命名要执行的程序而无需指定任何参数。
subprocess.call(crop, shell=True)
要么:
import shlexsubprocess.call(shlex.split(crop))
/.platform/hooks/':将Django App部署到AWS Elastic Beanstalk时没有此类文件或目录
如何解决/.platform/hooks/'':将Django App部署到AWS Elastic Beanstalk时没有此类文件或目录?
我正在尝试将Django应用程序部署到AWS ElasticBeanStalk。
我按照标记正确答案中的所有指南进行操作,但仍然出现以下错误:
[INFO] -----------------------Command Output-----------------------
[INFO] find: ''/.platform/hooks/'': No such file or directory [INFO]
------------------------------------------------------------
使用Windows操作系统时,我是从https://cocalc.com/在线控制台创建.sh文件的。
我还压缩了文件并使用EBS控制台进行部署,以避免在git add / commit期间转换我的文件。
.ebextension内容中的我的配置文件是:
container_commands:
01_sh_executable:
command: "chmod +x .platform/hooks/predeploy/01_execute.sh"
我的01_execute.sh文件内容为:
#!/bin/bash
source /var/app/venv/*/bin/activate
cd /var/app/staging
python manage.py makemigrations
python manage.py migrate
python manage.py createsu
python manage.py collectstatic --noinp
选择的平台是在64位Amazon Linux 2上运行的Python 3.7。我还注意到,当我运行eb ssh并键入ls时,它将返回空白。 Linux不是我的强项之一。
我们将不胜感激任何帮助。
解决方法
此答案适用于使用 windows 将文件部署到弹性 beantalk 的用户。
我在花了 6 个小时的宝贵时间后找到了此信息。可能没有在官方文档中的任何地方记录
根据此链接“https://forums.aws.amazon.com/thread.jspa?threadID=321653”
psss:最重要的是文件以 LF 行分隔符保存。 CRLF 使“找不到文件或目录”
所以我使用 Visual Studio Code 将 .platform/hooks/postdeploy
中的文件的 CRLF 转换为 LF
在 VS Code 的屏幕右下角有一个小按钮 显示“LF”或“CRLF”:单击该按钮并将其更改为您的 偏好。
我希望这会对 Windows 用户有所帮助!
,来自docs:
Amazon Linux AMI平台版本(在Amazon Linux 2之前)不支持平台挂钩。
对于 Amazon Linux 2 ,有一种新的挂钩机制,如here所述。
Cython:“严重错误:numpy / arrayobject.h:没有此类文件或目录”
我试图加快答案在这里使用用Cython。我尝试编译代码(在完成此处cygwinccompiler.py
介绍的hack之后),但出现错误。谁能告诉我我的代码是否有问题,或者Cython有点神秘?fatal error:numpy/arrayobject.h: No such file ordirectory...compilation terminated
下面是我的代码。
import numpy as np
import scipy as sp
cimport numpy as np
cimport cython
cdef inline np.ndarray[np.int,ndim=1] fbincount(np.ndarray[np.int_t,ndim=1] x):
cdef int m = np.amax(x)+1
cdef int n = x.size
cdef unsigned int i
cdef np.ndarray[np.int_t,ndim=1] c = np.zeros(m,dtype=np.int)
for i in xrange(n):
c[<unsigned int>x[i]] += 1
return c
cdef packed struct Point:
np.float64_t f0,f1
@cython.boundscheck(False)
def sparsemaker(np.ndarray[np.float_t,ndim=2] X not None,np.ndarray[np.float_t,ndim=2] Y not None,ndim=2] Z not None):
cdef np.ndarray[np.float64_t,ndim=1] counts,factor
cdef np.ndarray[np.int_t,ndim=1] row,col,repeats
cdef np.ndarray[Point] indices
cdef int x_,y_
_,row = np.unique(X,return_inverse=True); x_ = _.size
_,col = np.unique(Y,return_inverse=True); y_ = _.size
indices = np.rec.fromarrays([row,col])
_,repeats = np.unique(indices,return_inverse=True)
counts = 1. / fbincount(repeats)
Z.flat *= counts.take(repeats)
return sp.sparse.csr_matrix((Z.flat,(row,col)),shape=(x_,y_)).toarray()
django -supervisorctl总是报告错误:ERROR(没有此类文件)
我用uwsgi,supervisor和Nginx部署django项目.
但是我已经在/etc/supervisord.conf中像上面一样添加了程序.
[program:JZAssist]
command=-E uwsgi --ini /home/work/xxxx/uwsgi.ini
directory=/home/work/xxxx
startsecs=0
stopwaitsecs=0
autostart=true
autorestart=true
我的uwsgi.ini内容是:
[uwsgi]
socket = :8000
chdir = /home/work/xxxx
module = xxxx.wsgi
master = true
processes = 4
vacuum = true
xxxx是我的项目名称.
我在cmd中运行supervisorctl -c /etc/supervisord.conf重新启动.
它显示
xxxx: ERROR (no such file)
/tmp/supervisord.log部分内容:
2017-02-24 23:31:41,433 INFO gave up: JZAssist entered FATAL state,too many start retries too quickly
2017-02-24 23:52:29,940 WARN Failed to clean up '/tmp/JZAssist-stderr---supervisor-goPZyS.log'
2017-02-24 23:52:29,940 WARN Failed to clean up '/tmp/JZAssist-stdout---supervisor-WtfJcp.log'
2017-02-24 23:52:57,535 WARN Failed to clean up '/tmp/JZAssist-stderr---supervisor-goPZyS.log'
2017-02-24 23:52:57,535 WARN Failed to clean up '/tmp/JZAssist-stdout---supervisor-WtfJcp.log'
2017-02-24 23:52:57,541 INFO RPC interface 'supervisor' initialized
2017-02-24 23:52:57,541 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2017-02-24 23:52:57,542 INFO daemonizing the supervisord process
2017-02-24 23:52:57,543 CRIT Could not write pidfile /tmp/supervisord.pid
2017-02-24 23:52:58,544 INFO spawnerr: can't find command '-E'
2017-02-24 23:52:59,546 INFO spawnerr: can't find command '-E'
2017-02-25 00:46:59,234 WARN Failed to clean up '/tmp/JZAssist-stderr---supervisor-goPZyS.log'
2017-02-25 00:46:59,234 WARN Failed to clean up '/tmp/JZAssist-stdout---supervisor-WtfJcp.log'
我不知道为什么它将报告这样的错误.我可以使用runserver.d运行我的django项目,那么缺少什么文件?
为作业创建文件时,命令行应作为shell命令可执行,并且不应依赖内部命令来执行给定的shell.例如,我遇到了一个以以下内容开头的问题:
源/ path / to / python / virtual / environment / bin / activate&& …
但源代码是内置的bash.我需要将其更改为:
bash -c’source / path / to / python / virtual / environment / bin / activate&& …
这样,主管可以找到并运行的可执行文件是bash.
就您而言,看来uwsgi应该是command =之后的第一件事.
您提到您在运行sudo时使用-E标志来保留环境变量,但是主管不需要sudo
Heroku和Django:“ OSError:无此类文件或目录:'/ app / {myappname} / static'”
我在Heroku上有一个Django应用。我在使用静态文件时遇到了一些问题(它们正在一个Heroku环境中加载,但没有在另一个环境中加载),因此我尝试了这里推荐的debug命令。
$ heroku run python manage.py collectstatic --noinputRunning `python manage.py collectstatic --noinput` attached to terminal... up, run.8771OSError: [Errno 2] No such file or directory: ''/app/{myappname}/static''
这是我的settings.py,与Heroku建议的一样:
import osimport os.pathBASE_DIR = os.path.dirname(os.path.abspath(__file__))STATIC_ROOT = ''staticfiles''STATIC_URL = ''/static/''STATICFILES_DIRS = ( os.path.join(BASE_DIR, ''static''),)
无论我在Git存储库的根目录级别上是否实际上有一个目录“ static”(两种方式都对其进行了测试),都会收到错误消息。
有任何想法吗?
答案1
小编典典它正在寻找一个名为“ static”的文件夹,该文件夹位于settings.py旁边,即在项目文件夹中,而不是在git repo的根目录下。
git root/git root/{app name}git root/{app name}/settings.pygit root/{app name}/static/ <- this is what you''re missing
请注意,git不会跟踪空文件夹,因此,如果它为空,则必须在其中放置一个空白文件。或者,删除STATICFILES_DIRS
设置,直到需要它为止。
今天关于OSError:[Errno 2]在Django中使用python子进程时,没有此类文件或目录和python子进程没有连接怎么办的分享就到这里,希望大家有所收获,若想了解更多关于/.platform/hooks/':将Django App部署到AWS Elastic Beanstalk时没有此类文件或目录、Cython:“严重错误:numpy / arrayobject.h:没有此类文件或目录”、django -supervisorctl总是报告错误:ERROR(没有此类文件)、Heroku和Django:“ OSError:无此类文件或目录:'/ app / {myappname} / static'”等相关知识,可以在本站进行查询。
本文标签: