![导致:IOError:[Errno 28]设备上没有剩余空间:磁盘上有很多空间的’..results32766.html’,第1张 导致:IOError:[Errno 28]设备上没有剩余空间:磁盘上有很多空间的’..results32766.html’,第1张](/aiimages/%E5%AF%BC%E8%87%B4%EF%BC%9AIOError%EF%BC%9A%5BErrno+28%5D%E8%AE%BE%E5%A4%87%E4%B8%8A%E6%B2%A1%E6%9C%89%E5%89%A9%E4%BD%99%E7%A9%BA%E9%97%B4%EF%BC%9A%E7%A3%81%E7%9B%98%E4%B8%8A%E6%9C%89%E5%BE%88%E5%A4%9A%E7%A9%BA%E9%97%B4%E7%9A%84%E2%80%99..results32766.html%E2%80%99.png)
不同的是在机器上导致我正在写入外部硬盘驱动器的问题.为了使事情甚至这个脚本,这个脚本已经在问题机器上运行,并且已经写入了超过30,000个文件.
一些相关信息(导致错误的代码):
nPage = 0while nPage != -1: for d in data: if len(d.contents) > 1: if '<script' in str(d.contents): l = str(d.contents[1]) start = l.find('http://') end = l.find('>',start) out = get_records.openURL(l[start:end]) print COUNT with open('../results/'+str(COUNT)+'.HTML','w') as f: f.write(out) COUNT += 1 nPage = nextPage(mOut,False) 我写的目录:
10:32@lorax:~/econ/estc/bin$ll ../total 56drwxr-xr-x 3 boincuser boincuser 4096 2011-07-31 14:29 ./drwxr-xr-x 3 boincuser boincuser 4096 2011-07-31 14:20 ../drwxr-xr-x 2 boincuser boincuser 4096 2011-08-09 10:38 bin/lrwxrwxrwx 1 boincuser boincuser 47 2011-07-31 14:21 results -> /media/cavalry/server_backup/econ/estc/results//-rw-r--r-- 1 boincuser boincuser 44759 2011-08-09 10:32 test.HTML
证明有足够的空间:
10:38@lorax:~/econ/estc/bin$df -hfilesystem Size Used Avail Use% Mounted on/dev/sda1 9.0G 5.3G 3.3G 63% /none 495M 348K 495M 1% /devnone 500M 164K 500M 1% /dev/shmnone 500M 340K 500M 1% /var/runnone 500M 0 500M 0% /var/locknone 9.0G 5.3G 3.3G 63% /var/lib/ureadahead/deBUGfs/dev/sdc10 466G 223G 244G 48% /media/cavalry
我尝试过的一些事情:
>将写入的路径更改为直接位置,而不是通过链接
>重新启动机器
>卸载并重新安装驱动器
特别是在Python中,这可能发生在任何写I / O *** 作中.它可能在f.write期间发生,但它也可能发生在open,f.flush甚至f.close上.发生的地方提供了一个至关重要的线索,因为它的确 – 如果发生在开放的时候,没有足够的空间来写入条目的元数据,如果它发生在f.write,f.flush或f.close那里没有足够的磁盘空间,或者您已超过最大文件大小.
如果给定目录中的文件系统是vfat,那么您将在与之相同的时间内达到最大文件限制.该限制应该是2 ^ 16个目录条目,但是如果我正确地回忆一些其他因素可能会影响它(例如一些文件需要多个条目).
最好避免在目录中创建这么多文件.很少的文件系统很容易处理这么多的目录条目.除非您确定文件系统与目录中的许多文件兼容,否则可以考虑另一策略(例如创建更多目录).
附:还不要相信剩余的磁盘空间 – 一些文件系统为root保留一些空间,而其他文件系统会计算可用空间,并给出一个不正确的数字.
总结以上是内存溢出为你收集整理的导致:IOError:[Errno 28]设备上没有剩余空间:磁盘上有很多空间的’../results/32766.html’全部内容,希望文章能够帮你解决导致:IOError:[Errno 28]设备上没有剩余空间:磁盘上有很多空间的’../results/32766.html’所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)