红联Linux门户
Linux帮助

教你如何实现linux和Windows之间的文件共享,samba的安装与配置

发布时间:2011-08-13 12:14:42来源:红联作者:迷彩褪色
[i=s] 本帖最后由 迷彩褪色 于 2011-8-13 12:23 编辑 [/i]

本人在虚拟机下装fedora13,已经实现。
1. 首先检查os是否安装好了samba。

[root@localhost /]# rpm -qa | grep smb

如果出现下面三行内容,则表示已经安装好了Samba:
libsmbios-libs-0.13.10-1.fc8

libsmbios-bin-0.13.10-1.fc8

pam_smb-1.1.7-7.2.2

如果没显示,可以进行安装,方法如下:
#yum install samba*
即可安装完毕!

2. 进入samba目录

[root@localhost /]# cd /etc/samba/

[root@localhost samba]# ls

lmhosts smb.conf smbpasswd smbusers

这里的smb.conf是samba服务器的主要配置文件。

还要注意一点,smbpasswd文件是用来存储用户帐号和经过md5加密后的密码。

刚安装好samba服务时,此文件不存在。需要手工创建。下面会介绍。

3. 编辑smb.conf文件

[root@ localhost samba]# vi smb.conf

进行如下设置:

#======================= Global Settings =====================================

[global]

workgroup = MSHOME 将linux 加入的工作组名,我这里加入了MSHOME工作组。

server string = Samba 这是服务器描述信息,方便标志资源。可以随便输入。

encrypt passwords = yes 表示是否对用户的密码进行加密,这里选择加密,安全!

public = yes 定义一个共享是否对公共访问开放。当设置为 yes 时,在系统上没有帐户用户



将基于所定义的客户帐户的属性来接收访问。

smb passwd file = /etc/samba/smbpasswd 这是账号密码的存放文件

netbios name = mm's samba 在外部访问该samba服务器时,显示的信息。

# --------------------------- Logging Options -----------------------------

# logs split per machine

log file = /var/log/samba/log.%m log文件的存放位置。

# max 50KB per log file, then rotate

max log size = 0 log文件的大小限制,设置为0表示不做限制。

# ----------------------- Standalone Server Options ------------------------

security = user 共享的安全级别,samba有四种安全等级:

share:用户不需要账户及密码即可登录samba服务器



user:由提供服务的samba服务器负责检查账户及密码(默认)

server:检查账户及密码的工作由另一台windows或samba服务器负责

domain:指定windows域控制服务器来验证用户的账户及密码)

passdb backend = tdbsam

以上即为通用一般配置。

加入我们需要共享的目录为 /opt/

需要添加如下代码:

[rose]

comment = This is my samba server! 设置共享信息,随便输入

path = /opt 共享目录

valid users = testuser 可以访问次共享目录的用户,我这里设为testuser用户

public = yes 同上面的解释

writable = yes 用户是否可写,这里我们允许。

wq!

保存退出即可。

4. 启动smb服务

[root@ localhost samba]# service smb start

Starting SMB services: [ OK ]

[root@ localhost samba]# service nmb start

Starting NMB services: [ OK ]

5. 添加可以访问我们刚才设置共享目录的用户:testuser

1)建一个系统用户

[root@ localhost samba]# useradd testuser (建一个名叫testuser的用户)

[root@ localhost samba]# passwd testuser(给testuser用户添加密码)

Changing password for user samba.

New password: (密码要六位以上,不显示在屏幕上)

BAD PASSWORD: it does not contain enough DIFFERENT characters

Retype new password: (确认密码)

passwd: all authentication tokens updated successfully

2) 创建、更新 /etv/samba/smbpasswd 文件

[root@ localhost samba]# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

3) 然后创建samba帐户

[root@ localhost samba]# smbpasswd -a testuser

New SMB password:

Retype new SMB password:

Added user testuser.

6. 重新启动smb服务

[root@cisco samba]# service smb restart

Shutting down SMB services: [ OK ]

Starting SMB services: [ OK ]

[root@cisco samba]# service nmb restart

Shutting down NMB services: [ OK ]

Starting NMB services: [ OK ]

下面我们在Windows下测试一下,我的系统为Windows xp sp3,这里还要注意一点的是,如果你的Windows系统装有360安全卫士时,它有可能会在开机启动项关掉一些“网上邻居”有关的服务启动项,如有请打开!否则,会失败!
Windows:开始--》运行--》输入“\\虚拟机系统的IP”,点确认--》提示输入用户名和密码(就是你开始设置的passwd)
成功之后,就可以在linux和Windows之间任意传输文件咯!!![attach]35576[/attach]
文章评论

