优麒麟/ubuntu及redhat开启文件共享
Linux通过SMB(Server Messages Block,服务器消息块)来实现文件或打印机等资源的共享,使用前需先解决服务端、客户端以及访问协议等服务程序的安装配置问题。测试环境:真机优麒麟20.10(虚拟网址192.168.100.1),虚拟机redhat8(192.168.100.100)
优麒麟/ubuntu及redhat开启文件共享
Linux通过SMB(Server Messages Block,服务器消息块)来实现文件或打印机等资源的共享,使用前需先解决服务端、客户端以及访问协议等服务程序的安装配置问题。
测试环境:真机优麒麟20.10(虚拟网址192.168.100.1),虚拟机redhat8(192.168.100.100)
一、有关服务程序安装
1.samba:服务端程序。
redhat系统安装:yum install samba
ubuntu系统安装:apt install samba
测试的优麒麟20.10系统已经默认安装samba。
redhat8安装samba:
[root@hollowman ~]# yum install samba
2.smbclient: 客户端工具,属于samba套件,它提供一种命令行使用交互式方式访问samba服务器的共享资源。
redhat系统安装:yum install samba-client
ubuntu系统安装:apt install smb-client
语法:smbclient
常用选项:
-L 显示服务端的分享资源
-O 设置用户端TCP连接槽的选项
-p 指定服务器端TCP连接端口编号
-U 指定用户名
3.cifs-utils: 可以为linux客户端访问共享文件提供实现手段,当然他发挥作用的前提也是已经安装了samba。
redhat系统安装:yum install cifs-utils
ubuntu系统安装:apt install cifs-utils
root@hollowman-F117:~# apt install cifs-utils
[root@hollowman ~]# yum install cifs-utils
访问的方法见第五步“远程访问”。
二、修改主配置文件,设置共享文件信息
主配置文件:/etc/samba/smb.conf
在/etc/samba/smb.conf的最后添加如下内容:
[samba]
comment = hollowman.cn share
path = /home/samba
public = yes
writable = yes
修改主配置文件后需要重新启动smb服务,注意优麒麟是smbd服务,而redhat系统则是smb服务。
root@hollowman-F117:~# systemctl restart smbd
[root@hollowman ~]# systemctl restart smb
三、添加访问共享文件需要的用户名密码
pdbedit 用于管理smb服务程序的账号信息数据库
语法:pdbedit [选项] [账户]
选项:
-a 建立smb用户(必须是已经存在的Linux系统用户)
-x 删除smb用户(删除此用户不会影响Linux系统用户)
-L 显示smb用户列表
-Lv 显示smb用户的详细信息
root@hollowman-F117:~# pdbedit -a hollowman
new password: #输入smb用户的密码,与系统hollowman用户密码无关
retype new password:
用smbpassword命令也可以创建用户:smbpassword -a hollowman
root@hollowman-F117:~# smbpasswd -a ht
New SMB password: #输入smb用户的密码,与系统hollowman用户密码无关
Retype new SMB password:
两者的区别是:pdbedit用户创建成功后还会显示该用户的详细信息。
四、完成共享文件的目录建立及权限开放
根据第二步中声明的共享目录/home/samba完成下面的工作:
优麒麟/ubuntu:
root@hollowman-F117:~# mkdir /home/samba
root@hollowman-F117:~# ls -l /home
总用量 4
drwxr-xr-x 24 hollowman hollowman 4096 1月 31 13:59 hollowman
drwxr-xr-x 2 root root 6 1月 31 17:54 samba
root@hollowman-F117:~# chown -Rf hollowman:hollowman /home/samba
redhat8:
[root@hollowman ~]# mkdir /home/samba
[root@hollowman ~]# ls -Zl /home
total 0
drwx------. 3 hollowman hollowman unconfined_u:object_r:user_home_dir_t:s0 78 Jan 24 22:49 hollowman
drwxr-xr-x. 2 root root unconfined_u:object_r:user_home_dir_t:s0 6 Jan 31 16:12 samba
[root@hollowman ~]# chown -Rf hollowman:hollowman /home/samba
因为redhat8默认安装了SELinux安全策略以及firewall防火墙,因此要进行相关配置才可以远程访问。
1.设置SElinux安全策略
有关知识参考:https://blog.csdn.net/ymz641/article/details/112001373
修改共享目录的安全上下文,使之与samba服务相匹配:
[root@hollowman ~]# semanage fcontext -a -t samba_share_t /home/samba
[root@hollowman ~]# restorecon -Rv /home/samba/
Relabeled /home/samba from unconfined_u:object_r:user_home_dir_t:s0 to unconfined_u:object_r:samba_share_t:s0
修改SElinux安全策略的规则,允许共享目录被samba服务访问
[root@hollowman ~]# getsebool -a | grep samba
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
...
[root@hollowman ~]# setsebool -P samba_enable_home_dirs on
2.设置firewall防火墙,放行samba服务
[root@hollowman ~]# firewall-cmd --add-service=samba --permanent --zone=public
success
[root@hollowman ~]# firewall-cmd --reload
success
3.必要时,清空iptables防火墙
[root@hollowman ~]# iptables -F
五、远程访问
1.windows客户端访问
直接在资源管理器中键入 \192.168.100.100 回车后输入用户名:hollowman 及密码:123456即可
2.Linux客户端访问(redhat8访问优麒麟/ubuntu,或优麒麟/ubuntu访问redhat8)
1)优麒麟/ubuntu访问redhat8
查看服务端共享资源:
root@hollowman-F117:~# smbclient -L //192.168.100.100 -U hollowman
Enter WORKGROUP\hollowman's password:
Sharename Type Comment
--------- ---- -------
samba Disk Public Stuff
IPC$ IPC IPC Service (Samba Server Version 4.9.1)
SMB1 disabled -- no workgroup available
可以发现,服务端开启了samba的共享文件夹
直接挂载访问:
root@hollowman-F117:~# mount.cifs //192.168.100.100/samba /media/samba -o user=hollowman,pass=123456
回到文件系统,发现远程目录多了一个叫samba的目录,这就是redhat8共享的目录。
你也发现这里还有一个netshare目录,这是昨天发布的“优麒麟/ubuntu远程访问windows共享文件夹”中的结果。
开机自动挂载:
root@hollowman-F117:~# echo '//192.168.100.100/samba /media/samba cifs defaults,username=hollowman,password=123456 0 2' >> /etc/fstab
root@hollowman-F117:~# mount -a
效果图:
2)redhat8访问优麒麟/ubuntu
[root@hollowman ~]# smbclient -L //192.168.100.1 -U hollowman
Enter MYGROUP\hollowman's password:
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
samba Disk hollowman.cn share
IPC$ IPC IPC Service (hollowman-F117 server (Samba, Ubuntu))
Reconnecting with SMB1 for workgroup listing.
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
Failed to connect with SMB1 -- no workgroup available
同样也有一个samba的共享目录
[root@hollowman ~]# mkdir /media/samba
[root@hollowman ~]# mount.cifs //192.168.100.1/samba /media/samba -o user=hollowman,pass=123456
尝试进入挂载的目录,新建hy目录成功
[root@hollowman ~]# cd /media/samba
[root@hollowman samba]# mkdir hy
[root@hollowman samba]# ls
hy
效果图:
更多推荐










所有评论(0)