npm - EPERM: operasi tidak diizinkan di Windows


106

Aku lari

npm config set prefix /usr/local

Setelah menjalankan perintah itu, Ketika mencoba menjalankan perintah npm apa pun di OS Windows saya terus mendapatkan yang di bawah ini.

Error: EPERM: operation not permitted, mkdir 'C:\Program Files (x86)\Git\local'
at Error (native)

Telah menghapus semua file dari

C:\Users\<your username>\.config\configstore\

Tidak bekerja.

Ada saran ?


25
Menjalankan npm cache clean --forcememecahkan masalah bagi saya.
Nuhman

Menjalankan npm cache clean --force untuk dua kali berhasil untuk saya.
VIshal Jain

Jawaban:


101

Menjalankan perintah ini adalah kesalahanku.

npm config mengatur awalan / usr / local

Path /usr/localbukan untuk windows. Perintah ini mengubah variabel awalan di'C:\Program Files (x86)\Git\local'

Untuk mengakses dan membuat perubahan ke direktori ini, saya perlu menjalankan cmd saya sebagai administrator.

Jadi saya melakukan:

  1. Jalankan cmd sebagai administrator
  2. Jalankan npm config edit(Anda akan mendapatkan editor notepad)
  3. Ubah prefixvariabel menjadiC:\Users\<User Name>\AppData\Roaming\npm

Kemudian npm startbekerja di konsol normal.


4
ini memecahkan masalah saya juga (windows 10), terima kasih.
AntonB

Dalam kasus saya, saya hanya tanda komentar prefix(adalah ;prefix...) setelah npm config edit, dan Profit. Tidak yakin apakah itu A Smart Thing, tetapi berhasil.
ruffin

dalam kasus saya, saya tidak memiliki hak admin untuk saya di laptop jadi inilah cara saya melakukannya- stackoverflow.com/a/57249779/10603466
Rishabh Jain

Hanya menjalankan kembali sebagai admin memperbaiki masalah saya.
dipecahkan

32

Ini terjadi karena windows tidak memberikan izin kepada pengguna untuk membuat folder di dalam drive sistem. Untuk mengatasi ini:

Klik kanan

Folder> Properti > Tab Keamanan

Klik Edit untuk mengubah Izin> Pilih pengguna dan berikan Kontrol Penuh kepada pengguna tersebut.


2
Tambahkan beberapa penjelasan dengan jawaban bagaimana jawaban ini membantu OP dalam memperbaiki masalah saat ini
ρяσѕρєя K

1
Memberi pengguna akses untuk mengubah folder sistem bukanlah ide yang baik, terutama bila hal ini dapat dengan mudah diperbaiki dengan mengubah awalan ke folder di direktori home pengguna.
atomic77

1
ini tidak akan berfungsi dengan laptop perusahaan di mana Anda bukan admin sistem.
schlingel


26

Terkadang, yang diperlukan hanyalah menghentikan server dev sebelum menginstal / memperbarui paket.


1
Mengalami masalah ini di WebStorm. Terima kasih! Ini menyelesaikan masalah.
takasoft

1
betapa aneh tapi benar ... menginstal react-dom@16.7.0-alpha.0 untuk mencoba react hooks tidak berhasil sampai mencoba ini
Dimitar Nikovski

Untuk menambah ini, jika Anda mencurigai masalah ini adalah dev server Anda berjalan tetapi tidak tahu bagaimana menghentikannya, cukup logout / restart windows Anda akan selalu memperbaiki lool ini
Ng Sek Long

24

Saya baru-baru ini mengalami masalah yang sama ketika saya mengupgrade ke versi baru, satu-satunya solusi adalah melakukan downgrade

Untuk mencopot pemasangan:

npm uninstall npm -g

Instal versi sebelumnya:

npm install npm@5.3 -g

Coba perbarui versi di lain waktu.


2
Sama disini. Sepertinya peningkatan npm adalah masalahnya
SokIsKedu