共有 150 条评论

  1. dlchengzi 于 2014-05-07 12:10:08发表:

    很好,很强大!

  2. chushihua 于 2014-01-12 20:16:40发表:

    路过!!!
    帮顶……

  3. herb734044860 于 2013-12-25 01:59:31发表:

    谢谢。。。

  4. code_new 于 2013-12-22 13:23:46发表:

    收藏了

  5. dongbeiafei 于 2013-03-18 08:24:24发表:

    有没有不在虚拟中共享的教程呀,我是Fedora17和xp,请教中.....

  6. 12700696 于 2012-12-25 10:26:30发表:

    教你如何实现linux和Windows之间的文件共享,samba的安装与配置
    本帖最后由 迷彩褪色 于 2011-8-13 12:23 编辑

    本人在虚拟机下装fedora13,已经实现。
    1. 首先检查os是否安装好了samba。

    [root@localhost /]# rpm -qa | grep smb

    如果出现下面三行内容,则表示已经安装好了Samba:
    libsmbios-libs-0.13.10-1.fc8

    libsmbios-bin-0.13.10-1.fc8

    pam_smb-1.1.7-7.2.2

    如果没显示,可以进行安装,方法如下:
    #yum install samba*
    即可安装完毕!

    2. 进入samba目录

    [root@localhost /]# cd /etc/samba/

    [root@localhost samba]# ls

    lmhosts smb.conf smbpasswd smbusers

    这里的smb.conf是samba服务器的主要配置文件。

    还要注意一点,smbpasswd文件是用来存储用户帐号和经过md5加密后的密码。

    刚安装好samba服务时,此文件不存在。需要手工创建。下面会介绍。

    3. 编辑smb.conf文件

    [root@ localhost samba]# vi smb.conf

    进行如下设置:

    #======================= Global Settings =====================================

    [global]

    workgroup = MSHOME 将linux 加入的工作组名,我这里加入了MSHOME工作组。

    server string = Samba 这是服务器描述信息,方便标志资源。可以随便输入。

    encrypt passwords = yes 表示是否对用户的密码进行加密,这里选择加密,安全!

    public = yes 定义一个共享是否对公共访问开放。当设置为 yes 时,在系统上没有帐户用户



    将基于所定义的客户帐户的属性来接收访问。

    smb passwd file = /etc/samba/smbpasswd 这是账号密码的存放文件

    netbios name = mm's samba 在外部访问该samba服务器时,显示的信息。

    # --------------------------- Logging Options -----------------------------

    # logs split per machine

    log file = /var/log/samba/log.%m log文件的存放位置。

    # max 50KB per log file, then rotate

    max log size = 0 log文件的大小限制,设置为0表示不做限制。

    # ----------------------- Standalone Server Options ------------------------

    security = user 共享的安全级别,samba有四种安全等级:

    share:用户不需要账户及密码即可登录samba服务器



    user:由提供服务的samba服务器负责检查账户及密码(默认)

    server:检查账户及密码的工作由另一台windows或samba服务器负责

    domain:指定windows域控制服务器来验证用户的账户及密码)

    passdb backend = tdbsam

    以上即为通用一般配置。

    加入我们需要共享的目录为 /opt/

    需要添加如下代码:

    [rose]

    comment = This is my samba server! 设置共享信息,随便输入

    path = /opt 共享目录

    valid users = testuser 可以访问次共享目录的用户,我这里设为testuser用户

    public = yes 同上面的解释

    writable = yes 用户是否可写,这里我们允许。

    wq!

    保存退出即可。

    4. 启动smb服务

    [root@ localhost samba]# service smb start

    Starting SMB services: [ OK ]

    [root@ localhost samba]# service nmb start

    Starting NMB services: [ OK ]

    5. 添加可以访问我们刚才设置共享目录的用户:testuser

    1)建一个系统用户

    [root@ localhost samba]# useradd testuser (建一个名叫testuser的用户)

    [root@ localhost samba]# passwd testuser(给testuser用户添加密码)

    Changing password for user samba.

    New password: (密码要六位以上,不显示在屏幕上)

    BAD PASSWORD: it does not contain enough DIFFERENT characters

    Retype new password: (确认密码)

    passwd: all authentication tokens updated successfully

    2) 创建、更新 /etv/samba/smbpasswd 文件

    [root@ localhost samba]# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

    3) 然后创建samba帐户

    [root@ localhost samba]# smbpasswd -a testuser

    New SMB password:

    Retype new SMB password:

    Added user testuser.

    6. 重新启动smb服务

    [root@cisco samba]# service smb restart

    Shutting down SMB services: [ OK ]

    Starting SMB services: [ OK ]

    [root@cisco samba]# service nmb restart

    Shutting down NMB services: [ OK ]

    Starting NMB services: [ OK ]

    下面我们在Windows下测试一下,我的系统为Windows xp sp3,这里还要注意一点的是,如果你的Windows系统装有360安全卫士时,它有可能会在开机启动项关掉一些“网上邻居”有关的服务启动项,如有请打开!否则,会失败!
    Windows:开始--》运行--》输入“\\虚拟机系统的IP”,点确认--》提示输入用户名和密码(就是你开始设置的passwd)
    成功之后,就可以在linux和Windows之间任意传输文件咯!!! 下载 (81.98 KB)

    2011-8-13 12:14

  7. zxssanna 于 2012-12-19 09:22:47发表:

    小手一抖,金币到手

  8. hbyiwen 于 2012-12-09 14:36:38发表:

    很详细,支持

  9. gky2009514 于 2012-12-07 13:07:32发表:

    新手完成任务,求下书籍~

  10. q815188 于 2012-12-04 14:52:50发表:

    (6)m:b

  11. xuhh2012 于 2012-11-29 15:21:41发表:

    顶个

  12. shenwhcisco 于 2012-11-29 10:25:47发表:

    XUEXIXIA{:2_94:}

  13. zsj754272317 于 2012-11-28 11:01:22发表:

    这都可以,值得试试。

  14. 李宁2012 于 2012-11-27 15:38:32发表:

    不知道windows7是否也可以,我的windows7就无法连接samba!

  15. zsmjhjw 于 2012-11-15 18:09:07发表:

    今天搞了一天了,想让虚拟机redhat与我的host主机共享,,可是,以失败告终,
    我在试试吧,

  16. a3521805 于 2012-11-14 15:03:18发表:

    这个叼啊。。 可以直接在虚拟机和xp系统上互相传东西。

  17. hebnavy 于 2012-11-05 13:37:03发表:

    楼主辛苦了(q):s

  18. hebnavy 于 2012-11-05 13:10:13发表:

    哈哈

  19. hebnavy 于 2012-11-05 13:09:38发表:

    很详细的,但对于满脑子浆糊的初学者,最好配合截屏

  20. xiang_nian 于 2012-11-03 14:38:19发表:

    谢谢

  21. hisonz 于 2012-11-02 05:15:54发表:

    楼主的分享非常不错哦!!支持持续更新!!

  22. ximvfeng 于 2012-11-02 05:05:51发表:

    嗯 沙发 好好学习学习

  23. newbbydong 于 2012-10-30 13:53:07发表:

    很详细,支持

  24. woshisyisuren 于 2012-10-29 14:38:12发表:

    弄了好几次都没成功,继续尝试。

  25. 596408741 于 2012-09-22 15:42:48发表:

    第一次测试失败了,再接再厉,谢谢LZ

  26. Marlborors 于 2012-09-14 13:04:54发表:

    谢谢分享。。。。学习中。。。。

  27. lhxzui 于 2012-09-06 17:10:21发表:

    2# 迷彩褪色


    谢谢仁兄,支持

  28. 306101096 于 2012-08-23 16:29:40发表:

    楼主啊,小弟有个问题一直想不通,为什么我在登录共享成功后会看到两个文件夹啦,一个是共享文件夹,一个是以我登录的用户名为命名的文件夹。这是为什么?:0wl;l1

  29. skyfree110 于 2012-08-21 22:41:59发表:

    哦,不好意思我分享了两个文件夹!

  30. skyfree110 于 2012-08-21 22:39:38发表:

    怎么出现两个文件夹,一个是共享的名字,另一个是用户名testuser

  31. htr 于 2012-07-23 17:49:59发表:

    很详细 正为这个发愁呢 谢谢楼主分享

  32. whycheng1989 于 2012-05-02 15:30:23发表:

    支持楼主 写的很详细 配置写的很清楚 很适合我这样的新手

  33. circletiger 于 2012-05-01 19:43:15发表:

    虚拟机能使用么?

  34. tea789a 于 2012-05-01 17:38:57发表:

    谢谢分享

  35. 吃猫的鱼儿丶 于 2012-02-13 11:16:54发表:

    fedora13和fedora8 一样吗?我是指输入指令时显示的内容

  36. tk345497747 于 2011-12-29 05:35:28发表:

    多谢分享

  37. zlong 于 2011-12-28 19:34:15发表:

    很好
    很详细
    多谢分享

  38. 迷彩褪色 于 2011-12-23 18:29:45发表:

    113# wenbo985


    不谢!开源万岁...

  39. wenbo985 于 2011-12-06 10:22:58发表:

    thak you very much!

  40. wuxingang5 于 2011-12-05 23:11:02发表:

    谢谢分享