Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Umaskのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Umask
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:セキュリティ]] [[Category:ファイルシステム]] [[en:Umask]] [[es:Umask]] {{Related articles start}} {{Related|ファイルのパーミッションと属性}} {{Related articles end}} ''umask'' ユーティリティはファイル作成モードマスクを制御するのに使われます。モードマスクは新しく作成されたファイルのファイルパーミッションの初期値を決定します。このユーティリティの挙動は [[wikipedia:ja:POSIX|POSIX]] によって仕様化されており、[http://pubs.opengroup.org/onlinepubs/9699919799/utilities/umask.html POSIX のプログラマーマニュアル] に解説があります。''umask'' はシェルの実行環境に影響を与えるため、基本的にシェルのビルトインコマンドとして実装されます。 == モードマスクの意味 == モードマスクには新しく作成されたファイルに設定される'''べきではない'''パーミッションビットが記述されます。つまり新しく作成されたファイルには[[Wikipedia:ja:否定|全く逆]]のパーミッションビットが設定されます。マスクで何らかのビットが {{ic|1}} に設定されていれば、新しく作成したファイルの該当パーミッションは無効になります。マスクはパーミッションビットを取り除くフィルターとして機能し、ファイルのデフォルト権限を設定するのに役立ちます。 新しく作成されたファイルに設定されるパーミッションビットの値は論理[[wikipedia:Material nonimplication|非含意]] (付加) を使って計算され、論理記号で表現することができます: R: (D & (~M)) つまり、最終的なパーミッション {{ic|R}} はデフォルトのパーミッション {{ic|D}} の[[wikipedia:ja:論理積|論理積]]とファイル作成時のモードマスク {{ic|M}} の[[wikipedia:ja:ビット演算|論理否定]]が合わさった結果になります。 {{Note| * Linux ではファイルを作成するときに実行権限を付与することはできません。実際、ディレクトリ作成時のデフォルトのパーミッションは 777 ですが、ファイルの場合は 666 となっています。 * Linux では、マスクのファイルパーミッションビットだけが使われます。つまり 022 マスクは 0022 と同じです [http://man7.org/linux/man-pages/man2/umask.2.html]。 }} 例えば、ファイル作成モードマスクが 027 だとします。それぞれの数字は以下を表します: * 0 は新しく作成したファイルに設定されない ''user'' パーミッションビットです。 * 2 は新しく作成したファイルに設定されない ''group'' パーミッションビットです。 * 7 は新しく作成したファイルに設定されない ''other'' パーミッションビットです。 新しく作成したファイルの所有者がユーザー {{ic|User1}} で所有グループがグループ {{ic|Group1}} の場合、下にある表と照合すれば、{{ic|User1}} は新しく作成されたファイルに対して全ての権限を得ることになり (8進数で7)、{{ic|Group1}} グループの他のユーザーは書き込み権限がなく (8進数で5)、その他のユーザーは新しく作成したファイルを扱う権限が全くないことがわかります (8進数で0)。つまり、027 マスクで作成されたファイルのパーミッションは 750 になります。 {| class="wikitable" |+ ! 8進数 !! バイナリ !! 意味 |- | 0 || 000 || 権限なし |- | 1 || 001 || 実行のみ |- | 2 || 010 || 書き込みのみ |- | 3 || 011 || 書き込みと実行 |- | 4 || 100 || 読み込みのみ |- | 5 || 101 || 読み込みと実行 |- | 6 || 110 || 読み書き |- | 7 || 111 || 読み書き実行 |} == 現在のマスクの値を表示 == 現在のマスクを表示するには、何も引数を付けずに ''umask'' を実行します。デフォルトの出力スタイルは実装によりますが、基本的に8進数で表示されます: {{hc|$ umask|0027}} POSIX によって標準化されている {{ic|-S}} オプションを使った場合、記号表記でマスクが表示されます。ただし、記号表記の値は8進数の逆の値 (つまり新しく作成したファイルに設定されるパーミッションビット) になるので注意してください: {{hc|$ umask -S|2= u=rwx,g=rx,o= }} == マスクの値を設定 == {{Note|Umask values can be set on a case-by-case basis. For example, desktop users may find the restricted permissions on their home folder ({{ic|chmod 700}}, as applied by {{ic|useradd -m}}) sufficient, as they make all files within unaccessible to other users. Should this not be practical (for example when using [[Apache]]), and public files are stored amongst private ones, then consider restricting the umask instead.}} umask の値は ''umask'' コマンドで設定することができます。モードマスクを指定するのに使う文字列は [[chmod]] でモードを指定する時と同じ構文ルールに従っています (詳しくは [http://pubs.opengroup.org/onlinepubs/9699919799/utilities/chmod.html#tag_20_17_13 POSIX Programmer's Manual] を参照)。 (Arch を含む [https://projects.archlinux.org/svntogit/packages.git/tree/trunk/profile?h=packages/filesystem]) ほとんど Linux ディストリビューションはデフォルト値を {{ic|022}} に設定しています。もしくは {{ic|/etc/profile}} や {{ic|/etc/bashrc}} などのデフォルト[[シェル]]設定ファイルで {{ic|002}} に設定されています。 別の値を設定する必要がある場合、ファイルを直接編集するか (全てのユーザーに影響を与えます)、ユーザーのシェル設定ファイル (例: {{ic|~/.bashrc}}) から ''umask'' を呼び出すようにすることでユーザーの umask だけを変更することができます。ただし、変更は次のログイン時から適用されます。現在のセッション中のみ umask を変更したい場合、''umask'' を実行して設定したい値を入力してください。例えば {{ic|umask 077}} を実行すると新しいファイルに読み書き権限が付与され、新しいフォルダには読み書き実行権限が付与されます。 == 参照 == * POSIX プログラマーマニュアル: ** [http://pubs.opengroup.org/onlinepubs/9699919799/utilities/umask.html umask] ({{ic|umask(1P)}} でも閲覧できます) ** [http://pubs.opengroup.org/onlinepubs/9699919799/utilities/chmod.html#tag_20_17_13 chmod (extended description)] ({{ic|chmod(1P)}} でも閲覧できます) * [[wikipedia:umask]] * [https://blogs.gentoo.org/mgorny/2011/10/18/027-umask-a-compromise-between-security-and-simplicity/ 027 umask: a compromise]
このページで使用されているテンプレート:
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Man
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
Umask
に戻る。
検索
検索
Umaskのソースを表示
話題を追加