Предполагая, что вы являетесь администратором машины, Ubuntu предоставила вам право sudo запускать любую команду от имени любого пользователя.
Также, если вы не ограничили права в pg_hba.confфайле (в /etc/postgresql/9.1/mainкаталоге), он должен содержать эту строку как первое правило:
local all postgres peer
(О местонахождении файла: 9.1это основная версия postgres и mainимя вашего «кластера». Оно будет отличаться при использовании более новой версии postgres или нестандартных имен. Используйте pg_lsclustersкоманду, чтобы получить эту информацию для вашей версии / системы).
В любом случае, если в pg_hba.confфайле нет этой строки, отредактируйте файл, добавьте его и перезагрузите службу с помощью sudo service postgresql reload.
Затем вы сможете войти в систему psqlкак суперпользователь postgres с помощью этой команды оболочки:
sudo -u postgres psql
Оказавшись внутри psql, введите команду SQL:
ALTER USER postgres PASSWORD 'newpassword';
В этой команде postgres- имя суперпользователя. Если был забыт пароль пользователя ritesh, команда была бы такой:
ALTER USER ritesh PASSWORD 'newpassword';
Ссылки: Документация по PostgreSQL 9.1.13, Глава 19. Аутентификация клиента
Имейте в виду, что вам нужно вводить postgres с одним S в конце
Если оставить пароль открытым текстом в истории команд или в журнале сервера является проблемой, psql предоставляет интерактивную мета-команду, чтобы избежать этого, в качестве альтернативы ALTER USER ... PASSWORD:
\password username
Он запрашивает пароль с двойным слепым вводом, затем хеширует его в соответствии с password_encryptionнастройкой и выдает ALTER USERкоманду серверу с хешированной версией пароля вместо версии с открытым текстом.