Prisma1: EACCES: permission denied, open '/home/username/.cache/prisma/error.log'

Created on 15 Feb 2018  ยท  3Comments  ยท  Source: prisma/prisma1

Bug Report

On run sudo npm i -g prisma i catch this error. It`s looks like script run with nobody perms. I do rm /home/username/.cache/prisma -rf and rerun install and got:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ prisma update check failed โ”‚
โ”‚ Try running with sudo or get access โ”‚
โ”‚ to the local update config store via โ”‚
โ”‚ sudo chown -R $USER:$(id -gn $USER) /home/fi1osof/.config โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
ls -la:
drwxr-xr-x 2 nobody www-data 4096 ั„ะตะฒ 15 11:34 .
drwxrwxr-x 33 fi1osof www-data 4096 ั„ะตะฒ 15 11:34 ..
-rw-r--r-- 1 nobody www-data 9547 ั„ะตะฒ 15 11:34 plugins.json
-rw-r--r-- 1 nobody www-data 0 ั„ะตะฒ 15 11:34 .requests.json

Most helpful comment

Found a workaround. While running as root set:
npm config set unsafe-perm true
See https://github.com/npm/npm/issues/2425

All 3 comments

Similar issue here. After a fresh install in a new virtual machine I got the following error while installing the npm prisma package:
` npm install -g prisma
/usr/bin/prisma -> /usr/lib/node_modules/prisma/dist/index.js

[email protected] postinstall /usr/lib/node_modules/prisma
prisma init-prisma || echo ""

error displaying error
{ Error: EACCES: permission denied, mkdir '/root/.cache/prisma'
at Object.fs.mkdirSync (fs.js:905:18)
at Object.mkdirsSync (/usr/lib/node_modules/prisma/node_modules/fs-extra/lib/mkdirs/mkdirs-sync.js:31:9)
at dir (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:240:6)
at Config.get [as cacheDir] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:97:15)
at Output.get [as errlog] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Output/index.ts:150:34)
at Output.logError (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Output/index.ts:249:46)
at Output. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Output/index.ts:168:12)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:40:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:21:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:15:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:11:12)
at Output.error (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:205:16)
at Object. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/CLI.ts:48:9)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:3:12)
at process.handleErr (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/CLI.ts:44:30)
at Object.onceWrapper (events.js:255:19)
at process.emit (events.js:160:13)
at process.emit (/usr/lib/node_modules/prisma/node_modules/source-map-support/source-map-support.js:439:21)
at emitPendingUnhandledRejections (internal/process/promises.js:108:22)
at process._tickCallback (internal/process/next_tick.js:161:7)
at Function.Module.runMain (module.js:703:11)
at startup (bootstrap_node.js:190:16)
at bootstrap_node.js:662:3
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/root/.cache/prisma' }
{ Error: EACCES: permission denied, mkdir '/root/.cache/prisma'
at Object.fs.mkdirSync (fs.js:905:18)
at Object.mkdirsSync (/usr/lib/node_modules/prisma/node_modules/fs-extra/lib/mkdirs/mkdirs-sync.js:31:9)
at dir (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:240:6)
at Config.get [as cacheDir] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:97:15)
at Lock.get [as updatelockfile] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Plugin/Lock.ts:16:64)
at Lock. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Plugin/Lock.ts:24:28)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:3:12)
at Lock.unread (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:60:16)
at Lock. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Plugin/Lock.ts:35:16)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:3:12)
at Lock.upgrade (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Lock.js:86:16)
at Cache. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Plugin/Cache.ts:172:36)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Cache.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Cache.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Cache.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Cache.js:3:12)
at Cache.fetchManagers (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Cache.js:174:16)
at Plugins. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Plugin/Plugins.ts:42:37)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Plugins.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Plugins.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Plugins.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Plugins.js:3:12)
at Plugins.load (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Plugin/Plugins.js:56:16)
at PluginCommandManager. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Dispatcher/Dispatcher.ts:66:19)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:42:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:23:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:17:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:13:12)
at PluginCommandManager.findCommand (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:153:16)
at Dispatcher. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Dispatcher/Dispatcher.ts:99:35)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:42:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:23:53)
at fulfilled (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Dispatcher/Dispatcher.js:14:58)
at
at process._tickCallback (internal/process/next_tick.js:160:7)
at Function.Module.runMain (module.js:703:11)
at startup (bootstrap_node.js:190:16)
at bootstrap_node.js:662:3
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/root/.cache/prisma' }
(node:11507) UnhandledPromiseRejectionWarning: Error: EACCES: permission denied, mkdir '/root/.cache/prisma'
at Object.fs.mkdirSync (fs.js:905:18)
at Object.mkdirsSync (/usr/lib/node_modules/prisma/node_modules/fs-extra/lib/mkdirs/mkdirs-sync.js:31:9)
at dir (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:240:6)
at Config.get [as cacheDir] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:97:15)
at Config.get [as requestsCachePath] (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Config.ts:110:27)
at StatusChecker.checkStatus (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/StatusChecker.ts:87:30)
at Output. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/Output/index.ts:197:21)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:40:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:21:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:15:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:11:12)
at Output.error (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/Output/index.js:205:16)
at Object. (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/CLI.ts:48:9)
at step (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:32:23)
at Object.next (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:13:53)
at /usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:7:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/dist/CLI.js:3:12)
at process.handleErr (/usr/lib/node_modules/prisma/node_modules/prisma-cli-engine/src/CLI.ts:44:30)
at Object.onceWrapper (events.js:255:19)
at process.emit (events.js:160:13)
at process.emit (/usr/lib/node_modules/prisma/node_modules/source-map-support/source-map-support.js:439:21)
at emitPendingUnhandledRejections (internal/process/promises.js:108:22)
at process._tickCallback (internal/process/next_tick.js:161:7)
at Function.Module.runMain (module.js:703:11)
at startup (bootstrap_node.js:190:16)
at bootstrap_node.js:662:3
(node:11507) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:11507) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ prisma update check failed โ”‚
โ”‚ Try running with sudo or get access โ”‚
โ”‚ to the local update config store via โ”‚
โ”‚ sudo chown -R $USER:$(id -gn $USER) /root/.config โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/prisma/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

  • [email protected]
    updated 1 package in 19.218s
    Directory .cache:
    root@prisma001:~# ls -al .cache/
    insgesamt 8
    drwxrwxrwx 2 root root 4096 Feb 17 09:45 .
    drwx------ 6 root root 4096 Feb 17 09:45 ..

`

My environment:

  • Debian 9
  • NodeJS 9
  • Run as root (even made the cache directory 777)

Any hints?

Found a workaround. While running as root set:
npm config set unsafe-perm true
See https://github.com/npm/npm/issues/2425

npm config set unsafe-perm true
run this using sudo

Was this page helpful?
0 / 5 - 0 ratings

Related issues

marktani picture marktani  ยท  41Comments

schickling picture schickling  ยท  44Comments

Bradly-kunthrope picture Bradly-kunthrope  ยท  37Comments

marktani picture marktani  ยท  71Comments

pantharshit00 picture pantharshit00  ยท  49Comments