一、服务端安装配置samba

1.1 服务端安装samba

yum install -y samba

1.2 创建共享目录并写入配置文件

以/samba为共享目录为例,为了更直观地观测我们在该目录中创建test文件

mkdir /samba
touch /samba/test

在/etc/samba/smb.cnf追加以下内容(就是新增一个共享节区,自己想加几个加几个):

[test]
comment = samba test
path = /samba
public = yes
writable = yes

1.3 添加samba用户

客户端连接主机时要进行验证,所以我们要给samba添加用户以便客户端能够连接。(用户是不需要重启即时生效的所以先启动samba后添加用户也行)

smbpasswd -a ls    #ls是给samba添加的用户名

要注意samba不使用系统用户,但是samba添加的用户首先得是系统用户才能添加得上。

如果要添加的用户名原先不是一个系统账号那是添加不上的,会报错“Failed to add entry for user test”。

如下图中由于test事先不是一个系统账号,所以添加不上。

另外虽然samba用户首先得是系统用户,但毕竟并不是直接使用系统用户,所以用户的密码可以和系统的密码不一样。

1.4 启动samba

service smb start

1.5 查看samba共享目录

smbclient -L 192.168.220.128 -U ls   #192.168..128是我服务器的ip,ls是1.3中添加的用户

可以看到有test、IPC$和ls三个共享目录;其中test是我们新配置的,其他两个是samba默认配置的,如果要取消这两个可编缉smb.conf相应节区。

二、客户端连接samba

2.1 windows连接samba

直接在资源管理器中访问//192.168.220.128即可(自己要修改成自己服务器的IP),然后输入1.3创建的用户名密码进行验证即可

2.2 linux连接samba

这里以kali作为客户端进行演示,Redhat系也类似一个意思操作即可

apt-get install -y smbclient    #安装samba客户端
mkdir /mnt/samba #创建目录用于挂载
smbclient -L 192.168.220.128 -U ls #192.168..128是服务端IP,ls是用户名
mount -t cifs -o username=ls,password=abcd1234 //192.168.220.128/test /mnt/samba #username是用户名,abcd1234是用户相应的密码
df -h #查看磁盘挂载情况

最后一行可以看到已成功挂载。

三、FAQ

3.1 为什么需要Samba?

Windows的共享文件(网上邻居)通过SMB实现(后改名叫CIFS),UNIX的共享文件通过NFS实现,但是Windows和UNIX类机器无法实现文件共享。

从使用角度说Samba就是Windows机器与UNIX类机器共享文件的解决方案,从技术角度说Samba是SMB的UNIX开源实现。

3.2 为什么Samba要监听139和445两个端口?这两个端口的作用是什么?有什么区别?

最开始SMB是运行在NETBIOS协议(监听137/138/139三个端口)上的,虽然后来改运行在TCP上(使用445端口)。

但为了保持兼容SMB服务一直监听旧的139和新的445两个端口,同样的Samba为了保持与SMB兼容会监听139和445两个端口。

客户端如果访问139端口就从139端口响应,如果访问445端口就从445端口访问;一般来说现在都用445端口。

3.3 现在Windows也支持nfs挂载,Samba还有什么优势?

首先nfs自身有两个问题:

一是不支持用户身份认证直接连就能访问了,安全性不太好。

二是nfs不支持别名,服务端共享什么目录,在客户端就直接显示该目录的物理路径,这也不太安全。

然后回到与Windows共享文件上,测试发现Windows挂载nfs有着诸多问题。

而且即便在nfs的主场--UNIX类系统间的文件共享--nfs现在对于samba也没什么优势。

3.4 文件共享不是还有ftp吗,为什么不谈谈ftp?

ftp不能叫文件共享只能算是文件传输。文件共享虽然肯定也要进行文件传输,但在用户使用上有着很大不同。

但对于文件共享,意味着客户侧可以直接编缉服务器的文件。

而对于ftp,要修改服务器的文件,需要用户进行“下载--修改--上传替换”三步操作。

3.5 这是演示的是Linux作为服务端,如果是Windows作为服务端Linux能挂载吗?

可以的。

我们前面说过而且samba就是smb的开源实现,所以不管是Linux作为服务器还是Windows作为服务器,客户端和服务端的交互过程都是一样的,所以客户端都一样挂载就完了。

至于怎么搭建Windows服务端,我们前面也说过Windwos的文件共享就是smb实现的,所以Windows主要共享文件夹就可以了。(验证也确实如此,不是猜测)

