• 締切済み

chmod の -t は何を意味しているのですか?

chmod の -t は何を意味しているのですか?

みんなの回答

  • Liqueur
  • ベストアンサー率51% (52/101)
回答No.5

パーミッションを変更する際の、Stickyビットを外す オプションです。一般に、"Stickyビットを立てる"と 表現されます。chmodコマンドによるアクセス権の 変更は、記号によるモード指定と数値によるオクタル 指定のどちらでも指定が出来るようになっています。 モード指定では現在のアクセス権に加える・削除すると いった相対指定となり、オクタルモードではアクセス権 をすべて指定する絶対指定となります。-tで削除、逆に +tで追加することが出来ます。 Stickyビットは、誰もが書き込めるけれど、書いた ものは書いた本人か、管理者(root)でしか削除できない といったディレクトリを設定するのに便利です。 設定されると、パーミッション表示の一番右にtが ついているとおもいます(デフォルトで設定されていると 思いますので、試しに"ls -ld /tmp"として確認して みてください)。ちなみに少々ややこしい話ですが、 ディレクトリではなくファイルにStickyビットを 立てた場合、上記のような動作ではなく そのファイルをメモリ上に置いて読み込みを早くする (=常駐)動作になります。 Stickyビットの設定されていないディレクトリでは、 内部のファイルに対しアクセス権の無いユーザで あってもファイルがあるディレクトリに対する 書き込み権があればファイルを削除することが出来て しまいますから、もし自分が管理しているディレクトリ 外で作業を行っている(遠隔地にある共有ディレクトリ など)であればchattrコマンドを使用して、ファイルの 属性を変更することをおすすめします(ただしNFS マウント時には属性は有効ですが、変更は出来ません)。

全文を見る
すると、全ての回答が全文表示されます。
  • entree
  • ベストアンサー率55% (405/735)
回答No.4

> chmod の -t は何を意味しているのですか? もうちょっと分かりやすく質問していただきたいものですね。これでは chmod の -t オプションについて質問しているようにしか思えません。chmod には -t オプションはありません。 例えば、「chmod o-t directory の -t は何を意味しているのですか?」と書くだけでもニュアンスは変わってきます。 さて、t がスティッキービットを表すことは調べられたようなので既にご存知かもしれませんが、削除する際に所有者しか削除や移動ができないようにするためのフラグです。なので、スティッキービットはディレクトリのその他ユーザに対してのみ設定することができます。 普通にLinuxをインストールすると、/tmp、/var/tmp はパーミッションが 777 でスティッキービットが立てられています (drwxrwxrwt)。 スティッキービットは chmod o-t directory ではずすこともできますが、 chmod 0777 directory としてもはずすことができます。

全文を見る
すると、全ての回答が全文表示されます。
noname#39234
noname#39234
回答No.3

manコマンドかWeb検索を使って マニュアル参照すると書いてあるよ。 ただ、この質問文だけだと -fを見間違っているのか -tを使いたいのか あるいはマニュアルで理解できなかったのか 事情がわかんないから 何を聞いているのかわかんないっていえばわかんない。 実際+tに比べれば-tはあんまり使わないと思う。 ちなみに、Googleで検索するときは "-t"と括って投げないと通らない。要注意。

全文を見る
すると、全ての回答が全文表示されます。
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

とりあえずPOSIXの標準ではないですが お使いのlinuxディストリビューションのchmodに ついている拡張オプションかと。 -tは+tの無効化つまり、仕様としてはスティッキ ビットをはずすことを指します。 +tを指定したファイルをls -la するとパーミッション のケツにt(T)がつきますよね?その指定です。 スティッキビットとは所有者のみがファイル名 の変更,削除を行えるパーミッションですが わからなければ、おそらく使いことはないと思うので 覚える必要はありません。

ubyjygfvh
質問者

お礼

ありがとうございます。 スティッキビット確認できました。

全文を見る
すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

