LinuxおよびUNIXオペレーティング・システムでは、すべての新しいファイルがデフォルトのアクセス許可のセットを使用して作成されます。umaskのユーティリティを使用すると、表示またはマスクは、新しく作成されたファイルやディレクトリのパーミッションを決定し、ファイル・モード作成マスクを設定することができます。
MKDIR、タッチ、ティーおよびその他のコマンドは、それを使用する新しいファイルやディレクトリを作成します。
Linuxのパーミッション
先に進む前に、私たちは簡単にLinuxのアクセス許可モデルを記述してみましょう。
Linuxでは、すべてのファイルは、所有者とグループに関連付けられている、ユーザーの3つのカテゴリのアクセス権を割り当てています。
- ファイルの所有者。
- グループメンバー。
- 他のユーザー。
各クラスに適用される権限の3つのタイプがあります。
- 許可をお読みください。
- 書き込みのアクセス許可。
- 許可を実行します。
この概念は、ユーザーが、ファイルを読み込むファイルを書き込むか、ファイルを実行できるようにするかを指定することができます。
ファイルのアクセス権を表示するには、lsコマンドを使用します。
出力:
-rw-r--r-- 1 linuxidc linuxidc 53 Jul 15 03:18 linuxidc.com.py
|[-][-][-] [------] [---]
| | | | | |
| | | | | +-----------> 组
| | | | +-------------------> 所有者
| | | +----------------------------> 其他权限
| | +-------------------------------> 组权限
| +----------------------------------> 所有者权限
+------------------------------------> 文件类型
setuid、setgidをスティッキビット:3つのファイルパーミッションの他の特殊なタイプがあります。
私たちはデジタル表記のファイルのパーミッションを使用している場合、我々は、644の番号を取得します。
- 所有者:
rw-
=4+2+0 = 6
- グループ:
r--
=4+0+0 = 4
- その他:
r--
=4+0+0 = 4
デジタル表記、当局は3または4桁の8進数(0-7)を有することができます。省略は、ファイルのための特別な権限を意味しない場合は、最初の数は、特別な許可を示します。
あなたは、ファイルのアクセス権と所有権を変更する場合は、chmodコマンドのchownコマンドを使用することができます。
umaskを学びます
デフォルトでは、Linuxシステムでは、デフォルトのアクセス権は、ファイルを作成するには、ユーザー、グループ、および他のユーザーのための読み取りおよび書き込みアクセス権を提供する、666であり、デフォルトのディレクトリのパーミッションを作成すると、ユーザーのために、グループと他の人が持っていることを意味し、777であります読み取り、書き込み、および実行権限を。Linuxは、実行権限を持つファイルを作成することはできません。
umaskのユーティリティが作成するために、既定のアクセス許可を変更するために使用することができます。
umaskの唯一の現在のシェル環境に影響を与えます。ほとんどのLinuxディストリビューションでは、デフォルトのシステム全体のumask値はpam_umask.soや/ etc / profileファイルに設定されています。
各ユーザーは、編集ユーザープロファイルシェル、例えば〜/ .bashrcや〜/ .zshrcに応じて異なる値を指定します。(また、umask値をバック実行することにより、目的の値に従ってumaskを、現在のセッションの値を変更することができます。
現在のマスクの値を表示するには、単にパラメータなしで、umaskを入力します。
出力:
0022
第0 umaskのための特別な許可ビット、3桁のみの後に有効な設定値を表します。
私たちは、すでに述べたように、デフォルトのファイルを作成するためのパーミッションとディレクトリは666 777です。パーミッションに新しいファイルを計算するには、umaskの値が既定値から減算されます。
例えば、新しく作成されたファイルやディレクトリ、使用に影響を与えるだろう022をunask計算します:
ファイル:666--022 = 644。所有者は、ファイルの読み取りおよび変更することができます。グループおよびその他のファイルのみを読み取ることができます。
カタログ:777--022 = 755。所有者は、読んディレクトリおよびリストを入力して変更し、ディレクトリ内のファイルを作成または削除することができます。グループなどは、ディレクトリやリストを入力し、ファイルを読むことができます。
また、シンボルはマスク値法を表して表示するには、-Sオプションを使用することができます。
出力:
U = RWX、G = RX、O = RX
そして、数字は異なる方法を示し、表記の値は、新しく作成されたファイルやディレクトリに設定されたアクセス権が含まれています。
設定マスク値
あなたは進表記を使用するか、またはファイル作成マスクを設定することができます。恒久的な変更を行うには、新しいumask値は、このような、〜/ .profileに、〜/ .bashrcや〜/など、すべてのユーザーまたはユーザープロファイルシェルに影響を与えるであろう、グローバルコンフィギュレーションファイルには/ etc / profileファイルで設定します.zshrcには、ユーザーに影響を与えます。ユーザーファイルは、グローバルファイルに優先します。
umaskの値を変更する前に、新しい値が潜在的なセキュリティリスクをもたらすことはありませんことを確認してください。私たちは、022の限界未満を使用することは非常に注意しなければなりません。たとえば、000は誰でも、読み取り、書き込み、およびすべての新しく作成されたファイルに実行権限をしている表すのumask。
私たちは、新しく作成されたファイルやディレクトリのために、より制限された権限を設定し、他の人がディレクトリにcdできないようにして、ファイルを読みたいとします。私たちは、ディレクトリのパーミッションが750と640ファイルですたいです。
umaskの値、マイナスのデフォルト値からのみ必要な権限を計算するには:
umaskを発見:777から750 = 027
umask値所望のデジタル表現方法は、027で表されます。
永久に広い新しい価値体系を設定するには、/ etc / profileファイルを開くには、テキストエディタを使用します。
sudoのナノ/ etc / profileを
そして、変更したり、ファイルの先頭に次の行を追加します。
umaskを027
変更を有効にするには、次のコマンドを実行したり、ログオフやログソース:
ソースは/ etc / profile
新しい設定を確認するために、我々はMKDIRとタッチを使用して、新しいファイルやディレクトリを作成します。
あなたが権限をチェックするためにllコマンドを使用している場合は、私たちが望むように、あなたは、新しい640および750ディレクトリのパーミッションを持つ新しいファイルに気付くでしょう。
出力:
ファイル作成マスクを設定する別の方法はシンボリック表記法です。例えば、umaskのU = RWX、G = RX、O =同一のumask 027。
概要
このガイドでは、新しく作成されたファイルやディレクトリのアクセス権を設定するには、Linuxのパーミッションとumaskコマンドを使用する方法を説明しました。
詳細については、端末内のタイプ男性のumaskのため。
ご質問があれば、以下のメッセージを残してください。