linux怎么拷贝文件:本地与远程操作指南

linux怎么拷贝文件分为本地复制cp、远程复制scp两大主流方式,cp适合同一台服务器内文件迁移,支持覆盖、保留权限、递归复制文件夹,scp基于ssh协议跨主机传输,不用额外部署服务,二者都需要对应目录的读权限与目标路径写权限,无权限时会直接抛出permissiondenied报错,不适合无法登录ssh、ssh端口被防火墙拦截的跨主机场景,该场景优先考虑rsync。

linux怎么拷贝文件之cp本地复制

cp是linux内置复制命令,基础语法为cp源文件目标路径,你直接输入cptest.txt/home/tmp就能把当前目录下test.txt复制到/home/tmp目录。复制单个文件时,如果目标路径里存在同名文件,默认会直接覆盖,加上-i参数cp-itest.txt/home/tmp会弹出确认提示,输入y才执行复制,降低误覆盖概率。

复制文件夹必须搭配-r参数,-r代表递归处理子目录和里面所有文件,写法是cp-rtestdir/home/tmp;想同步保留文件原始权限、修改时间、属主信息,改用-a参数,cp-atestdir/home/tmp,-a等价于-dpR组合,打包迁移配置目录时使用较多。

不要用cp-r复制大量零散小文件,传输耗时会明显变长。

linux怎么拷贝文件之scp远程复制

scp依托ssh通道传输,分为本地上传到远程、远程下载到本地两种方向,上传语法scptest.txtroot@192.168.1.100:/data,下载语法scproot@192.168.1.100:/data/test.txt./。远程服务器ssh不是默认22端口时,增加-P参数指定端口,参数大写,例如scp-P2222test.txtroot@192.168.1.100:/data。

远程拷贝文件夹同样需要-r参数,scp-rtestdirroot@192.168.1.100:/data。scp传输过程会占用ssh会话,网络波动较大时容易中断,中断后无法续传,适合体积偏小的文件,几十GB级大文件不推荐单用scp反复传输。

linux怎么拷贝文件之rsync增量拷贝

命令传输特点典型适用场景断点续传
cp本地全量复制,速度快单机内文件迁移不支持
scpssh加密传输,配置简单少量文件跨主机传输不支持
rsync对比文件差异,只传变动部分大文件、定期备份支持

rsync不属于基础内置命令,部分精简系统需要手动安装,基础远程同步命令rsync-avtestdirroot@192.168.1.100:/data,-a保留属性,-v输出传输日志。它会比对源和目标文件的大小、校验值,只发送有差异的数据,重复同步时流量消耗大幅降低,备份服务器数据时使用频率更高。

权限控制是拷贝操作里高频出错点。

你可以用ls-l查看源文件读写权限,目标目录需要w权限才能写入,普通用户无法写入root专属目录,要么切换root执行命令,要么修改目录权限。远程拷贝时ssh账号必须拥有目标路径写入权限,ssh密钥登录可以省去反复输入密码的步骤,适合脚本自动化拷贝任务。

拷贝完成后,用md5sum校验源文件和目标文件哈希值,核对文件是否完整一致,避免传输损坏。

敬慕百科汇集百科知识与游戏文化,带你发现世界的每一个精彩角落。

想要了解更多关于linux怎么拷贝文件的文章欢迎访问:百科