web-dev-qa-db-ja.com

/ var / lib / mysqlにcdできない理由

構造は次のとおりです

ravas@ravas-desk-lmde /var/lib $ pwd
/var/lib
ravas@ravas-desk-lmde /var/lib $ ls -l | grep mysql
drwx------ 13 mysql   mysql   4096 Feb 10 22:32 mysql

/ var/lib/mysqlにアクセスしようとすると、権限がありません

ravas@ravas-desk-lmde /var/lib $ cd mysql/
bash: cd: mysql/: Permission denied

私はmysqlグループに属しますが

ravas@ravas-desk-lmde /var/lib $ groups ravas 
ravas : ravas adm dialout cdrom floppy Sudo audio dip video plugdev lpadmin sambashare mysql

ここで問題は何ですか?

15
user3889486
Sudo -i

それから

cd /var/lib/mysql/
31
zombie_ghast

ディレクトリにアクセスできるのはmysqlユーザーだけです。rootを使用してそこにアクセスし、アクセス許可を変更するか、ディレクトリのアクセス許可を740に変更します。

chmod 740 /var/lib/mysql

パーミッションは、user/group/elseの3つの部分に分かれています。そしてあなたは持っています

drwx------

d =ディレクトリ

r =読み取り= 4

w = write = 2

x = execute = 1

そのため、「所有者」はそのディレクトリにread(4)+ write(2)+ execute(1)= 7のパーミッションを持っています

他の人は誰もしません

4
Diego Velez

mysqlグループはそのディレクトリにアクセスできません。 mysqlユーザーの権利はrwxですが、グループと他のユーザーは---ので、mysqlグループに所属しても、あなたが望むものは得られません。

3
viraptor


与えられた入力から、それは明らかです のみ 所有者mysqlには、_read, write, execute_ディレクトリに対する_/var/lib/mysql_パーミッションがあります。

そして現在のログインユーザー-ravasはmysqlグループの一部です。したがって、グループravasが_/var/lib/mysql_に対するx (ie execute)パーミッションを持っている場合、cdユーザーはmysqlを_/var/lib/mysql_ディレクトリにできます。

したがって、_chmod g+rx /var/lib/mysql_ OR _chmod 750 /var/lib/mysql_はravasユーザーがcdを_/var/lib/mysql_に許可し、ディレクトリの内容を読み取ることができます(つまり、リストファイル)

  • 注意: ディレクトリの_x/Execute_パーミッションは、ディレクトリへのcdを許可します
1
Shubhangi

各ファイルとディレクトリには、3つのユーザーベースのアクセス許可グループがあります。

owner-所有者権限はファイルまたはディレクトリの所有者のみに適用され、他のユーザーのアクションには影響しません。

group-グループ権限は、ファイルまたはディレクトリに割り当てられたグループにのみ適用され、他のユーザーのアクションには影響しません。

すべてのユーザー-すべてのユーザーのアクセス許可は、システム上の他のすべてのユーザーに適用されます。これは、最も見たいアクセス許可グループです。

drwx ------ 13 mysql mysql 4096 Feb 10 22:32 mysql

上記のmysqlフォルダーのアクセス許可は700であるため、mysqlユーザーにはすべての読み取り、書き込み、実行の許可があります。 mysqlグループには権限がありません。ただし、ravasユーザーはmysqlグループに属します。許可がありません。

1
DL chyi

mysqlグループには、ディレクトリに対する権限はありません。mysqlユーザーのみが許可されます。