Ubuntu 22.04 EC2实例安装Anaconda公钥至可信存储失败求助
解决方法
问题根源
你遇到的curl: (23) Failed writing body错误,核心原因是管道后的重定向>操作不受sudo管辖——即便给整个命令加了sudo,重定向写入文件的步骤仍以当前普通用户身份执行,若目标位置无写入权限就会触发报错。
可行方案
方案1:用sudo tee替代直接重定向
将重定向部分替换为sudo tee,让写入操作以root权限执行,命令示例:
curl https://repo.anaconda.com/pkgs/misc/gpgkeys/anaconda.asc | gpg --dearmor | sudo tee /usr/share/keyrings/conda.gpg > /dev/null
/usr/share/keyrings/是Ubuntu系统存放可信密钥的标准目录,可根据实际需求替换为目标路径> /dev/null用于屏蔽tee的输出,避免冗余内容打印到终端
方案2:先下载到普通用户目录,再移动至目标位置
若不想修改原命令结构,可先将密钥文件下载到自身有权限的目录(如用户家目录),再通过sudo移动到系统目录:
# 以普通用户身份下载到家目录 curl https://repo.anaconda.com/pkgs/misc/gpgkeys/anaconda.asc | gpg --dearmor > ~/conda.gpg # 用sudo移动到目标路径 sudo mv ~/conda.gpg /usr/share/keyrings/conda.gpg
方案3:确保当前目录具备写入权限
如果目标是将密钥文件存在当前工作目录,先检查目录权限:
ls -ld .
若权限不足,可切换到有权限的目录(如~/)再执行原命令,或调整当前目录权限(不建议随意修改系统目录权限)。
内容的提问来源于stack exchange,提问作者Prithvi Boinpally
相关产品推荐
相关产品推荐