Tepatnya, saya mengikuti topik ini untuk mengetahui kapan akan diperbaiki.
Leonardo Oliveira

ini memperbaikinya untuk saya!
Jim

btw, saya memperbarui dari 5.4.1 ke 5.4.2 dan masalah tampaknya telah hilang - jadi saya pikir masalahnya mungkin telah diperbaiki. Agak sulit untuk mengatakan karena topik yang dimaksud Leonardo dikunci.
Dukungan Mantis

Itu berhasil untuk saya juga. Terima kasih @LeonardoOliveira atas bantuannya
Vipin

13

Dalam kasus saya, saya menghadapi kesalahan ini karena direktori saya dan filenya dibuka di editor saya (kode VS) ketika saya sedang berjalan npm install. Saya memecahkan masalah dengan menutup editor saya dan menjalankan npm installbaris perintah.


10

Saya memiliki masalah yang sama, setelah memperbarui npm. Selesaikan dengan menginstal ulang npm terbaru lagi dengan:

npm i -g npm

tapi kali ini dengan cmd yang berjalan dalam mode administrasi.

saya melakukan semua ini karena saya curiga ada masalah dengan pembaruan, sebagian besar beberapa file hilang.


10

Saya menggunakan Windows 10. Saya memulai CMD sebagai administrator, dan itu memecahkan masalah.

Temukan CMD, klik kanan, dan klik open as administrator.


@EtienneGautier Itu ... sama sekali tidak benar. Apa solusi yang Anda usulkan untuk mengubah file sistem? Jika ada cara untuk melakukannya selain dengan "izin administrator" maka ada sesuatu yang salah dengan keamanan OS.
Clonkex

Hai @Clonkex, saya berasumsi bahwa konteksnya adalah konteks NPM (sesuai pertanyaan). Masih komentar saya tidak relevan, saya menghapusnya. Terima kasih atas tanggapan Anda.
Etienne Gautier

@EtienneGier Ah cukup adil.
Clonkex

7

bagi saya itu masalah mengubah folder yang ada di node_module, jadi saya nuked seluruh folder dan menjalankan npm install lagi. itu berfungsi tanpa kesalahan setelah itu


7

Saya memiliki versi lama dari npm. Saya menjalankan serangkaian perintah untuk mengatasi masalah ini:

npm cache clean --force

Kemudian:

npm install -g npm@latest --force

Kemudian (sekali lagi):

npm cache clean --force

Dan akhirnya dapat menjalankan ini (menginstal proyek Angular) tanpa kesalahan yang saya lihat terkait EPERM:

ng new myProject

6

Saya mengalami masalah yang sama ketika saya mencoba menginstal paket npm AVA. Solusi bagi saya adalah menghapus folder node_modules dan membersihkan paksa cache npm:

rm -rf node_modules
npm cache clean --force

Saya kemudian dapat menginstal paket npm tanpa masalah.


Ya, entah bagaimana saya memiliki folder node_modules di direktori kerja saat ini. Itu melemparkan pengecualian itu ketika saya mencoba menjalankan perintah cli sudut 'ng baru ..'. Menghapus folder node_modules membantu.
Ashokan Sivapragasam

3

Cara paling sederhana

Semoga saya tidak terlambat untuk posting ini tetapi baru-baru ini bahkan saya juga terkena masalah ini. Dan juga saya tidak memiliki hak admin di laptop saya.

Inilah cara termudah untuk memperbaiki bug.

  1. Temukan nama file .npmrc(itu akan menjadiC:\Users\<user name>\.npmrc )
  2. Buka dan ubah jalur prefix=menjadiprefix=C:\Users\<user name>\AppData\Roaming\npm

semoga bermanfaat ..


1
Saya mengalami masalah ini menggunakan WebStorm. Ini adalah satu-satunya hal di halaman pertama Google yang memecahkan masalah saya. Terima kasih Rishabh!
Leandro

senang itu membantu Anda :)
Rishabh Jain

3

