ファイル作成時のパーミッションを設定する方法・umaskコマンド †ファイルやディレクトリを新規作成したときに設定されるパーミッションの値を指定する方法を以下に記します。 umaskコマンドで現在のマスク値を確認する †umaskコマンドを引数なしで実行し、ファイルやディレクトリを新規作成したときのマスク値を確認してみます。 CentOS5で実行 †CentOS5でumaskコマンドを実行したときの出力です。 $ umask 0002 Ubuntu12.04で実行 †Ubuntu12.04でumaskコマンドを実行したときの出力です。 $ umask 0002 umaskの動作確認 †上記で調べたumaskのデフォルト値でtouchコマンドを使用して新規にファイルを作成してみます。 $ touch umasktest1 $ ls -l umasktest1 -rw-rw-r-- 1 sakura sakura 0 12月 18 20:03 umasktest1 umaskは、666(-rw-rw-rw-)からumaskで設定された値を引きます。 umaskを設定して新規作成時は600にになるようにする †umaskを設定してオーナーのみ、読み書き可能とするには、以下のようにします。 umask 0066 実際に実行した結果を以下に記します。 $ umask 0066 $ umask 0066 $ touch umasktest2 $ ls -l umasktest2 -rw------- 1 sakura sakura 0 12月 18 20:09 umasktest2 上記の動作は、666 - 66となるため、600(-rw------)となります。 umaskの指定を常に反映したい †.bashrcや.bash_profileにumaskの設定を記述しておけば、ユーザがログインするとumaskが有効になります。 |