如何从终端列出 Windows 共享?

如何从终端列出 Windows 共享?

以下是我的一个简单场景:

  1. Windows 7 正在共享一个文件夹(D:\Projects)。
  2. 该文件夹已获得完全控制权限。
  3. 在 Ubuntu 10.10 中,我可以从“位置”->“网络”菜单中看到 Windows 共享。
  4. 我可以通过 Nautilus 在共享的 Projects 文件夹中创建一个文件夹

我如何ls从终端访问相同的文件夹(显示在 Nautilus 中)?(mount并且ls /mnt不列出那些 Windows 共享)

附言:我正在做的事情的详细信息:

  1. 使用 VirtualBox 将 Ubuntu 用作“无头”虚拟机。
  2. 通过 PuTTY 访问 Ubuntu
  3. 能够授予 Ubuntu VM 对 Windows 共享文件夹的完全访问权限

答案1

如果你已经使用 Nautilus 连接到你感兴趣的共享,那么这些共享的挂载可以在 ~/.gvfs 中找到

因此,我打开我的 nautilus,在位置栏中输入 smb://192.168.1.10/data,这样就挂载了共享。然后:

scaine@GroovyTosh:~/.gvfs$ ls -al
total 20
dr-x------  3 scaine scaine     0 2010-12-31 18:47 .
drwx------ 68 scaine scaine 20480 2010-12-31 19:42 ..
drwx------  1 scaine scaine     0 2010-10-05 19:57 data on 192.168.1.10
scaine@GroovyTosh:~/.gvfs$ 

如果您需要列出可用的共享,那么正如 Danny 所说,您可以使用 smbclient。就我而言,我使用“共享”安全模型(不推荐!),因此我不需要 -U 参数:

scaine@GroovyTosh:~/.gvfs$ smbclient -L 192.168.1.10
Enter scaine's password: 
Domain=[Mine] OS=[Unix] Server=[Samba 3.5.4]

    Sharename       Type      Comment
    ---------       ----      -------
    Data            Disk      Core Data
    Backups         Disk      Daily RSnapshot backups
    IPC$            IPC       IPC Service (Core)
Domain=[Mine] OS=[Unix] Server=[Samba 3.5.4]

    Server               Comment
    ---------            -------
    CORE                 Core

    Workgroup            Master
    ---------            -------
    Mine                 CORE
scaine@GroovyTosh:~/.gvfs$

答案2

smbclient 可能能够列出 Windows 机器上可用的共享,但不能列出机器。

http://www.samba.org/samba/docs/man/manpages-3/smbclient.1.html

smbclient -L <windows-box> -U <username>

答案3

smbclient -U windowsUserName%password -L windowsHost -W domainName

答案4

还可以通过以下方式访问 Windows 共享:

smbclient -L < Windows host name > -U < Windows Administrator account >

相关内容