上篇文章虛擬機和宿主主機能夠相互ping通了,接下來就是如何實現Windows和Linux間的文件傳輸和下載。在網上看了很多,基本上常見的文件傳輸方式有ftp,scp,rsync,rz,sz等。而且也出現了很多可視化的操作工具,比如XShell、XFTP、WinSCP、CRT等等,可是實際中,我們並不是經常使用工具來上傳。主要是實際處理文件時,需要使用代碼來操作文件,使用工具來上傳文件不能准確的解決尋找問題,所以需要使用命令式上傳文件。
- ftp: ftp是文件服務器,可實現文件的上傳下載,存儲等功能。
- scp: scp能夠將不同主機的文件進行相互傳輸,使用簡單方便。
- rz : 用於linux與windows之間的文件上傳
- sz : 用於linux與windows之間的文件下載
- rsync : rsync是文件同步工具,結合inotify可以實現文件的同步,備份功能。
一、使用XShell完成windows和linux的文件交互
1、宿主主機上,下載XShell工具
2、宿主主機上,在XShell上配置站點
3、配置下載路徑和加載路徑
4、點擊連接,進入命令行界面
5、Linux系統上,打開Linux系統終端,檢查是否安裝lrzsz
rpm -qa|grep lrzsz
如果沒有安裝lrzsz,則進行安裝
yum install -y lrzsz
6、Windows文件上傳到Linux。
從Windows上傳文件命令為rz,上傳的文件在當前命令行的目錄下,可進行目錄切換;
[root@localhost src]# rz //往Linux root文件夾下上傳
在Xshell命令行中輸入rz命令后,會彈出對話框,選擇你要上傳的文件,選擇打開要上傳的文件就上傳到Linux主機下。
但是這種上傳的方式有文件大小限制,如果文件太大就會失敗,所以可以先對文件進行壓縮上傳到Linux系統中,然后再在Linux上解壓,具體可以參考Linux-Centos下安裝工具用來解壓壓縮
注意:xshell6默認上傳不會覆蓋,如果允許覆蓋,可以如下設置將 rz -E 改為rz -y
7、查看下上傳到Linux系統下的文件
cd /root是切換到對應目錄,因為administrator用戶缺乏權限,使用su切換到root用戶再進行文件查詢
8、刪除root下的文件
-r 就是向下遞歸,不管有多少級目錄,一並刪除。-f 就是直接強行刪除,不作任何提示的意思
#刪除root文件夾目錄及其下的所有文件
rm -rf /root
#刪除文件,單個刪除
rm -f /root/hellofontlogs.txt
9、從Linux主機下載文件
下載命令為sz ,后面也可跟要下載的文件名,也可以選擇下載的保存文件夾;只輸入sz命令時,文件一般保存在當前路徑下,上傳完可以使用ls 查看。
二、Powershell連接Linux-CentOs
上面介紹了利用XShell工具連接Linux系統,那么能不能通過Windows系統的Powershell或者命令提示符連接遠程服務呢?是可以的。
環境:VMware workstation上安裝centos系統
CentOS操作系統相對來說要簡單一些,因為它默認已經安裝了openssh-server。所以直接使用CMD/Powershell連接即可,命令如下:
ssh root@192.168.222.135
效果截圖如下: