要求:

1、在server0服务器上安装配置samba,工作组为STAFF,共享目录/smb1, 共享名smb1,仅允许192.168.100.0/24网段中的主机访问。samba用户user1可以读取,密码为Ynyd1234; 并且在desktop0服务器自动挂载到/mnt/smb1目录下。

2、配置共享目录/smb2,共享名smb2,仅允许192.168.100.0/24网段中的主机访问。
仅允许用户user1读取, user2读写,密码都为Ynyd1234;客户机desktop0以multiuser方式自动挂接到/mnt/smb2

服务端server0配置192.168.100.201:
# yum install samba samba-client -y
# firewall-cmd --permanent --add-service=samba
# firewall-cmd --reload
# systemctl enable smb nmb
# systemctl restart nmb smb
# netsat -antulp | grep smb
# mkdir /smb1
# mkdir /smb2
# chmod 777 /smb1
# chmod 777 /smb2
# chcon -R -t samba_share_t /smb1
# chcon -R -t samba_share_t /smb2

# man 8 semanage-fcontext

# semanage fcontext -a -t samba_share_t "/smb1(/.*)?"
# semanage fcontext -a -t samba_share_t "/smb2(/.*)?"
# ll -dZ /smb1
   drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /smb1
# ll -dZ /smb2
   drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /smb2
# useradd user1
# useradd user2
# smbpasswd -a user1
# smbpasswd -a user2

# vi /etc/samba/smb.conf
[global]
workgroup = STAFF #此处修改为STAFF,并新增以下内容 [smb1]
path = /smb1
#writable = yes #默认不加这句,user1及所有用户都只读,不可写。加上之后,所有用户都可写。
hosts allow = 192.168.100.0/ [smb2]
path = /smb2
hosts allow = 192.168.100.0/
writable = no
write list = user2 #user2可写,当然也可读。
read list = user1 #user1可读,不可写。

客户端desktop0配置:
#yum install -y samba-client cifs-utils

smbclient 连接测试

、/smb1对所有用户只读。
[root@ldaptest ~]# smbclient //192.168.100.201/smb1 -U user1
Enter user1's password:
Domain=[STAFF] OS=[Windows 6.1] Server=[Samba 4.6.]
smb: \> ls
. D Thu Dec ::
.. DR Thu Dec ::
smb1filetest Thu Dec :: blocks of size . blocks available
smb: \> mkdir user1_mkdirtest
NT_STATUS_MEDIA_WRITE_PROTECTED making remote directory \user1_mkdirtest
smb: \> quit
[root@ldaptest ~]# smbclient //192.168.100.201/smb1 -U user2
Enter user2's password:
Domain=[STAFF] OS=[Windows 6.1] Server=[Samba 4.6.]
smb: \> ls
. D Thu Dec ::
.. DR Thu Dec ::
smb1filetest Thu Dec :: blocks of size . blocks available
smb: \> mkdir user2_mkdir_test
NT_STATUS_MEDIA_WRITE_PROTECTED making remote directory \user2_mkdir_test
smb: \> exit 、/smb2对user1用户只读,不可写。对user2用户可读可写。
# smbclient //192.168.100.201/smb2 -U user1
Enter user1's password:
Domain=[STAFF] OS=[Windows 6.1] Server=[Samba 4.6.]
smb: \> ls
. D Thu Dec ::
.. DR Thu Dec ::
smb2filetest Thu Dec :: blocks of size . blocks available
smb: \> mkdir user1_mkdir_test
NT_STATUS_MEDIA_WRITE_PROTECTED making remote directory \user1_mkdir_test
smb: \> quit
# smbclient //192.168.100.201/smb2 -U user2
Enter user2's password:
Domain=[STAFF] OS=[Windows 6.1] Server=[Samba 4.6.]
smb: \> ls
. D Thu Dec ::
.. DR Thu Dec ::
smb2filetest Thu Dec :: blocks of size . blocks available
smb: \> mkdir user1_mkdir_test
smb: \> ls
. D Thu Dec ::
.. DR Thu Dec ::
smb2filetest Thu Dec ::
user1_mkdir_test D Thu Dec :: blocks of size . blocks available
smb: \> exit
[root@ldaptest ~]# smbcliet常用命令测试:
?或help [command] 提供关于帮助或某个命令的帮助
![shell command] 执行所用的SHELL命令,或让用户进入 SHELL提示符
cd [目录] 切换到服务器端的指定目录,如未指定,则 smbclient 返回当前本地目录
lcd [目录] 切换到客户端指定的目录;
dir 或ls 列出当前目录下的文件;
exit 或quit 退出smbclient
get file1 file2 从服务器上下载file1,并以文件名file2存在本地机上;如果不想改名,可以把file2省略
mget file1 file2 file3 filen 从服务器上下载多个文件;
md或mkdir 目录 在服务器上创建目录
rd或rmdir 目录 删除服务器上的目录
put file1 [file2] 向服务器上传一个文件file1,传到服务器上改名为file2;
mput file1 file2 filen 向服务器上传多个文件 # smbclient //192.168.100.201/smb2 -U user2
Enter user2's password:
Interrupted by signal.
cd /boot/
# smbclient //192.168.100.201/smb2 -U user2
Enter user2's password:
Domain=[STAFF] OS=[Windows 6.1] Server=[Samba 4.6.]
smb: \> put 按Tab键列出/boot目录下的所有内容。
config-2.6.-.el6.x86_64 lost+found/
efi/ symvers-2.6.-.el6.x86_64.gz
grub/ System.map-2.6.-.el6.x86_64
initramfs-2.6.-.el6.x86_64.img vmlinuz-2.6.-.el6.x86_64
initrd-2.6.-.el6.x86_64kdump.img .vmlinuz-2.6.-.el6.x86_64.hmac
smb: \> lcd /tmp/ 切换到客户机服务器的指定目录
smb: \> get initrd-2.6.-.el6.x86_64kdump.img
getting file \initrd-2.6.-.el6.x86_64kdump.img of size as initrd-2.6.-.el6.x86_64kdump.img (171386.4 KiloBytes/sec) (average 171387.0 KiloBytes/sec)

