腾讯云空间,高性能显卡云,安装xinference报错,pip install 空间不够用了

发布于:2025-07-01 ⋅ 阅读:(23) ⋅ 点赞:(0)

在https://ide.cloud.tencent.com/ 云端,Ollama环境,安装Xinference命令行工具

pip install "xinference[all]"

提示错误:

Downloading http://mirrors.tencentyun.com/pypi/packages/cd/08/cb88fd52c08df57ccc4f722241150643d521b3174f8d0c3a1ec5549c3927/vllm-0.9.0-cp38-abi3-manylinux1_x86_64.whl (377.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━ 302.3/377.2 MB 7.7 MB/s eta 0:00:10
WARNING: There was an error checking the latest version of pip.
ERROR: Exception:
Traceback (most recent call last):
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 438, in _error_catcher
    yield
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 561, in read
    data = self._fp_read(amt) if not fp_closed else b""
           ^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 527, in _fp_read
    return self._fp.read(amt) if amt is not None else self._fp.read()
           ^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/cachecontrol/filewrapper.py", line 102, in read
    self.__buf.write(data)
  File "/root/miniforge3/lib/python3.11/tempfile.py", line 500, in func_wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 28] No space left on device

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 106, in _run_wrapper
    status = _inner_run()
             ^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 97, in _inner_run
    return self.run(options, args)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/cli/req_command.py", line 67, in wrapper
    return func(self, options, args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/commands/install.py", line 386, in run
    requirement_set = resolver.resolve(
                      ^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 95, in resolve
    result = self._result = resolver.resolve(
                            ^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 546, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 427, in resolve
    failure_causes = self._attempt_to_pin_criterion(name)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 237, in _attempt_to_pin_criterion
    for candidate in criterion.candidates:
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 162, in <genexpr>
    return (c for c in iterator if id(c) not in self._incompatible_ids)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 53, in _iter_built
    candidate = func()
                ^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link
    base: Optional[BaseCandidate] = self._make_base_candidate_from_link(
                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link
    self._link_candidate_cache[link] = LinkCandidate(
                                       ^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 304, in __init__
    super().__init__(
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__
    self.dist = self._prepare()
                ^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare
    dist = self._prepare_distribution()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 315, in _prepare_distribution
    return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 527, in prepare_linked_requirement
    return self._prepare_linked_requirement(req, parallel_builds)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 598, in _prepare_linked_requirement
    local_file = unpack_url(
                 ^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 170, in unpack_url
    file = get_http_url(
           ^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 111, in get_http_url
    from_path, content_type = download(link, temp_dir.path)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/network/download.py", line 148, in __call__
    for chunk in chunks:
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/cli/progress_bars.py", line 55, in _rich_progress_bar
    for chunk in iterable:
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_internal/network/utils.py", line 65, in response_chunks
    for chunk in response.raw.stream(
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 622, in stream
    data = self.read(amt=amt, decode_content=decode_content)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 560, in read
    with self._error_catcher():
  File "/root/miniforge3/lib/python3.11/contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/root/miniforge3/lib/python3.11/site-packages/pip/_vendor/urllib3/response.py", line 455, in _error_catcher
    raise ProtocolError("Connection broken: %r" % e, e)
pip._vendor.urllib3.exceptions.ProtocolError: ("Connection broken: OSError(28, 'No space left on device')", OSError(28, 'No space left on device'))

运行

df -h

Filesystem Size Used Avail Use% Mounted on
overlay 49G 39G 8.2G 83% /
tmpfs 64M 0 64M 0% /dev
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/vdb 49G 39G 8.2G 83% /mnt
tmpfs 16G 28K 16G 1% /dev/shm
tmpfs 16G 12K 16G 1% /proc/driver/nvidia
/dev/vda2 30G 19G 9.8G 66% /usr/bin/nvidia-smi
tmpfs 3.1G 872K 3.1G 1% /run/nvidia-persistenced/socket
udev 16G 0 16G 0% /dev/nvidia0

要将pip的临时目录设置为空间较大的目录,设置成哪个目录好?
根据你提供的磁盘空间信息,建议将pip的临时目录设置到空间较大的目录中。以下是分析和建议:

空间分析:
可用空间较大的目录:
/ 和 /mnt:可用空间均为 8.2G(已用83%)
/sys/fs/cgroup、/dev/shm、/proc/driver/nvidia、/run/nvidia-persistenced/socket:虽然显示空间大,但这些是特殊文件系统(tmpfs),不适合长期存储或作为临时目录。
/usr/bin/nvidia-smi:挂载在/dev/vda2,可用空间 9.8G(已用66%),但这是系统目录,不建议用于临时文件。
/dev/nvidia0:挂载在udev,是设备文件,不可用。
最佳选择:
/mnt:
可用空间 8.2G,与根目录相同,但通常/mnt用于挂载额外存储,可能是独立磁盘(如/dev/vdb)。
如果/mnt是独立磁盘,未来扩展空间更方便。
根目录 /:
可用空间 8.2G,但根目录可能包含系统文件,长期使用可能影响系统稳定性。
推荐操作:
优先选择 /mnt:
确认/mnt是否为独立磁盘(从你的输出看,/dev/vdb挂载到/mnt,可能是独立存储)。
设置pip临时目录:
bash
export TMPDIR=/mnt/pip_temp
mkdir -p /mnt/pip_temp
pip install --cache-dir=/mnt/pip_temp
或永久生效(添加到~/.bashrc或/etc/environment):
bash
echo ‘export TMPDIR=/mnt/pip_temp’ >> ~/.bashrc
source ~/.bashrc
如果/mnt不可用:
使用根目录(不推荐长期使用):
bash
export TMPDIR=/tmp/pip_temp
mkdir -p /tmp/pip_temp
pip install --cache-dir=/tmp/pip_temp
注意事项:
确保目标目录(如/mnt/pip_temp)有写入权限。
如果磁盘空间后续紧张,考虑扩展/dev/vdb或清理旧文件。
对于生产环境,建议挂载更大的独立磁盘到/mnt或专用目录(如/data)。
最终建议:
将pip临时目录设置为/mnt/pip_temp,因为:

/mnt可能是独立磁盘(/dev/vdb),未来扩展方便。
避免占用根目录空间,减少系统风险。