samba 搭建
使用samba做共享存储
tomcat上传的的文件存储一般存放在WEB目录下,但文件多了可能需要将上传的文件存储到单独的服务器中,如果有多个tomcat,上传的文件也需要放到一个统一的地方,这样就想到用一台单独的服务器做文件存储的功能,但怎么让每个tomcat都能访问到这个文件,想到用samba服务来共享出这个服务器的存储空间
- tomcat上传文件写入应用外的路径
- 将samba共享挂在到tomcat的的特定目录下(也就是tomcat的上传路径)
- 将上传路径映射可以访问
- 在samba中放入特殊文件,防止未挂在状态导致tomcat上传的文件写入非samba共享目录
samba 安装
操作系统:centos6.8
安装方式:yum安装
先检查系统中是否已经安装了samba的相关软件
rpm -qa | grep samba
一般如linux操作系统可能已经安装的samba的客户端了
samba-winbind-clients-3.6.23-33.el6.x86_64
samba-client-3.6.23-33.el6.x86_64
samba-winbind-3.6.23-33.el6.x86_64
samba-common-3.6.23-33.el6.x86_64
samba4-libs-4.2.10-6.el6_7.x86_64
yum安装samba
yum install samba正在安装:
samba x86_64 3.6.23-45.el6_9 updates 5.1 M
为依赖而更新:
libsmbclient x86_64 3.6.23-45.el6_9 updates 1.6 M
samba-client x86_64 3.6.23-45.el6_9 updates 11 M
samba-common x86_64 3.6.23-45.el6_9 updates 10 M
samba-winbind x86_64 3.6.23-45.el6_9 updates 2.2 M
samba-winbind-clients x86_64 3.6.23-45.el6_9 updates 2.0 M
查看下samba服务状态
service smb status
启动samba服务
service smb start
samba配置文件
目录:/etc/samba/
lmhosts
smb.conf
smbusers
samba 用户管理
smbpasswd -a zhangsan注意:这里添加的一定要先是linux系统的用户,这里其实是在为系统用户设置
samba密码并不是添加用户,执行之后并不是想象的那样添加了一个samba用户
smbusers配置文件并不是这个作用,这个配置文件名实际是配置做用户名映射用的
系统用户添加命令 useradd zhangsan
然后执行上面的命令会提示设置密码,这个密码是samba密码,与linux用户的密码无关
samba 挂载
linux -> linux
mount
-t cifs
-o username='userane',password='passowrd'
//192.168.0.103/public
/usr/share/nginx/html/resource/
smbclient
一般linux系统可能默认已经安装了samba的客户端,就可以使用smbclient命令了
列出某个IP地址所提供的共享文件夹
smbclient -L 127.0.0.1 -U username%password
有点坑
使用两个虚拟机配置的使用smbclient -L 查询可用共享的时候始终报错 success - 0
修改了配置 /etc/resolv.conf
nameserver 127.0.0.1
重启nmb服务就可以查询到了
service nmb restart
NFS
centos6.8 中已经默认安装了nfs 和 rpc 相关的模块
服务端:
修改配置文件 /etc/exports
/nfsroot *(rw,sync,no_root_squash)
开启nfs服务即可
service nfs start
客户端:
发现共享目录 showmount -e 192.168.1.20(服务端IP)
开启nfs服务 service nfs start
mount上就可以了 mount -t nfs 192.168.1.20:/{共享目录绝对路径} /{本地目录绝对路径}
后续不断完善...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。