Я искал сеть для такой информации и обнаружил разные командные строки, такие как:
sudo apt-get remove application
sudo apt-get remove application*
sudo apt-get remove --purge application
sudo apt-get remove --purge application*
sudo apt-get purge application
sudo apt-get purge application*
Итак, что это правильный путь? Нужно ли использовать этот «*»?
После этого я также нашел следующие команды:
sudo updatedb
sudo locate application
sudo rm -rf (file/folder name)
И еще много существует. Менеджеры нижнего уровня dpkg могут использоваться (расширенные) или графические инструменты, такие как Muon, Synaptic, Software Center и т. Д. Не существует единого «правильного пути» для удаления приложений или выполнения других задач, взаимодействующих с вашим управлением пакетами.
Список, который вы нашли, является просто примером. Удостоверьтесь, что вы понимаете значения и проверяете, что он хочет сделать, прежде чем принимать действие (вам нужно нажать Y, прежде чем он действительно выполнит действия, как было предложено).
Версия звездочки в вопросе Не существует единого «правильного пути» удаления приложений или выполнения других задач, взаимодействующих с вашим управлением пакетами. ; apt-get принимает регулярное выражение, а не шаблон glob в качестве оболочки. Итак, что происходит с
sudo apt-get remove application*
, следующее:
Оболочка пытается развернуть application*, глядя на файлы в текущем каталоге. Если (как обычно бывает), он ничего не находит, он возвращает шаблон шара без изменений (предположим, что bash с поведением по умолчанию здесь --- zsh будет выходить из строя). apt-get удалит пакеты, имя которых содержит строку, которая удовлетворяет регулярному выражению application*, то есть applicatio, за которым следует произвольное число n: applicatio, application, applicationn, libapplicatio и т. д. Чтобы увидеть, как это может быть опасно, попробуйте (без корня для двойной безопасности) apt-get -s remove "wine*" (-s будет имитировать вещь вместо того, чтобы делать это) --- она скажет, что она удалит все пакеты, которые имеет «выигрыш» в их имени и зависимую, почти всю систему ...Возможно, команда, которая имела в виду, действительно
sudo apt-get remove "^application.*"
(обратите внимание на кавычки и точка), которая удалит все пакеты, имя которых начинается с application.
Эти команды,
sudo updatedb # <-- updates the locate database (index). harmless
sudo locate application # <-- locates the file 'application'. harmless
sudo rm -rf (file/folder name) # <-- removes files/dirs recursively. dangerous.
полностью выходят за рамки управления пакетами. Не удаляйте файлы, принадлежащие пакетам, без использования диспетчера пакетов!
Если вы не знаете, к какому пакету принадлежит файл, попробуйте следующее:
dpkg -S /path/to/file
Для Ubuntu 12.04 и, возможно, выше, правильный метод:
sudo apt-get --purge autoremove packagename
Как подробно описано здесь.
Не используйте packagename*, поскольку это может удалить непреднамеренные пакеты и вызвать больше проблем, чем решает. Или, если вам нужно, хотя бы запустить его с флагом -s, --simulate, --dry-run, чтобы увидеть, что именно будет делать, не делая этого.
Я получил некоторые сообщения об ошибках, удаляющие пакет, единственный способ, которым я нашел, что это работает:
mv /var/lib/dpkg/info/package.* /tmp/
dpkg --remove --force-remove-reinstreq package
Я обнаружил, что хотя использование только
dpkg --remove --force-remove-reinstreq package
не удалите пакет, он покажет мне правильный путь к файлу, который будет перемещаться с помощью:
mv /var/lib/dpkg/info/package.* /tmp/
Заменить пакет с вашим именем приложения. Используйте sudo в Ubuntu, станьте root в Debian.
Это зависит от приложения, которое вы хотите удалить. Всегда проверяйте его зависимости перед выдачей команды yes. Когда вы удаляете что-то по командной строке, оно иногда отображает несколько библиотек, которые больше не нужны. Их можно удалить с помощью apt-get autoremove.
Остерегайтесь, что с помощью таких команд, как sudo apt-get remove --purge, имя приложения может удалить некоторые зависимости, которые необходимы другим приложениям и, как таковые, может нарушить работу вашей системы.
Если вы хотите сделать это более безопасным способом, вы всегда можете удалить его, используя только программный центр или apt-get, чтобы удалить имя приложения. Если зависимости больше не нужны, введите apt-get autoremove позже.
Вы можете использовать эту команду:
sudo apt-get purge --auto-remove packagename
Он очистит необходимые пакеты вместе с зависимостями, которые установлены с этими пакетами. Опция --auto-remove (являющаяся псевдонимом autoremove) работает аналогично sudo apt-get autoremove. Используя эту команду, мы можем запустить одну команду:
sudo apt-get purge --auto-remove packagename
Вместо:
sudo apt-get purge packagename
sudo apt-get autoremove
Вы можете безопасно использовать sudo apt-get remove --purge application или sudo apt-get remove applications 99% времени. Когда вы используете флаг purge, он просто удаляет все файлы конфигурации. Что может быть или не быть тем, что вы хотите, в зависимости от того, хотите ли вы переустановить указанное приложение. [F5] будет соответствовать всем приложениям, начинающимся с application, которые обычно являются плагинами, дополнительными функциями и т. Д. Основного приложения, которое вы удаляете. т. е.
sudo apt-get remove gedit*
удалят gedit, gedit-plugins и gedit-common. Как правило, это не обязательно делать, потому что большинство подключаемых модулей / связанных программ зависят от основного приложения и автоматически удаляются (или помечены для удаления) при удалении основного приложения.
Ваша последняя команда - просто удалить остатки из приложений, которые, как известно, имеют беспорядочные деинсталляторы, и это просто удаление любых остатков приложения.
Я нашел эту команду в Интернете.
dpkg --purge --force-depends application
http://www.debian-administration.org/article/Reinstalling_packages_to_fix_problems.
И еще много существует. Менеджеры нижнего уровня dpkg могут использоваться (расширенные) или графические инструменты, такие как Muon, Synaptic, Software Center и т. Д. Не существует единого «правильного пути» для удаления приложений или выполнения других задач, взаимодействующих с вашим управлением пакетами.
Список, который вы нашли, является просто примером. Удостоверьтесь, что вы понимаете значения и проверяете, что он хочет сделать, прежде чем принимать действие (вам нужно нажать Y, прежде чем он действительно выполнит действия, как было предложено).
Версия звездочки в вопросе Не существует единого «правильного пути» удаления приложений или выполнения других задач, взаимодействующих с вашим управлением пакетами. ; apt-get принимает регулярное выражение, а не шаблон glob в качестве оболочки. Итак, что происходит с
sudo apt-get remove application*
, следующее:
Оболочка пытается развернуть application*, глядя на файлы в текущем каталоге. Если (как обычно бывает), он ничего не находит, он возвращает шаблон шара без изменений (предположим, что bash с поведением по умолчанию здесь --- zsh будет выходить из строя). apt-get удалит пакеты, имя которых содержит строку, которая удовлетворяет регулярному выражению application*, то есть applicatio, за которым следует произвольное число n: applicatio, application, applicationn, libapplicatio и т. д. Чтобы увидеть, как это может быть опасно, попробуйте (без корня для двойной безопасности) apt-get -s remove "wine*" (-s будет имитировать вещь вместо того, чтобы делать это) --- она скажет, что она удалит все пакеты, которые имеет «выигрыш» в их имени и зависимую, почти всю систему ...Возможно, команда, которая имела в виду, действительно
sudo apt-get remove "^application.*"
(обратите внимание на кавычки и точка), которая удалит все пакеты, имя которых начинается с application.
Эти команды,
sudo updatedb # <-- updates the locate database (index). harmless
sudo locate application # <-- locates the file 'application'. harmless
sudo rm -rf (file/folder name) # <-- removes files/dirs recursively. dangerous.
полностью выходят за рамки управления пакетами. Не удаляйте файлы, принадлежащие пакетам, без использования диспетчера пакетов!
Если вы не знаете, к какому пакету принадлежит файл, попробуйте следующее:
dpkg -S /path/to/file
Для Ubuntu 12.04 и, возможно, выше, правильный метод:
sudo apt-get --purge autoremove packagename
Как подробно описано здесь.
Не используйте packagename*, поскольку это может удалить непреднамеренные пакеты и вызвать больше проблем, чем решает. Или, если вам нужно, хотя бы запустить его с флагом -s, --simulate, --dry-run, чтобы увидеть, что именно будет делать, не делая этого.
Я получил некоторые сообщения об ошибках, удаляющие пакет, единственный способ, которым я нашел, что это работает:
mv /var/lib/dpkg/info/package.* /tmp/
dpkg --remove --force-remove-reinstreq package
Я обнаружил, что хотя использование только
dpkg --remove --force-remove-reinstreq package
не удалите пакет, он покажет мне правильный путь к файлу, который будет перемещаться с помощью:
mv /var/lib/dpkg/info/package.* /tmp/
Заменить пакет с вашим именем приложения. Используйте sudo в Ubuntu, станьте root в Debian.
Это зависит от приложения, которое вы хотите удалить. Всегда проверяйте его зависимости перед выдачей команды yes. Когда вы удаляете что-то по командной строке, оно иногда отображает несколько библиотек, которые больше не нужны. Их можно удалить с помощью apt-get autoremove.
Остерегайтесь, что с помощью таких команд, как sudo apt-get remove --purge, имя приложения может удалить некоторые зависимости, которые необходимы другим приложениям и, как таковые, может нарушить работу вашей системы.
Если вы хотите сделать это более безопасным способом, вы всегда можете удалить его, используя только программный центр или apt-get, чтобы удалить имя приложения. Если зависимости больше не нужны, введите apt-get autoremove позже.
Вы можете использовать эту команду:
sudo apt-get purge --auto-remove packagename
Он очистит необходимые пакеты вместе с зависимостями, которые установлены с этими пакетами. Опция --auto-remove (являющаяся псевдонимом autoremove) работает аналогично sudo apt-get autoremove. Используя эту команду, мы можем запустить одну команду:
sudo apt-get purge --auto-remove packagename
Вместо:
sudo apt-get purge packagename
sudo apt-get autoremove
Вы можете безопасно использовать sudo apt-get remove --purge application или sudo apt-get remove applications 99% времени. Когда вы используете флаг purge, он просто удаляет все файлы конфигурации. Что может быть или не быть тем, что вы хотите, в зависимости от того, хотите ли вы переустановить указанное приложение. [F5] будет соответствовать всем приложениям, начинающимся с application, которые обычно являются плагинами, дополнительными функциями и т. Д. Основного приложения, которое вы удаляете. т. е.
sudo apt-get remove gedit*
удалят gedit, gedit-plugins и gedit-common. Как правило, это не обязательно делать, потому что большинство подключаемых модулей / связанных программ зависят от основного приложения и автоматически удаляются (или помечены для удаления) при удалении основного приложения.
Ваша последняя команда - просто удалить остатки из приложений, которые, как известно, имеют беспорядочные деинсталляторы, и это просто удаление любых остатков приложения.
Я нашел эту команду в Интернете.
dpkg --purge --force-depends application
http://www.debian-administration.org/article/Reinstalling_packages_to_fix_problems.