Назад | Перейти на главную страницу

Пользователь MySQL не отображается в Инструменте администрирования пользователей

Я установил mysql-сервер. Когда я запускаю User Administration Tool, он показывает только мое имя пользователя (myname) и root. Когда я хочу добавить пользователя mysql, он говорит, что пользователь mysql уже существует, но он не отображается в списке пользователей User Administration Tool, почему? Я проверил список пользователей

cat /etc/passwd

и я вижу пользователя mysql. После этого я установил домашний каталог для пользователя mysql

sudo usermod -d /home/mysql mysql

затем я меняю пользователя на mysql

sudo -s -u mysql

после этого я хочу перейти в домашний каталог пользователя mysql.

cd ~
pwd

он показывает / home / myname, а не / home / mysql, я проверил / etc / passwd, и он показывает / home / mysql как домашний каталог для пользователя mysql. Почему это так?

Прежде всего, вы, вероятно, обнаружите, что ваш инструмент администрирования пользователей не отображает системные учетные записи (обычно идентификатор пользователя менее 1000 в Ubuntu), поэтому вы видите только себя и root, и почему вы не можете добавить пользователь mysql, но вы можете увидеть его в / etc / passwd.

Во-вторых, вы, вероятно, обнаружите, что пользователь mysql имеет что-то вроде / bin / false в качестве оболочки, поэтому вы перейдете к его учетной записи, запустите / bin / false, который сразу же выйдет и, следовательно, снова выйдет из системы. Это оставит вас в качестве вашей учетной записи, что объяснит, почему вы видите свой домашний каталог.

В качестве альтернативы это может быть потому, что вы использовали sudo -s вместо sudo -i для получения оболочки. Вы не должны использовать sudo -s, если вам нужна оболочка, поскольку -s не заменит всю среду. Некоторые переменные по-прежнему будут относиться к предыдущему пользователю. Я считаю, что $ HOME - одна из таких переменных.