pnpm doctor
Виконує діагностику встановлення pnpm та середовища, в якому він працює.
pnpm doctor [--offline] [--benchmark] [--json]
Кожна перевірка містить вказівки щодо усунення виявлених проблем, і при невдачі хоча б однієї перевірки команда завершується з кодом, відмінним від нуля. Попередження не призводять до збою виконання команди.
✓ Versions: pnpm 12.3.4, Node.js 22.20.0
✓ Install method: pnpm
✓ Global bin directory: /Users/example/Library/pnpm/bin
✓ Cache directory: /Users/example/Library/Caches/pnpm
✓ Store directory: /Users/example/Library/pnpm/store/v11
✓ Filesystem: available: reflink, hardlink, symlink
✓ Registry connectivity: https://registry.npmjs.org/ (128ms)
✓ Install smoke test: offline "file:" install linked its dependency
All checks passed
Перевірки#
Версії#
Повідомляє про запущені версії pnpm і Node.js.
Метод встановлення#
Reports pnpm as the install method and warns when pnpm is being run by Corepack, which manages the pnpm version itself and makes pnpm self-update unavailable.
Глобальна тека bin#
Checks that the directory pnpm links global executables into is on PATH and writable. If it is missing from PATH, the fix is to run pnpm setup.
Тека кешу#
Checks that the cache directory is writable.
Тека сховща#
Checks that the store directory is writable. When no store directory is configured, the check runs against the default store.
Файлова система#
Перевіряє, які стратегії створення посилань застосовуються залежно від тому сховища: reflink (копіювання при записі), hardlink та symlink. This is what determines how packages land in node_modules and how fast an install is. A reflink or hardlink is near-free, a plain copy is not.
Якщо не працює ані reflink, ані hardlink, система попереджає, що під час встановлення буде використано копіювання, і пропонує розмістити сховище в тій самій файловій системі, що й ваші проєкти.
Звʼязок із реєстром#
Виконує тест на доступність налаштованого запису реєстру з тайм-аутом у 15 секунд і повідомляє час проходження сигналу туди й назад. Операція завершується невдачею, якщо доступ до реєстру неможливий або він повертає код помилки, що зазвичай вказує на проблеми з налаштуваннями мережі, проксі-сервера або автентифікації.
Skipped with --offline.
Тест перевірки встановлення#
Installs a throwaway package as a file: dependency, entirely offline, in a temporary directory. Це дозволяє перевірити шлях (resolve, store та link) від початку до кінця і підтвердити, що запущений бінарний файл дійсно може виконати інсталяцію.
This check is always offline by construction, so --offline does not skip it.
Параметри#
--offline#
Оминати перевірки, для яких потрібен доступ до мережі.
--benchmark#
Також вимірювати час виконання перевірок файлової системи та інсталяції, вказуючи тривалість поруч із кожним результатом.
--json#
Виводити результати в JSON. The output is an object with a single checks array, each entry having title, status (pass, warn, or fail), and optionally detail, fix, and durationMs.
{
"checks": [
{
"title": "Filesystem",
"status": "pass",
"detail": "available: reflink, hardlink, symlink",
"durationMs": 3
}
]
}