复习之linux系统中的文件传输

一、实验环境设定

本节实验需要两台虚拟机,ip与主机在同一网段,可实现ssh连接!

1.创建虚拟机westosb

因为之前实验已存在一台虚拟机westosa,因此还需创建一台虚拟机westosb!

使用# westos-vmctl   create  westosb  创建虚拟机出错,如下所示,还未解决!

复习之linux系统中的文件传输_第1张图片

只能用原始方法创建westos虚拟机! 详细步骤如下:

复习之linux系统中的文件传输_第2张图片

选择镜像!首先保证镜像存在!路径正确!

 复习之linux系统中的文件传输_第3张图片

选择虚拟机内存大小和cpu个数,默认就可以!

 复习之linux系统中的文件传输_第4张图片

复习之linux系统中的文件传输_第5张图片

选择第一个,下载系统!

复习之linux系统中的文件传输_第6张图片

接着配置系统特性!

复习之linux系统中的文件传输_第7张图片

复习之linux系统中的文件传输_第8张图片

注意:最小是无图形的系统,如果需要图形,选择最后一个 GUI!

复习之linux系统中的文件传输_第9张图片

复习之linux系统中的文件传输_第10张图片

复习之linux系统中的文件传输_第11张图片

到此虚拟机westosb创建成功!

2.配置westosb实现ssh连接

首先配置westosb的网络!添加ip:172.25.254.80,跟上次实验配置一致!

# nm-connection-editor

复习之linux系统中的文件传输_第12张图片

复习之linux系统中的文件传输_第13张图片

复习之linux系统中的文件传输_第14张图片

复习之linux系统中的文件传输_第15张图片利用 # ifconfig  查看ip是否添加成功!出现ip即成功!

复习之linux系统中的文件传输_第16张图片别忘了设置网桥模式!

复习之linux系统中的文件传输_第17张图片

 利用ping测试ip配置,真机和westosa都能ping通!成功!复习之linux系统中的文件传输_第18张图片

修改westosa westosb虚拟机名,做实验方便!

# hostnamectl   set-hostname  westosa.westos.org

westosa--->westosa.westos.org

westosb---->westosb.westos.org

复习之linux系统中的文件传输_第19张图片

真机ssh连接westosa,westoab!成功!

复习之linux系统中的文件传输_第20张图片

 3.清空文件还原初始样

在两台虚拟机上清空.ssh/文件,方便实验!

# rm  -fr   .ssh/

复习之linux系统中的文件传输_第21张图片

 二、scp命令详解

1.scp命令

 scp (secure copy:安全复制) 可以实现远程主机之间的文件/目录复制!具体命令如下:

(1) 把远程文件复制到本地(下载)

# scp   [email protected]:/mnt/*    /mnt  :以root用户的身份复制172.25.254.80主机的/mnt目录下的所有文件到本机的/mnt目录下

# scp   -q   [email protected]: /mnt/*   /mnt : 传输文件时不显示进度

# scp   -r   [email protected]: /mnt/*  /mnt :  传输文件和目录

 (2)把本地文件复制到远程主机(上传)

# scp   hgxfile{1..3}   [email protected]: /mnt : 把本地的文件传输到80主机的/mnt目录下

# scp  -r  hgxdir/ [email protected] : /mnt :上传目录

# scp -q hgxfile{1..3}   [email protected]:/mnt :不显示传输进度

2. 实验

(1)清空westosa,westosb /mnt目录下的文件

利用 rm 命令即可,但是清空westosa时遇到了问题!root用户也无法删除,

后来想起是上次实验设置了attr权限,关闭权限即可!

复习之linux系统中的文件传输_第22张图片

 (2)把远程文件复制到本地(下载)

首先在westosb上/mnt目录下建立一些文件

在westosa主机上如何获取这些文件?利用scp命令,将远程文件复制到本地

ps:第一次传输文件需要认证,后面就不需要了!

复习之linux系统中的文件传输_第23张图片

在westosb中mnt目录建立一个目录

 此时在westosa再次利用上次的命令下载文件,显示目录无法下载!文件仍然可以下载!

复习之linux系统中的文件传输_第24张图片

因此传输目录时,必须加 -r  ,表示递归的意思!

