• 締切済み

umaskの初期値について

OSver 5.8 umaskの設定値をディフォルトの「022」を「027」へ変更したいのですが、 umask 027 を実行してもOSをリブートすると、元の「022」に戻ってしまいます。 各ユーザーの環境ファイル(.cshrc等)へ追記する方法以外に umaskのそもそもの初期値を変更する方法は無いでしょうか?(umaskの初期値を指定している設定ファイル等を教えていただけると助かります)

みんなの回答

  • gaktank
  • ベストアンサー率65% (23/35)
回答No.3

/etc/default/ 配下ではなくて、/etc 直下のファイルでデフォルトのumaskが設定されていませんか? /etc/.login(cshユーザ) /etc/profile(shユーザ) OSインストール直後の状態では、上記ファイルに「umask 022」が設定されています。

namna_mnam
質問者

お礼

回答ありがとうございます。 御指摘のファイルを見てみましたが、 該当する箇所は無いでした。。。スミマセンm(._.)m namna_mnam# grep 22 /etc/.login /etc/profile namna_mnam# grep -i mask /etc/.login /etc/profile namna_mnam# umask 22 namna_mnam# (なお起動シェルは kshですが、それ用の環境ファイルは無いでした)

全文を見る
すると、全ての回答が全文表示されます。
  • kuma-ku
  • ベストアンサー率54% (1558/2845)
回答No.2

ログイン時ユーザのホームにある[~/.cshrc][~/.profile]で指定していないですか? CMASKでも指定し、[~/.cshrc][~/.profile]でも指定しているとか。。。

namna_mnam
質問者

お礼

はい・・特に設定はありませんでした。 <<確認ログ>> namna_mna# grep -i mask ~/.* namna_mna# grep 22 ~/.* namna_mna# また、/etc/default/ 配下のファイルも見たのですが namna_mna# grep -i mask /etc/default/* /etc/default/dhcpagent:# By default, a parameter request list requesting a subnet mask (1), /etc/default/init:# TZ, LANG, CMASK, or any of the LC_* environment variables. /etc/default/init:CMASK=027 /etc/default/login:# UMASK sets the initial shell file creation mode mask. See umask(1). /etc/default/login:#UMASK=022 /etc/default/login.old:# UMASK sets the initial shell file creation mode mask. See umask(1). /etc/default/login.old:#UMASK=022 /etc/default/nfslogd:# Use UMASK for the creation of logs and file handle mapping tables. /etc/default/nfslogd:# UMASK=0137 namna_mna# namna_mna# grep 22 /etc/default/* /etc/default/login:#UMASK=022 /etc/default/login.old:#UMASK=022 namna_mna# 特に該当する箇所は無さそうでした。 umaskはどこから初期値を持ってきているのだろうか・・・ もし解決したら、必ずご報告させていただきます。

全文を見る
すると、全ての回答が全文表示されます。
  • kuma-ku
  • ベストアンサー率54% (1558/2845)
回答No.1

こんにちは このあたりが参考になるかと思います。 試したことは無いので、ごめんなさいです。 "/etc/default/init"の CMASK を変更。 --------------------------------- init 詳細は、init(1M) のマニュアルページの「/etc/default/init」の節を参照してください。 このファイルで参照される CMASK 変数の説明は、マニュアルページには記載されていません。CMASK は init が使用する umask で、すべてのプロセスが init プロセスから継承します。設定されていないと、init は、カーネルから取得したデフォルトの umask を使用します。init プロセスは、CMASK の設定に関係なく、常に、ファイルを作成する前に umask として 022 を適用しようとします。このファイルのすべての値は、シングルユーザーのブート要求に応じて init が呼び出すシェルの環境に置かれます。さらに、init プロセスは、自身が /etc/inittab ファイルから起動または再起動するすべてのコマンドにこれらの値を渡します。

参考URL:
http://docs.sun.com/app/docs/doc/806-7088/6jg035p1q?l=ja&a=view
namna_mnam
質問者

お礼

早急な回答 ありがとうございます。 しかしながら御指摘頂いた箇所の更新⇒OSリブートを行っても、umaskの初期値へは反映されませんでした。 << OSリブート後の確認 >> namn_mna# tail -1 /etc/default/init CMASK=027 namn_mna# umask 22 namn_mna# grep 022 ~/.* namn_mna# grep 022 /etc/default/* /etc/default/login:#UMASK=022 /etc/default/login.old:#UMASK=022 namn_mna# 他の要因があるのかも知れないので 調査を継続してみます。 ありがとうございました。

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

