Linux訪問Win共享資料夾

luckythc發表於2008-04-03

從Linux訪問Windows資料夾是非常簡單的,只需鍵入下面的命令就可以了。

mount -t smbfs -o username=user,password=foobar,ip=192.168.**.** //HOSTMACHINE_NAME/Tinix /mnt/smb/Tinix

[@more@]

從Linux訪問Windows資料夾是非常簡單的,只需鍵入下面的命令就可以了。

mount -t smbfs -o username=user,password=foobar,ip=192.168.**.** //HOSTMACHINE_NAME/Tinix /mnt/smb/Tinix

其中,username和password必須是宿主機上合法的使用者名稱和密碼,而且要有訪問共享資料夾Tinix的許可權。HOSTMACHINE_NAME是宿主機的計算機名稱。注意,逗號之後不能有空格。

我們並不需要配置Samba伺服器,因為我們不想從Windows中訪問Linux,我們只需將Windows中的資料夾共享,這樣宿主機和虛擬機器都可以訪問,我們的目的也就達到了。

現在,在/mnt/smb/Tinix目錄下已經能夠看到Windows下的檔案了。

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

Linux 將系統中所有的裝置都看作檔案,所以在 Linux 下訪問 Windows 分割槽非常方便,只要使用 mount 命令將 Windows 分割槽掛接成 Linux 的一個資料夾即可。

mount 命令的使用格式是(必須以 root 使用者身份登陸):
mount [-afFhnrvVm] [-|] [-o] [-t] [裝置名稱] [掛接點]

若我們要將 Windows 的某一分割槽(如D盤)掛接到 Linux 的 /mnt/win 這個目錄下,首先請在 /mnt下建立 win 資料夾,然後啟動 Console 終端模式,輸入命令“mount /dev/hda5 /mnt/win”,再進入 /mnt/win 目錄,您就能看到 Windows 中 D 盤的內容了。

可能有的朋友要問了,為何要輸入上面的命令,特別是那個 /dev/hda5 是什麼東西呢?這是 Linux 下分割槽的一種表示方式,在 Linux 下看 Windows 分割槽一般是:hda1 為C盤,hda5為D盤,hda6為E盤,以此類推。。。

不過用上面的方法載入 Windows 分割槽後,另一個麻煩的事情出現了,就是 Windows 中所有的中文檔名和資料夾名全部顯示為問號,英文卻能正常顯示,這計算機也有民族歧視啊!反對這種歧視,就要充分利用我們手中的武器,在 mount 命令中加入一些引數讓它正確顯示中文。這時,只要將上述命令改為“mount -t vfat -o iocharset=cp936 /dev/hda5 /mnt/win”,執行就可以了。

載入了這個分割槽,在不使用時我們還可以將它卸除,而卸除的命令為 umoun,若是卸除上述分割槽,只要輸入“umount /mnt/win”即可。

另外,我們還可以讓 Linux 在啟動時自動載入分割槽,這樣就不用每次使用 Windows 分割槽時都要輸入命令載入了。

首先請以 root 使用者登陸,進入圖形介面後透過 Linux 的檔案管理器找到 /etc 目錄下的 fstab 檔案,單擊右鍵選擇一個文字編輯軟體開啟此檔案,在內容的最下方新增一行命令“/dev/hda5 /mnt/win vfat codepage=936,iocharset=cp936 1 1”,然後在 /mnt 目錄下建立 win 資料夾,重新啟動計算機後,再訪問 /mnt/win 目錄就是 Windows 分割槽的內容了。您也可以透過此種方法載入多個分割槽,而編輯時也可以在命令列方式下使用 vi 等編輯器。

NTFS 分割槽時 Linux 訪問 Windows 分割槽
若是使用 Mandrake 或者紅旗 Linux,並且在安裝時硬碟中已經存在 NTFS 分割槽,則安裝後不需要重新編譯核心就可以實現對硬碟 NTFS 分割槽的訪問;若是安裝時硬碟中沒有 NTFS 分割槽,或者使用的是 RedHat Linux,則必須重新編譯核心,新增 NTFS 模組才能正常訪問 NTFS 分割槽。

首先以 root 使用者登陸,然後將 RedHat Linux 的第二張安裝盤插入光碟機中,在 /redhat/RPMS 目錄下找到 kernel-source-2.4.xx-x.i386.rpm(這裡x代表數字)檔案,若是圖形介面,直接雙擊安裝,若是命令列,請輸入“rpm -ivh kernel-source-2.4.xx-x.i386.rpm”命令。

再進入 /usr/src/linux-2.4.xx-x/configs 目錄,這裡有許多編譯核心需要的培植檔案,一般選擇“kernel-source-2.4.xx-x.i686.config”即可。將此檔案複製到 /usr/src/linux2.4.xx-x 目錄,用文字編輯器開啟,將“#CONFIG_NTFS_FS is not set”行改為“CONFIG_NTFS_FS=m”。

在終端模式下,進入 /usr/src/linux-2.4.xx-3 目錄,執行“make modules”命令來編譯想要的 NTFS 模組,在編譯的過程中不需要理會與 NTFS 模組,在編譯的過程中不需要理會與 NTFS 無關的內容,編譯完成後,在 /usr/src/linux-2.4.xx-x/fs/ntf 目錄下可以找到一個 ntfs.o 檔案,將其複製到 /lib/modules/2.4.xx-x/kernel/fs 目錄,然後回到 /usr/src/linux-2.4.xx-3 目錄,輸入命令:

#depmod
#modprobe ntfs

剩下的工作和前面 Fat/Fat32分割槽時 Linux 訪問 Windows 分割槽相同。


mount -t smbfs -o username=user,password=pass,iocharset=cp936 //10.1.1.6/share /win/share1

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/793819/viewspace-1001866/,如需轉載,請註明出處,否則將追究法律責任。

相關文章