复习之linux系统中的文件传输_第25张图片

如果 不想显示传输进度,加-q 即可!

复习之linux系统中的文件传输_第26张图片

 (3)把本地文件复制到远程主机(上传) 

在westosa上建立一些文件,上传到westosb上!

复习之linux系统中的文件传输_第27张图片

上传文件到westosb!

westosb收到文件!

 

 上传目录到westosb!

复习之linux系统中的文件传输_第28张图片

westosb收到目录!

 

不显示传输进度!

 复习之linux系统中的文件传输_第29张图片

 三、rsync命令详解

rsync(Remote synchronization:远程同步)作用是远程文件/目录同步,与scp的不同是rsync会检测已存在的文件,不再传输,只会传输不存在的文件!因此所用时间短!

1.rsync命令

(1)基本用法

# rsync   文件     远程用户@远程主机ip:远程主机目录 :上传文件

# rsync  远程用户@远程主机ip:远程主机目录  文件路径 :下载文件

(2)其他参数

参数 含义
-r 复制目录
-l 复制链接
-p 复制权限
-t 复制时间戳
-o 复制拥有者
-g 复制拥有组
-D 复制设备文件

2.实验

(1)在westosb上建立实验素材

复习之linux系统中的文件传输_第30张图片

(2) 在westosa主机复制目录

#  rsync   -r   [email protected]:/mnt    /mnt/ :下载整个mnt目录

#rsync   -r   [email protected]:/mnt/   /mnt/ :下载mnt目录里面的内容不包括mnt目录本身

ps:默认情况 不复制链接。

复习之linux系统中的文件传输_第31张图片

 (3) 在westosa主机复制链接

# rsync   -lr   [email protected]:/mnt/   /mnt/ : -l  复制链接

复习之linux系统中的文件传输_第32张图片

 (4) 在westosa主机复制文件的权限

# rsync    -plr   [email protected]:/mnt/    /mnt/ :-p复制权限

复习之linux系统中的文件传输_第33张图片 (5) 在westosa主机复制文件的所有者

# rsync  -oplr  [email protected]:/mnt/   /mnt/ : -o 复制文件的所有者

复习之linux系统中的文件传输_第34张图片

  (6) 在westosa主机复制文件的所有组

# rsync    -goplr   [email protected]:/mnt/     /mnt/ : -g 复制文件的所有组

复习之linux系统中的文件传输_第35张图片

  (7) 在westosa主机复制文件的时间戳

#   rsync   -tgoplr  [email protected]:/mnt/   /mnt/ : -t 复制时间戳

复习之linux系统中的文件传输_第36张图片

  (8) 在westosa主机复制字符设备

#  rsync  -r  [email protected]:/dev/pts/   /mnt/ :默认情况无法复制字符设备

#  rsync   -Dr   [email protected]:/dev/pts/   /mnt/ :-D复制字符设备

复习之linux系统中的文件传输_第37张图片

 四、tar归档命令详解

1.tar命令

归档,把多个文件整和在一起,常常用在备份上面,本身不具备压缩功能,但是可以指定其他压缩功能去压缩。

2.常用命令选项

命令 含义
c 创建归档文件
f 指定文件
x 解档
v 显示过程
t 查看归档文件
r 向归档文件中添加文件
P 不把绝对路径转换为相对路径,慎用!!
--get 解档指定文件
--delete 删除指定文件
-C 指定解档路径

3.实验

当传输文件比较大时,scp传输时间就会很慢!

(1)下载etc文件到westosa主机上

# scp   -r   [email protected]:/etc/   /mnt

ps:传输的太慢了,因此可以利用归档tar,先归档在传输

复习之linux系统中的文件传输_第38张图片

 (2)创建归档文件:c

# tar  cf  etc.tar  /etc/ :将/etc/文件归档

复习之linux系统中的文件传输_第39张图片

  (3)查看归档文件:t

# tar tf etc.tar :查看归档文件

复习之linux系统中的文件传输_第40张图片

   (4)传输归档文件

# scp  -r  [email protected]:/mnt/etc.tar  /mnt

复习之linux系统中的文件传输_第41张图片

(5)解档文件 :   x