客户机desktop0 配置自动挂载:

# mkdir /mnt/smb1  创建挂载目录
# mkdir /mnt/smb2

挂载测试:

[root@desktop ~]# mount -t cifs -o username=user1 //192.168.100.201/smb1 /mnt/smb1
Password for user1@//192.168.100.201/smb1: ********
[root@desktop ~]# ls /mnt/smb1/
smb1filetest
[root@desktop ~]# mount -t cifs -o username=user2 //192.168.100.201/smb2 /mnt/smb2
Password for user2@//192.168.100.201/smb2: ********
[root@desktop ~]# ls /mnt/smb2/
initrd-2.6.-.el6.x86_64kdump.img install.log smb2filetest user1_mkdir_test

# cat /root/smb1.passwd   手动新建这两个密码文件
username=user1
password=Ynyd1234
# cat /root/smb2.passwd
username=user2
password=Ynyd1234

# vi /etc/fstab 添加如下两行

# vi /etc/fstab 添加如下两行

//192.168.100.201/smb1 /mnt/smb1        cifs    defaults,credentials=/root/smb1.passwd 0 0
//192.168.100.201/smb2 /mnt/smb2 cifs defaults,multiuser,credentials=/root/smb2.passwd,sec=ntlmssp 0 0

[root@desktop ~]# umount /mnt/smb1
[root@desktop ~]# umount /mnt/smb2/
[root@desktop ~]# ls /mnt/smb1/
[root@desktop ~]# ls /mnt/smb2/
[root@desktop ~]# mount –a   该命令会自动使用/etc/fstab配置文件里的内容完成挂载。
[root@desktop ~]# ls /mnt/smb1/
smb1filetest
[root@desktop ~]# ls /mnt/smb2/   
initrd-2.6.32-431.el6.x86_64kdump.img  install.log  smb2filetest  user1_mkdir_test
[root@ldesktop ~]# 自动挂载测试正常

客户端配置写的有点多,其实大部分都是测试的内容。在挂载前,我们先手动测试下看能否挂载成功,之后,再配置自动挂载。

总结起来就4点:1、安装samba-client cifs-utils 2、创建挂载目录 3、创建密码文件 4、编辑fstab配置文件。

