Как переустановить пакет в Ubuntu

Обновлено: 21.11.2024

Пакеты для текущего выпуска R 4.1.* доступны для большинства стабильных выпусков Ubuntu для настольных ПК до официальной даты окончания срока их службы. Однако полностью поддерживается только последний выпуск Long Term Support (LTS). По состоянию на 19 мая 2021 года поддерживаются следующие выпуски

  • Impish Indri (21.10, только amd64),
  • Hirsute Hippo (только 21.04, amd64),
  • Focal Fossa (20.04; только LTS и amd64),
  • Bionic Beaver (18.04; LTS) и
  • Ксениал Ксерус ​​(16.04; LTS).

Обратите внимание, что для установки пакетов R 4.1 необходима новая и другая запись в sources.list. Подробнее см. ниже.

Старые выпуски R см. в соответствующем файле README.

Репозиторий c2d4u доступен только для выпусков LTS. Если вы хотите попытаться использовать репозиторий с выпуском, отличным от LTS, вы можете вручную отредактировать «c2d4u_team-ubuntu-c2d4u4_0_-*.list», чтобы использовать фокус вместо предполагаемого выпуска. Такое использование репозитория c2d4u не поддерживается. Настоятельно рекомендуется выпуск LTS для использования репозитория c2d4u.

Чтобы получить последние пакеты R 4.1, добавьте запись, например

Чтобы установить полную систему R, используйте

Пользователи, которым необходимо скомпилировать пакеты R из исходного кода [например, сопровождающие пакетов или все, кто устанавливает пакеты с помощью install.packages()] также должны установить пакет r-base-dev:

Для установки и компиляции R или некоторых его пакетов могут потребоваться пакеты Ubuntu из репозиториев «backports». Поэтому рекомендуется активировать репозитории бэкпортов с помощью записи типа

Пользователи Mint и других производных Ubuntu

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

В репозиториях Ubuntu доступен ряд пакетов R, имена которых начинаются с r-cran-. В CRAN постоянно обновляются следующие пакеты: все пакеты, входящие в рекомендованный r пакет, а именно

  • r-cran-boot
  • r-cran-класс
  • r-cran-кластер
  • r-cran-codetools
  • r-cran-иностранный
  • r-cran-kernsmooth
  • r-кран-решетка
  • r-кран-масса
  • r-кран-матрица
  • r-cran-mgcv
  • р-кран-нлме
  • r-cran-nnet
  • r-cran-rpart
  • r-cran-spatial
  • г-кран-выживание

Другие пакеты r-cran-* обновляются только в выпусках Ubuntu. Пользователи, которым необходимо обновить один из этих пакетов R (скажем, r-cran-foo), должны сначала убедиться, что они получили все необходимые зависимости сборки с помощью

Поскольку они полагаются на установленную версию R, мы также предоставляем на экспериментальной основе версии следующих пакетов настолько актуальные, насколько позволяет выпуск Ubuntu:

Обратите внимание, что сопровождающие не обязательно сами являются пользователями этих пакетов, поэтому будут приветствоваться положительные или отрицательные отзывы по обычным каналам (см. ниже).

Наконец, в качестве дополнительного удобства для пользователей Ubuntu, взаимодействующих с R через Emacs, мы также предоставляем актуальную версию пакета

В связи с прекращением поддержки apt-key рекомендуемый способ добавления ключа:

Чтобы проверить ключ:

Отпечаток пальца должен быть 298A3A825C0D65DFD57CBB651716619E084DAB9.

Использование apt-ключа

Можно использовать альтернативный метод, извлекая ключ с помощью

а затем передайте его apt-key с помощью

Некоторые люди сообщали о трудностях при использовании этого подхода. Проблема обычно связана с брандмауэром, блокирующим порт 11371. Если первая команда gpg не удалась, вы можете попробовать (спасибо Mischan Toosarani за подсказку):

