我已经在CentOS 6.2上运行了Nagios XI安装,并且想要修改备份脚本。我注意到为该Shell脚本设置了扩展属性位,因此我想确保在进行更改时不要弄乱任何东西。我进行了实验,发现“ cp -p”不会保留此设置(有关此更新,请参见评论)。我是Linux扩展属性的新手,发现有一个命令'getfattr'应该显示扩展属性,但是此文件不显示任何内容。
cd /usr/local/nagiosxi/scripts
ll backup_xi.sh
-rwxr-x---. 1 nagios nagios 2757 Jul 3 10:03 backup_xi.sh*
# nothing is displayed by 'getfattr':
getfattr -d backup_xi.sh
# and nothing special seems to be present according to 'getfacl':
getfacl backup_xi.sh
# file: backup_xi.sh
# owner: nagios
# group: nagios
user::rwx
group::r-x
other::---
最终,我的目标是在保留原始产品安装过程中设置的所有属性的同时修改文件。即使根据getfattr显然没有任何属性,设置扩展属性位的原因是否存在?
1
好吧,我解决了一个难题:“ cp -p”默认为“ cp --preserve = mode,ownership,timestamps”。使用“ cp --preserve = all backup_xi.sh backup_xi.sh.ORIG”可以工作并保留扩展属性位。
—
艾伦(Alan)