Windows上的磁盘空间通过Linux共享SMB

时间:2013-10-22 19:34:19

标签: python linux networking smb diskspace

我正在为XBMC开发一个插件,根据磁盘空间可用性检查要删除的文件。我无法从基于Linux的操作系统检查Windows 7共享上的磁盘空间,包括Raspberry Pi,Ubuntu等。顺便说一句,XBMC使用python 2.6。

我目前的代码如下:

import os

loc1 = "smb://geert/e/Downloads/"
loc2 = "/home/"

stats = os.statvfs(loc)
print stats

在上面的代码中loc1是给出麻烦的路径。似乎statvfs模块无法处理smb://路径,因为我一直收到以下错误。当我尝试loc2时,一切都很好。我已经搜索了这个问题的确切答案,但找不到任何答案。

/usr/bin/python2.7 statvfstest.py
Traceback (most recent call last):
  File "statvfstest.py", line 8, in <module>
    print os.statvfs(loc)
OSError: [Errno 2] No such file or directory: 'smb://geert/e/Downloads/'

我尝试过的步骤:

  • 我已尝试过psutil模块,因为我在本网站的其他问题中经常看到这个模块,但它似乎只是statvfs方法的包装,因此导致相同的错误消息,只有较长的堆栈跟踪。

  • 已安装e份额并使用了正确的凭据。共享在文件管理器中可见,并显示正确的内容。

  • 我已在loc1格式的smb://user:pass@geert/e/Downloads/中添加了凭据。

  • 上述三种方法的任何组合都无济于事。

请问您能否使用smb网络路径从Linux PC上可靠地测试我的Windows共享上可用空间量?如果可能的话,我想不再为我的插件添加额外的模块,以确保它保持轻量级。

提前致谢,

吉尔特

0 个答案:

没有答案