Samba 服务器搭建与 Java 客户端实现

最近需要将原来使用阿里云 OSS 的程序模块改成使用公司内部搭建的文件服务器,由于目前使用的文件不多,且都是一些小文件,经过对比后,决定采用 Samba 来实现文件服务器。

Samba 是一个程序的集合,包括服务器与客户端程序,它允许在 Linux 与 Windows 实现共享文件的功能。本文先讲述如何在 CentOS 7 下安装与配置 Samba,然后讲述如何使用 Java 来实现 Samba 客户端以上传与读取文件。

Samba 安装

CentOS 平台下可以直接使用 yum 来安装 Samba 服务器以及客户端。

# yum install samba samba-client 

Samba 安装好后,就可以启动操作。

# service smb start

如果需要关闭,则使用命令:

# service smb stop

如果需要查看 smb 运行状态,可以使用命令:

# service smb status

Samba 配置

安装好 Samba 后,就可以对 Samba 进行配置了。

我们先使用以下命令添加 Linux 组 leehao 和用户 leehao。

# groupadd leehao
# useradd -g leehao leehao

接下来使用smbpasswd命令来创建 Samba 的用户:

# smbpasswd -a leehao

输入 Samba 用户 leehao 的密码。

Samba 的默认配置文件是/etc/samba/smb.conf。打开 smb.conf 文件,添加以下配置:

[portrait]
        comment = leehao portrait
        path = /home/leehao/upload/portrait
        valid users = @leehao
        public = no
        admin users = leehao
        writable = yes
        create mask = 0640
        directory mask = 0750

配置的含义是增加一个新的 Samba 共享目录,目录位置是/home/leehao/upload/portrait,且使用需要使用指定用户密码来访问。
/home/leehao/目录下创建目录upload/portrai

完成配置后,可以使用testparm命令来测试 Samba 配置是否正常。

Windows 访问 Samba

Samba 配置完成后,就可以访问了,可以在 Windows 打开文件资源窗口来访问 Samba。

Windows 窗口地址栏中输入\\10.88.x.x\portrait(改成实际 IP),按下回车,输入用户 leehao 和上面设置的密码,就可以访问 Linux 的 Samba 目录了。

image

如果弹出“不允许一个用户使用一个以上用户名与服务器…”提示,可以打开 cmd,输入net use * /del /y命令,断开所有 Windows 与 Samba 的连接,再重新连接 Samba 即可。

image

Java 实现 Samba 客户端

我们使用 jcifs 来实现 Java 读取以及下载 Samba 文件的功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值