红帽系统管理一 13章节 归档和传输文件

管理压缩的tar文档

归档文件是将多个文件或目录汇集成一个单独文件(这个文件也可称存档)。这种文件可以用于方便地将多个文件组织成一个整体,以便进行传输、备份或存档。归档文件通常保留了被打包的文件的目录结构,元数据(比如权限、所有者信息等)和索引信息,这样可以在需要时恢复文件到原来的状态。
常用的 tar 选项包括:

-c:创建归档文件。
-x:从归档文件中提取文件。
-t:显示归档文件中的内容列表

-v:显示详细信息,通常用于显示操作过程中的文件列表。
-f:指定归档文件的名称。

-z:使用 gzip 进行压缩。
-j:使用 bzip2 进行压缩。
-J:使用xs进行压缩。

[root@guojie ~]# tar -cf test1 /data/f{1..3}.txt
tar: 从成员名中删除开头的“/”

注意:在创建tar文件test1之前,先确认目录中没有与test1同名的文件,tar命令将会覆盖同名的文件而不做任何提示。如上提示,在使用绝对路径归档文件时,tar命令会删除参数中开头的“/”,目的是保护在提取文件时覆盖重要文件。
创建压缩文档
tar支持的三种压缩方式中,gzip压缩速度最快,使用最广泛,能跨版本甚至跨平台,bzip2压缩率更高,xz较新且压缩率最高。
在/root下创建名为data.tar.gz的压缩文件,数据来于文件夹/data

[root@guojie ~]# tar -czf /root/data.tar.gz /data

提取压缩文档

[root@guojie ~]# tar -xzf /root/data.tar.gz   #gzip格式
[root@guojie ~]# tar -xjf /root/data.tar.gz   #bzip2格式
[root@guojie ~]# tar -xJf /root/data.tar.gz   #xz格式

注意:
tar存档文件一般情况下提取到空的目录中以避免覆盖文件。以root身份提取文件时,将保留文件原始的用户和组所有权。以普通用户提取时,文件所有权将属于从存档中提取文件的用户。默认情况下从存档中提取文件将从权限中去除umask,若要保留提取文件的权限,使用 -p选项。

在系统间安全的传输文件

scp(secure copy)

此命令通过SSH服务器进行身份验证,并在数据传输中进行加密。
常见的 scp 选项包括:
-r:递归复制整个目录。
-P:指定端口号。
-i:使用指定的密钥文件。
-v:详细模式,显示传输的详细信息

scp [选项] [] [目标]
目标地址的格式 [user@]host:/path  [user@]是可选的

从本地拷贝文件去远程主机:
scp /path/to/local/file username@remotehost:/path/to/destination

远程主机上的文件复制到本地
scp username@remotehost:/path/to/remote/file /path/to/destination
sftp

sftp 是一个交互式的文件传输程序,允许用户通过安全的 SSH 协议在本地系统和远程系统之间传输文件。

与 scp 不同,sftp 提供了一个类似于标准 FTP(文件传输协议)的交互式 shell。用户可以在该 shell 中执行类似于本地文件系统的操作,如列出文件、上传、下载、创建目录等。
基本使用如下:
连接到远程主机:

sftp username@remotehost

这将建立到远程主机的 sftp 连接,要求输入用户密码或 SSH 密钥密码进行认证。

文件操作:
在连接建立后,可以执行各种文件操作,比如:
ls:列出远程目录内容。
get:下载文件到本地系统。
put:上传文件到远程系统。
cd:切换远程目录。
mkdir:在远程系统上创建目录。
rm:删除远程文件等。
例如:

get filename   # 从远程主机下载文件到本地
put filename   # 上传本地文件到远程主机
cd directory   # 切换远程主机上的目录

用exit退出 sftp 会话。

在系统间安全的同步文件

使用 rsync同步文件和目录

rsync 是一个强大的文件同步和传输工具,它允许在本地系统之间或本地和远程系统之间进行文件和目录的快速同步。

rsync会检查源和目标文件之间的差异,然后仅传输必要的部分。这使得在后续的同步操作中传输的数据量更小,因为它只传输变更的部分。scp会将整个文件复制到目标位置,不管文件内容是否有变化。

基本的 rsync 命令语法:

rsync [选项] 源 目标

一些常用的 rsync 选项包括:
-a:归档模式,保留所有文件的权限、模式、时间戳等。
-v:详细模式,显示传输过程中的详细信息。
-r:递归复制目录及其内容。
-z:压缩传输数据。
–delete:删除目标上没有源中对应文件的文件。

注意:开启-a选项等同于开启了多个其他选项,包含了以下选项的功能:
-r:递归地复制目录及其内容。
-l:保留符号链接。
-p:保留文件权限。
-t:保留文件时间戳。
-g:保留文件的组信息。
-o:保留文件的拥有者信息。
-D:保留设备和特殊文件。
此外-a不会保留硬链接,需要保留硬链接需开启-H。

rsync 命令中的 -n 选项用于进行预演(dry-run),也称为模拟执行。它会显示执行 rsync 命令时会发生的操作,但实际上并不执行同步。它允许你预览 rsync 命令的执行效果,查看将要同步的文件列表,以便确认是否符合预期,而不会真正地影响到文件系统。
rsync与scp一样使用 [user@]host:/path 标识远程目标。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值