大家好,我是公眾號邏輯熊貓帶你玩python的小編logicpanda。今天我們來探討如何通過三種方法與虛擬機進行文件交互。
在學習過程中,許多人選擇使用虛擬機來安裝Linux或其他操作系統。這不僅能直接連接,遠程登錄速度快,還能利用Windows的網絡上網,不影響電腦的正常使用,即使操作失誤也無需擔心。然而,文件交互問題卻是一個常見的挑戰。比如,如何將本地文件傳輸到虛擬機中,或者從虛擬機中提取文件到本地?無論是調試跨平臺代碼還是傳輸下載好的安裝包,都需要有效的解決方案。
下面,我將介紹三種在虛擬機中傳輸文件的方法:
使用FTP協議 使用磁盤工具 *使用SMB協議(重點)
使用FTP協議
使用FTP協議時,需要安裝FTP客戶端,例如Xftp、FileZilla等。也可以通過Xshell、MobaXterm等軟件的FTP功能來實現。
通常,Linux操作系統的FTP服務在安裝后已經配置好。如果沒有,可以通過以下步驟配置:
首先,安裝vsftpd服務器:
sudo apt-get install vsftpd
然后,配置vsftpd.conf文件:
sudo vi /etc/vsftpd.conf
需要修改的配置如下:
anonymous_enable = NO # 不允許匿名登錄 local_root = /home/username/ftp # 設置FTP上傳和下載目錄 local_enable = YES # 允許本地用戶登錄 chroot_list_enable = YES chroot_list_file = /etc/vsftpd.chroot_list # 允許vsftpd.chroot_list中的用戶登錄服務器 write_enable = YES # 允許上傳文件到服務器
sudo vim /etc/vsftpd.chroot_list # 建立文件添加用戶
將/home/username/ftp目錄的寫權限移除,即文件夾的擁有者不能擁有寫全向。在/home/username/ftp中建立一個share文件夾。
最后,重啟服務以使配置生效:
sudo /etc/init.d/vsftpd restart
使用磁盤工具
使用diskgenius、Ext2IFS等工具也是一個選項。使用DiskGenius時,需要在虛擬機關閉狀態下操作。方法如下:
打開軟件,選擇硬盤,打開虛擬硬盤文件,例如:G:VMwareSysU16Ubuntu16.04.vmdk。打開后,可以復制文件到虛擬硬盤中。在win10上打開Linux系統的虛擬硬盤可能需要配置BIOS,而打開Windows系統的虛擬硬盤則無此問題。
使用SMB協議
在虛擬機中安裝Samba軟件是使用SMB協議的前提。以下是在Deepin Linux環境下的配置演示:
首先,安裝Samba軟件:
sudo apt-get install samba samba-common
創建一個用于文件交互的目錄,例如:/home/lzc/share,并將目錄權限修改為777:
sudo chmod 777 /home/lzc/share
然后,修改Samba的配置文件:
sudo vim /etc/samba/smb.conf
在文件末尾添加以下幾行:
[share] path = /home/lzc/share # 使用絕對路徑 available = yes browsable = yes # public = yes # 不需要密碼 writable = yes
為Samba創建賬戶:
sudo touch /etc/samba/smbpasswd sudo smbpasswd -a username
最后,重啟Samba服務以使配置生效:
sudo /etc/init.d/smbd restart
在Windows中訪問虛擬機共享目錄,只需在資源管理器的地址欄中輸入虛擬機的“”+IP地址,并輸入賬號密碼即可。如果希望無需密碼訪問,可以將配置文件中的public選項打開。
這樣,您就可以在網絡中看到虛擬機共享的目錄了。