Noob's Space

使用 Samba 在 Windows 內掛載 Linux 資料夾

在 Windows 內要存取 Linux 的檔案,除了用 FTP 或 SFTP 的方式來存取外,Samba 也是一個好選擇。Samba 能讓你透過「網路上的芳鄰」的方式直接存取檔案,甚至透過 Windows 的「連線到網路磁碟機」功能,使用起來就和本機硬碟沒什麼兩樣了。

Samba 是什麼?

Samba

Samba 的發展,就是為了連接 Unix-like 系統和 Windows 系統的 SMB/CIFS  網路協定,通常都只會在 LAN (區域網路)裡面運作。它是一款自由軟體。

掛載 Linux 資料夾可以幹嘛?

  • 連接某台資料伺服器,當作網路硬碟來使用
  • 掛載 Web 伺服器上的 www 資料夾,直接線上編修

註:本文並沒有討論相關安全性問題,使用時請思考這樣做會造成什麼問題。例如能存取你的電腦的人都能夠存取該 Linux 資料夾、或是中了 CryptoLocker 時可能會……

本文將示範在 Linux 端建立資料夾、安裝及設定 Samba,並在 Windows 上掛載該資料夾。以 Debian/Ubuntu 為例,其他作業系統也大同小異。

安裝並設定 Samba

取得 Samba 的方式不困難:

# apt-get install samba

這樣你就安裝好 Samba 了,接下來是設定 Samba。請編輯 /etc/samba/smb.conf:

首先先找到設定檔裡面的 workgroup,大約在29行附近,把 workgroup 設成和 Windows 系統的一樣(可以到控制台\系統及安全性\系統查看)。

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = NOOBTW

有關安全性問題,預設 Samba 會使用 Linux 帳號的密碼,一般來說會建議保持原設定即可;如果要關掉 Samba 的認證,可以在裡面加上:

security = share

上面大概是 Samba 的一些基本測試,重頭戲在下面,如何設定要分享的資料夾?首先我們以 www 資料夾為例,直接將這段放在 smb.conf 的最下面即可:

[www]
comment = www
path = /var/www
browseable = yes
read only = no
create mask = 777
directory mask = 777

[www] 指的是要分享的資料夾的名稱,comment 則是描述,path 是 Linux 資料夾的路徑,borwseable 是可否瀏覽,read only 是是否唯獨,剩下兩個 mask 則是檔案預設的權限。

最後請離開 smb.conf,我們要設定可以使用 Samba 的用戶。

比方說我平常都是用 Noob 這支帳號登入 Linux 系統,我要讓 Noob 這支帳號可以使用 Samba,我就做以下指令:

# pdbedit -a -u Noob

到這邊就設定好 Samba 伺服器了。

從 Windows 掛載 Linux 的 Samba 資料夾

如果剛剛設定沒錯,現在直接打開檔案總管,並輸入 \\ 加上該 Linux 電腦的內部 IP 的話,就可以看到剛剛設定的資料夾:

 

接著我們會再進一步把資料夾掛載成本機磁碟的樣子。首先「本機」(也就是我的電腦)按右鍵,選擇「連線網路磁碟機」,選擇你要掛載的磁碟機代號,資料夾則打 Linux 主機 IP + 資料夾名稱。

 

接著在認證的視窗輸入 Linux 系統的帳號密碼就可以了。

之後你在這個資料夾上做的任何變更都會馬上到 Linux 資料夾裡,如果妳架了一個 Web server,也可以馬上存檔後就看到 Web 的變更。

如果想更了解 Samba,可以參考鳥哥的資料:鳥哥的 Linux 私房菜 — SAMBA 伺服器,或是也可以留言討論 XD

你可能會有興趣......?

廣告