yum install Samba
[root@linuxprobe ~]# cd /etc/samba
[root@linuxprobe samba]# mv smb.conf smb.conf_bak
[root@linuxprobe samba]# cat smb.conf_bak | grep -v "#" | grep -v ";" | grep -v "^$" > smb.conf
[root@linuxprobe samba]# vim smb_conf
1 [global]
2 workgroup = MYGROUP
3 server string = Samba Server Version %v
4 log file = /var/log/samba/log.%m
5 max log size = 50
6 security = user
7 passdb backend = tdbsam
8 load printers = yes
9 cups options = raw
10 [homes]
11 comment = Home Directories
12 browseable = no
13 writable = yes
14 [printers]
15 comment = All Printers
16 path = /var/spool/samba
17 browseable = no
18 guest ok = no
19 writable = no
20 printable = yes
去除掉目前无关的配置项,最终得到的配置项目。
参数 | 作用 |
---|---|
[global] | 共享名称 |
workgroup = MYGROUP | 网上邻居共享组 |
server string = Samba Server Version %v | 服务器标识 |
log file = /var/log/samba/log.%m | 日志保存路径 |
max log size = 50 | 日志文件容量KB |
security = user | 验证模式:share:无需验证、user:需要验证、server:远程主机验证、domain:使用域控制器验证 |
passdb backend = tdbsam | 定义后台的类型 |
参数 | 作用 |
---|---|
[rick] | 共享参数,名字自定 |
comment = 文字自定 | 描述信息 |
path = /home/risk | 共享目录 |
public = no | 不公开 |
wriable = yes | 允许写入 |
备注:samba配置文件的等号两边均有空格,在7.0版可以省略空格
最终的主配置文件smb_conf的内容
vim smb.conf
1 [global]
2 workgroup = MYGROUP
3 server string = Samba Server Version %v
4 log file = /var/log/samba/log.%m
5 max log size = 50
6 security = user
7 passdb backend = tdbsam
8 [rick]
9 comment = this is a shengming
10 path = /home/rick
11 public = no
12 wriable = yes
systemctl restart samba
systemctl enable samba
在RHEL7中默认的是user(密码认证)登录。所以必须建立账户信息数据库之后,才能使用用户口令认证模式。Samba服务程序的数据库要求账户必须在当前系统中已经存在,否则日后创建文件时将导致文件的权限属性混乱而引发错误。
pdbedit用于管理SMB服务程序的账户信息数据库
pdbedit [选项] 账户
参数 | 作用 |
---|---|
-a 用户名 | 建立samba账户 |
-x 用户名 | 删除samba账户 |
-L | 列出账户列表 |
-Lv | 列出账户详细信息列表 |
[root@linuxprobe samba]# pdbedit -a -u linuxprobe
new password:
retype new password:
Unix username: linuxprobe
NT username:
[root@linuxprobe samba]# mkdir -p /rick
[root@linuxprobe samba]# chown -Rf linuxprobe:linuxprobe /rick
[root@linuxprobe rick]# chmod -Rf 777 /rick
[root@linuxprobe samba]# getsebool -a | grep samba
......
samba_export_all_rw --> off
......
[root@linuxprobe samba]# setsebool samba_export_all_rw=on
[root@linuxprobe samba]# systemctl restart smb
[root@linuxprobe samba]# systemctl enable smb
[root@linuxprobe samba]# iptables -F
1、在windows系统中按下win+R,并输入\192.168.10.10。按提示输入用户名和密码。
2、尝试写入文件,修改文件。成功!
samba也可以在两台Linux系统之间进行通讯。
客户端需要安装支持文件共享服务的软件包:cifs-utils
[root@localhost yum.repos.d]# yum install cifs-utils
[root@localhost yum.repos.d]# vim auth.smb
usrname=linuxprobe
password=******
domain=MYGROUP
创建一个挂载目录rick
mkdir /rick
vim /etc/fstab
//192.168.10.10/rick /rick cifs credential=/root/auth.smb 0 0
[root@linuxprobe Desktop]# mount -a
mount: wrong fs type, bad option, bad superblock on //192.168.10.10/rick,
missing codepage or helper program, or other error
(for several filesystems (e.g. nfs, cifs) you might
need a /sbin/mount. helper program)
In some cases useful info is found in syslog - try
dmesg | tail or so.
可以将两台Linux系统之间的共享,并将共享资源挂载到本地主机的目录上,
像使用本地主机上的资源那样读写远程Linux系统上的共享文件。
iptables -F
mkdir /xiaoguo
chmod -Rf 777 /xiaoguo
格式:共享目录路径 允许访问的NFS客户端(权限参数)
vim /etc/exports
/xiaoguo 192.168.10.10(rw,sync,root_squash)
systemctl restart rpcbind
systemctl restart nfs-server
systemctl enable rpcbind
systemctl enable nfs-server
### 第五步 写入/etc/fstab,永久生效
```shell
vim /etc/fstab
192.168.10.10:/xiaoguo /xiaoguo nfs defaults 0 0
格式 “挂载目录 子配置文件”
挂载目录是设备挂载位置的上一级目录
···shell
/media /etc/iso.misc
### 第三步 修改子配置文件
···shell
vim /etc/iso.misc
iso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
[root@linuxprobe media]# df -h
df: ‘/media/cdrom’: No such file or directory
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/rhel-root 18G 3.2G 15G 19% /
devtmpfs 985M 0 985M 0% /dev
tmpfs 994M 108K 994M 1% /dev/shm
tmpfs 994M 8.8M 986M 1% /run
tmpfs 994M 16K 994M 1% /sys/fs/cgroup
[root@linuxprobe media]# cd /media/iso
[root@linuxprobe iso]# df -h
df: ‘/media/cdrom’: No such file or directory
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/rhel-root 18G 3.2G 15G 19% /
devtmpfs 985M 0 985M 0% /dev
tmpfs 994M 108K 994M 1% /dev/shm
tmpfs 994M 8.8M 986M 1% /run
tmpfs 994M 16K 994M 1% /sys/fs/cgroup
/dev/sr0 3.5G 3.5G 0 100% /media/iso
[root@linuxprobe iso]#