このセクションでは、ZFS ファイルに特別な属性を適用する方法、およびそれらを表示する方法を示します。特別な属性の表示および適用の詳細は、ls(1)およびchmod(1)のマニュアルページを参照してください。
ファイルを変更できないようにするには、次の構文を使用します。
# chmod S+ci file.1 # echo this >>file.1 -bash: file.1: Not owner # rm file.1 rm: cannot remove `file.1': Not owner
次の構文を使用することにより、ZFS ファイルに適用されている特別な属性を表示できます。
# ls -l/c file.1 -rw-r--r--+ 1 root root 206695 Jul 20 14:27 file.1 {A-----im----}
ファイルの不変性を削除するには、次の構文を使用します。
# chmod S-ci file.1 # ls -l/c file.1 -rw-r--r--+ 1 root root 206695 Jul 20 14:27 file.1 {A------m----} # rm file.1
nounlink 属性は、ZFS 内のファイルまたはディレクトリが誤って削除されないように保護することによって、それらの不変性を補完します。ただし、immutable 属性とは異なり、nounlink はファイルが削除されたり、その名前が変更されたりしないようにするだけです。アプリケーションまたはユーザーは引き続き、このファイルを変更できます。
いくつかの例については、次のブログエントリを参照してください。
次の構文は、読み取り専用アクセス権を ZFS ファイルに適用する方法を示しています。
# chmod S+cR file.2 # echo this >>file.2 -bash: file.2: Not owner
次の構文を使用して、特別な属性を表示し設定できます。
# ls -l/v file.3 -r--r--r-- 1 root root 206695 Jul 20 14:59 file.3 {archive,nohidden,noreadonly,nosystem,noappendonly,nonodump, noimmutable,av modified,noav_quarantined,nonounlink,nooffline,nosparse} # chmod S+cR file.3 # ls -l/v file.3 -r--r--r-- 1 root root 206695 Jul 20 14:59 file.3 {archive,nohidden,readonly,nosystem,noappendonly,nonodump,noimmutable, av_modified,noav_quarantined,nonounlink,nooffline,nosparse}
これらの属性の一部は、Oracle Solaris SMB 環境だけで適用されます。
ファイルのすべての属性をクリアできます。例:
# chmod S-a file.3 # ls -l/v file.3 -r--r--r-- 1 root root 206695 Jul 20 14:59 file.3 {noarchive,nohidden,noreadonly,nosystem,noappendonly,nonodump, noimmutable,noav_modified,noav_quarantined,nonounlink,nooffline,nosparse}