а затем передайте его apt-key с помощью

Пакеты R, входящие в Ubuntu r-base, и рекомендуемые r-пакеты устанавливаются в каталог /usr/lib/R/library. Их можно обновить с помощью apt-get с

Другие пакеты r-cran-*, поставляемые с Ubuntu, устанавливаются в каталог /usr/lib/R/site-library.

Для установки пакетов R, не поставляемых с Ubuntu, сначала требуются инструменты для компиляции пакетов из исходного кода. Эти инструменты устанавливаются через пакет разработки R с

Это соответствует основным требованиям для компиляции R-пакетов. Затем пакеты R могут быть установлены локальным пользователем/администратором из исходных пакетов CRAN, как правило, изнутри R с помощью

функция или использование

из оболочки. Если у вас есть права на запись в /usr/local/lib/R/site-library/ и вы не установили R_LIBS_USER вручную, они будут установлены там. В противном случае вас спросят, следует ли создать каталог в вашем домашнем каталоге для этих пакетов. Обычное обновление таких локально скомпилированных пакетов можно выполнить с помощью

который обновит пакеты в первой части пути к вашей библиотеке. Вы можете посмотреть компоненты этого пути,

Чтобы найти пакеты, R просматривает переменные R_LIBS_USER и R_LIBS_SITE. В Debian и Ubuntu параметру R_LIBS_USER в файле /etc/R/Renviron присваивается значение

где $platform — это что-то вроде «x86_64-pc-linux-gnu» в зависимости от установленной версии R. Вы можете переопределить это в файле ~/.Renviron. R_LIBS_SITE устанавливается в /etc/R/Renviron на

Это означает, что пакеты, установленные из R, имеют приоритет над пакетами, установленными через систему управления пакетами Ubuntu, если у вас одновременно установлены две версии.

Лучшее место, где можно сообщить о проблемах с этими пакетами или задать вопросы по R, относящиеся к Ubuntu, — это список рассылки R-SIG-Debian. См.

Когда файлы в пакете изменяются или случайно удаляются, это может привести к повреждению системы. Повторная установка пакета решает проблему в большинстве случаев. Однако при использовании команды apt-get install будет возвращена ошибка, поскольку пакет уже существует.

Флаг --reinstall — это ярлык для команды apt-get, используемой для переустановки пакетов с использованием самых последних версий. Это полезно для пакетов со многими обратными зависимостями.

В этом руководстве вы узнаете, как использовать команду apt-get reinstall для переустановки пакетов в Debian и Ubuntu.

Примечание. Использование параметра --purge remove для удаления пакетов и их повторной установки приводит к аналогичным результатам. Однако он также стирает файлы конфигурации.

  • Учетная запись с правами sudo
  • Доступ к командной строке/терминалу
  • Система Debian/Ubuntu

Переустановите пакеты с помощью apt-get

Использование команды --reinstall — это простой процесс. Синтаксис следующий:

Если вы хотите переустановить более одного пакета, вы можете перечислить их все в одну строку:

Переустановите htop с помощью apt-get

Вот как переустановить htop, интерактивное средство просмотра процессов в Ubuntu, используя флаг --reinstall.

Вывод должен выглядеть следующим образом:

Переустановите пакеты с помощью команды aptitude

Aptitude — это графический пользовательский интерфейс для менеджера пакетов apt. Однако его можно использовать и с командной строкой.

Если вы хотите переустановить пакет с aptitude, используйте следующий синтаксис:

Примечание: используйте команду sudo aptitude reinstall '~i', если вы хотите переустановить ВСЕ пакеты.

Переустановите apt после его случайного удаления

Если вы случайно удалили apt, например, очистив его с помощью параметра --force-*, установите его снова, выполнив три простых шага:

<р>2. Выберите номер версии и загрузите пакет для своей архитектуры.

<р>3. В терминале запустите:

При необходимости замените версию и архитектуру в примере.