参考:

https://www.linuxidc.com/Linux/2017-03/141254.htm

http://blog.csdn.net/zcf1002797280/article/details/49805603

Linux安装配置samba教程(CentOS 6.5)的更多相关文章

  1. Linux安装配置NFS教程(CentOS 6.5)

    一.服务端安装nfs 1.1安装 yum install -y rpcbind yum install -y nfs-utils 1.2配置nfs共享目录 这里以/nfs目录为例 mkdir /nfs ...

  2. Linux安装配置Samba共享文件系统

    Samba共享文件系统搭建与配置: 1.Samba服务端:yum install samba samba-client cifs-utilscd /etc/samba/cp smb.conf smb. ...

  3. CentOS 7安装配置Samba服务器

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  4. CentOS 7安装配置Samba服务器(挂载共享文件夹)

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  5. CentOS 7.2 安装配置Samba服务器

    1背景 转Linux刚刚1年,vim操作还不能应对工程代码,之前一直都是Gnome桌面 + Clion 作开发环境,无奈在服务器上没有这样的环境, 看同事是(Windows)Source Insigh ...

  6. centOS下yum安装配置samba

     centOS下yum安装配置samba 2010-03-29 15:46:00 标签:samba yum centOS 安装 休闲 注意:本文的原则是只将文件共享应用于内网服务器,并让将要被共享的目 ...

  7. redhat 安装配置samba实现win共享linux主机目录

    [转]http://blog.chinaunix.net/uid-26642180-id-3135941.html redhat 安装配置samba实现win共享linux主机目录 2012-03-1 ...

  8. linux上安装配置samba服务器

    linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...

  9. 【centos】centos安装配置samba

    因为我的centos为一台阿里云服务器,想和我本机(mac)进行文件共享.所以在我的阿里云上安装配置samba. 服务器环境:centos 7.3 本地环境:mac 第1步:首先查看是否已经安装过了s ...

随机推荐

  1. Spring中JdbcTemplate使用RowMapper

    package com.cxl.demo.dao; import java.sql.ResultSet; import java.sql.SQLException; import java.util. ...

  2. 解決 Android Studio 不停 Indexing 的問題(Updating Indices: Indexing paused due to batch update)

    遇到這個問題通常是 IDE 更新後,或是反覆使用 Android Studio 開啟其他專案所導致,解決方法其實非常簡單喔! 点击 這個選項的功用是「清除 IDE 暫存並重啟」,沒錯,會出現上述情形的 ...

  3. 深入JVM对象引用

    在jdk 1.2以前,创建的对象只有处在可触及(reachaable)状态下,才能被程序所以使用,垃圾回收器一旦发现无用对象,便会对其进行回收.但是,在某些情况下,我们希望有些对象不需要立刻回收或者说 ...

  4. [原]关于helios自定义面板简述

    想研究一下helios和自己仿真软件的适配,于是找了一下关于helios的使用 首先关于helios的使用有一个“vr2009”的发帖者有过很详细描述: http://www.insky.cn/bbs ...

  5. 力扣(LeetCode)453. 最小移动次数使数组元素相等

    给定一个长度为 n 的非空整数数组,找到让数组所有元素相等的最小移动次数.每次移动可以使 n - 1 个元素增加 1. 示例: 输入: [1,2,3] 输出: 3 解释: 只需要3次移动(注意每次移动 ...

  6. AtCoder Grand Contest 027 C ABland Yard

    ABland Yard 思路: 用了类似拓扑排序的方法来判环 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optim ...

  7. Codeforces 920F - SUM and REPLACE

    920F - SUM and REPLACE 思路1: 线段树(982 ms) 每个点最多更新6次 代码: #include<bits/stdc++.h> using namespace ...

  8. ip网关配置

    流量查看watch more /proc/net/devip子网查询https://www.sojson.com/convert/subnetmask.htmlhttp://ip.gchao.cn/ ...

  9. legend2---开发日志7(vue的使用场景有哪些,或者说使用的优缺点)

    legend2---开发日志7(vue的使用场景有哪些,或者说使用的优缺点) 一.总结 一句话总结:任何页面都可以使用vue,尤其是有交互的或者用ajax的,但是vue插件及其它各种插件加载需要时间, ...

  10. PHP curl是什么

    PHP curl是什么 一.总结 一句话总结:PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯. libcurl库 允许你与各种的 ...