归档文件传输后,解档即可获得原文件!

#  tar   xf   etc.tar : 解档文件

复习之linux系统中的文件传输_第42张图片

(6)显示过程:v

归档和解档都不显示过程,如果想显示过程需要加v

# tar   cfv   etc.tar   /etc/ :显示归档过程

复习之linux系统中的文件传输_第43张图片

 #  tar  xfv  etc.tar :显示解档过程复习之linux系统中的文件传输_第44张图片

 (7)向归档文件中添加文件 : r

# tar   rf  etc.tar   westos :将westos文件添加到归档文件中

复习之linux系统中的文件传输_第45张图片

查看归档文件,westos文件添加成功!

复习之linux系统中的文件传输_第46张图片

(8)解档指定文件:--get

当归档文件含有多种文件,解档时会分开全部解开,此时可以利用--get解档指定文件

# tar   f   etc.tar  --get   westos : 只解档westos文件!

复习之linux系统中的文件传输_第47张图片

(9)删除指定文件:--delete

# tar   f   etc.tar    --delete   westos :删除westos文件

 复习之linux系统中的文件传输_第48张图片

(10)指定解档路径: -C

默认文件解档时在当前目录,-C可以指定解档目录

# tar   xf   etc.tar   -C   /opt/ : 指定解档目录为opt

复习之linux系统中的文件传输_第49张图片

 (11)不把绝对路径转换为相对路径: P (慎用!!)

一般默认解档在当前目录,所以用的是相对路径!自动把路径前的  "  /  "  号去掉!!

加了 P后,不再把绝对路径转换为相对路径,所以会解档在绝对路径中,会覆盖原本的内容,慎用!!!

# tar  Pxf   opt.tar :将文件解档在/opt目录中,而不是/mnt/opt

复习之linux系统中的文件传输_第50张图片

 (12) tar归档命令不具备压缩能力

# du  -sh  /mnt/etc.tar : 查看归档文件大小

# du  -sh  /etc :查看原文件大小

ps: 两者相差的是重复文件,tar没有压缩能力

复习之linux系统中的文件传输_第51张图片

 五、文件的压缩

1.文件压缩命令

Linux 系统中经常用来对文件进行压缩和解压缩的命令:zip,  gzip, bzip2, xz!

ps:  必须先将文件归档在进行压缩!

2.命令使用方法

(1) zip压缩

首先将/etc文件归档,归档后利用zip压缩!

# zip  etc.tar.zip   etc.tar :将归档文件etc.tar压缩为zip文件

# du   -sh   etc.tar.zip :查看压缩文件的大小

复习之linux系统中的文件传输_第52张图片

# unzip   etc.tar.zip : 解压文件

复习之linux系统中的文件传输_第53张图片

 (2)gzip 压缩

# gzip   etc.tar : 压缩归档文件

复习之linux系统中的文件传输_第54张图片

 # gunzip   etc.tar.gz:解压文件

复习之linux系统中的文件传输_第55张图片

 (3) bzip2 压缩

# bzip2   etc.tar : 压缩文件

复习之linux系统中的文件传输_第56张图片

# bunzip2   etc.tar.bz2 :解压文件

 

 (4) xz 压缩

# xz   etc.tar:压缩文件

 复习之linux系统中的文件传输_第57张图片

# unxz  etc.tar.xz :解压文件

 六、tar+压缩一步完成

1.支持tar+压缩的命令

上节介绍了四种压缩命令,但是必须先归档再压缩,很麻烦!

因此我们可以归档压缩一步完成,支持一步完成的命令只有3种:

(1)gzip

tar  zcf    etc.tar.gz   /etc : 归档压缩
tar   zxf   etc.tar.gz :解压

复习之linux系统中的文件传输_第58张图片

(2) bzip2

tar   jcf   etc.tar.bz2    /etc : 归档压缩
tar    jxf    etc.tar.bz2 :解压

复习之linux系统中的文件传输_第59张图片

(3) xz

tar   Jcf    etc.tar.xz   /etc :归档压缩
tar   Jxf   etc.tar.xz:解压

复习之linux系统中的文件传输_第60张图片

你可能感兴趣的:(linux,服务器,ssh)