Прочитав эту статью, вы сможете переустанавливать пакеты с помощью команд apt-get и aptitude, а также восстанавливать сам apt, если он был случайно удален.

Для получения дополнительной информации о диспетчере пакетов apt прочитайте нашу статью о том, как управлять пакетами в Ubuntu.

Поэтому я хотел бы переустановить aptitude с помощью apt-get .

К сожалению, у apt-get нет опции переустановки.

Как снова заставить aptitude работать?

Возможно, я нашел основную причину segfault aptitude. Вот как я могу это воспроизвести:

  1. удаленный вход по ssh в систему Debian через терминал Cygwin rxvt (из 64-разрядной немецкой версии Windows 7).
  2. Увеличить окно rxvt, чтобы оно отображалось на двух мониторах (да, у меня два монитора)
  3. Запустить обновление aptitude . Примечание: когда я изменяю размер терминала rxvt до нормального, у меня нет этих ошибок сегментации!

5 ответов 5

Итак, чтобы использовать его для переустановки aptitude, используйте:

-A5 показывает совпавшую строку плюс следующие 5 строк.-- останавливает синтаксический анализ параметров, таким образом интерпретируя все, что идет после, как позиционные аргументы, избегая необходимости экранировать тире в выражении -A, которое в противном случае было бы интерпретировано как параметр для самого grep.

Вы можете переустановить пакет с помощью sudo apt-get install --reinstall имя_пакета. Это полностью удалит пакет (но не пакеты, которые от него зависят), а затем переустановит пакет.

Это может быть удобно, когда у пакета много обратных зависимостей.

@Cerin: я бы не назвал другие ответы слишком язвительными: даже «прочитать справочную страницу» действительно дал ответ, а также то, как его найти.

@DavidSpillett, я категорически не согласен. Страницы руководства обычно очень плохо написаны и очень недружелюбны для новичков. Например, в абзаце с параметром «--reinstall» не упоминается, что его необходимо использовать с аргументом «установить». Новичок может с полным правом спросить: «Почему я должен сказать ему установить И переустановить?» Ответ, говорящий кому-то RTFM, является худшим типом ответа, и мне больно видеть, что он набрал наибольшее количество голосов, особенно когда полный и действительно полезный ответ находится внизу.

Иногда вам также нужно восстановить файлы конфигурации! а не просто переустановить.

sudo apt-get install --reinstall xxxx

Переустановите приложение, сохраните файлы конфигурации.

Это может быть полезно, но иногда вам нужно начать заново, поэтому я использую следующее:

И если вам нужно восстановить только файлы конфигурации, в некоторых случаях (если они управляются ucf) вы должны использовать UCF_FORCE_CONFFMISS=1 apt-get --reinstall install [pkgname] .

Этот ответ заслуживает БОЛЬШОЙ оценки. Это то, что вам нужно, когда вы хотите «полностью переустановить» пакет. Например. простая --reinstall vsftpd не создает заново файл конфигурации, даже если файл больше не существует. Вместо этого работает команда «Удалить+Очистить+(Пере)установить».

Вы должны безопасно удалить aptitude и переустановить, так как это не повлияет на другие утилиты apt. Итак: apt-get remove aptitude, а затем apt-get install aptitude, или, если это все еще не помогает, попробуйте apt-get purge aptitude, а затем apt-get install aptitude.

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

Я уже давно делал такие вещи, как полная проверка файловой системы и тому подобное. Не могли бы вы дать мне краткую подсказку, как это сделать?

fsck -f, например fsck /dev/sda1 . В это время файловая система должна быть размонтирована или смонтирована только для чтения, поэтому, поскольку это, вероятно, будет ваша корневая файловая система, вам следует перезагрузиться в однопользовательском режиме или загрузиться с чего-то другого, например, с живого компакт-диска.

