su rootのumask設定

su rootのumask設定

私のユーザーアカウントでumaskmyに設定します。しかし、rootになる方法(例えば、ttyからrootとして直接ログインしたり、sudoやsuを使って)に関係なく、rootにaを使うようにしたいと思います。 rootでttyにログインするとこれがわかりますので問題ありません。設定したので022.bashrcumask077077sudo/etc/sudoers

Defaults umask = 0022
Defaults umask_override

わかりました077、またとても良いです。の場合はsu/root/.bashrcで設定できます。

umask 022

私はそれを理解していますumaskが、077それが正しい方法だとは確信していません。

どのように設定しますかumasksu root

潜在的に関連性があるのは/etc/login.defs私のことです。

UMASK           077
USERGROUPS_ENAB yes

ベストアンサー1

この回答はbashに固有のものであり、他のシェルにも同様の機能がありますが、あなたの回答に記載されているので、.bashrcBashを使用しているとします。

あなたが経験しているのは、シェルがインタラクティブシェルまたはログインシェルとして呼び出される可能性があることです。

  • bash -l- ログイン
  • bash -i- インタラクティブ

Bashのマニュアルページの「INVOCATION」セクションを見ると、次の2つのコメントが表示されます。

  • ログイン

    ログインシェルの引数を持たない最初の文字は、-または--loginオプションで始まります。

  • インタラクティブ

    対話式シェルは、オプションではなく引数を取らず、-cオプションなしで標準入力とエラーが端末に接続されているか(isatty(3)によって決まります)、-iオプションで始まるシェルです。
    bashが対話型の場合、PS1が設定され、$ -にiが含まれているため、シェルスクリプトまたは起動ファイルがこの状態をテストできます。

対話型およびログインシェルは、次の順序で構成ファイルを読み取ります。まず、次のようにします。

  1. /etc/設定ファイル

以下は、次の順序の1つです(最初に見つかった順序)。

  1. ~/.bash_profile
  2. ~/.bash_login
  3. ~/.プロフィール

インタラクティブシェル(ログインシェルではない)~/.bashrcは追加の設定ファイルを読みません/etc/bashrc。彼らは、~/.bashrc次の理由で文書全体でこのセクションを読んでいます。

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

それでは、umaskはどうですか?

2種類のシェルから読み取ることができるようにするには、umask2種類のシェル呼び出しで読み取ることができる上記のファイルの1つにそのファイルを含める必要があります/root/.bash_profile

おすすめ記事