Есть ли способ удалить программу, которая была установлена ​​с файлом .tar.gz? [dубликат]

Вы можете просмотреть ссылку в репозитории в своем браузере. если вы посмотрите там файлы Packages (обычно Packages.gz и Packages.bz2) в правильной папке в dists, вы можете загрузить этот файл и распаковать его. Он содержит список всех пакетов архива.

121
задан 31 December 2011 в 23:49

12 ответов

Обычно вы можете использовать:

make uninstall

или

sudo make uninstall

, если приложение установлено как root.

Но это будет работать только если разработчик пакета позаботился о правильном правиле удаления.

Вы также можете попытаться просмотреть шаги, используемые для установки программного обеспечения, запустив:

make -n install

Затем попробуйте вручную отменить эти шаги.

В будущем, чтобы избежать подобных проблем, попробуйте использовать checkinstall вместо make install, когда это возможно (AFAIK всегда, если вы не хотите, чтобы скомпилированные и упакованные версии одновременно). Он создаст и установит файл deb, который вы сможете удалить, используя ваш любимый менеджер пакетов.

make clean обычно очищает каталоги зданий, он не удаляет пакет. Он используется, когда вы хотите быть уверенным, что все это скомпилировано, а не только измененные файлы.

145
ответ дан 17 July 2018 в 18:56

Обычно вы можете использовать:

make uninstall

или

sudo make uninstall

, если приложение установлено как root.

Но это будет работать только если разработчик пакета позаботился о правильном правиле удаления.

Вы также можете попытаться просмотреть шаги, используемые для установки программного обеспечения, запустив:

make -n install

Затем попробуйте вручную отменить эти шаги.

В будущем, чтобы избежать подобных проблем, попробуйте использовать checkinstall вместо make install, когда это возможно (AFAIK всегда, если вы не хотите, чтобы скомпилированные и упакованные версии одновременно). Он создаст и установит файл deb, который вы сможете удалить, используя ваш любимый менеджер пакетов.

make clean обычно очищает каталоги зданий, он не удаляет пакет. Он используется, когда вы хотите быть уверенным, что все это скомпилировано, а не только измененные файлы.

146
ответ дан 23 July 2018 в 19:44

Я скомпилировал php-5.6.30 из источника без его настройки с помощью openssl, поэтому мне пришлось вернуться и установить его с нуля. Использование make uninstall не работает, поскольку Makefile for php не поддерживает его.

Однако этот шаг работал на меня, - я перечислил все файлы, связанные с php, и удалил их вручную, мне потребовалось около 5 минут, не нарушая пота. Вы также можете использовать эти шаги для удаления вашего скомпилированного программного обеспечения.

Заменить php программным обеспечением, которое необходимо удалить

whereis php

Вышеприведенная команда перечисляет каталоги где установлены двоичные файлы ex: / usr / local / bin / php, / usr / bin / php .. удалить каждый файл / каталог, указанный в вашем выводе.

sudo rm -f /usr/local/bin/php

Сделайте это со всеми файлами, перечисленными в вышеприведенном выводе, и все вы настроены на установку новой версии с нуля.

0
ответ дан 17 July 2018 в 18:56

Это не ошибка. Компиляция из источника - неподдерживаемый метод установки программного обеспечения, полностью обходя систему управления пакетами (которая используется Центром программного обеспечения).

Нет стандартного способа, чтобы программное обеспечение, скомпилированное из источника, было установлено или удалено, поэтому Ubuntu не может знать, что делать. Программное обеспечение даже не указано как установленная программа.

Вы должны следовать инструкциям дистрибьютора для установки и удаления такого программного обеспечения. Вы также можете связаться с разработчиком, чтобы попросить их создать пакет Debian, чтобы можно было использовать систему управления пакетами.

15
ответ дан 17 July 2018 в 18:56

Это не ошибка, это то, что происходит, когда разработчики прибегают к распределению через источник, а не через собственные методы упаковки.

Вы можете заставить исходные файлы стать debian-пакетами с помощью checkinstall или dhbuild , Честно говоря, по-моему, новым пользователям следует избегать установки из исходного кода, и разработчикам следует избегать распространения только по источнику.

3
ответ дан 17 July 2018 в 18:56

Я не думаю, что это ошибка, было бы неплохо прочитать и научиться использовать checkinstall при установке из исходного кода.

вы можете установить checkinstall из репозиториев, краткое описание пакет;

CheckInstall отслеживает все файлы, созданные или измененные вашим сценарием установки («make install» «make install_modules», «setup» и т. д.), создает стандартный двоичный пакет и устанавливает его в ваша система дает вам возможность удалить его с помощью стандартных утилит управления пакетами вашего дистрибутива.

Эти ссылки ниже могут быть полезны для лучшего понимания. http://en.wikipedia.org/wiki/CheckInstall

http://en.wikipedia.org/wiki/CheckInstall

26
ответ дан 17 July 2018 в 18:56

Нам нужно обсудить тот факт, что деинсталляция не всегда будет работать, поэтому ниже это более активное решение. Это связано с использованием программы paco, доступной в программном центре Ubuntu. Как только мы установили paco, мы можем использовать его в режиме журнала, когда мы «сделаем установку» программой. Paco действует как обертка для вашей «make install» и создает журнал в каталоге / var / log / paco со списком файлов, скопированных в различные каталоги. Кроме того, вы можете видеть файлы в лицевой части Paco. Например, когда я скомпилировал php из исходного кода, я сделал следующее:

