Я думаю, что самый легкий путь состоит в том, чтобы выполнить массовое копирование программ и библиотек от другой установки в отдельный каталог. Например, от живого CD как systemrescuecd, который может, содержит все, в чем Вы нуждаетесь только для сотни мегабайтов, скопированной в/opt/new/. Это позволяет Вам копировать, не имея необходимость искать/находить/предполагать/тестировать, какие библиотеки необходимы.
Можно затем запустить те программы с LD_LIBRARY_PATH=/opt/new/lib/ ; /opt/new/bin/diff
или LD_LIBRARY_PATH=/opt/new/lib/ ; /opt/new/bin/bash
Это должно работать безупречно, пока утилиты не читают старые конфигурационные файлы, которые они больше не понимают. Или хуже, пока они не пишут в них.
После того как это работает, можно скопировать новые библиотеки в/lib/для упущения о приеме LD_LIBRARY_PATH. Пока имена файлов не сталкиваются, это безопасно (я думаю, другое приветствие совета).
И даже замените старые двоичные файлы новыми (только для выбранных), если Вы смеете, но возможно не хорошая идея для рабочего сервера.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\exefile\shell\open\command]
@="\"%1\" %*"
"IsolatedCommand"="\"%1\" %*"
При установке и удалении пакетов вы должны в 95 % случаев использовать [115467]yum[115468] для выполнения тяжелой работы. Итак, для установки пакета:
Для удаления пакета:
Тогда возникает вопрос, какому пакету принадлежит данный файл? Для определения этого вы можете использовать команду [115469]типа[115470], чтобы программно разобраться в этом.
Чтобы определить, какому RPM-пакету принадлежит данный файл, можно воспользоваться командой [115471]rpm[115472], чтобы запросить системную RPM-базу вот так:Чтобы придумать и выполнить команду [115473]type[115474] вместе с командой [115475]rpm[115476] в одном строке, например:
Так почему я не могу просто использовать RPM для установки и удаления?
Это правда, что вы можете использовать переключатель стирания [115477] rpm[115478], [115479]-e[115480] для удаления пакета, но я часто призываю новичков использовать [115481]yum[115482], потому что [115483]yum[115484] имеет более высокий уровень перспектив системы и может определить, повлияет ли удаление данного пакета на другие пакеты, и [115485]yum[115486] может также удалить другие ненужные пакеты, когда вы направляете его на удаление данного пакета, если они больше не требуются.
ПРИМЕЧАНИЕ [115488] Итак, в итоге [115489]yum[115490] просто умнее в управлении пакетами, чем [115491]rpm[115492].
Удаление этих пакетов - это "хорошо"?Так как эти пакеты были дополнительно установлены после установки/установки вашей системы, их удаление не имеет большого значения. Однако, я бы предупредил вас об удалении пакетов, которые вы не полностью понимаете их роль, особенно пакетов, таких как этот, в которые включены несколько инструментов, а не только один.
Часто в пакет входит набор утилит командной строки, который обычно не используется, в то время как некоторый другой набор утилит используется либо вами постоянно, либо другими утилитами/скриптами/прочинками постоянно.
Удаление таких инструментов может привести к раздражающим поломкам и, как правило, просто тратит ваше время, поэтому я рекомендую вам просто оставить эти пакеты установленными.[114901]
ls /tmp
Чтобы получить полное имя пакета, владеющего командой [115286] dig[115287] (версия пакета просто пример из CentOS 5.8):
ls /temp
Тогда вы можете удалить этот пакет, используя:
ls /temp
Если вы хотите узнать больше о [115288]rpm[115289] или [115290]yum[115291]: [115292]man rpm[115293] или [115294]man yum[115295].
WARNING[115297]: Если это не является обязательным, то этот пакет всё ещё содержит некоторые очень полезные утилиты, связанные с DNS, такие как [115298]host[115299]:
export HISTCONTROL=ignoredups
export HISTCONTROL=ignoreboth
Это должно избавиться от любого пакета, который был установлен с yum. Так что в вашем случае, запустите:
set revert-all-at-newline on
yum remove bind-utils