如何解决安装GHCup时出现的curl输出写入失败错误?
GHCup安装报错curl (23) 解决方案
错误原因分析
curl错误码23本质是无法将下载内容写入目标路径,常见触发场景:
- 目标缓存目录
/home/pedro/.ghcup/cache/权限不足 - 用户主目录磁盘空间耗尽
- 系统临时目录(
/tmp/)权限异常
分步解决步骤
检查并修复缓存目录权限
先查看目录权限:ls -ld /home/pedro/.ghcup/如果输出中所有者不是
pedro,执行权限修复命令:sudo chown -R pedro:pedro /home/pedro/.ghcup/验证磁盘剩余空间
检查用户主目录可用空间:df -h /home/pedro/确保可用空间至少1GB,若不足清理冗余文件后重试。
手动预下载元数据文件
跳过自动下载元数据的步骤,手动指定路径写入:curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-0.0.8.yaml -o /home/pedro/.ghcup/cache/ghcup-0.0.8.yaml完成后重新执行官方安装命令:
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh临时使用sudo权限安装(仅用于排查)
若上述方法无效,可临时提升权限安装(注意安装后修正权限):sudo curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh安装完成后立即修正目录归属:
sudo chown -R pedro:pedro /home/pedro/.ghcup/
内容的提问来源于stack exchange,提问作者Pedro Figueiredo
相关产品推荐
相关产品推荐

