Linuxのファイル権限の詳細な紹介

Linuxのファイル権限の詳細な紹介

Linux の優れた点は、マルチユーザー、マルチタスク システムにあります。 Linux では通常、ファイルにアクセスできる ID を所有者、グループ、その他の 3 つのカテゴリに分類し、3 つの ID それぞれに読み取り、書き込み、実行の権限が与えられます。

権威の3つのアイデンティティ

ファイルの所有者

ユーザー レベルのファイル権限 (通常はファイルの作成者) は、chown によって変更できます。

ユーザーグループ

ユーザー グループをチームと比較すると、ユーザーはそのメンバーとなり、チーム メンバーはファイルに対して同じ権限を持ちます。ファイルのユーザー グループは chgrp を通じて変更できます。

ユーザー グループの最も便利な使用法の 1 つは、チームとしてリソースを開発する場合です。 2 つのプロジェクト、project1 と project2 が 2 つのチームによって開発されています。プロジェクトにはそれぞれユーザー グループ権限 1 と 2 が割り当てられており、スーパーバイザーは権限 1 と 2 を同時にサポートします。つまり、各アカウントは複数のユーザー グループのサポートを受けることができます。

その他

ファイルの所有者ではなく、ファイルのユーザー グループに属していない、つまりその他すべてのユーザー。

ファイルの権限

定義と見解

ファイル関連の情報を表示するには、サーバー上で次のコマンドを実行します。

[root@iz2zedcscvry6t0psspzswz ~]# ls -al
合計 44
dr-xr-x---。5 root root 4096 9月9日 12:11 。
dr-xr-xr-x. 18 root root 4096 9月9日 12:39 ..
-rw-r--r--. 1 ルート ルート 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 ルート ルート 176 2013年12月29日 .bash_profile
-rw-r--r--. 1 ルート ルート 176 2013年12月29日 .bashrc
drwx------ 3 ルート ルート 4096 2017年10月15日 .cache
-rw-r--r--. 1 ルート ルート 100 2013年12月29日 .cshrc
drwxr-xr-x 2 ルート ルート 4096 2017年10月15日 .pip
-rw-r--r-- 1 ルート ルート 64 2017年10月15日 .pydistutils.cfg
drwx------ 2 ルート ルート 4096 9月 9日 12:11 .ssh
-rw-r--r--. 1 ルート ルート 129 2013年12月29日 .tcshrc

次の例は、各列の意味を示しています。

ファイル権限 接続数 ファイル所有者 ユーザーグループ ファイルサイズ 更新日 ファイル名
drwxr-xr-x 2 ルート ルート 4096 2017年10月15日 .pip

ファイル権限部分では、drwxr-xr-x の最初の文字はファイルの種類を表し、ここでの d はディレクトリを表します。 d = ディレクトリ、- = ファイル、l = リンクファイル。

以下は 3 つのグループです。最初のグループ rwx はファイル所有者の権限を表し、2 番目のグループ rx はユーザー グループの権限を表し、3 番目のグループ rx はその他のユーザーの権限を表します。

サンプル ファイルでは、ファイル所有者の root には読み取り、書き込み、実行の権限があり、root ユーザー グループのユーザーには読み取りと実行の権限があり、その他のユーザーには読み取りと実行の権限があります。

  • ファイルが作成または変更された特定の日付を表示します: ls -al --full-time
  • ls の詳細な使用方法を表示するには、man ls または info ls を実行します。

ファイルの権限を変更する

  • chgrp (グループの変更): ファイルが属するユーザーグループを変更する
  • chown(所有者の変更): ファイルの所有者を変更する
  • chmod (change mod): ファイルの権限を変更する

ユーザーグループの変更

chgrp [-R] ディレクトリ名/ファイル名

# install.logのユーザーグループをusersに変更する
chgrp ユーザーのインストール.log

ファイルの所有者を変更する

chownはファイルが属するユーザーグループを変更することもできます

chown [-R] アカウント名: グループ名 ファイルまたはディレクトリ # install.log のユーザーグループと所有者を root に変更します
chown root:root インストール.log

ファイルの権限の変更

重量配分: r:4 w:2 r:1

# ファイルの権限を -rwxr-xr に設定する

chmod 754 ファイル名

# 実行可能ファイルを他のユーザーが変更できないように設定します chmod 755 filename # -rwxr-xr-x

シンボリックタイプはファイルの権限を変更します

注文身元操作する書類
chmodウゴア+ (追加) - (削除) = (設定) RXファイルまたはディレクトリ

アイデンティティの解釈: u = ユーザー、g = グループ、o = その他、a = すべて

# ファイルに実行権限を持たせるが、元の権限は分からない chmod a+x filename

ディレクトリとファイルの権限の意味

Linux ファイルが実行可能かどうかは、「x」権限によって決定され、ファイル名とは絶対的な関係はありません。

ファイルは実際のデータが保存される場所であり、ディレクトリの主な内容は記録されたファイル名のリストです。

ファイル権限の説明

  • r: ファイルの内容を読み取ることができます
  • w: ファイルの内容を編集できます
  • x: ファイルはシステムによって実行される権限を持っています

