Node.js CentOS 7上安装全局npm的理想目录
我有一个CentOS 7生产安装,它在Node.js CentOS 7上安装全局npm的理想目录,node.js,npm,centos,Node.js,Npm,Centos,我有一个CentOS 7生产安装,它在/root/node\u模块中安装全局软件包。因此,它们不会在系统中全局可用。npm root也证实了这一点。当然,我可能会安装前缀,或任何类似的NVM-ish黑客;但我不想 我还尝试将全局必需的包安装为本地devdependency。一个副作用是,pm2集群模块并没有像我在另一台CentOS开发服务器上看到的那样在我所有的内核上生成进程,我在更多的系统上安装和使用了node/npm,数量远远超过我所想的,其中大多数是Linux/CentOS机器 NPM表示
/root/node\u模块中安装全局软件包。因此,它们不会在系统中全局可用。npm root也证实了这一点。当然,我可能会安装前缀,或任何类似的NVM-ish黑客;但我不想
我还尝试将全局必需的包安装为本地devdependency
。一个副作用是,pm2集群模块并没有像我在另一台CentOS开发服务器上看到的那样在我所有的内核上生成进程,我在更多的系统上安装和使用了node/npm,数量远远超过我所想的,其中大多数是Linux/CentOS机器
NPM表示,全局包将保存在“在/usr/local
或安装节点的任何位置”。这正是我所期望的,因此我尝试稍微调整配置编辑器,以避免运气不佳。似乎无论我做什么,全局包都保存在/root/node_modules
中,并且无法通过例如哪个nodemon
在整个系统中找到。我发布了这个问题。npm root将打印安装文件的目录
将有效的节点_模块文件夹打印到标准输出
如果您在~root
中,这将是/root/node\u模块
但是,也可以使用全局参数开关查询全局文件的位置:
npm-g root
,这将解析为/usr/lib/node\u模块
或类似模块npm-g install..
将软件包安装到该全局安装目录
如果您想在全局可用的路径上安装本地包,可以将其安装到文件系统根目录cd/
然后从那里npm安装..
默认情况下,所有用户都有该文件夹的读取权限。节点将找到这些包
whitch
命令将查找$PATH
中的二进制文件,而不是真正的npm包。您可以在\bin
中创建符号链接,并使用npm打包的全局二进制文件,例如CLI命令
注意:在使用systemd的现代发行版上,您应该编写systemd服务,而不是运行nodemon,特别是如果您有许多系统永久运行