amazon-ec2 - 保存文件: Unable to open database file时出错

标签 amazon-ec2 jupyter-notebook

我正在运行RHEL上的远程AWS EC2镜像上托管的Ipython笔记本。我正在使用2个系统之间的端口转发从本地浏览器访问笔记本,前几天工作得很好。

现在,启动笔记本时遇到以下错误消息:

> [E 20:34:57.072 NotebookApp] 500 PUT /api/contents/HW4/HW4.ipynb (::1)
> 9.14ms referer=http://localhost:8880/notebooks/HW4/HW4.ipynb [W 20:35:10.315 NotebookApp] Replacing stale connection:
> 14cfb1f0-1d03-4a84-818e-d11938db6bd6:57AB20A0DD6A47A5815DE5FA12D0C101
> [W 20:36:34.428 NotebookApp] Replacing stale connection:
> 14cfb1f0-1d03-4a84-818e-d11938db6bd6:57AB20A0DD6A47A5815DE5FA12D0C101
> [I 20:36:57.080 NotebookApp] Saving file at /HW4/HW4.ipynb [E
> 20:36:57.083 NotebookApp] Error while saving file: HW4/HW4.ipynb
> unable to open database file
>     Traceback (most recent call last):
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/notebook/services/contents/filemanager.py",
> line 395, in save
>         self.check_and_sign(nb, path)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/notebook/services/contents/manager.py",
> line 431, in check_and_sign
>         self.notary.sign(nb)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/nbformat/sign.py",
> line 263, in sign
>         self.store_signature(signature, nb)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/nbformat/sign.py",
> line 270, in store_signature
>         (self.algorithm, signature, datetime.utcnow())
>     sqlite3.OperationalError: unable to open database file [W 20:36:57.084 NotebookApp] Unexpected error while saving file:
> HW4/HW4.ipynb unable to open database file [E 20:36:57.084
> NotebookApp] {
>       "Content-Type": "application/json",
>       "Connection": "keep-alive",
>       "Referer": "http://localhost:8880/notebooks/HW4/HW4.ipynb",
>       "Accept-Encoding": "gzip, deflate",
>       "Content-Length": "24540",
>       "Accept-Language": "en-US,en;q=0.5",
>       "Accept": "application/json, text/javascript, */*; q=0.01",
>       "Host": "localhost:8880",
>       "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:49.0) Gecko/20100101 Firefox/49.0",
>       "X-Requested-With": "XMLHttpRequest"
>     } [E 20:36:57.084 NotebookApp] 500 PUT /api/contents/HW4/HW4.ipynb (::1) 40.17ms referer=http://localhost:8880/notebooks/HW4/HW4.ipynb [I
> 20:38:57.096 NotebookApp] Saving file at /HW4/HW4.ipynb [E
> 20:38:57.099 NotebookApp] Error while saving file: HW4/HW4.ipynb
> unable to open database file
>     Traceback (most recent call last):
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/notebook/services/contents/filemanager.py",
> line 395, in save
>         self.check_and_sign(nb, path)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/notebook/services/contents/manager.py",
> line 431, in check_and_sign
>         self.notary.sign(nb)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/nbformat/sign.py",
> line 263, in sign
>         self.store_signature(signature, nb)
>       File "/home/ec2-user/anaconda3/lib/python3.5/site-packages/nbformat/sign.py",
> line 270, in store_signature
>         (self.algorithm, signature, datetime.utcnow())
>     sqlite3.OperationalError: unable to open database file [W 20:38:57.099 NotebookApp] Unexpected error while saving file:
> HW4/HW4.ipynb unable to open database file [E 20:38:57.100
> NotebookApp] {
>       "Content-Type": "application/json",
>       "Connection": "keep-alive",
>       "Referer": "http://localhost:8880/notebooks/HW4/HW4.ipynb",
>       "Accept-Encoding": "gzip, deflate",
>       "Content-Length": "24540",
>       "Accept-Language": "en-US,en;q=0.5",
>       "Accept": "application/json, text/javascript, */*; q=0.01",
>       "Host": "localhost:8880",
>       "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:49.0) Gecko/20100101 Firefox/49.0",
>       "X-Requested-With": "XMLHttpRequest"
>     }

我检查了anaconda3文件夹的所有权,运行Ipython Notebook的用户具有对该文件夹的读/写访问权限。我应该研究其他配置吗

最佳答案

鉴于此问题是一年多以前发布的,因此很可能已解决。将这个答案发布给搜索引擎。

/home目录中的磁盘空间用完将触发此错误,特别是“以前曾经起作用,但现在不起作用”。考虑到这是一个EC2实例,空间可能有限并且可能会填满,尤其是在您进行大量数据分析的情况下。

空间用完后,我在配额限制的/home文件系统上遇到了类似的错误消息。这是异常的相关部分:

      File "/data/user/jpr/projects/mpdmine/venv/lib/python3.6/site-packages/nbformat/sign.py", line 439, in check_signature
    return self.store.check_signature(signature, self.algorithm)
  File "/data/user/jpr/projects/mpdmine/venv/lib/python3.6/site-packages/nbformat/sign.py", line 239, in check_signature
    (datetime.utcnow(), algorithm, digest),
sqlite3.OperationalError: unable to open database file

正在打开的文件未在堆栈跟踪中列出,但是此bug thread提供了提示。该数据库文件是笔记本签名数据库〜/.local/share/jupyter/nbsignatures.db。打开尝试创建日记文件,如果失败(由于文件系统完整),则数据库打开将失败。

您可以在jupyter笔记本python进程(strace -e open -p)上使用strace来查看打开文件的尝试。

解决文件系统已满的问题应解决此错误。

关于amazon-ec2 - 保存文件: Unable to open database file时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40229763/

相关文章:

Java, rJava 安装在 AWS EC2 for R (xlsx and other packages)

python - "ValueError: Dimensions of labels and X must be compatible",使用 Jupyter Notebook

python - 通过 Fit Models 训练模型时如何修复 "Unknown label type: 'unknown'"

带有 matlibplot 的 python 笔记本单元格高度

amazon-web-services - 在关闭之前将 docker 日志从 ec2 实例上传到 S3

linux - Laravel 无法使用权​​限 775 写入/存储 - Amazon AWS Linux

amazon-web-services - Elastic Beanstalk上托管的Dockerized PHP应用程序中的错误 “python: not found”

amazon-web-services - AWS 中的负载均衡器、监听器目标、目标组之间有什么区别?

python - Jupyter Ipywidgets - 如何在重新打印输出之前清除单元格输出

python-3.x - 错误 : module not found in Jupyter Notebook (sklearn)