• 検索結果がありません。

シェルで umask の管理

第 9 章 ROOT パスワードの変更およびリセット

9.3. 起動時の ROOT パスワードのリセット

10.1.3. シェルで umask の管理

bashkshzshtcsh などのよく使用されるシェルでは、umask は、umask シェルの builtin を使 用して管理されます。シェルから起動したプロセスは、その umask を継承します。

10.1.3.1. 8 進法で現在のマスクの表示進法で現在のマスクの表示

現在の umask 8 進法で表示するには、以下の手順を行います。

手順 手順

次のコマンドを実行します。

$ umask 0022

10.1.3.2. シンボリック表記での現在のマスクの表示シンボリック表記での現在のマスクの表示

現在の umask をシンボリック表示で表示するには、以下の手順を行います。

手順 手順

次のコマンドを実行します。

$ umask -S u=rwx,g=rx,o=rx

10.1.3.3. シェルでシェルで umask とと 8 進法を使用してマスクを設定進法を使用してマスクを設定

8 進法を使用して、現在のシェルセッションに umask を設定するには、次のコマンドを実行します。

手順 手順

次のコマンドを実行します。

$ umask octal_mask

octal_mask を、0 から 7 4 桁以下の数値に置き換えます。3 桁以下の数値を指定すると、頭に 0 が 付いた 4 桁の数値として権限が設定されます。たとえば、入力したコマンドが umask 7 であれば、そ のコマンドの数値は 0007 として解釈されます。

10.1 8 進法で進法で umask の設定の設定

新しいファイルで、オーナーとグループに書き込み権限と実行権限を持たせず、その他のユーザー にはいかなる権限も持たせないようにするには、以下を実行します。

$ umask 0337 または

$ umask 337

10.1.3.4. シェルでシェルで umask とシンボリック表記を使用してマスクの設定とシンボリック表記を使用してマスクの設定

シンボリック表記法を使用して、現在のシェルセッションに umask を設定するには、以下の手順を行 います。

手順 手順

次のコマンドを実行します。

$ umask -S symbolic_mask

10.2 シンボリック表記法でシンボリック表記法で umask の設定の設定

シンボリック表記法を使用して umask 0337 を設定するには、次のコマンドを実行します。

$ umask -S u=r,g=r,o=

10.1.3.5. デフォルトシェルのデフォルトシェルの umask での作業での作業

シェルには、通常、デフォルトの umask が設定されている構成ファイルがあります。bash のデフォル トの設定ファイルは /etc/bashrc です。

本セクションでは、デフォルトの bash umask を表示し、変更する方法、および特定のユーザーに対し てこれを行う方法を説明します。

10.1.3.5.1. デフォルトのデフォルトの bash umask の表示の表示

デフォルトの bash umask を表示するには、以下の手順を行います。

手順 手順

次のコマンドを実行します。

$ grep -i -B 1 umask /etc/bashrc

出力では、umask の設定が、umask コマンドまたは UMASK 変数のいずれかを使用して行わ れていることが示されます。この例では、umask コマンドを使用して、umask 022 に設定 します。

grep -i -B 1 umask /etc/bashrc

# By default, we want umask to get set. This sets it for non-login shell. if [ $UID -gt 199 ] && [ 「id -gn = id -un ]; then

umask 002 else

umask 022

10.1.3.5.2. デフォルトのデフォルトの bash umask の変更の変更

bashのデフォルト umask を変更するには、以下の手順を行います。

手順 手順

umask コマンドの呼び出し、または /etc/bashrc への UMASK 変数の割り当てを、umask に 必要な値に変更します。この例では、デフォルトの umask 0227 に変更します。

if [ $UID -gt 199 ] && [ 「id -gn = id -un ]; then umask 002

else

umask 227

10.1.3.5.3. 特定ユーザーのデフォルトの特定ユーザーのデフォルトの bash umask の変更の変更

デフォルトでは、新規ユーザーのデフォルトの bash umask は、/etc/bashrc に定義したものに設定 されます。

特定ユーザーの bash umask を変更するには、以下の手順に従います。

手順 手順

そのユーザーの $HOME/.bashrc ファイルで、umask コマンドへの呼び出しを追加します。た とえば、ユーザー john bash umask 0227 に変更するには、次のコマンドを実行しま す。

john@server ~]$ echo 'umask 227' >> /home/john/.bashrc

10.1.3.6. 新規作成されたホームディレクトリーのデフォルト権限設定新規作成されたホームディレクトリーのデフォルト権限設定

ユーザーのホームディレクトリーの作成に使用するパーミッションを変更するには、以下の手順に従い ます。

手順 手順

/etc/login.defs ファイルで UMASK 変数を変更します。

# The permission mask is initialized to this value. If not specified,

# the permission mask will be initialized to 022.

UMASK 077

master.adoc - include::assemblies/assembly_managing-the-umask.adoc[leveloffset=+1] に解決されてい ないディレクティブ

Unresolved directive in master.adoc - include::assemblies/assembly_managing-access-control-list.adoc[leveloffset=+1]

11 CHRONY スイートを使用した NTP の設定