Permissions 在RPM规范文件中%defattr是什么意思?
创建RPM时,RPM规范文件有一个指令Permissions 在RPM规范文件中%defattr是什么意思?,permissions,rpm,rpm-spec,Permissions,Rpm,Rpm Spec,创建RPM时,RPM规范文件有一个指令%defattr。我知道它为该RPM安装的文件定义了默认属性。如果我像下面那样写%defattr,它是什么意思 %defattr(-testuser, testuser) 您指定的模式无效。%defattr有四个参数 从 %defattr指令 %defattr指令允许设置文件和指令的默认属性。%defattr的格式与%attr指令相似: 文件的默认权限或“模式” 默认用户id 默认组id 目录的默认权限或“模式” %attr指令具有以下格式: %defat
%defattr
。我知道它为该RPM安装的文件定义了默认属性。如果我像下面那样写%defattr
,它是什么意思
%defattr(-testuser, testuser)
您指定的模式无效。%defattr有四个参数 从 %defattr指令 %defattr指令允许设置文件和指令的默认属性。%defattr的格式与%attr指令相似:
要在spec文件中设置权限和所有权,请将目录视为文件。。。 %defattr将设置所有不带%attr的文件(在本例中,rww所有者apache组apache并将目录设置为755)
%文件
#%attr(,)文件
%defattr(644,阿帕奇,阿帕奇,755)
%attr(-,apache,apache)/var/www/coolapp
%attr(-,apache,apache)/var/www/coolapp/js
%attr(-,apache,apache)/var/www/coolapp/static
/var/www/coolapp/index.html
/var/www/coolapp/\uuuuuuu init\uuuuuuuuuuuuuuuuuu.py
/var/www/coolapp/settings.py
/var/www/coolapp/url.py
/var/www/coolapp/wsgi.py
这并不能回答问题。问题是问第一个字段中的-
是什么意思,brightlancer引用的最大RPM回答了这个问题。很好的解释。我经常在spec文件中看到的一个有效示例是%defattr(-,root,root)
。
%files
#%attr(<mode>, <user>, <group>) file
%defattr(644,apache,apache,755)
%attr(-,apache,apache) /var/www/coolapp
%attr(-,apache,apache) /var/www/coolapp/js
%attr(-,apache,apache) /var/www/coolapp/static
/var/www/coolapp/index.html
/var/www/coolapp/__init__.py
/var/www/coolapp/settings.py
/var/www/coolapp/urls.py
/var/www/coolapp/wsgi.py