Samba共享及自动挂载测试的更多相关文章

  1. Archlinux 自动挂载移动硬盘,开机自动启动smb服务

    Archlinux + Raspberry 打造NAS: samba篇 树莓派自动挂载硬盘,并开启smb服务. 开机自动挂在移动硬盘ntfs 安装ntfs-3g sudo pacman -S ntfs ...

  2. Linux:SAMBA共享、NFS共享、Autofs自动挂载

    SAMBA.NFS共享区别 NFS开源文件共享程序:NFS(NetworkFile System)是一个能够将多台Linux的远程主机数据挂载到本地目录的服务,属于轻量级的文件共享服务,不支持Linu ...

  3. centos samba/squid 配置 samba配置 smbclient mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squid配置 3128 DNSPOD 第二十七节课

    centos  samba/squid 配置  samba配置 smbclient  mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squ ...

  4. 2-5-NFS服务器配置和autofs自动挂载-配置Samba服务器配置现实文件共享

    大纲: NFS服务器运行原理 实战配置NFS服务器 配置Samba服务器配置现实文件共享 ----------------------------------------------- 问题: # 怎 ...

  5. OpenWrt挂载USB储存设备实现Samba共享

    没有USB接口的路由器不是好路由器,有了USB接口OpenWrt才有更多的玩法,比如挂载U盘.移动硬盘等USB储存设备实现Samba共享,打造小型家庭服务器. 1.安装与USB相关的软件包: opkg ...

  6. [Openwrt 扩展上篇]USB挂载&U盘启动&Samba共享

    最近偷懒,没学习,反想起自己的路由刷了Openwrt,正好闲置了一个硬盘想拿来做个网络硬盘,于是开始了折腾....这里将不谈论如何刷Openwrt,如何ssh,如何添加PPOE,如何添加相对应服务的包 ...

  7. NFS 开机自动挂载共享目录

    开机自动挂载: 如果服务端或客户端的服务器重启之后需要手动挂载,我们可以加入到开机自动挂载 在服务端/客户端的/etc/fstab里添加 192.168.22.204:/opt/filestore  ...

  8. linux mount / umount 命令的基本用法 及 开机自动挂载

    格式:mount [-参数] [设备名称] [挂载点] 其中常用的参数有: -a 安装在/etc/fstab文件中类出的所有文件系统. -f 伪装mount,作出检查设备和目录的样子,但并不真正挂载文 ...

  9. linux autofs自动挂载

    autofs:自动挂载器 自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的NFS挂载 自动挂载器由autofs服务脚本管理 自动挂载器由auto.master配置文件进行配 ...

随机推荐

  1. pthread_once重塑singleton模式

    单件模式是非线程安全的: // Single threaded version class Foo { private Helper helper = null; public Helper getH ...

  2. 大数据开发实战:MapReduce内部原理实践

    下面结合具体的例子详述MapReduce的工作原理和过程. 以统计一个大文件中各个单词的出现次数为例来讲述,假设本文用到输入文件有以下两个: 文件1: big data offline data on ...

  3. js 正则表验证输入

    输入1-9的整数 <input type="text" class="form-control" style="width: 60px;disp ...

  4. 利用shell脚本批量提交网站404死链给百度

    网站运营人员对于死链这个概念一定不陌生,网站的一些数据删除或页面改版等都容易制造死链,影响用户体验不说,过多的死链还会影响到网站的整体权重或排名. 百度站长平台提供的死链提交工具,可将网站存在的死链( ...

  5. 【转】BFC是什么

    原文:https://www.cnblogs.com/mlw1814011067/p/10397999.html ------------------------------------------- ...

  6. sort命令的使用,结合uniq, awk等

    这条命令的意思:lastb | awk -F " " '{print $3}' | sort | uniq -c | sort -k1,1nr > output.log 过滤 ...

  7. nginx不浏览直接下载文件

    当我们使用Nginx时,如果要让一些附件比如txt,pdf,doc等不直接在浏览器打开,而弹出另存为的对话框(也就是下载),则可以在nginx里添加如下配置: location /{if ($requ ...

  8. eclipse中的项目鼠标右键卡死

    1.错误描写叙述 在eclipse中部署了Java Web项目,想在WebContent目录下新建一个目录,鼠标右键时出现eclipse卡死的想象 2.错误原因 (1)插件安装过多 (2)导入的项目过 ...

  9. IDEA实现序列号接口

    idea自动生成serialVersionUID (2013-12-15 08:12:09)转载▼ Setting->Plugins 找到一个叫 GenerateSerialVersionUID ...

  10. LInux 解压缩文件

    常用命令有2个,一个是tar,一个是zip,二选一就行 有的服务器没有安装zip命令,就只有tar可以用,我个人建议还是安装一个zip好一些,tar实在太繁琐 1.解压 tar -zxvf ./xxx ...