atitit.網路檔案訪問協議.unc smb nfs ftp http的區別
3.2.1. jcifs/jcifs-1.3.8.jar.zip( 366 k)2
7. Potplayer訪問smb nfs ftp http7
1. 網路檔案訪問協議
從 Windows 95 開始,Microsoft Windows 作業系統(operating system)都包括了客戶機和伺服器 SMB 協議支援。Microsoft 為 Internet 提供了 SMB 的開源版本,即通用 Internet 檔案系統 (CIFS)。與現有 Internet 應用程式如檔案傳輸協議(FTP)相比, CIFS 靈活性更大。對於 UNIX 系統,可使用一種稱為 Samba 的共享軟體
常用的網路訪問協議有http,ftp,smb,nfs等。。
2. NETBios協議
Netbios (網路基本輸入/輸出系統)最初由 IBM,Sytek 作為API開發,使使用者軟體能使用區域網的資源。自從誕生,Netbios成為許多其他網路應用程式的基礎。嚴格意義上,Netbios 是接入網路服務的介面標準。
Netbios 原來是作為THE網路控制器為 IBM 區域網設計的,是通過特定硬體用來和網路作業系統 連線的軟體層。Netbios經擴充套件,允許程式使用Netbios介面來操作IBM令牌環結構。Netbios 已被公認為工業標準,通常參照 Netbios-compatible LANs。
作者:: 老哇的爪子 Attilax 艾龍, EMAIL:1466519819@qq.com
轉載請註明來源: http://blog.csdn.net/attilax
3. SMB(Server Message Block)
通訊協議是微軟(Microsoft)和英特爾(Intel)在1987年制定的協議,主要是作為Microsoft網路的通訊協議。SMB 是在會話層(session layer)和表示層(presentation layer)以及小部分應用層(application layer)的協議。SMB使用了NetBIOS的應用程式介面 (Application Program Interface,簡稱API)。另外,它是一個開放性的協議,允許了協議擴充套件——使得它變得更大而且複雜;大約有65個最上層的作業,而每個作業都超過120個函式,甚至Windows NT也沒有全部支援到,最近微軟又把 SMB 改名為 CIFS(Common Internet File System),並且加入了許多新的特色。
3.1. Win訪問smb
使用unc路徑
smb 用 \\server\share\file 的方式訪問
3.2. Java訪問smb
3.2.1. jcifs/jcifs-1.3.8.jar.zip( 366 k)
import jcifs.smb.SmbFile;
import jcifs.smb.SmbFileOutputStream;
public class smbTest {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
createDir("aaa2");
File f=new File("\\\\192.168.2.106\\電影\\最新電影");
System.out.println(f.exists());
//f.createNewFile( );
System.out.println("fffff");
}
private static String smburl = "smb://admin:admin@192.168.2.106/電影/最新電影";
//zhoushun ----------------------------
public static void createDir(String dir) throws Exception{
SmbFile fp = new SmbFile(smburl+"//"+dir);
System.out.println("fieldir+++++++++++++++++++++="+smburl+"//"+dir);
//File fp = new File("Z://"+dir);
// 目錄已存在建立資料夾
if (fp.exists() && fp.isDirectory()) {
} else{
// 目錄不存在的情況下,會丟擲異常
fp.mkdir();
}
}
3.2.2. Jftp也可以了
4. Unc路徑
4.1. Win訪問Unc
4.2. Java訪問Unc
Java讀寫unc路徑,就是正常的的file就ok蘭.
File f=new File("\\\\192.168.2.106\\電影\\最新電影");
System.out.println(f.exists());
Nfs
5. NFS協議
本詞條缺少概述、資訊欄、名片圖,補充相關內容使詞條更完整,還能快速升級,趕緊來編輯吧!
NFS是NetworkFileSystem的簡寫,即網路檔案系統.
網路檔案系統是FreeBSD支援的檔案系統中的一種,也被稱為NFS.NFS允許一個系統在網路上與它人共享目錄和檔案。通過使用NFS,使用者和程式可以象訪問本地檔案一樣訪問遠端系統上的檔案。
以下是NFS最顯而易見的好處:
1.本地工作站使用更少的磁碟空間,因為通常的資料可以存放在一臺機器上而且可以通過網路訪問到。
2.使用者不必在每個網路上機器裡頭都有一個home目錄。Home目錄可以被放在NFS伺服器上並且在網路上處處可用。
3.諸如軟碟機,CDROM,和Zip®之類的儲存裝置可以在網路上面被別的機器使用。這可以減少整個網路上的可移動介質裝置的數量。
NFS至少有兩個主要部分:一臺伺服器和一臺(或者更多)客戶機。客戶機遠端訪問存放在伺服器上的資料。為了正常工作,一些程式需要被配置並執行。
NFS有很多實際應用。下面是比較常見的一些:
1.多個機器共享一臺CDROM或者其他裝置。這對於在多臺機器中安裝軟體來說更加便宜跟方便。
2.在大型網路中,配置一臺中心NFS伺服器用來放置所有使用者的home目錄可能會帶來便利。這些目錄能被輸出到網路以便使用者不管在哪臺工作站上登入,總能得到相同的home目錄。
3.幾臺機器可以有通用的/usr/ports/distfiles目錄。這樣的話,當您需要在幾臺機器上安裝port時,您可以無需在每臺裝置上下載而快速訪問原始碼。
注:NFS由Sunmicrosystems公司開發。是一種網路作業系統,並且是unix作業系統的協議
5.1. Win訪問nfs
,使用unc路徑 好像不行
使用win client,好像down不到soft..新不上
nfs 需要載入 (mount), win上要裝nfs客戶端 |
5.2. Java訪問nfs
5.2.1. jnex-4.3.jar (cant)
話說這段程式碼雖然很簡單,卻費了我不少力氣。JDK本身是沒有訪問NFS的功能,只能用第三方包了,google後發覺用java訪問NFS的應用很少,竟然沒找到可用的示例,遠不如samba那麼多,而且只有sun的webnfs可用來訪問NFS,在http://yanfs.dev.java.net 上只有一個一個的散裝原始碼, 打包後的jar都沒地方下,連API文件都沒有. 愁煞我也. 找來找去,根據sun的線上文件摸索出了點頭緒.
Containing JAR files: |
[MAVEN2] jnex-4.3.jar |
import com.nexirius.util.XFile;
XFileExtensionAccessor跟個XFileInputStream還是新不上..
放棄..
5.2.2. Use jftp
一個用JAVA寫的FTP客戶端程式。功能強大不僅支援FTP,還支援其它協議如SMB, SFTP, NFS, HTTP等。在傳輸檔案的同時還可以...
import com.sun.nfs.XFileExtensionAccessor;
import com.sun.xfile.XFile;
import com.sun.xfile.XFileInputStream;
import com.sun.xfile.XFileOutputStream;
public class NfsTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
new NfsTest().downloadViaNFS("192.168.2.106","admin","admin","電影");
}
public void downloadViaNFS(final String ip, final String user,
final String password, final String dir)
{
Logger logger = new Logger("");
logger.debug("NFS download begin!");
//try {
String url = "nfs://" + ip + "/" + dir;
XFile xf = new XFile(url);
if (xf.exists())
{
logger.debug("URL is OK!");
} else
{
logger.debug("URL is bad!");
return;
}
//XFileExtensionAccessor nfsx = (XFileExtensionAccessor) xf
//.getExtensionAccessor();
//
//if (!nfsx.loginPCNFSD(ip, user, password))
//
//{
//
//logger.debug("login failed!");
//return;
//
//}
String[] fileList = xf.list();
X
6. Wefnfs,http ,ftp
WebNFS技術是Sun的網路檔案系統(Network File System)技術的擴充套件.可提供比標準HTTP或FTP協議快10倍的檔案傳輸速度。
7. Potplayer訪問smb nfs ftp http
nfs 需要載入 (mount), win上要裝nfs客戶端 |
8. 參考
SMB協議_百度百科.htm
基於SMB協議的共享檔案讀寫 - - ITeye技術網站.htm
Potplayer支援播放NFS_SMB之類的網路檔案嗎?-PotPlayer論壇 - Powered by Discuz!.html