関連するQ&A

  • OSXでのumaskについて

    ファイルやフォルダのデフォルトのアクセス権を変更したく、ターミナルよりumaskを設定してみたのですが、何も変わりません。なぜでしょうか? 例えば、0000のマスク値を設定した場合、新規フォルダ作成時には777に新規書類の場合は666になると思うのですが、デフォルトの0022と同様のアクセス権となります。ターミナルの自分のユーザーの場所から実行しており、数値自体は確かに変更されています。(OS10.3.9と10.5で試しました) 初歩的なことでしたら、申し訳ありませんが、よろしくお願いします。

    • ベストアンサー
    • Mac
  • Linuxのumask値について

    Linuxのumask値の設定について質問します。 「-rw-r-----」 ファイルのアクセス権が上記の時、umask値を計算する問題。 これはどのような計算でumaskがわかりますか? 読み取り(r)=4 書き込み(w)=2 実行(x)=1 でアクセス権を数値で表すと640になります。 基本的な計算方法はわかっていますが、umask値が026ではなく、027になるのがなぜなのかわかりません。 それともこのアクセス権のみ特別のようなものとして解釈するのがはやいでしょうか?

  • umask757をvar/www/htmlへ適用?

    ■環境 ・Cent OS ■状況 ・指定ディレクトリのパーミッションを、757にしないと期待した動作になりません ※「ファイルアップロード」処理のファイルを配置しています ■現状 ・sudo chmod -R 757でディレクトリを個別指定しています ■質問 ・ディレクトリ単位で指定するのが面倒なので、「var/www/html」全体に「chmod -R 757」を適用しても良いでしょうか? ・セキュリティ的に問題ない? ・umaskで指定した方が良いでしょうか? ・その場合、757にするにはどう書けば良いでしょうか? ・757でしか動作しないそもそもの状況を改善することは可能?(例えば666とかに) ・757でしか動作しないものは、所有者とか所有グループを変更しても、757でしか動作しないものなのでしょうか?

  • Inet で FTP のファイル送信したときのファイル属性

    Inet の FTP でサーバ(UNIX)へファイルを送信すると、 ファイル属性が(rw_r__r__)になります。 FFFTPを使っても同じなので、Inetの問題ではないのですが。 サーバ側の(.cshrc)ファイルでは、umaskは(002)です。 それなら、(rw_rw_r__)になっていいと思うのですが、どなたかどこに設定すればいいのか、ご存知でしたらお教えください。

  • LINUX,UNIX機で初期化設定ファイルのないマシンにプロンプトの設定

    こんにちは LINUX,UNIX機で初期化設定ファイルのないマシンにもプロンプトの設定を行いたく思っています。 現在、あるユーザーのもとには.bashrcなどの初期化設定ファイルがあるのですが、その他のユーザーには初期化設定ファイルがないため、プロンプトの設定変更が特定のユーザー以外出来ません。 こういうケースでもプロンプトの変更を全てのユーザーで可能なのでしょうか? ご回答いただければと思います。 よろしくお願いいたします。

  • ファイルのデフォルトパーミッション設定が出来ません

    Red Hat Linux 8.0を使っているLinux入門者です。 デフォルトパーミッションを、 所有者以外の読み書きが出来ない様にしたいのですが、 umaskの設定がうまくいかずに困っております(T.T) ~/.bash_profile に「umask 066」と 下記サイトに出ている通りに追記したのですが、 ( http://www.atmarkit.co.jp/flinux/rensai/security02/security02c.html ) X(GNOME)のターミナル上で設定が全く反映されないのです。 テキストモードや仮想コンソールでは 確かに設定が適用になっているのですが.....。 あと、suを実行後に確認すると何故かちゃんとなっています。 /etc/profile の方もいじってみましたが駄目でした。 ちょっと分かり辛いかもしれませんが、大体下記の様な状況です。 ~/.bash_profileを編集後、rootでログイン  × Xのターミナルでumaskコマンドで設定を確認  ○ umask 066とコマンドラインから実行、確認  × su を実行して確認  ○ su - を実行して確認  × シェルスクリプトにumask 066と書いて実行、確認  ○ Ctrl+Alt+F1で仮想コンソールに切り替え、確認  ○ テキストログイン後、umaskコマンドで確認 その他のユーザーでログイン  ○ su - ユーザー名 を実行して確認    その他はrootと同じ ○=設定が反映されている ×=変化無し  という感じで全くのお手上げ状態なのです。 何か考えられる原因はありますでしょうか? 何分、Linux初心者で基本的な事が抜けているのかもしれません。 お気づきの点がございましたら、 どんな事でも結構ですのでご指摘頂ければと思います。 情報が足りない部分があれば補足致します。 どうか宜しくお願いします。

  • ネットワーク設定を初期化・初期RTOについて

    皆さま、度々お世話になっています。 さて、ネットワーク設定を初期化して再起動しました。パラメーターは初期化が成功しましたが、初期RTOの数値が1000で、初期値の3000に変更ができません。どのようなコマンドを実行すれば変更できるでしょうか? どうか、よろしくお願いいたします。

  • .cshrc ファイルについて

    新しくUNIXのパソコンを引き継いだのですが、分からない事だらけで困っています。 どうか、教えて下さい。 聞きたいことは 1. ホームディレクトリ下に.cshrcファイルがないけど、作ったほうが良いのか? 2. 作成する場合はどの様にすればよいのか? 3. rootユーザにも『passは通し』た方が良いのか? 等です。 状況などを 説明をさせて頂きます。 『intelフォートラン コンパイラ』をインストールする必要があり、インストールまでは出来た(と思う)のですが、 手引きのページに、以下の記述がありました。 > この後、.cshrc等にpathの設定をする。設定の書き方の例はデフォルトの/opt/intel/fc/9.0にインストールした場合、 > /opt/intel/fc/9.0/bin/ifortvars.csh や > /opt/intel/fc/9.0/bin/ifortvars.sh > に記載されているので、参照すること。 > .cshrcの場合、このifortvars.cshに記載されているのをそのまま.cshrcに加えれば良い。 > 同様に、 > /opt/intel/idb/9.0/bin/idbvars.csh > /opt/intel/idb/9.0/bin/idbvars.sh > の内容を加えることで、デバッガーのpathも通しておく。 .cshrcファイルがどの様な物なのかも分からなく、調べるうちにそのユーザの設定ファイルである事は分かりました。 それで調べたところ、ログインしているユーザーのホームディレクトリには.cshrcファイルがありません。 su に切り替えてfind コマンドで検索したところ、rootフォルダの下に同名のものが1つありました。 また別のページに > 『今回紹介する技は、csh (C シェル、ECC の UNIX 環境でのデフォルトのシェル) の設定ファイルの編集です。 > これを編集するだけで、シェルの挙動を変更して日頃の生活を快適にすることができます。 > ただし、下手をするとログインできなくなるので、注意深く実行してください。 』 > 『.cshrc はホームディレクトリにおいておくものです。もしなければ、作ってください。..』 なんて記述もあり、これから毎日使っていくものなので、作くるべきかな?と思っているのですが、 どのようにしたらいいのか分かりません。 rootフォルダ下の.cshrcファイルをコピーしてきたら良いのでしょうか? 環境は、2台のPCをLANで繋いでおり、それぞれ CentOS が入っています。 普段はマスターでログインし、スレーブはあまり使ってません。 マスターは部屋のサーバーとなっているようです。 ログイン出来なくなるのがとても怖いのです。 自分だけのユーザーを作ったほうが良いのでしょうか? 色々調べてはいたのですが、確信を持てないので質問させて頂きました。(Linux は種類が多いので..) どうか教えて下さい。よろしくお願いいたします。

  • 【ファイル名の¥「使用者名¥」】初期設定を変えたいのですが・・

    WINDOWS XPの(1)ユーザー設定(2)コントロールパネルのユーザー名表示(3)ファイル名に表示される記号→例えば「SAOI2NIDN\ユーザー名¥SOIFNSW」 このうち、(1)と(2)は、初期設定(DELLから郵送されてきたときには、強制的に私の本名で設定されていた)から私のアダナへと変更できました。 ところが! その後おとしたファイルの記号を見てビックリ!無作為のアルファベットの羅列の中央に、「¥」でかこまれた文字は、まさしく漢字による私の本名!これにはガクゼンとしました。 そこで、 かかる「¥」でかこまれた初期設定も、変更したいのです。そのやり方を教えてください。お願いします。

  • ユーザー追加時に一度だけ実行するファイル

    ubuntuでユーザー追加時に一度だけシェルスクリプトを実行させたいのですが、 なにか方法はありますか? 新規ユーザーが追加されたときに設定ファイルに追記するのが目的なのですが。。 よろしくお願いします。

このQ&Aのポイント
  • 後ろのカバーが閉じていることを確認してくださいというエラーメッセージが出続ける。購入したばかりのプリンタに起こったトラブル。
  • パソコンやスマートフォンのOS、接続方法、関連するソフト・アプリ、電話回線の種類についての質問。
  • 問題のあるプリンタの製品名を記入してください。
回答を見る