Вы можете использовать tune2fs, чтобы пометить файловую систему как смонтированную больше раз, чем установленное ограничение, что должно вызвать проверку при следующей загрузке. Предполагая, что файловая система ext2/3/4: tune2fs -C 99 , или, если у вас отключена проверка на основе количества подключений, включите ее одновременно с чем-то вроде tune2fs -c 17 -C 99 .

Неисправные пакеты необходимо восстановить, иначе программа не запустится. Вот как найти поврежденные пакеты и исправить их в Linux.

Менеджеры пакетов в Linux позволяют управлять установкой и удалением пакетов. В дополнение к этому менеджеры пакетов также помогают вам находить неработающие пакеты в вашей системе и переустанавливать их для устранения различных проблем, связанных с пакетами Linux.

Если вы не знаете, какие команды использовать для поиска и исправления поврежденных пакетов в Linux, то это руководство для вас. Мы кратко обсудим сломанные пакеты, как проверить, содержит ли ваша система сломанные пакеты, и как правильно их переустановить.

Что такое сломанные пакеты?

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

Менеджеры пакетов, такие как APT, не разрешают дальнейшую установку пакетов, если обнаруживают в системе неработающий пакет. В такой ситуации восстановить поврежденную упаковку — единственный выход.

Как найти и исправить поврежденные пакеты

Каждый менеджер пакетов обрабатывает разные типы пакетов. Например, DNF и YUM работают с диспетчером пакетов Red Hat (RPM) для загрузки и установки пакетов RPM.Точно так же APT действует как интерфейсная оболочка для базового программного обеспечения dpkg в дистрибутивах на основе Debian.

Переустановка сломанных пакетов в Debian

APT — это менеджер пакетов по умолчанию, который предустановлен в каждом дистрибутиве на основе Debian. Помимо APT, пользователи Debian и Ubuntu также могут загружать и устанавливать пакеты вручную с помощью dpkg.

Чтобы исправить сломанные пакеты в дистрибутивах на основе Debian с помощью APT:

  1. Откройте терминал, нажав Ctrl + Alt + T на клавиатуре, и введите:
  2. Обновите список пакетов вашей системы из доступных источников:
  3. Теперь принудительно установите поврежденные пакеты, используя флаг -f. APT автоматически найдет поврежденные пакеты в вашей системе и переустановит их из официального репозитория.

Если вышеупомянутые шаги не помогли вам, попробуйте решить проблему с помощью dpkg.

  1. Заставить dpkg перенастроить все ожидающие пакеты, которые уже распакованы, но нуждаются в настройке. Флаг -a в команде означает All.
  2. Передайте grep с помощью dpkg, чтобы получить список всех пакетов, помеченных dpkg как обязательные.
  3. Используйте флаг --remove, чтобы удалить все поврежденные пакеты.
  4. Очистите кеш пакетов и установите скрипты с помощью apt clean.
  5. Теперь обновите списки пакетов вашей системы с помощью следующей команды:

Исправить неработающие пакеты в Fedora/CentOS и RHEL

Хотя YUM и DNF отлично подходят для автоматического управления поврежденными пакетами, иногда возникают проблемы, поскольку в системе Linux установлены тысячи пакетов. В таких ситуациях вы можете использовать RPM (базовый менеджер пакетов для Fedora и CentOS), чтобы быстро исправить такие проблемы.

  1. Проверьте все пакеты в вашей системе, используя флаг -V.
  2. Вы увидите длинный список, содержащий все установленные пакеты в вашей системе.
  3. Переустановите пакет, который, по вашему мнению, может быть причиной проблемы с пакетом.

Вышеописанные шаги крайне неудобны: определить, какой пакет вызывает проблему, из списка сотен пакетов, утомительно. Хотя RPM является мощным менеджером пакетов, и вы редко будете сталкиваться с такими проблемами, знание того, как исправить эти проблемы, по-прежнему важно, если вы столкнетесь с подобной ситуацией в ближайшем будущем.

