Почему для PostgreSQL есть оболочка?

Повторите эту команду еще раз:

sudo apt-get install eclipse
1
задан 27 December 2012 в 08:32

3 ответа

Существует оболочка, потому что мы используем PostgreSQL из командной строки в качестве пользователя PostgreSQL.

4
ответ дан 25 May 2018 в 03:01
  • 1
    Тогда мы не использовали MySQL в качестве права пользователя MySQL? Я предполагаю, что этот пользователь был использован для внутренней системы. Это значит, что я не должен удалять это /bin/bash для правильной работы PostgreSQL. Спасибо вам все равно! – Smile.Hunter 27 December 2012 в 08:25

Postgres запускается под учетной записью пользователя специальной операционной системы по соображениям безопасности. Эта учетная запись создается на вашем компьютере, когда выполняется программа установки, и если она не переопределена в командной строке, она будет называться «postgres».

В Unix-подобных операционных системах, таких как Linux и Mac OS X, учетная запись настраивается без пароля, и пользователям, как правило, больше не нужно беспокоиться об этом. Источник.

Также не рекомендуется вручную редактировать файл passwd. Вы должны использовать команду:

sudo passwd postgres
3
ответ дан 25 May 2018 в 03:01
  • 1
    Спасибо, но я хочу знать, почему существует «оболочка bash». для пользователя PostgreSQL я узнал, что это разрешает кому-то войти в postgresql, а затем каким-то образом получил оболочку bash, которая не имеет смысла для пользователя службы, к которому я бы никогда не входил. (Я вижу другого пользователя для других сервисов, таких как apache2, mysql, для их пользователей не требуется оболочка bash) – Smile.Hunter 27 December 2012 в 08:12

Если администратор сервера использует sudo и не заботится о том, в какой среде и и umask это получается, работа в базе данных может закончиться созданием файлов в непреднамеренных местах или с непреднамеренными разрешениями.

Назначение оболочка для пользователя позволяет администраторам входить в систему как postgres и выполнять работу с этой оболочкой пользователей. Выяснение sudo как источника неспецифических сообщений об ошибках сервера будет слишком сильным из-за головной боли.

Если вам это не нужно, и вы уверены, что никогда не будете вызывать двоичные файлы postgres в таких подверженных ошибкам вы можете безопасно удалить оболочку:

usermod --shell /bin/false postgres

Имейте в виду, что beign, способный стать root, вы все равно можете стать кем угодно, включая пользователей без действительных оболочек:

su --shell /bin/bash postgres
[d4 ] Авторитетный источник:

Иногда вы хотите войти в систему как этот пользователь, чтобы иметь возможность выполнять определенные типы специального администрирования или исправлений. Например, если вам когда-либо понадобится запустить pg_resetxlog, вы, вероятно, захотите войти в систему как postgres, если вы не уверены в том, что ваши su или sudo invocations являются правильными и не путают права доступа к каталогу базы данных странными способами. - Peter Eisentraut, PostgreSQL dev
0
ответ дан 25 May 2018 в 03:01

Другие вопросы по тегам:

Похожие вопросы: