linux_samba服务安装
什么是samba服务?
用于Windows和linux系统之间实现共享文件的目的服务
如何配置其服务?
Linux端: 搭建服务
1. 安装samba
yum install -y samba
2. 配置个人网盘服务(这里还有配置大家都可以访问的网盘内容,叫公有,后说)
# 不需要修改任何配置
a. 添加登录网盘的用户,这个用户必须是 linux系统的用户
useradd beimenchuixue -s /sbin/nologin
b. 通过smbpasswd添加一个samba用户并设置密码
smbpasswd -a beimenchuixue
c. 启动samba服务并且加入开机自启动
/etc/init.d/smb start
chkconfig smb on
Windows端: 连接samba服务
1. 我的电脑,右键,映射网络驱动器
2. 输入 \\linux主机ip地址\samba用户,勾选上其他凭证连接
# 首先windows能与linux通信,并且linux关闭selinux和防火墙放行samba服务
3. 输入设置的密码
4. 连接完成后,可以像本地磁盘一样打开,写入数据
# 在Windows下向这个网盘写入数据,都会压缩为该用户对应linux用户的权限
Samba公有网盘搭建
Linux端: 修改相关配置文件
1. 修改配置文件,其配置文件位置: /etc/samba/smb.conf
cp /etc/samba/smb.conf{,$(date +%F)}
sed -i "s/security = user/security = share/g" /etc/samba/smb.conf
sed -i '$a [company]\
comment=share file\
path=/company\
public=yes\
writable=yes' /etc/samba/smb.conf
# 还有其他相关配置,公有的总会带来安全问题
# comment= 设置共享注释
# path= 设置共享目录的物理路径
# public=yes|no 设置资源是否能给游客账号访问
# valld user=@group_name,user_name 设置允许哪些合法组和用户访问
# browseable=yes|no 设置该共享为隐藏共享
# writable=yes|no 设置是否允许客户端写入数据
# hosts allow= 设置允许访问该共享的合法网段或ip
# printable=yes|no 接打印机
2. 限制上传的目录权限为755,文件权限为644
sed -i " /\[company\]/a \ create mask = 0644\n\
force create mode = 0644\n\
directory mask = 0755\n\
force directory mode = 0755\
" /etc/samba/smb.conf
3. 创建共享目录,授权写权限,在linux相当于其他人
mkdir /company
chmod -R o+w /compay
4. 重启samba服务
/etc/init.d/smb restart
Window端: 连接samba服务
1. 连接samba服务,注意把上面的用户名换为模块company
# 至此,samba服务搭建完成,samba有两种安全验证,一种是share一种是user
# 注意创建公有网盘服务时候,不能有samba网盘用户,需要使用smbpasswd -x username删除已经添加的所有smb用户,不删除会在Windows端写入数据时候会卡住
# 既然作为一个公有盘,做报表展示或其他通知相关信息展示,可以在linux端收回这个company目录的其他人的写权限
一键搭建samba私有网盘
#!/bin/sh # author: beimenchuixue
# email: 422083556@qq.com
# blog: http://www.cnblogs.com/2bjiujiu/ . /etc/init.d/functions login_password="123456"
login_user="beimenchuixue"
model="workspace"
samba_conf_file="/etc/samba/smb.conf" install_samb() {
yum install -y samba &> /dev/null
[ $? -eq 0 ] && {
action "samb server install is" /bin/true
} || {
action "samb server install is" /bin/false
exit 1
}
}
# install_samb add_samba_user() {
id $login_user &> /dev/null
[ $? -eq 0 ] || {
useradd $login_user -s /sbin/nologin
}
action "samba_user is" /bin/true
}
# add_samba_user install_expect() {
yum install -y expect &> /dev/null
[ $? -eq 0 ] || {
action "install_expect is" /bin/false
exit 2
}
action "install_expect is" /bin/true
}
# install_expect set_user_pwd() {
`which expect` <<jia
set timeout -1 spawn smbpasswd -a $login_user
expect {
"*password:" {send "${login_password}\r";exp_continue}
}
jia
[ $? -eq 0 ] && {
action "set password is" /bin/true
} || {
action "set password is" /bin/false
exit 3
}
}
# set_user_pwd init_start_smb() {
/etc/init.d/smb restart &> /dev/null
chkconfig smb on
action "start smb is" /bin/true
}
# init_start_smb main() {
install_samb
add_samba_user
install_expect
set_user_pwd
init_start_smb
}
main
linux_samba服务安装的更多相关文章
- Linux下MongoDB服务安装
Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...
- Nginx服务安装配置
1.Nginx介绍 Nginx是一个高性能的HTTP和反向代理服务器,由俄罗斯人开发的,第一个版本发布于2004年10月4日.Nginx由于出色的性能,在世界范围内受到了越来越多人的关注,其特点是占有 ...
- Windows服务安装与卸载
Windows服务安装与卸载,使用到了InstallUtil.exe 安装: c: cd "C:\Windows\Microsoft.NET\Framework\v4.0.30319&quo ...
- Spring boot centos7 后台服务安装部署
Spring boot 应用服务安装部署(maven工程) 1.首先在maven工程的pom文件中引入以下标签并保存 <build> <plugins> <plugin& ...
- win server服务安装
从一台机子的服务移到我的测试环境中: 1.copy 100pC上的服务目录(d:\...)到13PC中
- 开源服务专题之------sshd服务安装管理及配置文件理解和安全调优
本专题我将讨论一下开源服务,随着开源社区的日趋丰富,开源软件.开源服务,已经成为人类的一种公共资源,发展势头可谓一日千里,所以不可不知.SSHD服务,在我们的linux服务器上经常用到,很重要,涉及到 ...
- Linux环境VNC服务安装、配置与使用
前言:作为一名DBA,在创建Oracle数据库的过程中一般要使用dbca和netca图像化进行建库和创建监听(如果使用脚本建库另说),如果您身体好估计可以在瑟瑟发抖的机房中完成数据库的创建过程,由于本 ...
- 【VNC】Linux环境VNC服务安装、配置与使用
[VNC]Linux环境VNC服务安装.配置与使用 2009-06-25 15:55:31 分类: Linux 前言:作为一名DBA,在创建Oracle数据库的过程中一般要使用dbca和netc ...
- windows 服务安装脚本拾遗
转自:http://blog.csdn.net/susubuhui/article/details/7881096 1.安装脚本 echo 请按任意键开始安装客户管理平台的后台服务 echo. pau ...
随机推荐
- 我的Python学习笔记(二):浅拷贝和深拷贝
在Python中,对象赋值,拷贝(浅拷贝和深拷贝)之间是有差异的,我们通过下列代码来介绍其区别 一.对象赋值 对象赋值不会复制对象,它只会复制一个对象引用,不会开辟新的内存空间 如下例所示,将test ...
- DeepLearning.ai学习笔记(四)卷积神经网络 -- week2深度卷积神经网络 实例探究
一.为什么要进行实例探究? 通过他人的实例可以更好的理解如何构建卷积神经网络,本周课程主要会介绍如下网络 LeNet-5 AlexNet VGG ResNet (有152层) Inception 二. ...
- CentOS7配置静态IP
确保是在root用户下进行操作,首先进入network-scripts目录 cd /etc/sysconfig/network-scripts/ 通过ls列出该目录下的所有文件,其中"ifc ...
- Shell脚本之反引号【``】和 $()
一.奇怪的返回 今天在搞监控的时候,修改一个老脚本,主要是通过对操作系统进行判断来获取不同的监控参数.(获取top参数在不同操作系统上也有个坑,会在另外一篇里面写) 脚本如下,非常简单: #处理Cen ...
- python抢火车票的脚本
起因: 想着那么多人,抢不到火车票.感觉到一丝感慨 所以有了抢火车票这个脚本. 0x01 思路:自动打开浏览器,自动输入账号密码 知道查看.自动预定. 0x02 要用到的模块 splinter模块: ...
- python实现快速排序
最近在公司的工作内容发生变化,短期内工作量变少了,这也让我有时间整理一些日常学习和工作中的收获或思路.所以申请了博客,并打算持续更新. 快速排序采用了分治的思想,基本思想是选取数组中一个数为基准数(一 ...
- AIM Tech Round 4 (Div. 2)(A,暴力,B,组合数,C,STL+排序)
A. Diversity time limit per test:1 second memory limit per test:256 megabytes input:standard input o ...
- [51nod1291]Farmer
用单调栈的话不严格的O(n^3)可以轻松艹过去,统计的时候要差分. 可以发现,对于一个单调栈里的元素,从它进栈到出栈都会重复类似的计算..再差分一波后就可以只在出栈的时候计算一下了. 具体的话看代码吧 ...
- c++(基数排序)
基数排序是另外一种比较有特色的排序方式,它是怎么排序的呢?我们可以按照下面的一组数字做出说明:12. 104. 13. 7. 9 (1)按个位数排序是12.13.104.7.9 (2)再根据十位排序1 ...
- Spring框架学习笔记(1)——HelloWorld
1.创建一个新的项目,并添加Spring框架 2.创建HelloWorld.java package com.broadtext.beans.helloworld; public class Hell ...