当前位置: 首页 > 面试题库 >

IOError:设备上没有剩余空间-哪个设备?

卢鸿博
2023-03-14
问题内容

我正在将一个小文件(8.5 Mb)上传到烧瓶测试服务器。

文件上传完成后,服务器报告:

    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/wtforms/form.py", 
        line 212, in __call__
    return type.__call__(cls, *args, **kwargs)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/flask_wtf/form.py", line 49, in __init__
        formdata = request.form
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/local.py", 
        line 338, in __getattr__
    return getattr(self._get_current_object(), name)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/utils.py", 
         line 71, in __get__
    value = self.func(obj)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/wrappers.py", 
         line 484, in form
    self._load_form_data()
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/flask/wrappers.py", 
        line 165, in _load_form_data
    RequestBase._load_form_data(self)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/wrappers.py", 
        line 356, in _load_form_data
    mimetype, content_length, options)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py", 
        line 193, in parse
    content_length, options)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py",
        line 99, in wrapper
    return f(self, stream, *args, **kwargs)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py",
        line 210, in _parse_multipart
    form, files = parser.parse(stream, boundary, content_length)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py", 
        line 520, in parse
    return self.cls(form), self.cls(files)
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/datastructures.py", 
        line 373, in __init__
    for key, value in mapping or ():
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py", 
        line 518, in <genexpr>
    form = (p[1] for p in formstream if p[0] == 'form')
    File "/home/ubuntu/.virtualenvs/eco_app/lib/python2.7/site-packages/werkzeug/formparser.py", 
        line 494, in parse_parts
        _write(ell)
IOError: [Errno 28] No space left on device

现在,服务器具有足够的可用空间-超过3Gb。

我查看了Werkzeug github存储库,以查找Werkzeug尝试写入的位置,但无法对其进行跟踪。

我还检查了tempfile.gettempdir(),该文件将/ var / tmp用作临时文件目录,但是该文件夹实际上是空的,因此我不认为这是造成此问题的位置。


问题答案:

为了防止磁盘空间不足,如果根分区的磁盘空间不足,某些守护程序会用ram磁盘自动“遮盖”当前/ tmp /目录。遗憾的是,一旦再次释放了足够的磁盘空间,该过程就不会自动恢复。

我卸载了/ tmp目录,并遵循了Nitesh的建议:

sudo umount /tmp
sudo echo 'MINTMPKB=0' > sudo /etc/default/mountoverflowtmp

现在上传正常。



 类似资料:
  • 问题内容: 当我尝试将某些文件保存到centos计算机上时,出现错误“设备上没有剩余空间” 我试过了 当我这样做 ->只有5G 似乎文件系统已满。我怎么能找到哪一个尺寸这么大? 问题答案: 和的输出之间的这种差异可能会在某些大文件已被删除但仍由某些进程打开的情况下发生。检查命令以查看哪些进程已打开描述符以删除文件。您可以重新启动该过程,空间将被释放。

  • 我已经向EC2实例附加了一个新卷。卷已成功附加。位于命令输出下面。 DF-H

  • 我在运行一些任务时在hadoop中收到以下异常。但是HDFS显示它有空间。任何有关此错误的信息都会有所帮助。

  • 我在ec2集群上运行一个pyspark作业,有4个工作人员。我得到这个错误: 尝试增加洗牌分区-同样的问题。我的数据在执行器中的分区看起来相当均匀。我想尝试将Null或None分配给dataframes的变通方法,问题是它是否真的会移除中间洗牌文件,以及linage是否会被保留。 例如,如果我的代码如下所示: 我会把

  • 我有一个EMR作业,它读取大约1TB的数据,过滤它并对它进行重新分区(重新分区后有一些连接),但是我的作业在重新分区时失败,错误为“设备上没有空间”。我很想更改“spark.local.dir”,但没有用。我的工作只在D2.4xLarge实例上完成,但在具有类似内核和RAM的R3.4xLarge实例上失败。我找不到这个问题的根本原因。如有任何帮助,不胜感激。 谢谢你抽出时间。

  • 当我处理掉所有的图像和容器时,它确实释放了一些空间,图像构建运行了更长时间,然后以同样的错误失败。所以问题是,这是指哪个空间,我如何配置它?