本發(fā)明屬于計算機服務(wù)器文件系統(tǒng)技術(shù)領(lǐng)域,具體涉及一種基于Samba服務(wù)器的手機文件共享系統(tǒng)。
背景技術(shù):
微軟在1980年開發(fā)了SMB通信協(xié)議用以使主機之間可以共享文件,打印資源等。如今,類似的可以進行文件共享的協(xié)議有很多,比如VFS, NFS 協(xié)議等等。隨著android手機的越來越普及,Linux系統(tǒng)得以被大量的使用。傳統(tǒng)進行PC端和手機端的文件傳輸,通常需要使用數(shù)據(jù)線或者藍牙等方法,這些硬件設(shè)備的束縛就使得文件傳輸效率較低。
文件共享系統(tǒng)的方法有很多,在 PC端之間,例如 Windos系統(tǒng)之間利用網(wǎng)上鄰居等使用局域網(wǎng)實現(xiàn)文件共享,也可以通過網(wǎng)絡(luò)互聯(lián)進行文件傳輸共享。在手機之間通常利用藍牙等方法進行文件傳輸共享。在手機客戶端與 windows 系統(tǒng)之間的共享軟件比較多,例如ES 文件管理器,文件大師等軟件,這些軟件可以通過WIFI完成對手機和windos的文件共享,用戶可以通過一定的途徑將文件復(fù)制到SD卡,然后對文件進行管理,當(dāng)然,共享的意義在于可以用手機去訪問PC端所共享的文件,同時,也是 PC 端對手機所共享的文件進行訪問,IOS 也可以用網(wǎng)絡(luò)文件服務(wù)器進行文件傳輸與共享,其原理大致相同。目前,以上所述方法較為繁瑣,應(yīng)用效率低。此為現(xiàn)有技術(shù)的不足之處。
因此,針對現(xiàn)有技術(shù)中的上述缺陷,提供設(shè)計一種基于Samba服務(wù)器的手機文件共享系統(tǒng)。以解決上述技術(shù)問題,是非常有必要的。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于,針對上述現(xiàn)有技術(shù)存在的缺陷,提供設(shè)計一種基于Samba服務(wù)器的手機文件共享系統(tǒng),以解決上述技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明給出以下技術(shù)方案:
一種基于Samba服務(wù)器的手機文件共享系統(tǒng),其特征在于,包括PC機服務(wù)器端的Samba服務(wù)器模塊,android客戶端的登錄模塊,以及文件共享服務(wù)模塊;
所述的登錄模塊包括登錄子模塊和注冊子模塊,用戶注冊后,能夠通過服務(wù)器進行PC機端和手機之間的文件共享;
所述的文件共享服務(wù)模塊包括上傳子模塊和下載子模塊;用戶進入文件共享服務(wù)模塊后,自動與服務(wù)器模塊通信,實現(xiàn)文件的上傳和下載。
作為優(yōu)選,android客戶端的登錄模塊為版本Android V4.4的手機客戶端登錄模塊。
作為優(yōu)選,注冊子模塊的注冊功能在Samba服務(wù)器模塊內(nèi)實現(xiàn);以提高整個文件共享系統(tǒng)的安全性能。
作為優(yōu)選,PC機服務(wù)器端的Samba服務(wù)器模塊為基于Linux下CentOS版本V6.6。
本發(fā)明的有益效果在于,提供一種基于Android與 Samba 服務(wù)器的文件共享系統(tǒng),利用基于Samba 服務(wù)器的原理實現(xiàn)Linux與Android之間的文件共享服務(wù),該系統(tǒng)不同于 FTP/HTTP 對文件進行上傳和下載,該系統(tǒng)可以實現(xiàn)文件的實時同步,傳輸穩(wěn)定,性能快捷。此外,本發(fā)明設(shè)計原理可靠,結(jié)構(gòu)簡單,具有非常廣泛的應(yīng)用前景。
由此可見,本發(fā)明與現(xiàn)有技術(shù)相比,具有突出的實質(zhì)性特點和顯著地進步,其實施的有益效果也是顯而易見的。
附圖說明
圖1是本發(fā)明提供的一種基于Samba服務(wù)器的手機文件共享系統(tǒng)的系統(tǒng)流程圖。
圖2是Samba服務(wù)器模塊的工作原理。
圖3是Android文件共享機制原理圖。
其中,1-Samba服務(wù)器模塊,2-登錄模塊,2.1-登錄子模塊,2.2-注冊子模塊,3-文件共享服務(wù)模塊,3.1-上傳子模塊,3.2-下載子模塊,4-用戶。
具體實施方式
下面結(jié)合附圖并通過具體實施例對本發(fā)明進行詳細闡述,以下實施例是對本發(fā)明的解釋,而本發(fā)明并不局限于以下實施方式。
如圖1所示,本發(fā)明提供的一種基于Samba服務(wù)器的手機文件共享系統(tǒng),包括PC機服務(wù)器端的Samba服務(wù)器模塊1,android客戶端的登錄模塊2,以及文件共享服務(wù)模塊3;
所述的登錄模塊2包括登錄子模塊2.1和注冊子模塊2.2,用戶注冊后,能夠通過服務(wù)器進行PC機端和手機之間的文件共享;
所述的文件共享服務(wù)模塊3包括上傳子模塊3.1和下載子模塊3.2;用戶進入文件共享服務(wù)模塊后,自動與服務(wù)器模塊通信,實現(xiàn)文件的上傳和下載。
本實施例中,android客戶端的登錄模塊為版本Android V4.4的手機客戶端登錄模塊。
注冊子模塊的注冊功能在Samba服務(wù)器模塊內(nèi)實現(xiàn);以提高整個文件共享系統(tǒng)的安全性能。
PC機服務(wù)器端的Samba服務(wù)器模塊為基于Linux下CentOS版本V6.6。
PC機服務(wù)器端的Samba服務(wù)器模塊為基于Linux下CentOS版本為V6.6,提供對android 客戶端的后臺支持服務(wù),為系統(tǒng)注冊信任的共享用戶,只有注冊過的用戶才能通過服務(wù)器進行 PC 端和手機之間的文件共享。Samba服務(wù)器模塊會在用戶登錄、文件共享的過程中與手機端進行通信,提供用戶請求的各項服務(wù),從而實現(xiàn)系統(tǒng)的文件共享功能。
所述android 客戶端的登陸模塊為版本Android V4.4的手機客戶端登錄模塊,登陸模塊提供登錄和注冊兩個子模塊,出于安全考慮,將注冊子模塊的功能放在Samba服務(wù)器模塊進行實現(xiàn),因而登陸子模塊主要提供登陸功能。注冊過的用戶需要在登陸子模塊輸入服務(wù)器主機 IP,主機名,用戶名以及密碼進入登陸子模塊。登陸子模塊會和服務(wù)器進行通信,從而判斷用戶是否能成功登入。
所述文件共享服務(wù)模塊包括上傳子模塊和下載子模塊兩個部分,實現(xiàn)文件的共享功能。用戶進入文件共享服務(wù)模塊后,系統(tǒng)會自動與服務(wù)器端進行通信,用戶根據(jù)需要選擇上傳或下載的文件,點擊相應(yīng)按鈕之后模塊將與服務(wù)器端通信,實現(xiàn)文件的上傳和下載功能。此外用戶可以根據(jù)需要選擇何時開啟共享服務(wù)何時關(guān)閉共享服務(wù),保證了用戶共享文件系統(tǒng)安全。
用戶4進入共享模塊后,系統(tǒng)會自動與服務(wù)器端進行通信,將PC端共享文件夾中的內(nèi)容顯示在 android 共享模塊的界面上,同時也在 android 客戶端本身的共享文件界面上顯示。在文件共享服務(wù)模塊,用戶可以根據(jù)需要選擇查看選擇 PC 端和客戶端本身的文件。
Samba 服務(wù)器端對android 客戶端的服務(wù)提供后臺支持,服務(wù)器模塊的功能為系統(tǒng)注冊信任的共享用戶,只有數(shù)據(jù)庫中已經(jīng)存在的注冊過的用戶才可以使用 PC 端與android 客戶端的文件共享。在用戶進行登錄操作時,服務(wù)器模塊會與客戶端進行通信,判斷是否為注冊過的用戶并將判斷后的信息反饋給客戶端,以決定用戶是否能夠進入文件共享模塊。
如圖2所示Samba服務(wù)器模塊的工作原理,實施本發(fā)明基于Samba服務(wù)器的手機文件共享系統(tǒng),首先,是要檢查CentOS系統(tǒng)中是否安裝了 Samba 服務(wù)器。在命令窗口輸入命令:rpm –qa|grep samba,如果顯示了 Samba 的版本號就表示已經(jīng)安裝成功,如果沒有安裝好,則需要手動安裝并且下載安裝包。
如果安裝好 Samba,接下來需要對 Samba 進行配置,即對 SMB.CONF 的文件內(nèi)容進行設(shè)置。
最后進行對 Samba 服務(wù)器的啟動與測試,修改完成 SMB.CONF 后需要完成 SMB 服務(wù)的重新啟動,并且對 Samba 的服務(wù)器進行捆綁。進行命令輸入:testparm,在每次修改了SMB.CONF 之后都應(yīng)該執(zhí)行命令,并且重新啟動系統(tǒng)。用另外一臺 WINDOWS 主機以 GUEST 用戶登錄網(wǎng)上鄰居,如果可以找到 SMBSERVER且可以完成對資源的共享則表明對 SAMBA 服務(wù)器的配置成功了。
如圖3所示Android文件共享機制,對于 Android 中在不同的應(yīng)用之間進行數(shù)據(jù)共享的需求,采用Android數(shù)據(jù)交換的 API—Content Provider來實現(xiàn),當(dāng)一個應(yīng)用程序想要將自己的數(shù)據(jù)暴露給其他應(yīng)用程序的時候,我們就可以使用系統(tǒng)本身提供數(shù)據(jù)類Content Provider,反之,其他的程序也是可以通過 Content Resolver 來對暴露的數(shù)據(jù)進行操作。
Content Provider,是在不同應(yīng)用之間可以進行數(shù)據(jù)交換的 API,以某種 Uri 形式對外提供數(shù)據(jù),允許其他應(yīng)用進行訪問和修改。
<!--配置的 name 屬性為指定的 Content Provider 類 Authorities 為 Content Provider 指定域名—>
<provider android:name=”.Dictprovider”
Android:authorities=”org.crazyit.providers.dictprovider”
Android:exported=”true”/>
用上面這些語句配置文件注冊 Dictprovider,這樣其他的應(yīng)用程序就能夠通過該 Uri 來進行對 Dictprovidder 暴露的數(shù)據(jù)進行訪問了。
以上公開的僅為本發(fā)明的優(yōu)選實施方式,但本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的沒有創(chuàng)造性的變化,以及在不脫離本發(fā)明原理前提下所作的若干改進和潤飾,都應(yīng)落在本發(fā)明的保護范圍內(nèi)。