ベリラボ

OSS(オープンソースソフトウェア) を主体とした技術検証と小ネタなど

linux tips その他

s-bit(sビット) と sticky bit(スティキービット)

投稿日:

なぜかわかりませんが、Linux(UNIX)環境で、s-bit(sビット) と sticky bit(スティキービット) を混同している場面を多く見かけます。

s-bit もしくは sビット とは、ファイル/ディレクトリの持ち主権限でファイル実行したい場合に付与します。ls コマンドで表示したとき、以下のように 「s」が出力されます。

$ ls -l hellocmd
-rwsrwxr-x 1 tuser tuser 5304 Jul 8 11:16 hellocmd
$

一方、sticky bit(スティキービット)とは、元々実行プログラムをメモリにsticky(貼り付け)する場合に使うもので、古い時代のUNIXでメモリ常駐させたい場合に使うものでした。最近のLinux(UNIX)では、/tmp ディレクトリのように誰でも読み書きできるけど、ファイル/ディレクトリの持ち主だけ削除できるようにしたい場合などに使われます。ls コマンドで表示したい場合、以下のように 「t」が出力されます。

$ ls -al / | grep tmp
drwxrwxrwt 6 root root 4096 Jul 8 11:16 tmp
$

sビット と stickyビットの混同の原因は、lsコマンドで表示したときの 「s」 と 「stickyのs」がゴチャマゼになっているのかもしれませんが、sビット と stickyビットではできることが全然違います。
「stickyビット付ければいいよっ。」と言われて、「chmod +t ~」してみたものの持ち主権限でプログラムが動かないなどないように使い分けはしっかりしましょ。

-linux, tips, その他

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

その rpm いつインストールしたんだっけ?

rpm をいつ入れたかを見たいときは、以下のコマンドで表示できます。 $ rpm -qa –last このコマンド は、rpm をインストールした日付、時刻を新しいものの順番で表示してくれます。 も …

no image

Linux(UNIX)であるディレクトリ配下の全ファイルから検索

あるディレクトリにファイルが複数あって検索するとき、grepコマンドで検索できますが、サブディレクトリがあって階層も不明な場合、どうしたらよいでしょうか? こんなとき、Linuxであれば、以下のように …

no image

CentOS 5.2 で、ntp の同期不具合

CentOS 5.2 にしてから、ntp.nict.jp と時刻同期が取れない(reachがゼロ)の状態となっていました。色々調べてみたら、どうやら IPv6が関係しているのが原因だったみたいです。 …

no image

Linuxで消せないファイルの対応方法

Linux/UNIXで、「*」「?」「-i」等ができていて通常オプションのrmコマンドだと消えないファイルの対処方法をwikiに書きました。是非読んでください。 Linuxで消せないファイルの対応方法

no image

よいプログラム書くために

よいプログラム書くためには、どうすればいいか? を簡単に書きます。 「1から10までの和を求めるプログラムを書け」 という命題にどう書くでしょう。 プログラムを習いたての人に依頼すると、perlだと以 …