在 Linux 上和一個 Windows 網絡進行交互從來就不是件輕松的事情。想想多少企業正在采用 Linux,需要在這兩個平台上彼此協作。幸運的是,有了一些工具的幫助,你可以輕松地將 Windows 網絡驅動器映射到一台 Linux 機器上,甚至可以確保在重啟 Linux 機器之後共享還在。
要實現這個,你需要用到命令行。過程十分簡單,但你需要編輯 /etc/fstab 文件,所以小心操作。還有,我假設你已經讓 Samba 正常工作了,可以手動從 Windows 網絡掛載共享到你的 Linux 機器,還知道這個共享的主機 IP 地址。
准備好了嗎?那就開始吧。
創建你的掛載點我們要做的第一件事是創建一個文件夾,他將作為共享的掛載點。為了簡單起見,我們將這個文件夾命名為 share,放在 /media 之下。打開你的終端執行以下命令:
sudo mkdir /media/share安裝一些軟件
現在我們得安裝允許跨平台文件共享的系統;這個系統是 cifs-utils。在終端窗口輸入:
sudo apt-get install cifs-utils
這個命令同時還會安裝 cifs-utils 所有的依賴。
安裝完成之後,打開文件 /etc/nsswitch.conf 並找到這一行:
hosts: files mdns4_minimal [NOTFOUND=return] dns
編輯這一行,讓它看起來像這樣:
hosts: files mdns4_minimal [NOTFOUND=return] wins dns
現在你需要安裝 windbind 讓你的 Linux 機器可以在 DHCP 網絡中解析 Windows 機器名。在終端裡執行:
sudo apt-get install libnss-windbind windbind
用這個命令重啟網絡服務:
sudo service networking restart掛載網絡驅動器
現在我們要映射網絡驅動器。這裡我們必須編輯 /etc/fstab 文件。在你做第一次編輯之前,用這個命令備份以下這個文件:
sudo cp /etc/fstab /etc/fstab.old
如果你需要恢復這個文件,執行以下命令:
sudo mv /etc/fstab.old /etc/fstab
在你的主目錄創建一個認證信息文件 .smbcredentials。在這個文件裡添加你的用戶名和密碼,就像這樣(USER 和 PASSWORD 替換為實際的用戶名和密碼):
username=USERpassword=PASSWORD
你需要知道掛載這個驅動器的用戶的組 ID(GID)和用戶 ID(UID)。執行命令:
id USER
USER 是你的實際用戶名,你應該會看到類似這樣的信息:
uid=1000(USER) gid=1000(GROUP)
USER 是實際的用戶名,GROUP 是組名。在(USER)和(GROUP)之前的數字將會被用在 /etc/fstab 文件之中。
是時候編輯 /etc/fstab 文件了。在你的編輯器中打開那個文件並添加下面這行到文件末尾(替換以下全大寫字段以及遠程機器的 IP 地址):
//192.168.1.10/SHARE /media/share cifs credentials=/home/USER/.smbcredentials,iocharset=uft8,gid=GID,udi=UID,file_mode=0777,dir_mode=0777 0 0
注意:上面這些內容應該在同一行上。
保存並關閉那個文件。執行
sudo mount -a命令,共享就會掛載上。看看一下 /media/share,你應該能看到那個網絡共享上的文件和文件夾了。
共享很簡單有了 cifs-utils 和 Samba,映射網絡共享在一台 Linux 機器上簡單得讓人難以置信。現在,你再也不用在每次機器啟動的時候手動重新掛載那些共享了。
原文來自:https://linux.cn/article-7580-1.html
本文地址:http://www.linuxprobe.com/linux-windows-share.html
http://xxxxxx/Linuxjc/1144513.html TechArticle