Samba是一种软件,它可以运行在非Windows平台上,比如UNIX, Linux, IBM System 390, OpenVMS或其他操作系统。Samba使用安装在主机上的TCP/IP协议。当正确配置完成后,Samba可以使主机与Windows客户端或服务器交互,这台主机就好像变成了Windows的文件和打印服务器。

配置好samba之后就可以在windows下编写代码,提交代码,然后在linux环境下编译代码。

安装步骤如下:

1.安装samba

yum install samba

(ubuntu下面可以用apt-get install 来安装)

安装完成之后可以用

rpm -qa|grep samba 命令来验证是否安装成功。

2.配置samba

修改samba的配置文件。在修改配置文件之前,记得要把配置文件备份一份,养成良好习惯。

使用cp(复制命令)进行备份

cp /etc/samba/smb.conf /etc/samba/smb.conf_backup

然后编辑这个配置文件

vim /etc/samba/smb.conf

在配置文件的最后加上

[workspace]

path=/workspace

browseable=yes

writeable=yes

guest ok=yes

[workspace]包含的名称是windows中显示的文件目录

保存

使用testparm测试一下配置文件的语法

3.重启samba

service smb restart

4.建立一个共享目录

mkdir /workspace

5.访问

这个时候可能访问不到,可能是防火墙的原因,

Samba用到了下列端口:

1)Port 137 (UDP) - NetBIOS 名字服务 ; nmbd

2)Port 138 (UDP) - NetBIOS 数据报服务

3)Port 139 (TCP) - 文件和打印共享 ; smbd (基于SMB(Server Message Block)协议,主要在局域网中使用,文件共享协议)

4)Port 389 (TCP) - 用于 LDAP (Active Directory Mode)

5)Port 445 (TCP) - NetBIOS服务在windos 2000及以后版本使用此端口, (Common Internet File System,CIFS,它是SMB协议扩展到Internet后,实现Internet文件共享)

6)Port 901 (TCP) - 用于 SWAT,用于网页管理Samba

一般只要打开139端口就可以了。

编辑iptables配置文件,

vim /etc/sysconfig/iptables

将139端口加上去,重启iptables,

/etc/init.d/iptables restart

再次访问共享目录,访问是能访问了,不过需要密码

这个时候就要在smb.conf里面做一些更改,

在security = user下面加上

map to guest = Bad User

重启samba。再访问共享目录,可见能显示文件夹了

但是还是不能进入文件夹

因为linux不允许修改此文件夹,这个时候可以用以下命令

chcon -t samba_share_t /workspace

将workspace标记为samba_share_t,就可以打开文件夹了。

但是现在还不能在文件夹中创建文件,这个是因为匿名用户没有相关权限

查询一下nobody在系统中的属性

id nobody

通过chown命令将匿名用户加上去,chown nobody:nobody /workspace

(chown的作用是改变相关目录文件夹的拥有者及群组,chown nobody:nobody /workspace,是将workspace的拥有者变成nobody匿名用户)

或者

chmod 777 /workspace

chmod命令,全称是change file mode bits,使用ls –l可以查看所有文件的属性情况

drwxr-xr-x 中 第一个表示类型,d表示目录directory,第二到第四rwx表示拥有者有读写运行权限,第五到第七r-x表示拥有者所在的组有读和运行权限但没有写入权限,第八到第十r-x表示其他用户有读和运行权限但没有写入权限

至此创建共享目录就完成了。

CentOS 7下安装samba的更多相关文章

  1. CentOS Linux 下安装Samba

    一.Samba简介: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.Linux中搭建环境有几个需要使用的软件包: (1)samba-client:这个 ...

  2. Centos 7 下安装 samba 服务

    yum install samba 配置文件在:/etc/samba/smb.conf [global] #添加下面这句 map to guest = Bad User #这个选项是保证匿名访问! # ...

  3. Centos 5.5下安装samba

    1.安装: Centos 5.5下安装samba,具体步骤如下: [root@bogon ~]# rpm -q samba Package samba is not installed [root@b ...

  4. CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

    在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...

  5. CentOS 6 下安装Python 3

    可以下载各个版本的python:https://www.python.org/ftp/python/ 配置安装 下载最新的安装包(截止2013/11/05),还是3.3.2版本. #wget http ...

  6. CentOS 7 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php)

    原文 CentOS 7 下安装 LEMP 服务(nginx.MariaDB/MySQL 和 php) LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作 ...

  7. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  8. CentOS 7下安装vertica记录

    CentOS 7下安装vertica记录 1.    安装好centeros 并更新 Centeros安装就不说了,安装完之后联网环境下 yum update.更新下,使得那些包都是新的.(要想用中文 ...

  9. CentOS系统下安装python3+Django

    转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...

随机推荐

  1. java基础知识总结--对象的克隆

    前提:在Java语言中所有的类的都是缺省的继承Java语言中的Object类的, protected native Object clone() throws CloneNotSupportedExc ...

  2. oracle增删改字段

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter ...

  3. svn提交报错Previous operation has not finished; run 'cleanup' if it was interrupted

    从SVN上拉下来Document文档(word和excel),在本地修改后,准备通过TortoiseSVN提交,发现报错. Error: Previous operation has not fini ...

  4. JDBC(13)—JDBC调用存储过程和函数

    步骤: JDBC调用存储过程和函数 步骤: ①:通过Connection对象的prepareCall()方法创建一个CallableStatement对象的实例,在使用Connection对象的pre ...

  5. JAVA的基本数据类型和类型转换

    一.数据类型 java是一种强类型语言,第一次申明变量必须说明数据类型,第一次变量赋值称为变量的初始化. java数据类型分为基本数据类型和引用数据类型 基本数据类型有4类8种 第一类(有4种)整型: ...

  6. .net core中的对象池

    asp.net core中通过扩展库的方式提供给了一个标准的对象池ObjectPool,定义在Microsoft.Extensions.ObjectPool.dll 程序集中.它本身是个纯虚的抽象类, ...

  7. ES5, ES6, ES2016, ES.Next: What's going on with JavaScript versioning?

    JavaScript has a strange naming history. For its initial release in 1995 as part of Netscape Navigat ...

  8. mvn -N和-U的用法

    mvn参数-N.-U理解 关于-N -N,--non-recursive Do not recurse into sub-projects 意思是,不递归到子项目(子模块). 举例: 一个父项目下Fa ...

  9. Excel 驼峰表达式

    =LEFT(A1,1)&MID(SUBSTITUTE(PROPER(A1),"_",""),2,100)

  10. hive-命令操作记录

    Hive 的官方文档请参考:http://wiki.apache.org/hadoop/Hive/LanguageManual . Create Table CREATE [EXTERNAL] TAB ...