我正在努力减少与Symfony和Assetic一起运行的安装。我有权限问题。这是在Ubuntu 12.04 LTS上。
如何设置权限以便我可以运行app / console assetic:dump而不需要sudo?
我使用
安装较少sudo npm install -g less
node_modules安装在/ usr / lib / node_modules
中user“nobody”是/ usr / lib / node_modules / less的所有者 group是我的用户组。
我在config.yml中设置了node,node_paths和apply_to。
它可以在Symfony开发环境中的浏览器中正常工作。我的文件很少被编译成css。
如果我运行app / console assetic:dump它说“找不到模块'少'”。我花了一段时间才发现这是一个权限问题。如果我运行sudo assetic:dump。
使用sudo运行app / console似乎是错误的。我是否需要更改/ usr / lib / node_modules的所有权?一切似乎都有世界和群组阅读权限。
我不明白Apache如何在www-data下运行它。
答案 0 :(得分:0)
chown $(id -un):$(id -Gn | cut -d' ' -f1) /usr/lib/node_modules
有了这个,您将不再需要使用sudo进行安装。
id -un
与whoami
相同,它在终端上显示您的用户名id -Gn
打印您所处的组,并用空格隔开。id -Gn | cut -d' ' -f1
->此部分参加第一组chown [username]:[group] [filename]
更改文件的所有者因此,基本上,您将所有者从 root 用户更改为您自己。
您的Mac上的其他用户将无法修改此文件,因为您拥有该文件。 但是您也可以通过设置组的权限
来允许他们chmod 775 /usr/lib/node_modules