Я просто не понимаю, что происходит.
sudo apt-get remove postgresql
приводит к:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'postgresql' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 35 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up postgresql-9.1 (9.1.10-0ubuntu13.04) ...
* Starting PostgreSQL 9.1 database server * The PostgreSQL server failed to start. Please check the log output:
2013-11-05 12:40:58 PST FATAL: could not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission denied
[fail]
invoke-rc.d: initscript postgresql, action "start" failed.
dpkg: error processing postgresql-9.1 (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
postgresql-9.1
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я имею в виду, почему он пытается запустить сервер. Да, я немного юник из Unix и огромный постгрес, так что терпите меня, но случайный запуск сервера, когда я пытаюсь удалить его, кажется случайным. Просто не понимаю.
Как я могу полностью и полностью удалить postgresql?
Ваша первая установка оставалась неопределенной, это уничтожит ее:
sudo dpkg --purge postgresql-9.1
Теперь вы можете переустановить пакет:
sudo apt-get -f install
sudo apt-get install postgresql-9.1
Мне удалось очистить postgres (apt-get purge), сначала очистив 2 других пакета: пакет contrib и пакет postgresql (кажется, небольшой «виртуальный» пакет). По крайней мере, я так думаю ...
Тогда я мог бы очистить пакет postgresql-9.1 (около 11 МБ)
У меня была похожая проблема, и я решил ее с помощью aptitude, чтобы полностью удалить предыдущую установку (apt-get не удалил все зависимости).
Далее я доказываю, как это сделать в терминале оболочки (GUI выходит за рамки этого ответа).
Начните с запуска интерактивного менеджера пакетов:
sudo aptitude
Откроется дружественный текстовый пользовательский интерфейс. Вы можете использовать клавиатуру «Вверх» и «Вниз» для навигации и «Ввод» для открытия элементов. Мышь также может быть использована для навигации.
Вы увидите главное меню (Действия / Отменить / ...), из которого вы можете настроить aptitude. Без мыши нажмите CTRL + T, чтобы открыть меню. В меню также показаны сочетания клавиш, которые вы можете использовать.
Если вы знаете, что удалить, перейдите в Установленные пакеты и перейдите к пакету. Например, чтобы удалить PostgreSQL, перейдите по ссылке Установленные пакеты \ main и вы увидите пакеты postgresql *. Установленные пакеты имеют букву i с левой стороны. Используйте, например, клавишу «Вниз», чтобы выделить первый пакет, и нажмите клавишу «-», чтобы пометить его для удаления. Вы можете отменить действие с помощью меню отмены или нажатием клавиши +.
Обратите внимание, что при нажатии клавиши «+» в неустановленном пакете он будет помечен для установки.
Когда все пакеты, которые вы хотите удалить, помечены для удаления, перейдите в меню «Действия» и выберите команду «Установить / удалить пакеты». Это покажет предварительный просмотр того, что будет сделано. Разбитые и неиспользованные пакеты также будут выбраны автоматически. Используйте кнопки + и - для добавления / сохранения или удаления пакетов. Обратите внимание на изменение цвета в зависимости от действия (magenta = удалить пакет, зеленый = установить пакет).
Когда вы будете довольны выбором, снова перейдите в меню «Действия» и выберите команду «Установить / удалить пакеты» для выполнения действия.
После завершения нажмите Enter, чтобы вернуться к пользовательскому интерфейсу. Вы можете искать пакеты (см. Меню поиска, где также отображаются сочетания клавиш).
Нажмите? ключ для интерактивной справки.
Нажмите q, чтобы выйти.
Возможно, ваша установка или деинсталляция была недавно прервана, в результате чего пакетная система находилась в неопределенном состоянии.
sudo apt-get clean && sudo apt-get autoremove
sudo apt-get -f install
sudo dpkg --configure -a
это должно исправить
У меня была та же проблема, и это оказалось проблемой с разрешениями /var/run/postgresql
. Он принадлежал root
, но должен был принадлежать postgres
sudo chown -R postgres:postgres /var/run/postgresql
решил его, а затем sudo service postgresql restart
Благодаря https: // stackoverflow .com / а / 23645981/648176