Jika Anda mendapatkan kesalahan ini di terminal / command prompt IDE, coba hapus node_modules, tutup IDE, dan jalankan npm installperintah lagi. Saat IDE dimulai tetapi masih belum menyelesaikan analisisnya terhadap pohon node_modules adalah saat yang sulit, ketika penginstalan paket mungkin gagal karena IDE masih memindai konten node_modules.



1

Saya memiliki masalah yang sama, karena saya menggunakan LAN perusahaan saya. Dan saya hanya berlari cmd.exe npmdan saya bisa menjalankan perintah saya yang lain tanpa kesalahan setelah itu.

C:\Users\586656>cmd.exe npm
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

Hanya membagikan ini, karena dapat membantu orang lain yang mencoba melakukan ini di LAN kantor mereka. Terima kasih.


1

Jalankan saja cmd sebagai admin. hapus folder node_modules lama dan jalankan npm install lagi.


1
npm install seharusnya bekerja tanpa memulai CMD sebagai admin. Tidak berfungsi pada cmd normal (non admin) juga menjadi masalah.
Lahar Shah

1

Temukan perintah ini npm cache cleansebagai solusi untuk kesalahan tersebut dengan cara cepat dan sederhana!


1

Saya memperbarui versi node saya ke 8.9.4 dan menjalankan perintah instal yang diperlukan lagi dari command prompt administrator. Itu berhasil untuk saya!


1

Sebuah reboot laptop saya dan kemudian

npm install

bekerja untuk saya!


1

Terjadi pada saya karena folder / file dikunci oleh proses lain. Menggunakan alat (LockHunter) untuk menghentikan proses itu dan mulai bekerja kembali (kemungkinan alasan).


1

Coba npm i -g npm. NPM versi 6.9 bekerja untuk saya.


1

Windows 10,

Menjalankan IDE (dalam kasus saya IntelliJ) dalam mode administrator dan menjalankan instalasi npm tidak menyelesaikan masalah.

Jika tidak ada IDE, jalankan CMD dalam mode administrator dan coba jalankan npm install


1

Saya menjalankan server create-react-app. Cukup hentikan server dan semuanya bekerja dengan baik.


1
Ini memecahkan masalah saya! Saya pikir Anda harus mencoba ini dulu sebelum mencoba yang lain. Karena jawaban lain membutuhkan lebih banyak usaha.
Irfandy Jip


0

Menjalankan perintah npm di Windows Powershell memecahkan masalah saya.


Saya tidak perlu mengedit file konfigurasi lokal atau lainnya
Sai Prasad

0

Sama dengan saya, solusi saya adalah menutup studio Android, AVD Manager, Visual Studio dan instal ulang. Saya menjalankan perintah ini untuk memperbarui expo cli saya:

npm install -g expo-cli

0

Ternyata perangkat lunak anti-virus juga dapat menyebabkan kesalahan ini. Dalam kasus saya, saya memiliki Perlindungan Ransomware Keamanan Windows yang melindungi folder pengguna saya yang menyebabkan kesalahan ini.


0

Bagi saya, ini adalah masalah dengan file .npmrc. Yang ada di C: \ Users \ myname.npmrc Entah bagaimana konten file .npmrc berubah. Saya telah mengubah konten dengan membandingkan dengan laptop rekan saya. Jadi itu terpecahkan.

