已安装simple-graphite
使用chef_gem
gem在Vagrant框和VM机器上的资源都是Ubuntu。但两台机器上安装的gemspec
和gem
文件的文件权限不同。使用chef_gem安装gems时的文件权限
在/opt/chef/embedded/lib/ruby/gems/1.9.1
gems
和specifications
目录
流浪箱 drwxrwx--- 4 root root 4096 Dec 4 14:58 simple-graphite-2.1.0
-rw-rw---- 1 root root 1181 Dec 4 14:58 simple-graphite-2.1.0.gemspec
VM机 drwxr-xr-x 4 root root 4096 Dec 4 15:55 simple-graphite-2.1.0
-rw-r--r-- 1 root root 1181 Dec 4 15:55 simple-graphite-2.1.0.gemspec
从流浪箱 vagrant:/opt/chef/embedded/lib/ruby/gems/1.9.1$ getfacl specifications/ file: specifications/ owner: root group: root user::rwx group::r-x other::r-x
vagrant:/opt/chef/embedded/lib/ruby/gems/1.9.1$ getfacl gems file: gems owner: root group: root user::rwx group::r-x other::r-x
是否有一个原因或导致在访问权限others
上流浪箱的区别设置。 chef_gem
在安装gem时似乎没有设置权限。任何指针都非常感谢。
使用vagrant厨师是通过sudo运行的,在你的vm上,你可能直接以root身份运行它,最终可能会以不同的UMASK文件创建。 (这只是一个猜测,没有关于图像的更多信息,这听起来很难) – Tensibai 2014-12-05 15:19:35
谢谢Tensibai。我使用''sudo''在两台机器上检查了运行的chef-client,并按照前面所述设置权限。 – 2014-12-05 15:38:33
因此,检查两台机器上是否有不同的umask,例如'grep -ri umask/etc/*'应该是一个开始。我真的认为差异在操作系统级别比在厨师(chef_gem没有设置gems文件的权限,所以它可能是权限继承的操作系统行为)。 – Tensibai 2014-12-05 15:42:03