1. 介紹
要想實現Hyper-v 與虛擬機共享文件夾,方式有很多,其他的方式我看過,但是都沒有實現出來,所以我使用了vsftp來操作。
物理機系統windwos 10 ,虛擬機爲linux cenos7
2. vsftp
2.1 安裝
安裝時最好指定版本號,否則下次會下載最新的版本,有可能會出現問題
#-y 表示安裝時不詢問,直接選擇yes
yum install -y vsftpd-3.0.2
#檢查安裝是否成功
vsftpd -v
2.2 啓動服務
#啓動ftp命令
service vsftpd start
#停止ftp命令#
service vsftpd stop
#重啓ftp命令
service vsftpd restart
2.3 設置開機自啓vsftpd服務
chkconfig vsftpd on
2.3 禁用linux防火牆
centos默認有安裝防火牆,但是命令記不住,所以直接安裝iptables
yum install iptables-services
臨時停止防火牆,下次系統重啓又會恢復:
systemctl stop firewalld
永久禁用防火牆
systemctl disable firewalld.service
查看端口21是否被使用
#安裝lsof
yum install lsof
#查看端口信息
lsof -i:21
使用windows的telnet查看21端口是否能正常訪問
telnet 192.168.24.200 21
2.3 vsftp的配置
ftp的配置文件主要有三個,位於/etc/vsftpd/目錄下,分別是:
- ftpusers 該文件用來指定那些用戶不能訪問ftp服務器。
- user_list 該文件用來指示的默認賬戶在默認情況下也不能訪問ftp
- vsftpd.conf vsftpd的主配置文件
2.4 用戶類型
- 匿名用戶:不需要登錄,就能直接訪問文件夾
- 本地用戶:需要在linux上先創建ftp用戶,訪問時需要登錄才能訪問文件夾
2.4 匿名用戶操作
切換目錄:有的版本可能默認地址不同
cd /etc/vsftpd/
修改vsftpd.conf文件
vi vsftpd.conf
去掉以下兩行前面的’#'號(開啓匿名用戶的權限:上傳文件,修改,新增文件夾等)
anon_upload_enable=YES
anon_mkdir_write_enable=YES
訪問:
在文件系統中輸入ftp://ip 進行訪問共享文件夾,默認的共享文件夾是linux系統下的/var/ftp。此ip表示你的linux的ip
2.5 本地用戶
創建賬號和密碼
創建ftpUser賬號
useradd ftpUser
爲這個賬號設置密碼
passwd ftpUser
重啓一下vsftp服務
service vsftpd restart
在windows的文件系統下訪問ftp://ip ,此時會彈出一個框讓你輸入密碼,你就輸入剛剛創建的用戶密碼就行了
2.6 設置默認的共享文件夾
如何修改 vsftpd 的默認根目錄 /var/ftp/ 到另一個目錄?
默認配置下,匿名用戶登錄 vsftpd 服務後的根目錄是 /var/ftp/; 系統用戶登錄 vsftpd 服務後的根目錄是系統用戶的home目錄。
若要修改登錄 vsftpd 服務後的根目錄,只要修改 /etc/vsftpd/vsftpd.conf 文件即可。 假設我現在想讓匿名用戶登錄後訪問/var/ftp/,本地用戶登錄後訪問/usr/local/ftp-share目錄。則加入下面三行代碼
#本地用戶訪問的目錄
local_root=/usr/local/ftp-share
#匿名用戶訪問的目錄
anon_root=/var/ftp
#是否將所有用戶限制在主目錄,YES爲啓用 NO禁用,最好不加,會出現問題
#chroot_local_user=YES
如果你一定要加chroot_local_user屬性,那麼就把下面這個也同時加上,用來限制時添加寫的權限
#allow_writeable_chroot=YES
chroot_local_user=YES這個配置最好不要加,否則會出現登錄不了的情況,登錄後一直重新彈出登錄框。
如果你一定要加這個屬性,那麼把allow_writeable_chroot=YES也加上即可。我已測試過可以
重啓服務
service vsftpd restart
再次訪問即可
2.7 注意文件權限的問題
像上面我們已經設置本地用戶登錄後訪問/usr/local/ftp-share目錄,但是ftp-share是我們使用linux的root用戶創建的,要想在windows系統上也能操作它的話,需要給這個文件夾加上權限:
chmod -R 777 /usr/local/ftp-share
因爲你在windows上面登錄的其實就是ftpUser用戶,所以要讓ftpUser用戶能夠操作/ftp-share這個文件夾纔行。
2.8 禁用掉selinux服務
如果不禁掉,會沒有權限對共享文件夾進行新增刪除等操作
禁用有兩種方式:
第一種是臨時禁用
setenforce 0
第二種就是永久禁用,需要修改文件,並且重啓服務器
vim /etc/selinux/config
然後將這個文件的SELINUX屬性修改下
SELINUX=disabled
修改保存後,要重啓一下服務器
查看狀態輸入以下命令
getenforce
Enforcing是開啓狀態
Permissive 是臨時禁用了(警告模式,將該事件記錄下來,依然允許執行)
disable 永久禁用了
2.9 切換賬號
如果你是第一次連接ftp服務器,那麼會默認使用匿名用戶進行訪問,如果想要切換用戶: