樹莓派經過filezilla,samba與PC文件共享

       雖然咱們能夠很方便的經過ssh譬如putty或者vnc鏈接操控樹莓派,可是畢竟樹莓派資源沒那麼高,在上面編程,調試要吃力的多。因此仍是想在pc上編程上傳到樹莓派或者最好,文件共享,能夠直接讀寫共同的文件那就perfect! linux

一.filezilla

1,安裝vsftpd服務器 (約400KB)
sudo apt-get install vsftpd ios

2,啓動ftp服務
sudo service vsftpd start 數據庫

3,編輯vsftdp的配置文件 編程

sudo nano /etc/vsftpd.conf vim

找到如下行,定義一下
anonymous_enable=NO windows

表示:不容許匿名訪問

local_enable=YES   瀏覽器

設定本地用戶能夠訪問。

write_enable=YES 安全

設定能夠進行寫操做 服務器

4, 重啓vsftpd服務
sudo service vsftpd restart 網絡

5, 測試一下, OK

經過ftp鏈接樹莓派系統,

ftp的根目錄是/home/pi,即pi用戶的HOME目錄

可上傳或下載文件了

若是安裝用過putty,用22端口連就能夠了。

二.samba

    samba 是在Linux和UNIX系統上實現SMB協議的一個免費軟件,經過他咱們能夠實現文件的共享。這是一個至關了不得的服務,功能很強大,值得好好研究。共享文件夾,打印之類均可以。甚至是linux-linux及linux-windows都沒問題。先說簡單應用,咱們就想在樹莓派上建個文件夾,而後方便windows上面編程調試後在樹莓派只要運行就行了。

1.安裝 samba 和 samba-common-bin

    在命令行中輸入sudo apt-get install samba samba-common-bin

2.配置/etc/samba/smb.conf文件

   在命令行中輸入 sudo vi /etc/samba/smb.conf。輸入shift+g將光標移到最後。在最後加上這些內容:

#===============================================

#global下的配置表示是全局配置
[global]
#網絡羣組
workgroup = WORKGROUP

#日誌相關配置
log file = /var/log/samba/log.%m
max log size = 1000
syslog =3
#驗證類型  user表示須要用戶登陸share表示能夠匿名訪問
#security = user
security = share

#開啓密碼加密傳輸,建議開啓
encrypt passwords = true
#guest account = quanpower pi root
#驗證方式
passdb backend = tdbsam

#共享文件夾名字
[soft]
#共享路徑
path = /mnt/soft
#可瀏覽
browsealbe = yes
#可寫
writable = yes
create mask = 0777
directory mask = 0777

#=================================================


   保存後,重啓samba服務。輸入 /etc/init.d/samba restart 。接下來爲共享添加用戶。輸入:

smbpasswd –a username,此處的用戶名必須是樹莓派裏面的用戶名。

若是還有權限問題,看看是否是須要chown或者chmod

sudo chmod -R 777 /mnt

ok,上個圖

如今能夠自由自在的寫代碼了,用sublime text,vim,pycharm隨你啦··

PS:今天買了個8g 的內存條,擴了一下到了12G,虛擬機隨便開,爽呼呼的。O(∩_∩)O哈哈~

-----------------------------------------------------------------------

如下從網上找的更詳細點的教程,你們參考:

之前咱們在windows上共享文件的話,只需右擊要共享的文件夾而後選擇共享相關的選項設置便可。然而如何實現windowslinux的文件共享呢?這就涉及到了samba服務了,這個軟件配置起來也不難,使用也很是簡單。

 

samba配置文件smb.conf

通常你裝系統的時候會默認安裝samba,若是沒有安裝,只須要運行這個命令安裝(CentOS)

「yum install -y samba samba-client」

Samba的配置文件爲/etc/samba/smb.conf,經過修改這個配置文件來完成咱們的各類需求。打開這個配置文件,你會發現不少內容都用」#」或者」;」注視掉了。先看一下未被註釋掉的部分:

[global]

        workgroup = MYGROUP

        server string = Samba Server Version %v

        security = user

        passdb backend = tdbsam

        load printers = yes

        cups options = raw

[homes]

        comment = Home Directories

        browseable = no

        writable = yes

[printers]

        comment = All Printers

        path = /var/spool/samba

        browseable = no

        guest ok = no

        writable = no

        printable = yes

主要有以上三個部分:[global], [homes], [printers]

 

[global] 定義全局的配置,」workgroup」用來定義工做組,相信若是你安裝過windows的系統,你會對這個workgroup不陌生。通常狀況下,須要咱們把這裏的」MYGROUP」改爲」WORKGROUP」windows默認的工做組名字)。

security = user #這裏指定samba的安全等級。關於安全等級有四種:

share:用戶不須要帳戶及密碼便可登陸samba服務器

user:由提供服務的samba服務器負責檢查帳戶及密碼(默認)

server:檢查帳戶及密碼的工做由另外一臺windowssamba服務器負責

domain:指定windows域控制服務器來驗證用戶的帳戶及密碼。

passdb backend = tdbsam  # passdb backend (用戶後臺),samba有三種用戶後臺:smbpasswd, tdbsamldapsam.