Sebagai referensi, saya menambahkan konten file .npmrc juga

 ;;;;
 ;npm userconfig file
 ;this is a simple ini-formatted file
 ;lines that start with semi-colons are comments.
 ;read `npm help config` for help on the various options
 ;;;;

 //registry.npmjs.org/:_authToken=95632bcf-3056-4538-b57d-38426736e3a0
 scope=true
 @true:registry=https://registry.npmjs.org/

 ;;;;
 ;all options with default values
 ;;;;
 ;access=null

 ;allow-same-version=false

 ;always-auth=false

 ;also=null

 ;audit=true

 ;audit-level=low

 ;auth-type=legacy

 ;before=null

 ;bin-links=true

 ;browser=null

 ;ca=null

 ;cafile=undefined

 ;cache=C:\Users\myname\AppData\Roaming\npm-cache

 ;cache-lock-stale=60000

 ;cache-lock-retries=10

 ;cache-lock-wait=10000

 ;cache-max=null

 ;cache-min=10

 ;cert=null

 ;cidr=null

 ;color=true

 ;depth=null

 ;description=true

 ;dev=false

 ;dry-run=false

 ;editor=notepad.exe

 ;engine-strict=false

 ;force=false

 ;fetch-retries=2

 ;fetch-retry-factor=10

 ;fetch-retry-mintimeout=10000

 ;fetch-retry-maxtimeout=60000

 ;git=git

 ;git-tag-version=true

 ;commit-hooks=true

 ;global=false

 ;globalconfig=C:\Users\myname\AppData\Roaming\npm\etc\npmrc

 ;global-style=false

 ;group=0

 ;ham-it-up=false

 ;heading=npm

 ;if-present=false

 ;ignore-prepublish=false

 ;ignore-scripts=false

 ;init-module=C:\Users\myname\.npm-init.js

 ;init-author-name=

 ;init-author-email=

 ;init-author-url=

 ;init-version=1.0.0

 ;init-license=ISC

 ;json=false

 ;key=null

 ;legacy-bundling=false

 ;link=false

 ;local-address=undefined

 ;loglevel=notice

 ;logs-max=10

 ;long=false

 ;maxsockets=50

 ;message=%s

 ;metrics-registry=null

 ;node-options=null

 ;node-version=10.15.2

 ;offline=false

 ;onload-script=null

 ;only=null

 ;optional=true

 ;otp=null

 ;package-lock=true

 ;package-lock-only=false

 ;parseable=false

 ;prefer-offline=false

 ;prefer-online=false

 ;prefix=C:\Program Files\nodejs

 ;preid=

 ;production=false

 ;progress=true

 ;proxy=null

 ;https-proxy=null

 ;noproxy=null

 ;user-agent=npm/{npm-version} node/{node-version} {platform} {arch}

 ;read-only=false

 ;rebuild-bundle=true

 ;registry=https://registry.npmjs.org/

 ;rollback=true

 ;save=true

 ;save-bundle=false

 ;save-dev=false

 ;save-exact=false

 ;save-optional=false

 ;save-prefix=^

 ;save-prod=false

 ;scope=

 ;script-shell=null

 ;scripts-prepend-node-path=warn-only

 ;searchopts=

 ;searchexclude=null

 ;searchlimit=20

 ;searchstaleness=900

 ;send-metrics=false

 ;shell=C:\windows\system32\cmd.exe

 ;shrinkwrap=true

 ;sign-git-commit=false

 ;sign-git-tag=false

 ;sso-poll-frequency=500

 ;sso-type=oauth

 ;strict-ssl=true

 ;tag=latest

 ;tag-version-prefix=v

 ;timing=false

 ;tmp=C:\Users\myname\AppData\Local\Temp

 ;unicode=false

 ;unsafe-perm=true

 ;update-notifier=true

 ;usage=false

 ;user=0

 ;userconfig=C:\Users\myname\.npmrc

 ;umask=0

 ;version=false

 ;versions=false

 ;viewer=browser

 ;_exit=true

 ;globalignorefile=C:\Users\myname\AppData\Roaming\npm\etc\npmignore

0

Bagi mereka yang mencoba memperbarui konfigurasi

Jika mengalami masalah saat memperbarui konfigurasi npm Anda, coba jalankan menggunakan tanda -g . Ini memecahkan masalah pada Win 10 untuk saya setelah mencoba yang lainnya.

npm config edit -g

Saya dapat memperbarui konfigurasi dan perubahan tercermin di mana-mana. Ini mungkin karena menjalankan npm dalam lingkup organisasi.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.