| Summary: | Переменная PGMETHOD в /etc/init.d/postgresql для условия по умолчанию не задана | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Evgeny Shesteperov <alimektor> |
| Component: | postgresql13 | Assignee: | Alexei Takaseev <taf> |
| Status: | CLOSED DUPLICATE | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P5 | CC: | at, cas, crux, ender, grenka, lav, ldv, mike, qa_viy, shaba, taf, viy |
| Version: | unstable | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
Версия - postgresql13-server-13.12-alt3 Шаги воспроизведения # apt-get install -y postgresql13-server # sed -i "/PGMETHOD/d" /etc/sysconfig/postgresql # /etc/init.d/postgresql initdb Ожидаемый результат: инициализация БД Фактический результат: ошибка, потому что подставляется пустая переменная $PGMETHOD Creating default database: initdb: ошибка: нераспознанный метод проверки подлинности "-W" для подключений "local" Откладка # apt-get install -y postgresql13-server # grep 'PGMETHOD' /etc/init.d/postgresql if [ -z "PGMETHOD" ] PGMETHOD="scram-sha-256" su -s /bin/sh -l postgres -c "initdb --pgdata=\"$PGDATA\" --locale=\"$PGLOCALE\" -A $PGMETHOD -W" или более наглядно: # apt-get install -y postgresql13-server # bash -x /etc/init.d/postgresql initdb . . . . . + '[' -z PGMETHOD ']' . . . . . Должно быть: - if [ -z "PGMETHOD" ] + if [ -z "${PGMETHOD}" ]