回答:
Linuxのlsattr/ chattrで処理される属性で、その一部はかなりの数のファイルシステム(ext2 / 3/4、reiserfs、JFS、OCFS2、btrfs、XFS、nilfs2、hfsplus ...)で保存でき、CIFSでクエリすることもできます。 / SMB(POSIX拡張機能がある場合)はフラグです。属性を無効または有効にするためにオンまたはオフにできるビット(単なる不変またはアーカイブなど)。それらがどのように格納されるかはファイルシステム固有ですが、一般的にはiノード内の16/32/64ビットレコードとしてです。
フラグの完全なリストはLinuxネイティブファイルシステム(ext2 / 3/4、btrfs ...)にありますが、すべてのフラグがすべてのFSに適用されるわけではなく、他の非ネイティブFSの場合、Linuxはそれらを同等のものにマップしようとします対応するファイルシステムの機能。たとえば、OSXによってHFS +ファイルシステムに保存されているsimmutableフラグは、Linuxの対応する不変フラグにマップされますchattr。どのファイルシステムがどのフラグをサポートしているかは、ほとんど文書化されていません。多くの場合、カーネルソースコードを読み取ることが唯一のオプションです。
一方、Linuxで、setfattrまたはattrLinuxで設定された拡張属性は、フラグ以上のものを格納します。それらはファイルにも添付され、(キーと値の両方で)バイトの任意の配列にできるキー/値のペアです(ただし、一部のファイルシステムではサイズに制限があります)。
キーは、たとえば:system.posix_acl_accessまたはにすることができますuser.rsync.%stat。system名前空間は(あなたとPOSIX ACLを変更しませんシステム用に予約されていsetfattrますが、より多く持つsetfacl一方で、POSIX ACLはちょうど、少なくともいくつかのファイル・システム上の拡張属性として保存することが起こる)user名前空間がアプリケーションで使用することができ、ここで(スーパーユーザーではない場合に、所有権や権限に関する情報を格納rsyncするために、その--fake-superオプションに使用します)。
繰り返しになりますが、それらがどのように格納されるかはファイルシステム固有です。詳細については、WikiPediaを参照してください。
lsattr/ chattr非ための作業extファイルシステム?そうでない場合ext、Linux 以外のシステムでフラグをどのように変更しますか?また、attrmanページには、XFS用に書かれていると記載されています(私にとっては動作しますがext4)。昨日実際に調べてみたのですが、良い情報が手に入りません。見てください- unix.stackexchange.com/questions/118840/...
lsattr/chattrファイルフラグ用です。すべてのフラグがすべてのファイルシステムでサポートされているわけではありません。たとえば、圧縮などの一部のフラグはext4では機能しませんが、btrfsでは機能します。
reiserfs。
attrコマンドはXFSファイルシステム向けであり、同等のファイルシステム独立コマンドはsetfattr