![从 USB 安装 Ubuntu 18.04 失败,错误代码为 23](https://linux22.com/image/11261/%E4%BB%8E%20USB%20%E5%AE%89%E8%A3%85%20Ubuntu%2018.04%20%E5%A4%B1%E8%B4%A5%EF%BC%8C%E9%94%99%E8%AF%AF%E4%BB%A3%E7%A0%81%E4%B8%BA%2023.png)
我正在使用 USB 在全新主板(m.2 ssd 上)上安装 ubuntu
当我到达从 cp:///media/systemfile 提取图像的部分时,出现错误。错误代码 23 并带有消息:
file "/usr/lib/python3/dist-packages/curtin/utils.py, line131, in _subp cmd=args)
...tin.util.ProcessExecutionError: Unexpected error while running command.
command: ['sh', '-c', 'mkdir -p "$2" && cd "$2" && rsync -aXHAS --one-file-sstem "$1/" .', '--',
...t code :23
reason : -
stdout: ''
stderror: ''
有人可以解释什么是 cp: 协议吗?它想做什么?
在这种情况下,错误代码 23 是什么?
答案1
“23 由于错误而部分传输”。看http://manpages.ubuntu.com/manpages/bionic/en/man1/rsync.1.html#exit%20values
通常,rsync
命令会打印错误消息。但科廷在这里却毫无帮助。它不会传递capture
到_subp()
,因此它设置stderr
为None
。来自的任何错误消息rsync
都会被简单地丢弃。
- https://github.com/CanonicalLtd/curtin/blob/5f0082d/curtin/commands/extract.py#L88
- https://github.com/CanonicalLtd/curtin/blob/5f0082d/curtin/util.py#L87
在查找 curtin 时,我找到了它的定义cp:///
。
https://curtin.readthedocs.io/en/latest/topics/config.html#sources
指定要安装到目标系统的根映像。 URI 还配置用于将图像复制到目标系统的方法。
来源:
源 URI 可能是以下之一:
- dd-: [原文如此] 使用 dd 命令将映像写入目标。
- cp://:使用同步命令将源目录复制到目标。
- file://:使用 tar 命令将源文件提取到目标文件。
- http[s]://:使用 wget | tar 命令将源文件提取到目标文件。
- fsimage://:挂载文件系统映像并将内容复制到目标。支持本地文件或 url。文件系统可以是运行内核可安装的任何文件系统类型。