前回の記事では、Linuxで共有ディレクトリを作成する方法を紹介しました。ここでは、Linuxの特定のディレクトリにいるユーザーに読み取り/書き込みアクセスを許可する方法について説明します。
これを行うには、2つの方法があります。1つはACL(アクセス制御リスト)を使用する方法、もう1つはファイルのアクセス許可を管理するユーザーグループを作成する方法です。
このチュートリアルでは、次の設定を使用します。
Operating system: CentOS 7 Test directory: /shares/project1/reports Test user: tecmint Filesystem type: Ext4
すべてのコマンドがrootユーザーとして実行されていることを確認するか、同等の権限でsudoコマンドを使用してください。
reports
というディレクトリを作成することから始めましょう mkdirを使用する コマンド:
# mkdir -p /shares/project1/reports
ACLを使用してディレクトリ上のユーザーに読み取り/書き込みアクセスを許可する
1。 まず、システムの現在のファイルシステムタイプを確認し、カーネルがACLをサポートしているかどうかを次のように確認します。
# df -T | awk '{print $1,$2,$NF}' | grep "^/dev" # grep -i acl /boot/config*
以下のスクリーンショットから、ファイルシステムタイプは Ext4です。 カーネルはPOSIXACLをサポートしています CONFIG_EXT4_FS_POSIX_ACL =yで示されるように オプション。
2。 次に、ファイルシステム(パーティション)が ACLでマウントされているかどうかを確認します オプションかどうか:
# tune2fs -l /dev/sda1 | grep acl
上記の出力から、デフォルトのマウントオプションがすでに ACLをサポートしていることがわかります。 。有効になっていない場合は、特定のパーティション( / dev / sda3 )に対して有効にできます。 この場合):
# mount -o remount,acl / # tune2fs -o acl /dev/sda3
3。 次に、読み取り/書き込みアクセスをユーザーtecmint
に割り当てます。 reports
という特定のディレクトリに移動します 次のコマンドを実行します。
# getfacl /shares/project1/reports # Check the default ACL settings for the directory # setfacl -m user:tecmint:rw /shares/project1/reports # Give rw access to user tecmint # getfacl /shares/project1/reports # Check new ACL settings for the directory
上のスクリーンショットでは、ユーザーtecmint
ディレクトリ/shares / project1 / reports に対する読み取り/書き込み(rw)権限が付与されました 2番目のgetfaclの出力からわかるように コマンド。
ACLリストの詳細については、次のガイドをご覧ください。
- ACL(アクセス制御リスト)を使用してユーザー/グループのディスククォータを設定する方法
- ACL(アクセス制御リスト)を使用してネットワーク共有をマウントする方法
次に、ディレクトリへの読み取り/書き込みアクセスを割り当てる2番目の方法を見てみましょう。
グループを使用してディレクトリ上のユーザーに読み取り/書き込みアクセスを許可する
1。 ユーザーがすでにデフォルトのユーザーグループ(通常はユーザー名と同じ名前)を持っている場合は、ディレクトリのグループ所有者を変更するだけです。
# chgrp tecmint /shares/project1/reports
または、次のように、複数のユーザー(特定のディレクトリに対する読み取り/書き込み権限が付与される)用の新しいグループを作成します。ただし、これにより共有ディレクトリが作成されます:
# groupadd projects
2。 次に、ユーザーtecmint
を追加します グループprojects
次のように:
# usermod -aG projects tecmint # add user to projects # groups tecmint # check users groups
3。 ディレクトリのグループ所有者をプロジェクトに変更します:
# chgrp projects /shares/project1/reports
4。 次に、グループメンバーの読み取り/書き込みアクセスを設定します。
# chmod -R 0760 /shares/projects/reports # ls -l /shares/projects/ #check new permissions
それでおしまい!このチュートリアルでは、Linuxの特定のディレクトリにいるユーザーに読み取り/書き込みアクセスを許可する方法を示しました。問題がある場合は、下のコメントセクションから質問してください。