エロサイトの作り方

2013年11月から勉強しながらエロサイトを作っています。

Node.jsでsudo付けずにnpm update -gしたらnpmコマンドが消えた

表題の通りなのですが、

$ npm update -g
...

npm ERR! error rolling back Error: EACCES, unlink '/usr/local/lib/node_modules/npm/doc/api'
npm ERR! error rolling back  npm@1.3.17 { [Error: EACCES, unlink '/usr/local/lib/node_modules/npm/doc/api']
npm ERR! error rolling back   errno: 3,
npm ERR! error rolling back   code: 'EACCES',
npm ERR! error rolling back   path: '/usr/local/lib/node_modules/npm/doc/api' }
npm ERR! Error: EACCES, unlink '/usr/local/lib/node_modules/npm/html/doc'
npm ERR!  { [Error: EACCES, unlink '/usr/local/lib/node_modules/npm/html/doc']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/npm/html/doc' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 12.5.0
npm ERR! command "node" "/usr/local/bin/npm" "update" "-g"
npm ERR! cwd /Users/hentai-kun/node/sandbox
npm ERR! node -v v0.10.22
npm ERR! npm -v 1.3.14
npm ERR! path /usr/local/lib/node_modules/npm/html/doc
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, unlink '/usr/local/lib/node_modules/npm/html/doc'
npm http 200 https://registry.npmjs.org/wordwrap
...

npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/hentai-kun/node/sandbox/npm-debug.log
npm ERR! not ok code 0

エラーになったわけです。

npm ERR! Please try running this command again as root/Administrator.

とあるので、sudo付け忘れたわーと思い、再実行したところ…

$ sudo npm update -g
zsh: command not found: npm

$ which node npm
/usr/local/bin/node
npm not found

な ぜ か npm が 消 え て い た 。

シンボリックリンク復旧させれば治るんじゃね?

$ cd /usr/local/bin
$ ln -s ../lib/node_modules/npm/bin/npm-cli.js npm

とやって、再実行するも、

$ sudo npm update -g

module.js:340
    throw err;
          ^
Error: Cannot find module 'npmlog'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at /usr/local/lib/node_modules/npm/bin/npm-cli.js:18:11
    at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:86:3)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)

違うエラーが出ただけだった。

結局、npmを入れ直した

$ curl https://npmjs.org/install.sh | sudo sh

無事、実行できるようになりました

$ sudo npm update -g