CentOS 6.2でNagios XIインストールを実行していて、バックアップスクリプトを変更したいと考えています。このシェルスクリプトに拡張属性ビットが設定されていることに気付いたので、変更を加えても混乱しないようにしたい。実験したところ、「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
さて、私は1つの謎を解決しました:「cp -p」のデフォルトは「cp --preserve = mode、ownership、timestamps」です。「cp --preserve = all backup_xi.sh backup_xi.sh.ORIG」を使用すると、拡張属性ビットが機能し、保持されます。
—
アラン