Ответ 1
sudo -i
затем
cd /var/lib/mysql/
Структура следующая
[email protected] /var/lib $ pwd
/var/lib
[email protected] /var/lib $ ls -l | grep mysql
drwx------ 13 mysql mysql 4096 Feb 10 22:32 mysql
Когда я пытаюсь войти в /var/lib/mysql, у меня нет прав
[email protected] /var/lib $ cd mysql/
bash: cd: mysql/: Permission denied
хотя я принадлежу к группе mysql
[email protected] /var/lib $ groups ravas
ravas : ravas adm dialout cdrom floppy sudo audio dip video plugdev lpadmin sambashare mysql
В чем проблема?
sudo -i
затем
cd /var/lib/mysql/
Пользователь mysql является единственным, кто может получить доступ к каталогу, вы можете использовать root для доступа к нему и изменения разрешений, или вы можете изменить права доступа к каталогу на 740 с помощью
chmod 740 /var/lib/mysql
разделены на 3 части user/group/else. и у вас есть
drwx------
d = каталог
r = read = 4
w = write = 2
x = execute = 1
поэтому "владелец" прочитал (4) + write (2) + execute (1) = 7 разрешений в этом каталоге
каждый другой не
mysql
не имеет доступа к этому каталогу. Права для пользователя mysql
rwx
, но группа и другие получают ---
, поэтому в группе mysql
не предоставляется то, что вы хотите.
Группа mysql
не имеет разрешений в каталоге, только пользователь mysql
.
Из данных входов понятно, что только владелец mysql
имеет read, write, execute
разрешение в каталоге /var/lib/mysql
.
И текущий пользователь входа - ravas
является частью группы mysql. Следовательно, ravas
пользователь может cd
в каталог /var/lib/mysql
, если у группы mysql
есть разрешение x (ie execute)
на /var/lib/mysql
.
Следовательно, chmod g+rx /var/lib/mysql
OR chmod 750 /var/lib/mysql
позволит ravas
пользователю от cd
до /var/lib/mysql
и читать содержимое каталога (то есть файлы списка)
x/Execute
разрешение на каталоги позволяет cd
в каталог