スティッキービット

スティッキービットの概要

 スティッキービット(Sticky Bit)は、UnixおよびUnix系オペレーティングシステムで使用されるファイルパーミッションの一部です。通常、ディレクトリに対して設定され、そのディレクトリ内のファイルに対する特殊な権限を与えます。

スティッキービットの設定

 スティッキービットは通常、ディレクトリのパーミッションの最後に設定されます。通常のパーミッションの3つのフィールド(所有者、グループ、その他のユーザー)の後に追加されます。

 ディレクトリにスティッキービットを設定すると、そのディレクトリ内のファイルを削除する権限が制限され、ファイルの所有者でないユーザーが他のユーザーのファイルを削除できなくなります。

スティッキービットの意義

 スティッキービットが設定されたディレクトリでは、通常、一般ユーザーが他のユーザーのファイルを削除することができなくなります。

 これは、一時ディレクトリや共有ディレクトリなどで特に有用です。例えば、/tmpディレクトリはスティッキービットが設定されており、各ユーザーが自分のファイル以外を削除できないようになっています。

スティッキービットの設定と表示

 スティッキービットを設定するには、chmodコマンドを使用します。スティッキービットは数値で表現され、通常は1で表されます。例えば、次のようにしてスティッキービットを設定できます。

# chmod +t directory

 スティッキービットが設定されているかどうかを確認するには、lsコマンドを使用してディレクトリのリストを表示し、末尾に「t」が表示されるかどうかを確認します。

# ls -ld /tmp
drwxrwxrwt. 59 root root 8192  1月 15 00:44 /tmp

スティッキービットの解除

スティッキービットを解除するには、chmodコマンドを使用して-tオプションを指定します。

# chmod -t directory

まとめ

 スティッキービットは、ディレクトリ内のファイルの削除権限を制限するための特殊なパーミッションであり、一般的にはディレクトリ内でのセキュリティを向上させるために使用されます。