paco -lp php5 "make install"

Параметр l запускает paco в режиме журнала. Это создало файл журнала в / var / log / paco с именем php5 ( имя, которое я дал в команде). Он содержал все файлы, которые копируются в различные стандартные местоположения во время установки. Вы можете использовать редактор командной строки или paco gui для просмотра файлов. Ниже приведен пример получения списка файлов с помощью редактора командной строки sed (Замените php5 на ваше имя файла).

cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'

Как только вы получили список файлов, вы знаете, как их удалить, не так ли? Действительно, вы можете передать результаты указанной выше команды на make uninstall с помощью обратных тактов, как показано ниже:

sudo rm `cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'`

Задание выполнено!

Примечание: к ограничениям LD_PRELOAD, paco не может следовать следам suid-программ. См. Справочную страницу.

0
ответ дан 17 July 2018 в 18:56

Я скомпилировал php-5.6.30 из источника без его настройки с помощью openssl, поэтому мне пришлось вернуться и установить его с нуля. Использование make uninstall не работает, поскольку Makefile for php не поддерживает его.

Однако этот шаг работал на меня, - я перечислил все файлы, связанные с php, и удалил их вручную, мне потребовалось около 5 минут, не нарушая пота. Вы также можете использовать эти шаги для удаления вашего скомпилированного программного обеспечения.

Заменить php программным обеспечением, которое необходимо удалить

whereis php

Вышеприведенная команда перечисляет каталоги где установлены двоичные файлы ex: / usr / local / bin / php, / usr / bin / php .. удалить каждый файл / каталог, указанный в вашем выводе.

sudo rm -f /usr/local/bin/php

Сделайте это со всеми файлами, перечисленными в вышеприведенном выводе, и все вы настроены на установку новой версии с нуля.

0
ответ дан 23 July 2018 в 19:44

Это не ошибка. Компиляция из источника - неподдерживаемый метод установки программного обеспечения, полностью обходя систему управления пакетами (которая используется Центром программного обеспечения).

Нет стандартного способа, чтобы программное обеспечение, скомпилированное из источника, было установлено или удалено, поэтому Ubuntu не может знать, что делать. Программное обеспечение даже не указано как установленная программа.

Вы должны следовать инструкциям дистрибьютора для установки и удаления такого программного обеспечения. Вы также можете связаться с разработчиком, чтобы попросить их создать пакет Debian, чтобы можно было использовать систему управления пакетами.

15
ответ дан 23 July 2018 в 19:44

Это не ошибка, это то, что происходит, когда разработчики прибегают к распределению через источник, а не через собственные методы упаковки.

Вы можете заставить исходные файлы стать debian-пакетами с помощью checkinstall или dhbuild , Честно говоря, по-моему, новым пользователям следует избегать установки из исходного кода, и разработчикам следует избегать распространения только по источнику.

3
ответ дан 23 July 2018 в 19:44
  • 1
    Я знаю, но иногда это неизбежно ... В этом случае это была небольшая игра, которая на самом деле не нужна, но когда-то мне пришлось установить MATLAB в вычислительный инструмент, используемый в моем университете, и мне пришлось установить его источником, так как они не имеет файла deb для ubuntu ... Но я обязательно пройду через методы checkinstall и dhbuild ... спасибо – nik90 21 January 2011 в 02:44

Я не думаю, что это ошибка, было бы неплохо прочитать и научиться использовать checkinstall при установке из исходного кода.

вы можете установить checkinstall из репозиториев, краткое описание пакет;

CheckInstall отслеживает все файлы, созданные или измененные вашим сценарием установки («make install» «make install_modules», «setup» и т. д.), создает стандартный двоичный пакет и устанавливает его в ваша система дает вам возможность удалить его с помощью стандартных утилит управления пакетами вашего дистрибутива.

Эти ссылки ниже могут быть полезны для лучшего понимания. http://en.wikipedia.org/wiki/CheckInstall

http://en.wikipedia.org/wiki/CheckInstall

26
ответ дан 23 July 2018 в 19:44

Нам нужно обсудить тот факт, что деинсталляция не всегда будет работать, поэтому ниже это более активное решение. Это связано с использованием программы paco, доступной в программном центре Ubuntu. Как только мы установили paco, мы можем использовать его в режиме журнала, когда мы «сделаем установку» программой. Paco действует как обертка для вашей «make install» и создает журнал в каталоге / var / log / paco со списком файлов, скопированных в различные каталоги. Кроме того, вы можете видеть файлы в лицевой части Paco. Например, когда я скомпилировал php из исходного кода, я сделал следующее:

paco -lp php5 "make install"

Параметр l запускает paco в режиме журнала. Это создало файл журнала в / var / log / paco с именем php5 ( имя, которое я дал в команде). Он содержал все файлы, которые копируются в различные стандартные местоположения во время установки. Вы можете использовать редактор командной строки или paco gui для просмотра файлов. Ниже приведен пример получения списка файлов с помощью редактора командной строки sed (Замените php5 на ваше имя файла).

cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'

Как только вы получили список файлов, вы знаете, как их удалить, не так ли? Действительно, вы можете передать результаты указанной выше команды на make uninstall с помощью обратных тактов, как показано ниже:

sudo rm `cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'`

Задание выполнено!

Примечание: к ограничениям LD_PRELOAD, paco не может следовать следам suid-программ. См. Справочную страницу.

0
ответ дан 23 July 2018 в 19:44

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

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