【Ruby3.x】File::umask()メソッドの使い方
umaskメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
umaskメソッドは、UNIX系システムにおいて、新しいファイルやディレクトリが作成される際のデフォルトのアクセス権限を制御するumask値を設定または取得するメソッドです。このumask値は、システム上でファイルやディレクトリが作られた際に、本来付与されるアクセス権限(パーミッション)から、特定の権限を自動的に「マスク(制限)」するための設定です。これにより、意図しないアクセスを防ぎ、セキュリティを強化することができます。
引数なしでumaskメソッドを呼び出すと、現在システムに設定されているumask値を取得し、整数として返します。例えば、umask値が0o022の場合、新しく作成されるファイルやディレクトリは、グループの書き込み権限と、その他のユーザーの書き込み権限が自動的に制限されます。
一方、引数に新しいumask値(通常は8進数表記で指定します)を指定してumaskメソッドを呼び出すと、その値をシステムに設定し、設定前のumask値を返します。この設定は、現在のプロセスのumask値を変更するだけでなく、そのプロセスから作成されるファイルやディレクトリに影響を与えます。システム全体の動作に影響を及ぼす可能性があるため、利用する際にはその影響を十分に理解し、慎重に行うことが推奨されます。
構文(syntax)
1File.umask(0o022)
引数(parameters)
mask = nil
- mask = nil: ファイル作成時のパーミッションマスクを指定する整数。nilを指定すると現在のマスクが返されます。
戻り値(return)
Integer
File.umask は、現在のファイル生成モードマスクを整数で返します。これは、新しく作成されるファイルのパーミッションを決定する際に、システムが自動的に許可する操作を制限する値です。