2015-12-09 2 views
0

следующие инструкции здесь: npm throws error without sudoВыполнение команды «sudo chown ..» вызывает риск безопасности?

я пошел вперед и запустить следующую команду в терминале (правда, я должен был быть более осторожным):

sudo chown -R $(whoami) ~/.npm 

Будучи новым для этих рода команд, я теперь обеспокоен тем, что это может вызвать проблему безопасности в моей системе.

Есть ли что-нибудь, о чем я должен беспокоиться? Если да, то любой способ исправить это?

Заранее спасибо.

ответ

1

Нет, ~/.npm уже находится в вашей домашней папке, следовательно, символ ~. Если вам требуется sudo для установки модулей npm, вы, вероятно, имеете узлы и npm, чтобы установить систему в целом. Когда вы это сделаете, он помещает данные приложения в путь /usr/local, потому что этот путь находится в вашем $PATH, что означает, что оболочка ищет исполняемые файлы там. Его также читают все пользователи, поэтому все пользователи могут использовать node/npm. Вы не создаете недостаток безопасности в том, что вы сделали. Тем не менее, вы должны создать небольшую проблему с безопасностью, если вы будете катавать свой каталог /usr/local/. Если вы используете только глобальный каталог node_module, вы бы не создали большую проблему безопасности, но это, скорее всего, означало бы, что вы должны просто установить узел/npm в учетной записи пользователя (в вашем домашнем каталоге), где у вас есть доступ на запись.

NVM полезен для этого, он устанавливает узел/npm в свою учетную запись и добавляет свой путь установки к вашему $PATH в ваш .bashrc. Я не рекомендую использовать NVM в производстве, но производство - это еще одна игра с мячом, где вы, вероятно, должны научиться правильно создавать системные службы/демоны.

+0

Ах, понял. Я удалил узел после того, как сделал это, и переустановил его успешно. Переписала бы эту команду «chow»? – Richard

+0

Кроме того, какая проблема «незначительной безопасности» была бы при выборе «/ usr/local /»? Спасибо – Richard

+0

Не было ничего плохого в команде, которую вы запустили, она ничего не сделала. Chowning/usr/local означает, что любой, кто скомпрометировал эту учетную запись пользователя, будет иметь полный доступ к этому каталогу. В этом каталоге много файлов и двоичных файлов, необходимых для правильной работы системы. Все это предполагает, что учетная запись владельцев файлов была скомпрометирована. Его по-прежнему не касается вашего беспокойства, потому что это не то, что вы сделали. В основном вы ничего не делали в своем домашнем каталоге '' 'уже принадлежит вам. – tsturzl

Смежные вопросы