为什么我不能进入/ var / lib / mysql

问题描述 投票:15回答:6

结构如下

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

这有什么问题?

linux file-permissions
6个回答
31
投票
sudo -i

然后

cd /var/lib/mysql/

4
投票

mysql用户是唯一可以访问该目录的用户,可以使用root访问那里并更改权限,或者你可以将目录权限更改为740 with

chmod 740 /var/lib/mysql

权限分为3个部分user / group / else。你有

drwx------

d =目录

r =读= 4

w =写= 2

x =执行= 1

所以“所有者”在该目录中读取了(4)+ write(2)+ execute(1)= 7个权限

其他人都没有


3
投票

mysql组无法访问该目录。 mysql用户的权利是rwx,但是小组和其他人获得---,因此在mysql小组中没有给你你想要的。


1
投票

mysql组对目录没有权限,只有mysql用户。


1
投票

从给定的输入可以清楚地看到,只有所有者mysqlread, write, execute目录上拥有/var/lib/mysql权限。

当前登录用户 - ravas是mysql组的一部分。因此ravas用户可以cd/var/lib/mysql目录,如果组mysqlx (ie execute) /var/lib/mysql许可。

因此chmod g+rx /var/lib/mysqlchmod 750 /var/lib/mysql将允许ravas用户cd/var/lib/mysql并读取目录内容(即列表文件)

  • 注意:目录的x/Execute权限允许cd到目录

1
投票

每个文件和目录都有三个基于用户的权限组:

owner - Owner权限仅应用文件或目录的所有者,它们不会影响其他用户的操作。

group - 组权限仅适用于已分配给文件或目录的组,它们不会影响其他用户的操作。

所有用户 - “所有用户”权限适用于系统上的所有其他用户,这是您要观看最多的权限组。

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

上面显示的mysql文件夹权限是700,所以mysql用户拥有所有的读,写和执行权限。 mysql组没有权限。虽然,ravas用户属于mysql组。没有许可。

© www.soinside.com 2019 - 2024. All rights reserved.