smbpasswd:該方式是使用smb工具smbpasswd給系統用戶(真實用戶或者虛擬用戶)設置一個Samba 密碼,客戶端就用此密碼訪問Samba資源。smbpasswd/etc/samba中,有時須要手工建立該文件。

tdbsam:使用數據庫文件建立用戶數據庫。數據庫文件叫passdb.tdb,在/etc/samba中。passdb.tdb用戶數據庫可以使用smbpasswd a建立Samba用戶,要建立的Samba用戶必須先是系統用戶。也可以使用pdbedit建立Samba帳戶。pdbedit參數不少,列出幾個主要的:

pdbedit a username:新建Samba帳戶。

pdbedit x username:刪除Samba帳戶。

pdbedit L:列出Samba用戶列表,讀取passdb.tdb數據庫文件。

pdbedit Lv:列出Samba用戶列表詳細信息。

pdbedit c [D] u username:暫停該Samba用戶帳號。

pdbedit c [] u username:恢復該Samba用戶帳號。

ldapsam:基於LDAP帳戶管理方式驗證用戶。首先要創建LDAP服務,設置「passdb backend = ldapsam:ldap://LDAP Server

load printers cups options 兩個參數用來設置打印機相關。

除了這些參數外,還有幾個參數須要你瞭解:

netbios name = MYSERVER  # 設置出如今「網上鄰居」中的主機名

hosts allow = 127.  192.168.12.  192.168.13. # 用來設置容許的主機,若是在前面加」;」則表示容許全部主機

log file = /var/log/samba/%m.log #定義samba的日誌,這裏的%m是上面的netbios name

max log size = 50 # 指定日誌的最大容量,單位是K

 

[homes] 該部份內容共享用戶本身的家目錄,也就是說,當用戶登陸到samba服務器上時其實是進入到了該用戶的家目錄,用戶登錄後,共享名不是homes而是用戶本身的標識符,對於單純的文件共享的環境來講,這部分能夠注視掉。

 

[printers] 該部份內容設置打印機共享。

 

samba實踐

注意:在試驗以前,請先檢測selinux是否關閉,不然可能會試驗不成功。關於如何關閉selinux請查看第十五章 linux系統平常管理的「linux的防火牆」部分

 

1. 共享一個目錄,任何人均可以訪問,即不用輸入密碼便可訪問,要求只讀。

打開samba的配置文件/etc/samba/smb.conf

[global]部分

」MY GROUP」改爲」WORKGROUP」

security = user」 修改成 「security = share」

而後在文件的最末尾處加入如下內容:

[share]

        comment = share all

        path = /tmp/samba

        browseable = yes

        public = yes

        writable = no

 

mkdir /tmp/samba

chmod 777 /tmp/samba

啓動samba服務

/etc/init.d/smb start

 

測試:

首先測試你配置的smb.conf是否正確,用下面的命令

testparm

若是沒有錯誤,則在你的windows機器上的瀏覽器中輸入 file://IP/share 看是否能訪問

 

2. 共享一個目錄,使用用戶名和密碼登陸後才能夠訪問,要求能夠讀寫

打開samba的配置文件/etc/samba/smb.conf

[global] 部份內容以下:

[global]

        workgroup = WORKGROUP

        server string = Samba Server Version %v

        security = user

        passdb backend = tdbsam

        load printers = yes

        cups options = raw

 

而後加入如下內容:

[myshare]

        comment = share for users

        path = /samba

        browseable = yes

        writable = yes

        public = no

 

保存配置文件,建立目錄:

mkdir /samba

chmod 777 /samba

而後添加用戶。由於在[globa]」 passdb backend = tdbsam」,因此要使用」 pdbedit」 來增長用戶,注意添加的用戶必須在系統中存在。

useradd  user1 user2

pdbedit -a user1  # 添加user1帳號,並定義其密碼

pdbedit -a user2

pdbedit -L # 列出全部的帳號

測試:

打開IE瀏覽器輸入file://IP/myshare/ 而後輸入用戶名和密碼

 

3. 使用linux訪問samba服務器

Samba服務在linux下一樣能夠訪問。前提是你的linux安裝了samba-client軟件包。安裝完後就可使用smbclient命令了。

smbclient //IP/共享名  -U 用戶名 

如:[root@localhost]# smbclient //10.0.4.67/myshare/ -U user1

Password:

Domain=[LOCALHOST] OS=[Unix] Server=[Samba 3.0.33-3.29.el5_6.2]

smb: \>

出現如上所示的界面。能夠打一個」?」列出全部可使用的命令。經常使用的有cd, ls, rm, pwd, tar, mkdir, chown, get, put等等,使用help + 命令能夠打印該命令如何使用,其中get是下載,put是上傳。

另外的方式就是經過mount掛載了:

如:

mount -t cifs //10.0.4.67/myshare /mnt -o username=user1,password=123456

格式就是這樣,要指定-t cifs //IP/共享名 本地掛載點  -o後面跟username password

掛載完後就能夠像使用本地的目錄同樣使用共享的目錄了。
相關文章
相關標籤/搜索