Error map
EPERM Error: EPERM: operation not permitted, rename / unlink
Node.js · layer 4, Application & API
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
Linux: Permission denied
Your user (or the service user) lacks read/write/execute permission on a file, directory or one of its parents.
macOS: Operation not permitted — Terminal/app lacks Full Disk Access (TCC privacy protection)
macOS privacy protection (TCC) blocked access to protected folders (Desktop, Documents, Downloads, Mail, Photos, external volumes…
java.nio.file.AccessDeniedException: /path
The OS denied a file operation to the Java process.
Error: listen EACCES: permission denied 0.0.0.0:80
Node isn’t allowed to bind that port — ports below 1024 need root on Linux/macOS, and some Windows ports are reserved.
PERMISSION_DENIED: The caller does not have permission (insufficient permissions)
You are authenticated, but your identity isn’t allowed to perform this action on this resource.
System.UnauthorizedAccessException: Access to the path 'x' is denied
The process’s identity can’t read/write that file or folder — IIS app pool identity, container user, read-only attribute, or a di…
AccessControlListNotSupported: The bucket does not allow ACLs
The upload sets an ACL (like public-read), but the bucket uses “Bucket owner enforced” Object Ownership, which disables ACLs.
Key Vault: (Forbidden) The user, group or application does not have secrets get permission on key vault
The caller authenticated but has no permission on the vault — missing access policy or RBAC role, or the vault’s firewall blocks…
Permission denied writing to a mounted volume inside a Docker container
The process inside the container runs as a user (UID) that doesn’t own the bind-mounted host folder, so reads/writes fail with EA…
TF401019: The Git repository with name or identifier x does not exist or you do not have permissions for the operation
The repo doesn’t exist in that project, or the identity (user, PAT, pipeline build service) lacks permission to it.
java.lang.SecurityException: Permission Denial ... requires android.permission.X
The app called an API that needs a permission it hasn’t declared or the user hasn’t granted at runtime.
Error: EISDIR: illegal operation on a directory, read
A file API (readFile, writeFile, createReadStream) was given a directory path.
Two steps away (36)
Git: Permission denied (publickey). fatal: Could not read from remote repository.
SSH authentication to GitHub/GitLab/Bitbucket failed — no key, wrong key, or the key isn’t added to your account.
npm ERR! code EACCES — permission denied
npm can’t write to a directory — usually global installs into a root-owned folder.
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
The docker CLI can’t talk to the Docker engine — it isn’t running, or your user can’t access the socket.
HTTP 403 Forbidden
The server understood the request but refuses to authorize it — you (or the server process) are not allowed to access this resour…
OAuth 2.0 Error: invalid_scope / insufficient_scope
The requested scope is unknown or not allowed for this client — or the token lacks the scope the API endpoint requires.
Windows Error 0x80070005 (E_ACCESSDENIED): Access is denied
Windows refused an operation because the account or process lacks permission — seen in Windows Update, installers, Task Scheduler…
user is not in the sudoers file. This incident will be reported.
Your account isn’t allowed to use sudo.
WordPress: Sorry, you are not allowed to access this page.
Your user role lacks the capability for that admin screen — or the database table prefix / user capabilities are out of sync afte…
java.lang.StringIndexOutOfBoundsException: begin 0, end 10, length 5
substring()/charAt() used an index outside the string.
Error: listen EADDRINUSE: address already in use :::3000
Another process is already listening on that port.
Docker: Bind for 0.0.0.0:80 failed: port is already allocated
Another container or host process already publishes that host port.
Error: Unhandled 'error' event (events.js / node:events)
An EventEmitter (stream, socket, child process, server) emitted 'error' and nothing listened for it, so Node crashed.
AWS S3: AccessDenied (403) when calling GetObject / PutObject
An IAM policy, bucket policy, ACL/ownership setting, Block Public Access or KMS key policy denied the S3 request.
Azure: AuthorizationFailed — The client does not have authorization to perform action
The signed-in identity (user, service principal or managed identity) lacks an Azure RBAC role for that action on that scope.
Azure Storage: AuthorizationPermissionMismatch (403) — This request is not authorized to perform this operation using this permission
You’re accessing blob/queue data with Microsoft Entra ID, but the identity has only management roles (Owner/Contributor) — not a…
Error: ENOENT: no such file or directory
A file or directory the program tried to open doesn’t exist at that path.
java.io.FileNotFoundException: config.properties (No such file or directory)
Java couldn’t open the file — wrong path relative to the working directory, missing file, or a classpath resource read as a file.
java.nio.file.NoSuchFileException: /path/file
An NIO Files operation targeted a path that doesn’t exist.
AWS S3: NoSuchKey / NoSuchBucket — The specified key/bucket does not exist
S3 found no object at that key (or no bucket with that name in the region/account you’re calling).
NotAllowedError: Failed to execute 'writeText' on 'Clipboard': Document is not focused.
The Clipboard API refused to write — the page isn’t focused, there was no user gesture, or the context isn’t secure.
Error: spawn EACCES
Node tried to execute a file that isn’t executable (missing +x permission) or isn’t a program.
Warning: session_start(): open(/var/lib/php/sessions/sess_x, O_RDWR) failed: Permission denied
PHP can’t write session files to the configured session.save_path.
Laravel: The stream or file "storage/logs/laravel.log" could not be opened in append mode: Failed to open stream: Permission denied
The web server can’t write to Laravel’s storage or bootstrap/cache directories.
FATAL: data directory "/var/lib/postgresql/data" has invalid permissions — Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).
PostgreSQL refuses to start because the data directory is too open or owned by the wrong user.
PermissionError: [Errno 13] Permission denied: '/path'
The OS refused the file operation — no permission, a directory passed to open(), or (on Windows) the file is open elsewhere.
sqlite3.OperationalError: attempt to write a readonly database
The process can’t write to the SQLite file or its directory.
exec /entrypoint.sh: permission denied (container won't start)
The entrypoint or command isn’t marked executable inside the image, or it’s on a volume mounted noexec.
remote: Repository not found. fatal: repository 'https://github.com/x/y.git/' not found
GitHub/GitLab says the repository doesn’t exist — or you lack access to a private repo.
npm ERR! code 128 — An unknown git error occurred (git dependency install)
npm failed to fetch a dependency that points to a Git repository.
npm update check failed — Try running with sudo or get access to the local update config store
npm’s update notifier couldn’t write its config — usually root-owned files in ~/.config from a past sudo npm.
Webhook signature verification failed (Stripe, Razorpay, GitHub…)
Your endpoint computed a different HMAC signature than the one the provider sent, so the webhook is rejected.
Error from server (Forbidden): pods is forbidden: User "x" cannot list resource "pods" in API group "" in the namespace
You’re authenticated to the cluster, but RBAC doesn’t give your user or service account that verb on that resource.
Error creating: pods is forbidden: violates PodSecurity "restricted:latest": allowPrivilegeEscalation != false ...
The namespace enforces a Pod Security Standard (baseline/restricted) and the pod spec breaks one of its rules.
error: unable to create file x: Filename too long (Windows)
Windows’ 260-character path limit blocked Git from creating a file.
Error: ENOTDIR: not a directory
A path treats a file as if it were a directory (e.g. file.txt/child).
Error: EEXIST: file already exists, mkdir
Node tried to create a file/directory/symlink that already exists.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException