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

Ubuntu 17.10安装puppeteer遇权限拒绝错误,求解决方法

解决Ubuntu 17.10下Puppeteer安装权限拒绝的问题

我处理过不少类似的Ubuntu环境下Puppeteer安装权限问题,给你几个靠谱的解决方案,你可以挨个尝试:

  • 带权限参数直接安装
    Puppeteer安装时会自动下载Chromium,这个过程经常因为权限不足报错,试试加上--unsafe-perm参数,它会允许安装脚本以当前用户的权限完成Chromium的下载和配置:

    npm install puppeteer --unsafe-perm=true
    
  • 修复npm缓存目录权限
    有时候权限问题出在npm的缓存目录,先确认缓存路径,再修正它的所属权限:

    1. 查看npm缓存目录:
      npm config get cache
      
    2. 修改目录权限为当前用户所有:
      sudo chown -R $USER:$USER $(npm config get cache)
      

    改完之后再重新执行npm install puppeteer试试。

  • 手动指定Chromium路径安装
    如果自动下载Chromium一直卡权限,可以手动下载对应版本的Chromium,再告诉Puppeteer它的位置:

    1. 先查看你要安装的Puppeteer版本对应的Chromium版本(可以看Puppeteer包的package.json里的chromium_revision字段),下载适配Linux x64的压缩包,解压到项目目录下(比如./chrome-linux)。
    2. 安装时通过环境变量指定Chromium路径:
      PUPPETEER_EXECUTABLE_PATH=./chrome-linux/chrome npm install puppeteer
      

    后续在代码里启动浏览器时,也需要指定这个路径:

    const puppeteer = require('puppeteer');
    (async () => {
      const browser = await puppeteer.launch({
        executablePath: './chrome-linux/chrome'
      });
      // 你的业务代码
      await browser.close();
    })();
    
  • 用nvm管理Node版本(彻底规避系统权限问题)
    系统自带的Node/npm经常会有权限限制,用nvm安装用户级别的Node环境,就能避免很多权限坑:

    1. 去nvm的官方仓库获取最新的安装脚本,在终端执行完成安装。
    2. 重启终端后,安装长期支持版Node:
      nvm install --lts
      
    3. 切换到这个Node版本,再安装Puppeteer:
      nvm use --lts
      npm install puppeteer
      

内容的提问来源于stack exchange,提问作者d-_-b

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:13:18