Linux Samba目录服务搭建与Java客户端访问
前言:
本文比较简略,只求快速入门,若要了解详情,推荐一篇文章:http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html
1,安装samba(大部分linux上默认安装的可能不完整,建议重新安装)
#检测是否安装,请注意不同安装包协议命令不尽相同#
rpm -qa|grep samba
#安装#
yum install samba samba-client samba-swat
2,启动samba SMB服务
/etc/init.d/smb start
启动samba NMB服务
/etc/init.d/nmb start
3, 增加用户和组
groupadd dmp
useradd -g dmp ff
/** 改密-- 密码最好使用大小写+特殊字符+数字,否则会需要多次反复重新输入 **/
passwd ff
4, 重启samba服务
/etc/init.d/smb restart
/etc/init.d/nmb restart
5, 配置 /etc/samba/smb.conf 增加公共目录.
[starfish] #相对目录,供外部访问#
comment = starfish
path=/home/ff/starfish_cookie_file #绝对路径#
valid users = @dmp #组名#
write list = @dmp #组名#
read only = No
create mask = 0777
force create model = 0777
directory mask = 0777
force directory mode = 0777
guest ok = yes
writable = yes
注:如果条件允许尽量给与目录尽可能大的权限,相关具体参数请参考官方文档。
6, 重启samba服务
/etc/init.d/smb restart
/etc/init.d/nmb restart
7,在root权限下执行目录权限设置
chmod 777 /home/ff/starfish_cookie_file
8, 更快捷的命令
#查看samba服务状态#
#service smb status
#service nmb status #开启samba服务#
service smb start #关闭samba服务#
service smb stop #重启samba服务#
service smb restart
9,Java代码访问.
package org.wit.ff.io; import java.net.MalformedURLException; import jcifs.smb.NtlmPasswordAuthentication;
import jcifs.smb.SmbException;
import jcifs.smb.SmbFile; import org.junit.Test; /**
*
* <pre>
* Java访问Samba 示例
* </pre>
*
* @author F.Fang
* @version $Id: SambaDemo.java, v 0.1 2014年9月29日 上午2:45:29 F.Fang Exp $
*/
public class SambaDemo { /**
*
* <pre>
* 不推荐.
* 原因:若用户名或密码中存在'@'符号,则会抛出连接异常,samba访问路径错误.
* </pre>
*
* @throws MalformedURLException
* @throws SmbException
*/
@Test
public void demo1() throws MalformedURLException, SmbException {
String conStr = "smb://tomcat:1234567@192.168.21.126/starfish";
SmbFile smbFile = new SmbFile(conStr);
if (smbFile.exists()) {
//
System.out.println("hello world!");
} } /**
*
* <pre>
* 推荐.
* 用户名和密码独立传入.
* </pre>
*
* @throws SmbException
* @throws MalformedURLException
*/
@Test
public void demo2() throws SmbException, MalformedURLException {
String url = "smb://192.168.21.126/starfish";
NtlmPasswordAuthentication authentication = new NtlmPasswordAuthentication(".", "tomcat", "1234567");
SmbFile smbFile = new SmbFile(url, authentication);
if (smbFile.exists()) {
//
System.out.println("hello world!");
}
} }
10, Java客户端访问Maven依赖
<dependency>
<groupId>jcifs</groupId>
<artifactId>jcifs</artifactId>
<version>1.3.17</version>
</dependency>
Linux Samba目录服务搭建与Java客户端访问的更多相关文章
- 使用poco 的NetSSL_OpenSSL 搭建https 服务端,使用C++客户端,java 客户端访问,python访问(python还没找到带证书访问的代码.)
V20161028 由于项目原因,需要用到https去做一些事情. 这儿做了一些相应的研究. 这个https 用起来也是折腾人,还是研究了一周多+之前的一些积累. 目录 1,java client 通 ...
- 从JAVA客户端访问Redis示例(入门)
转自:http://blog.csdn.net/kkdelta/article/details/7217761 本文记录了安装Redis和从JAVA端访问Redis的步骤 从http://downlo ...
- 【分布式技术专题】「OSS中间件系列」Minio的文件服务的存储模型及整合Java客户端访问的实战指南
Minio的元数据 数据存储 MinIO对象存储系统没有元数据数据库,所有的操作都是对象级别的粒度的,这种做法的优势是: 个别对象的失效,不会溢出为更大级别的系统失效. 便于实现"强一致性& ...
- FastDFS单机搭建以及java客户端Demo
http://blog.csdn.net/u012453843/article/details/69951920 http://blog.csdn.net/xyang81/article/detail ...
- Linux samba服务搭建
实验准备: 准备两台机器,server0(172.25.0.11)和deskop0(172.25.0.12),要求在server0上实现samba共享,在desktop0上访问共享. 1.允许mark ...
- XFire搭建WebService和客户端访问程序
开发环境:myeclipse8.6+jdk1.6.0_29+tomcat6.0.37 JAX-WS搭建webservice:http://www.cnblogs.com/gavinYang/p/352 ...
- JAX-WS搭建WebService和客户端访问程序
开发环境:myeclipse8.6+jdk1.6.0_29+tomcat6.0.37 XFire搭建webservice: http://www.cnblogs.com/gavinYang/p/352 ...
- Java客户端访问HBase集群解决方案(优化)
测试环境:Idea+Windows10 准备工作: <1>.打开本地 C:\Windows\System32\drivers\etc(系统默认)下名为hosts的系统文件,如果提示当前用户 ...
- 在linux环境下搭建JDK+JAVA+Mysql,并完成jforum的安装
参考链接: YUM安装MySQL和JDK和Tomcat:http://cmdschool.blog.51cto.com/2420395/1696206/ http://www.cnblogs.com/ ...
随机推荐
- 如何查看eclipse、mysql的版本 - 原创
Eclipse 1)如果实在官网下载的,看压缩包名字就可以看出来,只带有win32字样的是32位,带有win32-x86_64字样的是64位的. 2)找到eclipse安装目录的eclipse.ini ...
- LeftoverDataException,依赖包,apache license 2.0
1. poi3.9 LeftoverDataException org.apache.poi.hssf.record.RecordInputStream$LeftoverDataException: ...
- virtio,vhost 和vhost-user
随着qemu2.1的发布,可以看到,qemu支持了vhost-user.从介绍可以看出,这是把原来vhost-backend从kernel移到了userspace,这和原来virtio架构有什么区别呢 ...
- 进入root权限操作
su:authentication failure的解决办法 $ su - rootPassword:su: Authentication failureSorry. 这时候输入 $ sudo pas ...
- Python IOError: [Errno 22] invalid mode ('r') 解决方法
环境 Anaconda3 Python 3.6, Window 64bit 书籍 O'Reilly出版的Wes McKinney编的<Python for Data Analysis> r ...
- MySQL忘记密码解决方案
1.修改本地mysql目录中的my.ini文件 添加skip-grant-tables 2.在win +r 输入cmd,进行mysql的重启启动操作 net stop MySQL 停止服务 ...
- 三十九 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的基本概念
elasticsearch的基本概念 1.集群:一个或者多个节点组织在一起 2.节点:一个节点是集群中的一个服务器,由一个名字来标识,默认是一个随机的漫微角色的名字 3.分片:将索引(相当于数据库)划 ...
- datagrid中用tooltip
function msgFormat(value,row){ value = value.replace(/ /g," "); return '<span title='+ ...
- IOS-视频
一.简介 iOS提供了MPMoviePlayerController.MPMoviePlayerViewController两个类,可以用来轻松播放视频和网络流媒体\网络音频 提示:网络音频同样使用此 ...
- VS10x CodeMap
VS10x CodeMap 注册码(key): #$aCN/L/ra73OaqCJENXc2JIDL61IMawNWBBX+PxhBzobE9w3QlcrwoXeB3DWBC2f56y9r0Hx2XP ...