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/ ...
随机推荐
- SFTP无法连接 Connection closed by server with exitcode 127
命令: Pass: ************状态: Connected to 66.77.88.99错误: Connection closed by server with exitcode 127错 ...
- [国家集训队2011]happiness
Description 高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而一对好朋友 ...
- NO.4 Android开发中常用框架及工具
android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新ListView.ViewPager.WevView.ExpandableListView.GridView ...
- POJ 入门
先复习一下C的一些基本概念 1.C标准化输出:scanf int m,n; scanf("%d%d",&n,&m); 实际上scanf是有返回值的,且返回值的类型为 ...
- 图片加载之Picasso使用
简介 Picasso是Square公司开源的一个Android图形缓存库,可以实现图片下载和缓存功能. 主要有以下一些特性: 在Adapter中回收和取消已经不在视野范围图片资源的加载,防止可能出现的 ...
- Node.js基础知识普及
Node.js只支持单线程,故不会产生死锁,采用非阻塞I/O机制和事件环机制.非常适合与开发需要处理大量并发的输入/输出的应用程序. 一. Node.js的核心模块有很多,这里先写几个比较常用的( ...
- go语言的排序、结构体排序
原文:https://studygolang.com/articles/1598 晚上准备动手写点 go 的程序的时候,想起 go 如何排序的问题.排序 sort 是个基本的操作,当然搜索 searc ...
- Matplotlib -多组线用不同的线性、颜色、节点绘制
先来看看我们要实现的效果图吧: 先来看看Matplotlib的plot函数原型 plt.plot(x, y, color='r', maker='o', linestyle='-', linewidt ...
- 如何让vim 有颜色
1.vi /root/.bashrc 下添加export TERM=xterm 2.同时 会话选项→仿真 勾选ANSI颜色 另外:上面如果不行,还修改了这个地方: vim ~/.vimrc synta ...
- Node负载能力测试
需求很简单,就是提供一个服务接口收集端上传来的日志文件并保存,要求能承受的QPS为5000. 以前从来都没考虑过Node服务的负载能力,用 koa + co-busboy 接受上传文件请求并用 fs ...