如何用wget下载整个网站

SCP(安全复制协议)

原理:基于SSH加密传输,适合中小文件。
命令格式

scp [选项] 用户名@远程IP:远程文件路径 本地保存路径

示例

  1. 复制单个文件(远程22端口,用户名为user

    scp -P 2222 user@192.168.1.100:/home/user/data.txt /local/dir/

    -P 2222:指定SSH端口(默认22可省略)
    /local/dir/:本地目录需提前创建

  2. 递归复制目录

    scp -r user@192.168.1.100:/remote/dir /local/path

注意事项

  • 使用SSH密钥认证更安全(通过ssh-keygen生成密钥对)
  • 传输大文件时可能较慢(无增量同步功能)

Rsync(增量同步工具)

原理:仅传输差异部分,适合大文件或定期备份。
命令格式

rsync [选项] 用户名@远程IP:源路径 本地路径

示例

rsync -avz -e "ssh -p 2222" user@192.168.1.100:/home/user/project/ /backup/
  • -a:归档模式(保留权限、时间戳)
  • -v:显示详细过程
  • -z:压缩传输
  • -e:指定SSH端口

优势

  • 支持断点续传(--partial选项)
  • 可排除文件(--exclude='*.log'

SFTP(交互式安全传输)

原理:通过SSH建立FTP-like会话,适合手动操作。
操作步骤

  1. 连接远程服务器:
    sftp -P 2222 user@192.168.1.100
  2. 下载文件:
    sftp> get /remote/file.txt /local/path/
  3. 下载目录(需先打包):
    sftp> get -r /remote/dir  # 部分SFTP客户端支持递归

HTTP/FTP下载(公开文件)

适用场景:远程文件已通过Web/FTP服务公开。
工具命令

# 使用curl
curl -o /local/data.tar.gz ftp://user:pass@192.168.1.100/data.tar.gz

注意

  • FTP密码在命令中明文存储不安全,建议改用SCP/rsync
  • 支持断点续传(wget -ccurl -C -

SSH + Tar(高效传输目录)

原理:在SSH管道中打包传输,避免逐个文件处理。
操作命令

ssh -p 2222 user@192.168.1.100 "tar czf - /remote/dir" | tar xzvf - -C /local/path
  • tar czf -:远程打包并输出到标准流
  • tar xzvf -:本地解压标准流输入
  • -C:指定解压目录

优势

  • 处理大量小文件时速度显著提升
  • 自动保留文件属性

方法对比与选择建议

方法 适用场景 安全性 效率
SCP 单文件/小目录快速传输 中等
Rsync 大文件/定期备份/增量同步
SFTP 交互式查看并下载
HTTP/FTP 公开文件直链下载 中低
SSH+Tar 超大型目录(如日志文件) 最高

安全实践指南

  1. 密钥认证
    生成SSH密钥对替代密码登录:

    ssh-keygen -t ed25519  # 生成密钥
    ssh-copy-id -i ~/.ssh/id_ed25519.pub user@192.168.1.100  # 部署公钥
  2. 防火墙配置
    • 限制SSH端口访问IP白名单
    • 使用非标准端口(如2222)减少扫描攻击
  3. 传输加密
    避免使用FTP等明文协议,优先选择SCP/rsync over SSH。

常见问题排查

  • 权限拒绝
    检查远程文件读权限(ls -l)及本地目录写权限。
  • 连接超时
    验证网络连通性(ping 192.168.1.100)和防火墙规则。
  • 磁盘空间不足
    使用df -h检查本地存储空间。

引用说明:本文参考Linux man手册(man scp/man rsync)、OpenSSH官方文档及IBM安全传输指南,实践命令已在Ubuntu 22.04/CentOS 7环境中验证。

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

(0)
酷番叔酷番叔
上一篇 2025年7月8日 09:25
下一篇 2025年7月8日 09:49

相关推荐

  • Linux网卡驱程安装新手如何操作?步骤详解与常见问题解决

    在Linux系统中安装网卡驱动是解决网络连接问题的关键步骤,尤其是当默认内核未包含特定硬件的驱动时,本文将详细介绍完整的安装流程,从硬件识别到驱动配置,涵盖开源与闭源驱动的不同处理方式,帮助用户顺利完成网络适配器的驱动安装,识别网卡硬件信息在安装驱动前,首先需要准确识别网卡的型号和厂商信息,这是获取对应驱动的前……

    2025年9月17日
    13900
  • Linux下如何查看U盘的文件系统格式?

    在Linux系统中,查看U盘的文件系统格式是常见需求,无论是为了确保系统兼容性、数据安全,还是为后续操作(如格式化、挂载)做准备,Linux提供了多种命令行和图形界面工具来查看U盘格式,以下将详细介绍这些方法及其使用场景,命令行方法查看U盘格式命令行工具是Linux环境下高效查看设备信息的首选,尤其适合服务器或……

    2025年10月8日
    14600
  • Linux如何查看当前系统的网络连接状态详情?

    在Linux系统中,查看网络连接状态是系统管理和故障排查的核心操作之一,通过分析连接信息可以识别端口占用、异常连接、网络性能等问题,Linux提供了多种命令和工具来查看连接,涵盖TCP、UDP、Unix域套接字等不同类型,本文将详细介绍这些方法及其应用场景,使用netstat命令查看连接netstat是传统的网……

    2025年9月30日
    15000
  • Linux命令行入门难?速学技巧在此

    打开终端图形界面:Ubuntu/CentOS:Ctrl+Alt+TFedora:Super键(Windows键)搜索”Terminal”纯文本模式:虚拟机或服务器:开机后直接进入命令行界面切换模式:Ctrl+Alt+F2~F6(图形界面用Ctrl+Alt+F1返回)基础命令操作目录与文件管理pwd # 查看当前……

    2025年7月24日
    15900
  • Linux如何从图形界面回到命令行界面?

    在Linux操作系统中,命令行界面(CLI)是系统管理、程序开发和日常操作的核心工具,无论是通过图形界面(GUI)切换到纯命令行模式,还是在终端窗口中恢复命令行提示符,掌握相关操作都能提升效率,本文将从不同场景出发,详细说明Linux如何回到命令行,涵盖图形界面切换、终端操作、程序退出及异常处理等常见需求,从图……

    2025年9月18日
    15400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信