You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Puppeteer启动报错:无权限访问`/.config/puppeteerrc`求助

Puppeteer 权限错误:尝试读取根目录/.config/puppeteerrc问题

错误详情

安装或运行Puppeteer时出现以下权限错误:

error /var/tmp/vproj/pvid/node_modules/puppeteer: Command failed.
Exit code: 1
Command: node install.mjs
Arguments: 
Directory: /var/tmp/vproj/pvid/node_modules/puppeteer
Output:
node:fs:591
  handleErrorFromBinding(ctx);
  ^

Error: EACCES: permission denied, open '/.config/puppeteerrc'
    at Object.openSync (node:fs:591:3)
    at Object.readFileSync (node:fs:459:35)
    at #readConfiguration (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/ExplorerSync.js:76:39)
    at search (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/ExplorerSync.js:44:63)
    at emplace (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/util.js:12:20)
    at search (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/ExplorerSync.js:64:50)
    at emplace (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/util.js:12:20)
    at search (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/ExplorerSync.js:64:50)
    at emplace (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/util.js:12:20)
    at search (/var/tmp/vproj/pvid/node_modules/cosmiconfig/dist/ExplorerSync.js:64:50) {
  errno: -13,
  syscall: 'open',
  code: 'EACCES',
  path: '/.config/puppeteerrc'
}

Node.js v19.1.0
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

问题背景

编写多个小型Puppeteer脚本,偶尔触发上述错误。已全局+项目级安装Puppeteer,脚本并非始终在项目目录运行(依赖$PATH指向项目)。所有权限配置正常,从未以root或特权用户身份运行,但Puppeteer默认尝试读取根目录/.config/puppeteerrc,不符合预期逻辑。

尝试过卸载重装Puppeteer、删除package.json改用Yarn,均无法解决问题。

无效的解决方案尝试

  • 在$HOME/.config/puppeteer/puppeteerrc.cjs放置测试配置文件(原位于$HOME/),但Puppeteer未默认读取$HOME路径,该行为未在文档中记录。
  • 在脚本内配置缓存目录,代码如下,仍无效:
/**
 * @type {import("puppeteer").Configuration}
 */
module.exports = {
                   // Changes the cache location for Puppeteer.
                   cacheDirectory: join(process.env['HOME'], '.config', 'puppeteer'),
                 };

最小复现示例

测试脚本(test.js)

#!/usr/bin/env node

const puppeteer = require('puppeteer');
const fs = require('fs').promises;

/**
 * @type {import("puppeteer").Configuration}
 */
module.exports = {
                   // Changes the cache location for Puppeteer.
                   cacheDirectory: join(process.env['HOME'], '.config','puppeteer'),
                 };

(async () =>
{
  const browser = await puppeteer.launch(
    {
      headless: false,
      args: ['--autoplay-policy=no-user-gesture-required'],
    });
  // ... puppeteer code
  const cookiesString = await fs.readFile('./cookies.json');
  const cookies = JSON.parse(cookiesString);
  await page.setCookie(...cookies);

  let page = await browser.newPage();

  await networkCache.use(page);
})();

对应的package.json

{
  "name": "puppeteer-download",
  "version": "1.0.0",
  "description": "downloads images and videos from a website",
  "main": "test.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "kenny harrer",
  "license": "ISC",
  "dependencies": {
    "puppeteer-core": "^21.3.6"
  }
}

疑问

当前使用Puppeteer最新版本,该行为是否属于产品Bug?已在GitHub提交相关Issue。

内容的提问来源于stack exchange,提问作者Jim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 05:28:11