ディレクトリ権限の説明

  • r: ディレクトリ内のファイル名データを照会します(lsを使用できます)
  • w: 作成、削除、名前変更、エスケープ
  • x: このディレクトリに入ることはできますか?

権限設定ファイル

  • アカウント情報: /etc/passwd
  • 個人パスワード: /etc/shadow
  • グループ名: /etc/group

【総合事例】

[質問 1.1] 2 つのユーザー グループ (group1 と group2) と 3 人のユーザー (dennis、daniel、abigale) を作成し、最初の 2 人のユーザーを group1 に割り当て、最後の 1 人のユーザーを group2 に割り当てます。

【質問1.2】ユーザーdennisとしてログインし、Hello.javaファイルを作成します。

【質問1.3】ユーザーdanielとしてログインし、/home/dennisディレクトリにアクセスして、そこに作成されたHello.javaファイルを読み書きできるかどうかを確認します。

[質問 1.4] ユーザー dennis としてログインし、ディレクトリ /home/dennis とファイル Hello.java の読み取りおよび書き込み権限を変更します (訂正: ディレクトリ権限を変更するときは、760 ではなく 770 を使用する必要があります。そうしないと、権限が不十分になります)

【質問1.5】繰り返し【質問1.3】

【質問1.6】abigaleのユーザーグループをgroup2からgroup1に変更する

その後、cat /etc/passwdを使用して確認することができます。

【参照】

-groupadd グループ名、Linux でグループを追加

-vi /etc/group、Linuxのすべてのグループ情報を表示し、表示および編集できます

-cat /etc/group、Linux のすべてのグループ情報を表示します。表示のみ可能で編集はできません。

-useradd-g グループ名 ユーザー名、ユーザーを作成するときに、ユーザーが割り当てられるグループを指定します

-vi /etc/passwd、Linuxのすべてのユーザー情報を表示し、表示および編集できます

-cat /etc/passwd、Linuxのすべてのユーザー情報を表示、表示のみ可能、編集は不可

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux のファイル権限をバックアップおよび復元する方法
  • Linux ファイル ディレクトリのデフォルトの権限 (詳細な説明)
  • Linux のファイル権限を変更するコマンド: chmod コマンドの詳細な説明
  • Linux ファイルのアップロード、ファイルまたはディレクトリに Apache 権限を追加する方法
  • Linux でディレクトリ ファイルの権限 (コマンド) を表示および変更する
  • Linux のファイルとディレクトリの権限の詳細な紹介
  • Linuxのファイル権限とディレクトリ管理の詳細な説明
  • Linux でファイルの権限 (所有権) を変更する

<<:  Node の SMS API で検証コード ログインを実装するためのサンプル コード

>>:  Windows Server 2008 R2 に MySQL 5.7.10 をインストールする手順

推薦する

MySQLクエリのパフォーマンスを分析する方法

目次スロークエリの基礎: データ取得の最適化データベースから不要なデータが要求されていないか確認する...

Dockerはイメージ名とTAG操作の名前を変更します

docker イメージを使用する場合、以下に示すように、REPOSITORY と TAG の両方が ...

Vue+js はビデオのフェードインとフェードアウト効果を実現します

Vue+jsはビデオのフェードインとフェードアウトを実現します。参考までに、具体的な内容は次のとおり...

Element-ui の組み込み 2 つのリモート検索 (ファジークエリ) の使用方法の説明

問題の説明フロントエンドリモート検索やファジークエリと呼ばれる種類のクエリがあります。 Ele.me...

win10 で mysql8.0.23 をインストールし、「サービスが制御機能に応答しません」という問題を解決する方法

Windows10にmysqlをインストールする1. 公式サイトからMySQLをダウンロードするウェ...

JS の querySelector メソッドと getElementById メソッドの違い

目次1. 概要1.1 querySelector() と querySelectorAll() の使...

実用的なクイックスタートReactルーティング開発

インストールインストールするには、次のコマンドを入力します。 // ネプ npm で react-r...

CSSスタイルで実現されるHTML背景色のグラデーション効果

エフェクトのスクリーンショット:実装コード:コードをコピーコードは次のとおりです。 <!DOC...

CSS--overflow:hidden のプロジェクト例

以下は、私のプロジェクトでこのプロパティを使用する方法の例です。 (1)激しく透明な浮遊コードをコピ...

mysql データはどこに保存されますか?

MySQLデータベースの保存場所: 1. MySQLがMyISAMストレージエンジンを使用する場合...

要素ツリーコントロールは、ドロップダウンメニューとアイコンを統合します(ツリー+ドロップダウン+入力)

目次要件:実装手順:この記事では主に以下について説明します: カスタムツリーコントロール<el...

Windows Server 2016 AD サーバーをセットアップする手順 (画像とテキスト)

導入: AD は Active Directory の略称で、中国語では Active Direct...

コンテンツ領域の周囲を回転する CSS 動的グラデーション ボーダーの効果 (サンプル コード)

レンダリング ネットで関連情報を調べたところ、現在のダイナミックグラデーションボーダーの実装方法のほ...

JavaScript でプロトタイプ パターンを実装する方法

概要プロトタイプ パターンは、プロトタイプ インスタンスによって作成されるオブジェクトの型を指し、こ...