何を聞いているのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • chmod()で所有者が変わってしまう

    Perlでは新規ファイルを作成してchmod()で属性を変更しても所有者は変わりませんでした。 FFFTPでは、 □/public_html/testdir 名前      属性   所有者 logwrite.cgi  705   1234 log200402.log  700   1234 となるのですが、PHPではFFFTPが、 □/public_html/testdir 名前      属性   所有者 logwrite.php  705   1234 log200402.log  700   99 のように、所有者が変わってしまうのです。 PerlからPHPの移植がうまくいっていないのです。 logwrite.phpのその処理の部分は $fp = fopen($logfile, "w"); fwrite($fp, $logdata); fclose($fp); chmod($logfile, 0700); です。このあとPHPで所有者を99から1234に変更できれば よいのですが、方法が分かりません。 そうでなくとも、所有者が1234のままで chmod($logfile, 0700);が完了できれば問題ありません。 Perlではchmod()で所有者が変わらなかったのに、 PHPではchmod()によって所有者が変わってしまって 元の所有者に戻せなくて困っています。

    • 締切済み
    • PHP
  • opensuse11.2 , chmod お願いします。

    # 初心者です。opensuse 11.2 です。よろしく、お願いいたします。 # 以下のような chmod.pl を フォルダ 4c がある フォルダに置きま した。 # そして、ターミナルKonsoleで 、 perl -T chmod.pl としました。 # すると、 # フォルダ 4c の中に フォルダ10個 4c01~4c10 を作るのは、うまくいきました。 for (my $i = 1; $i < 11; $i++){ mkdir ("4c/4c0$i", 777); # 次に、フォルダ 4c の中にある フォルダ aa4 の中にあるファイル # 100個 1001.cgi~1100.cgi を 4c01~4c10 へコピーすることも、できました。 for (my $j = 1001; $j < 1100; $j++){ copy "4c/aa4/$j.cgi", "4c/4c0$i/$j.cgi" or die $!; } # でも、次に、 4c01~4c10 のすべての cgiファイルを # パーミッション 755 にしようとしたところ。 for (my $k = 1; $k < 10; $i++){ chmod(0755,"4c/4c0$i/*.cgi"); } } # だめでした。エラーの表示はでません。 #どうしたら、よいかお教えください。お願いいたします。

    • ベストアンサー
    • Perl
  • \t\t の意味

    print "\t\t<TR>\n"; の \t\t の意味はなんですか、 宜しくお願いします。

    • ベストアンサー
    • CGI
  • chmodについて。パーミッションを、動的に変更したい。

    perlのchmod関数についてです。 パーミッションの数値を、パラメータによって動的に変更することができないでしょうか? chmod $permission,$filename; とする場合、あらかじめ $permission = $QUERY{'permission'}; #パラメータで渡す。 のように変数に代入しておくと、別の数値に変更されてしまいます。 よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • chmod(): Operation not pe

    PHPで、hogeディレクトリを777へ変更したいのですが chmod("./hoge", 0777); とすると、下記エラーになります Warning: chmod(): Operation not permitted どうしたら良いでしょうか?

    • ベストアンサー
    • PHP
  •  t の意味

    チャットで「t」というのを打っている人がいましたがどういう意味なのでしょうか。

  • “chmod”のカタカナ読みを教えて下さい。

    “chmod”のカタカナ読みを教えて下さい。 Perlの参考書を2冊もっていますが、いずれもカタカタ読みが記されていないので、なんと発音して読めばいいのか困っています。 レベルの低い質問で恥ずかしい限りですが、どなたか教えていただけると大変助かります。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • chmod 教えてください

    PHP素人です。 使用しているサーバーの制限で、アップロードした画像のパーミッションが600になってしまい、画像が見れません。chmodを使用すると解決できますとのことだったので、色々調べてchmod{"$dir/$fname",0604}と入れてみたのですが、場所が違うのか、構文の書き方が違うのか、うまくいきません。 根本的なところから間違っているのかもしれませんが、どうかご教授よろしくお願いします。 $mes = ''; if(!empty($_POST['dir'])){ $dir = EXTRACT_PATH.'/'.$lid.'/thumbnail/'.$myts->stripSlashesGPC($_POST['dir']); if(!is_dir($dir) && !mkdir($dir, 0777)){ $mes = _ND_DIR_FALSE;} }else{ $mes = _ND_CONFIG_INPUTDIR;} if(!empty($mes)) redirect_header(MOD_URL.'/config.php?lid='.$lid.'&mode=thumb', 1, $mes); if(is_uploaded_file($_FILES['userfile']['tmp_name'])){ $fname = $_FILES['userfile']['name']; $tmp_name = $_FILES['userfile']['tmp_name']; if(preg_match("/.*(\.gif)$/i", $fname)){ if(move_uploaded_file($tmp_name, $dir.'/'.$fname)) { $mes = _ND_CONFIG_IMGUPOK; }else{ $mes = _ND_CONFIG_IMGUPNG;} }else{ $mes = _ND_CONFIG_UPSUF;} }else{ $mes = _ND_CONFIG_NFILESELECT;} redirect_header(MOD_URL.'/config.php?lid='.$lid.'&mode=thumb', 1, $mes); break;

    • ベストアンサー
    • PHP
  • tの意味

    設計図面で、木材等の厚みや幅、奥行きを表す単位として「t50(=50mm)」とか表記するらしいのですが、tの意味や語源を知っている方、教えてください。

  • chmod ファイル属性について教えてください

    あるディレクトリーで ls -al を行ったところ -rw-r--r--+ 1 root root 34759 3月 7 06:17 2012 httpd.conf と言った表示見つけました。 上記の場合だと、chmod 644 だとは思うのですが、最後の+は、何を意味しているのでしょうか? 気になって他のディレクトリーも見てみると -rw-r--r--@ 1 root root 34759 3月 7 06:17 2012 **** みたいな、@という表記もありました。 ファイル属性の何かだとは思うのですが、分かる方が居られましたらご教授頂けないでしょうか? よろしくお願いいたします

このQ&Aのポイント
  • Linux PCへのブラザー製プリンタドライバのインストール方法をご教示ください。
  • RedHawk Linux Version4.1で利用可能なHL-L8360CDWのドライバソフトはありますか?
  • 有線LAN接続でブラザー製プリンタをLinux PCに接続する方法を教えてください。
回答を見る