Linux复制太慢?三招极速搞定

核心复制命令详解

cp 命令(基础文件/目录复制)

  • 基础语法
    cp [选项] 源文件 目标路径

  • 常用选项
    | 选项 | 作用 |
    |——|——|
    | -r-R | 递归复制目录(必用于目录操作) |
    | -i | 覆盖前提示确认(防误删) |
    | -v | 显示复制进度(可视化操作) |
    | -p | 保留文件属性(权限、时间戳) |
    | -u | 仅复制源中更新的文件(增量复制) |

  • 典型场景示例

    # 复制文件到目录
    cp file.txt /backup/          # 将file.txt复制到/backup目录
    # 递归复制目录(含子内容)
    cp -r photos/ /media/backup/  # 复制photos目录到/media/backup
    # 保留属性并提示覆盖
    cp -pi source.conf /etc/      # 复制时保留属性,若目标存在则询问
    # 批量复制匹配文件
    cp *.log /logs/               # 复制所有.log文件到/logs目录

rsync 命令(高级同步工具)

适用场景:大文件传输、远程同步、增量备份。

  • 基础语法
    rsync [选项] 源路径 目标路径

  • 关键选项
    | 选项 | 作用 |
    |——|——|
    | -a | 归档模式(保留所有属性,递归同步) |
    | -z | 压缩传输(节省带宽) |
    | --progress | 显示实时进度 |
    | --delete | 删除目标中多余文件(镜像同步) |

  • 典型场景示例

    # 本地目录同步(保留属性)
    rsync -av ~/documents/ /backup/documents/  # 同步~/documents到备份目录
    # 远程服务器复制(需SSH配置)
    rsync -azv /data/ user@remote:/backup/     # 压缩同步/data到远程服务器
    # 增量备份(仅更新修改过的文件)
    rsync -au source/ destination/             # 仅复制源中新增或更新的文件

关键注意事项与安全实践

  1. 覆盖风险预防

    • 使用 -i 选项(如 cp -i)避免静默覆盖文件。
    • 执行前用 ls 检查目标路径,ls /backup/ 确认目录内容。
  2. 权限问题处理

    • 若提示 Permission denied,在命令前加 sudo(需管理员权限)。
    • -p 保留权限(如 cp -p),或用 chmod 事后调整。
  3. 大文件/网络传输优化

    • 优先用 rsync -z 压缩数据,减少传输时间。
    • 使用 nohup 后台运行:nohup rsync -av largefile /backup/ &
  4. 数据完整性验证

    • 复制后运行 md5sum 源文件 目标文件 对比校验值。

场景速查表

需求 命令示例
快速复制文件 cp file1.txt /target/
备份目录(保留属性) cp -rp ~/photos /backup/
同步到远程服务器 rsync -azv data/ user@host:/backup/
增量更新目录 rsync -au src/ dest/
安全覆盖文件 cp -i config.conf /etc/

  • 简单复制 → 用 cp(尤其小文件或单次操作)。
  • 复杂同步 → 用 rsync(适合大文件、远程或增量需求)。
  • 始终验证:操作后检查文件完整性,重要数据提前备份(如 tar -cvzf backup.tar.gz /data)。

引用说明基于Linux核心工具手册(GNU Coreutils)及rsync官方文档,遵循POSIX标准,实践建议来自Linux系统管理最佳实践(Red Hat, Ubuntu等发行版指南)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9914.html

(0)
酷番叔酷番叔
上一篇 2025年8月7日 23:44
下一篇 2025年8月8日 00:08

相关推荐

  • 为何这个错误路径隐藏着秘密?

    在Expect脚本中执行命令的核心是通过spawn启动进程,结合send发送指令、expect匹配响应实现自动化交互,以下是详细操作指南:基础执行流程启动进程使用spawn创建子进程(如SSH、FTP、Shell):spawn ssh user@host # 启动SSH连接匹配预期输出用expect等待特定提示……

    2025年7月19日
    6900
  • iOS如何通过命令行连接VPS?

    在iOS设备上通过命令行连接VPS(虚拟专用服务器)是远程管理和操作服务器的常用方式,尤其适合需要频繁执行命令或脚本的用户,由于iOS系统的封闭性,无法直接使用传统的终端工具,但借助第三方SSH客户端应用即可实现,以下是详细步骤和注意事项,帮助你在iOS上顺利连接VPS,前期准备工作在开始连接前,需确保以下信息……

    2025年8月24日
    6000
  • 安全光栅死机怎么重启?操作步骤与解决方法

    安全光栅作为工业自动化领域的关键安全设备,通过发射和接收红外光束形成保护区域,一旦有人或物体进入危险区域,会立即触发停机信号,有效预防机械伤害事故,但在长期运行中,安全光栅可能因多种原因出现死机现象,导致安全功能失效,需及时重启恢复,本文将详细分析安全光栅死机的常见原因,并提供规范的重启步骤及注意事项,帮助用户……

    2025年11月10日
    2600
  • 安全众测功能介绍

    安全众测功能介绍在数字化浪潮席卷全球的今天,企业面临的网络安全威胁日益复杂,传统安全测试手段往往难以覆盖所有潜在漏洞,安全众测(Crowdsourced Security Testing)作为一种创新的安全模式,通过汇聚全球白帽黑客、安全研究人员等外部力量,构建起“集众智御风险”的防护网络,帮助企业从多维度发现……

    2025年11月15日
    2400
  • Runtime.exec如何避免命令注入漏洞?

    在Java中调用CMD命令是一种常见的需求,尤其在需要执行系统级操作(如文件处理、服务启停或调用外部程序)时,Java通过Runtime.exec()和ProcessBuilder类提供此功能,以下是详细实现方法和注意事项:try { // 执行单条命令 Process process = Runtime.ge……

    2025年7月27日
    5700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信