【Linux初心者向け】スティッキービットとは?と設定方法

スティッキービット
  • このエントリーをはてなブックマークに追加
  • Pocket

「スティッキービット」とはUnixLikeSystem、Linuxなどで利用できる特殊なパーミッションの一つである。

ディレクトリに適応することにより効能を発揮する。

スティッキービットとは?

スティッキービットが設定されたディレクトリは、すべてのユーザがファイルおよびディレクトリを作成書き込みを行えるようになる。

しかし、作成したファイルやディレクトリを削除出来るのは所有者だけとなるというパーミッションだ。

例外としてrootでの削除はできる。

SUIDやSGIDと比較すると、特に極端な特権的動作ではないが、適応されるディレクトリは「/tmp」など、基本的に誰でも書きこめるようになっている点に注意してほしい。

パーミッションのマークは「t」であり、その他のユーザのパーミッションに適応される。

実際にみてみよう

$ ls -ld /tmp

結果をみてみると、その他のユーザのパーミッション情報のフラグに「t」という文字がみえる。これがスティッキービットとなる。

試しにパーミッションが777の状態のファイルを作成して他のユーザから削除できるかどうかを確かめてみよう。

実験用ユーザの作成

# useradd testuser

一応のパスワードを設定

# passwd testuser

「testuser」へ変身

# su testuser

「testuser」となったためプロンプトは$になる。

$ cd /tmp

ファイル作成

$ touch testfile

模擬ファイルのパーミッションを設定、誰でも削除できるように777を指定

$ chmod 777 testfile

「testuser」から戻る

$ exit

rootから離脱

# exit

ファイルを消そうとしてみる。

$ rm /tmp/testfile

以下のようなエラーが表示されるはずだ。

ファイルが削除できないことが確認できた。

一応、片付けも載せておく。

$ su -

# cd /tmp/

ファイルを削除

# rm testfile

実験用ユーザを削除

# userdel -r testuser

スティッキービットを設定するには

スティッキービットを設定する機会は少ないかもしれないが、自分でもスティッキービットは設定することが出来る。

$ chmod 1777 <ディレクトリ名>

とすると指定できる。通常のパーミッション数値に1000を足した値となる。

権限を剥奪したい場合は通常通り

$ chmod 777 <ディレクトリ名>

とすればよいが、その状態は危険なので755あたりを指定した方が無難である。なぜならば誰でも無制限に書き込みや削除が行うことができるため、システムの秩序が失われるからである。

その他の指定方法

$ chmod o+u <ディレクトリ名>

としても同じ効果がえられる。

権限を剥奪する場合は

$ chmod o-u <ディレクトリ名>

となる。

スティッキービットの付いたファイルを検索したい場合

# find / -perm -1000

とういうコマンドを発行すると、システム全体のスティッキービットが付与されたファイルやディレクトリが列挙される。

まとめ

このページではスティッキービットについて設定方法や検索方法も含めてご紹介した。

設定することは多くはないだろうが、少なくともどういうパーミッションなのかは掴んでおきたい。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リカレントテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメント

  1. pinknail より:

    LPIC1の勉強中で、参考にさせてもらいました。
    一連の操作結果が載っているとわかりやすいですね。
    自分で試すのは意外と面倒ですので、助かります。

    chmodでのスティッキービット設定は o+u, o-u ではなく、o+t, o-t ではありませんか

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リカレントテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する