ossutil 使用方法

目录

ossutil 使用方法

1. 📤 上传文件/文件夹到 OSS

上传单个文件:

上传整个文件夹(递归):

2. 📥 从 OSS 下载文件/文件夹

下载单个文件:

下载整个文件夹:


ossutil 使用方法

wget http://gosspublic.alicdn.com/ossutil/1.7.6/ossutil64 -O ossutil64

chmod +x ./ossutil64

./ossutil64 config

配置密钥:

ossutil config

stsToken 暂时没管。

按提示输入:

  • Endpoint(如 oss-cn-beijing.aliyuncs.com
  • AccessKey ID
  • AccessKey Secret
  • 配置文件路径(默认即可)

1. 📤 上传文件/文件夹到 OSS

上传单个文件:

ossutil64 cp /path/to/local/file.txt oss://your-bucket-name/path/in/oss/file.txt

上传整个文件夹(递归):

ossutil64 cp -r /path/to/local/dir oss://your-bucket-name/path/in/oss/

-r 表示递归,用于文件夹


2. 📥 从 OSS 下载文件/文件夹

下载单个文件:

ossutil64 cp oss://your-bucket-name/path/to/file.txt /local/path/to/save/file.txt

下载整个文件夹:

ossutil64 cp -r oss://your-bucket-name/path/to/folder /local/path/to/save/

<think>好的,用户之前询问了OSS对象存储迁移的方法,现在又具体问到了ossutil工具的使用。我需要详细解释这个工具的具体迁移方法和相关参数。 首先,得确认用户对ossutil的了解程度。可能他们已经知道基本概念,但需要具体步骤。我需要分步骤说明安装配置、常用命令,比如全量迁移、增量同步、断点续传等。 用户可能关心如何高效迁移,特别是大文件或者大量数据的情况。这时候需要提到多线程和并发设置,以及如何优化网络性能。同时,安全方面也不能忽视,比如使用临时凭证和权限控制。 还要考虑用户在实际操作中可能遇到的问题,比如迁移中断如何处理,数据校验的方法。这些常见问题需要给出解决方案,比如使用--update参数和checkpoint-dir。 另外,用户可能需要一些实际案例来帮助理解,比如从本地迁移到OSS,或者不同存储类型之间的迁移。举例子能让他们更清楚应用场景。 最后,要提醒用户注意费用和网络配置,避免产生意外成本或迁移速度过慢。总结时强调正确使用工具的重要性,确保数据安全和迁移效率。</think>以下是ossutil工具的详细迁移指南,包含具体操作步骤与参数解析: --- ### **一、工具安装与配置** #### 1. 下载安装 ```bash # Linux/Mac wget https://gosspublic.alicdn.com/ossutil/1.7.14/ossutil64 chmod 755 ossutil64 sudo mv ossutil64 /usr/local/bin/ossutil # Windows # 从官网下载ossutil64.exe,放入PATH路径 ``` #### 2. 快速配置 ```bash ossutil config -i <AccessKeyID> -k <AccessKeySecret> -e oss-cn-hangzhou.aliyuncs.com -L CH ``` **参数说明**: - `-i`: 阿里云账号AccessKey ID - `-k`: AccessKey Secret - `-e`: Endpoint(根据Bucket地域选择) - `-L`: 语言(CH表示中文) --- ### **二、基础迁移命令** #### 1. 单文件上传 ```bash ossutil cp /local/file.txt oss://mybucket/docs/2024/ ``` **效果**:将本地file.txt上传到OSS的docs/2024/目录下 #### 2. 目录递归上传 ```bash ossutil cp -r /data/photos/ oss://mybucket/archive/ ``` **关键参数**: - `-r`: 递归上传子目录 - `--exclude "*.tmp"`: 排除指定格式文件 - `--include "*.jpg"`: 仅包含JPG文件 --- ### **三、高级迁移技巧** #### 1. 增量同步(仅传新增/修改文件) ```bash ossutil cp -r --update /source/ oss://bucket/target/ ``` **原理**:通过比较文件大小和最后修改时间(mtime)判断是否需要更新 #### 2. 多线程加速 ```bash ossutil cp -r --jobs 20 --parallel 10 /bigdata/ oss://bucket/backup/ ``` **参数控制**: - `--jobs`: 并发任务数(默认1,最大500) - `--parallel`: 单个文件分片数(大文件必用) #### 3. 断点续传 ```bash ossutil cp -r --checkpoint-dir /tmp/oss_checkpoint /data/ oss://bucket/ ``` **优势**: - 中断后从检查点恢复 - 自动记录已传输文件列表 --- ### **四、典型场景命令示例** #### 场景1:迁移本地NAS数据 ```bash ossutil cp -r --jobs 100 --parallel 50 \ --exclude "*.tmp" --log-file /var/log/oss_mig.log \ /nas/data/ oss://prod-bucket/nas-backup/ ``` #### 场景2:跨账号迁移(需配置目标Bucket权限) ```bash # 目标Bucket需授权源账号的RAM用户权限 ossutil cp -r oss://source-bucket/ oss://target-bucket/ \ -i <Target_AK> -k <Target_SK> -e oss-cn-shanghai.aliyuncs.com ``` #### 场景3:迁移后校验数据一致性 ```bash # 生成本地MD5列表 find /data/ -type f -exec md5sum {} \; > local_md5.txt # 获取OSS文件ETag ossutil ls oss://bucket/ -s | awk '{print $2,$5}' > oss_etag.txt # 对比差异(ETag与MD5值相同) diff local_md5.txt oss_etag.txt ``` --- ### **五、性能优化参数** | 参数 | 作用 | 推荐值 | |------|-----|-------| | `--part-size` | 分片大小 | 大文件建议100MB | | `--retry-times` | 失败重试次数 | 3-5次 | | `--timeout` | 超时时间 | 120秒 | | `--net-phy-rate` | 网络限速 | 根据带宽调整 | **调优示例**: ```bash ossutil cp -r --part-size 104857600 \ --retry-times 5 --timeout 300 \ --net-phy-rate 1024 \ /massive_data/ oss://bucket/ ``` --- ### **六、常见错误处理** #### 错误1:403 Forbidden - 检查AK/SK是否正确 - 确认RAM权限策略包含`oss:PutObject`权限 #### 错误2:Slow network speed ```bash # 调整TCP缓冲区(需root权限) sysctl -w net.ipv4.tcp_window_scaling=1 sysctl -w net.core.rmem_max=16777216 sysctl -w net.core.wmem_max=16777216 ``` #### 错误3:File modified during upload - 使用`--disable-ignore-error`禁止跳过错误 - 添加`--force`强制覆盖 --- ### **七、最佳实践建议** 1. **数据安全**: - 使用`--enable-symlink-detect`处理符号链接 - 迁移后设置Bucket策略为只读 2. **成本控制**: ```bash # 指定存储类型(标准/低频/归档) ossutil cp --meta X-OSS-Storage-Class:Archive /data/ oss://bucket/ ``` 3. **日志分析**: ```bash # 统计传输成功率 grep "Upload completed" ossutil.log | wc -l grep "Error" ossutil.log | awk '{print $NF}' | sort | uniq -c ``` --- 通过合理配置参数,ossutil可实现 **单机最高500MB/s** 的传输速度。对于超过1亿文件的迁移任务,建议采用分布式多节点并行执行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI算法网奇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值