Управление пакетами в дистрибутивах Linux

Менеджеры пакетов в Linux способны справиться с большинством проблем, включая неудачные установки. Но иногда возникают различные проблемы, которые можно решить только интуитивно. Решение по исправлению неработающих пакетов состоит из нескольких шагов: определение неисправного пакета, его переустановка и обновление списка системных пакетов.

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

Если ваша система жалуется на неудачное обновление, конфликты диспетчера пакетов, неработающие обновления или другие проблемы, связанные с пакетами, существует несколько распространенных способов устранения этих проблем. Некоторые проблемы с диспетчером пакетов можно решить с помощью графической программы обновления, но для многих требуется командная строка. Если вы видите красный кружок в строке состояния, выполните следующие команды, чтобы исправить ваш менеджер пакетов:

Иногда некоторые пакеты все еще не работают, и их необходимо установить или очистить вручную. Могут быть сломанные зависимости или циклические зависимости. Если это так, эти команды могут помочь:

Эта команда переустанавливает пакет. Это может быть удобно, когда пакет имеет много обратных зависимостей.

Это приведет к удалению пакета и его файлов конфигурации. Используйте эту команду, чтобы удалить пакет, вызывающий проблемы, и переустановите его с помощью этой команды:

Важно! Будьте внимательны при использовании команды очистки. Если команда выглядит так, как будто она удалит несколько дополнительных пакетов помимо того, который вы пытаетесь исправить, не запускайте ее! Если это всего несколько упаковок, скорее всего, это безопасно. Если дополнительные пакеты удалены, обязательно установите их снова перед перезагрузкой компьютера. Эта команда обеспечит установку основных компонентов Pop!_OS после любых команд очистки:

Если Software Updater указывает, что некоторые удаленные репозитории недоступны, откройте программу Software & Updates и найдите неработающий репозиторий на вкладке «Другое программное обеспечение». Либо удалите репозиторий, либо найдите поставщика программного обеспечения, чтобы определить, что случилось с его сервером программного обеспечения. Иногда версию репозитория (xenial, yakkety, zesty, artful и т. д.) необходимо изменить, чтобы она соответствовала текущей версии операционной системы.

Обновление с задержанными пакетами

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

ПРИМЕЧАНИЕ. Этот процесс предназначен для использования на временной основе только для тестирования. System76 не рекомендует откладывать пакеты, если только это не будет специально указано службой поддержки.

Сначала удалите новый пакет с помощью этой команды Терминала:

Затем найдите имя пакета в репозиториях apt:

Затем установите нужную версию:

Чтобы выполнить обновление, сохранив текущую версию некоторых пакетов, используйте следующую команду терминала:

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

Чтобы снять блокировку запуска приложения:

Показать, какие пакеты хранятся в настоящее время:

Если Терминал ничего не возвращает, пакеты не удерживаются.

Если Pop!_Shop указывает, что некоторые удаленные репозитории недоступны, откройте Repoman и найдите неработающий репозиторий на странице «Дополнительные источники». Либо отключите, либо удалите репозиторий, либо найдите поставщика программного обеспечения, чтобы определить, что случилось с его сервером программного обеспечения. Иногда требуется изменить версию репозитория (xenial, bionic, focus, groovy и т. д.), чтобы она соответствовала текущей версии операционной системы.

Пакеты снимков

Snaps предназначены для обновления по мере необходимости, но если вы хотите вручную обновить Snap в своей системе Ubuntu, выполните следующие команды:

Чтобы удалить запуск пакета Snap:

Полезные программы

Программа Synaptic представляет собой очень мощный графический интерфейс менеджера пакетов. Пакеты можно устанавливать, удалять, выборочно обновлять, закреплять и получать информацию об их назначении и зависимостях. Он также предоставляет полный список доступных пакетов и программ для загрузки. Его можно установить в Центре программного обеспечения или с помощью этой команды:

Читайте также: