npm / yoman install generator - sudo 미포함
sudo 없이 Yo(Yoeman)를 사용하여 generator-angularjs를 설치하려고 했습니다.
npm install -g generator-angular
이해:
Error: EACCES, mkdir '/usr/lib/node_modules/generator-angular'
입력할 때sudo yosudo를 사용하면 안 된다고 합니다(이것은 충분히 이해할 수 있습니다).
나는 가지고 있다~/node_modulesdirectory - 패키지는 왜 거기에 설치하지 않습니까?
제너레이터는 글로벌하게 설치되도록 설계되어 있습니다.그렇지 않으면 각 프로젝트에서 사용하려는 제너레이터를 항상 설치해야 합니다. 이 경우 불필요하게 됩니다.또한, 당신은 사랑스런 모습을 볼 수 없다.yo사용 가능한 모든 생성기를 나열하는 메뉴(물론 로컬에 모두 설치하지 않는 한):

글로벌 설치를 위한 npm 설정
npm이 패키지를 글로벌하게 설치하려면 어떻게 해야 할까요?네가 옳게 말한 것처럼, 넌 절대, 절대 도망쳐서는 안 돼.yo스도와 함께.이 문제에 대한 많은 다른 해결책들이 있고 당신은 그들의 장단점을 종교적으로 토론하는데 몇 시간을 보낼 수 있다.
개인적으로 사용자 패키지를 글로벌하게 설치하는 것을 싫어합니다. /usr/폴더입니다. /usr/컴퓨터상의 모든 사용자가 공유하는 소프트웨어용입니다.머신만을 사용하고 있다고 해도, UNIX 파일 시스템의 계층 구조를 존중할 만한 충분한 이유가 있습니다.예를 들어 노드 설치 전체를 삭제하기로 결정한 경우 등입니다.
이 기능을 활성화하기 위해 제가 선호하는 방법npm에서 벗어나지 않고 패키지를 글로벌하게 설치하는 것은 로컬노드 프리픽스를 설정하는 것입니다.이것은 실행만큼 쉽다.
echo 'prefix = ~/.node' >> ~/.npmrc
로컬 셸에 있습니다.그런 다음 $PATH를 조정하여 글로벌노드 실행 파일의 새로운 설치처를 가리키고 싶은 셸의 설정을 조정합니다.예: 추가
export PATH="$PATH:$HOME/.node/bin"
고객님께~/.bashrc그 후에는 즐겁게 달릴 수 있습니다.npm install -g generator-angularsudo 없이, 권한 충돌에 부딪히지 않고, 만약 어떤 것이 완전히 깨지고 당신이 처음부터 시작하고 싶다면, 당신이 해야 할 모든 것은 당신의 손을 제거하는 것입니다.~/.node디렉토리로 이동합니다.
@passy 덕분에 ubuntu 13.04(같은 셋업에 문제가 있는 사람이 있을 경우)에서 이 작업을 수행할 수 있었습니다.
sudo apt-get update
sudo apt-get install python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
실행 시도 중:
npm install -g yo
결과적으로
Error: EACCES, mkdir '/usr/lib/node_modules/yo'
다음 방법으로 수정:
echo prefix = ~/.node >> ~/.npmrc
echo 'export PATH=$HOME/.node/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
실행 중:
yo webapp
결과:
Error: EACCES, permission denied '/home/username/.config/configstore/update-notifier-yo.yml'
다음 방법으로 수정:
sudo chown yourusername:yourusername /home/yourusername/.config/configstore/update-notifier-yo.yml
제 경우 (ubuntu 12.04에서) ~/.npmrc에서 프리픽스가 추가되어도 아무것도 변경되지 않았습니다.
노드 패키지를 직접 빌드하여 /opt/node 또는 /home/user/.node에 설치합니다.
한 사람과 된 거의 ..yo-rc.json이전에 설치한 프로젝트의 루트 디렉토리에 파일을 저장합니다. dir로 가 Yooman이라는 만 출력하고 ./데 오랜 를 통해 디버깅을 했지만 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.yo-rc.json츄디르
Yooman은 사용자에게 디렉토리에 대한 쓰기 권한이 있는지 확인해야 합니다. "cwd"가 할 수 있습니다..yo-rc.jsoncwd가 .
부정한 .yo-rc.json 파일을 찾기 위한 명령어
sudo find / -name .yo-rc.json
From yoeman getting started 페이지가 나타납니다.
yo doctor
제 경우 $NODE_PATH(이 경우 Ubuntu 14.04는 /etc/profile.d에 정의되어 있습니다)는 npm 루트와 다릅니다.$NODE_PATH에 npm root를 추가하면 문제가 해결됩니다.
yeoman 집 vagrant해야만 했던 것입니다.npm(「」를 실시하지 않음)sudoubuntu:
1. 글로벌 패키지를 저장할 디렉토리를 만듭니다.
$ mkdir "${HOME}/.npm-packages"
말하라 2. npm installed .
해 주세요.~/.npmrc 삭제:
prefix=${HOME}/.npm-packages
하세요. 3. 확인하세요.npm는, 인스톨 되어 있는 「인스톨 되어 있습니다.」를 할 수 있습니다.binaries
해 주세요..bashrc/.zshrc:
NPM_PACKAGES="${HOME}/.npm-packages"
PATH="$NPM_PACKAGES/bin:$PATH"
// `unset` `manpath` to allow inheritance from `/etc/manpath` with
// the `manpath` command
unset MANPATH // remove this line if you have previously modified `manpath`
export MANPATH="$NPM_PACKAGES/share/man:$(manpath)"
4. 다음을 실행하거나 터미널을 재시작합니다.
$ source ~/.bashrc
이것이 비슷한 상황에 처한 사람들에게 도움이 되기를 바랍니다.
언급URL : https://stackoverflow.com/questions/18212175/npm-yeoman-install-generator-angular-without-sudo
'programing' 카테고리의 다른 글
| 워드프레스에서 잘못된 양식 제출 (0) | 2023.02.11 |
|---|---|
| 단일 명령어로 테이블에 열과 주석을 추가하는 SQL (0) | 2023.02.11 |
| WooCommerce 3에서 커스텀 워킹 배송 방법을 추가하는 방법 (0) | 2023.02.11 |
| angularjs: ng-src background-image:url(...)에 상당합니다. (0) | 2023.02.11 |
| WordPress에서 게시물 작성자 이름을 얻는 방법 (0) | 2023.02.11 |