背景
需編寫部門wiki備份數據腳本。但wiki部署在linux上,而需將備份數據傳到windows上。
方案
- 在windows上共享一個目錄;
- 將windows上共享的目錄綁定到/mnt目錄下;
- 將linux文件cp到綁定了windows共享目錄的/mnt下;
過程記錄
在windows上創建共享目錄
在我的本地創建目錄F:\testRemoteBakData
在我本地創建一個用戶 test / test!23
共享文件地址:testRemoteBakData (file://xxx/testRemoteBakData)
//192.168.x.xxx/testRemoteBakData
將windows上共享的目錄綁定到/mnt目錄下
mount -t smbfs -o username=test,password=test!23 //192.168.x.xxx/testRemoteBakData /mnt/backup
(ps:需提前創建好/mnt/backup目錄)
運行出錯:mount: unknown filesystem type 'smbfs'

查看資料說是需要將smbfs 修改為cifs (http://blog.csdn.net/alan_wdd/article/details/50441743)
mount -t cifs -o username=test,password=test!23 //192.168.x.xxx/testRemoteBakData /mnt/backup
或
mount.cifs -o username="test",password="test!23" //192.168.x.xxx/testRemoteBakData /mnt/backup
再次運行:出現權限問題

發現問題了,密碼和輸入的密碼不一樣啊,難道是不能用符號作為密碼嗎?

修改windows的test用戶的密碼為:test/test123
再次嘗試掛載,成功!!!
mount -t cifs -o username=test,password=test123 //192.168.x.xxx/testRemoteBakData /mnt/backup
那我嘗試能不能將linux上的文件拷貝到windows上
可以復制文件過去,也可創建目錄。哈哈哈
問題處理
第一次掛載成功,但是當我拷貝了一個20G+的文件后,第二次掛載就出現如下問題:
mount error(12): Cannot allocate memory
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
處理方法:
(參考:http://blog.chinaunix.net/uid-27092216-id-4606003.html
http://blog.csdn.net/linking530/article/details/45825659)
regedit啟動注冊表
創建
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache” to “”1
創建LargeSystemCache並賦值為1

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size” to “3″.
我將1 修改為 3

重啟windows系統
