在linux下面用smb命令拷贝共享文件

字体: | 打印

关于smb,也就是linux和win文件共享用命令的如何操作。。

机器环境 :

机器一:Windows的IP地址是 192.168.1.19 ,机器名是 L09
在上面有个超级管理员 BNNB ,这个用户是存在的,用的系统是Windows 2003 ,共享文件夹是winsoft

机器二:slackware

先看一下Windows的机器是哪些东西共享了?

QUOTE:

bash-3.00# smbclient  -UBNNB  -L 192.168.1.19
Password: 在这里输入你的WINDOWS账户BNNB的密码吧。
Domain=[L09] OS=[Windows Server 2003 3790] Server=[Windows Server 2003 5.2]

        Sharename       Type      Comment
        ---------       ----      -------
        E$              Disk      ─    winsoft         Disk
        IPC$            IPC             D$              Disk      ─    F$         Disk      ─    ADMIN$          Disk            C$              Disk   ─session request to 192.168.1.19 failed (Called name not present)
session request to 192 failed (Called name not present)
Domain=[L09] OS=[Windows Server 2003 3790] Server=[Windows Server 2003 5.2]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------
bash-3.00#
通过上面我们知道 winsoft在L09这台机器上的确是共享了,那我们用什么办法来mount到本地机上呢。。

用下面的办法

QUOTE:

bash-3.00# mount -t smbfs -o username=BNNB  //L09/winsoft  /mnt/macos/
Password:在这里输入密码
看一下是不是mount进来了??

QUOTE:

bash-3.00# ls /mnt/macos/

工作日志  公司备份  公司文件  软件  五一值班安排.doc  宣传资料  值班表(10月-12月).xls
bash-3.00#
也可以把 passwd 直接作为参数传递

mount -t smbfs -o username=BNNB,passwd=xxxx //L09/winsoft /mnt/macos/

Windows 的名字解析机制很烂,有时候不能正常把 NETBIOS 名称解析成 IP 地址,Windows 下的表现就是有些机器可以看到,有些机器看不到什么的。所以你也可以直接把 IP 地址作为参数

mount -t smbfs -o username=BNNB,passwd=xxxx,ip=xxx.xxx.xxx.xxx //L09/winsoft /mnt/macos/

mount -t cifs //192.168.1.1/semson /home/semson/smb-semson -o username=semson,iocharset=utf8