Я смотрю на ферму серверов RedHat Enterprise Linux (RHEL) 5.3, на которых установлены GNOME и Xorg, ни один из которых не нуждается в них. Они были развернуты третьей стороной из шаблона виртуальной машины, и я не знаю всей их истории. Я точно знаю, что ни один из них не запускает приложение, которое на самом деле требует установки полного графического интерфейса. Однако возможно, что кто-то запустит приложение, требующее некоторых X-библиотек (на ум приходит ImageMagick).
В соответствии с yum grouplist
, группа X Window System не установлена, поэтому я не могу использовать yum groupremove
Вот.
Есть ли пакет или пакеты с достаточно низким уровнем цепочки зависимостей, которые я могу удалить и которые вытянут Gtk, GNOME и Xorg? В качестве альтернативы, если он сгенерирует список пакетов, которые нужно удалить перед запуском, мы можем переустановить нужные нам приложения, которые, когда мы закончим, откатят библиотеки X.
Вы также можете подумать о том, чтобы просто не запускать X-сервер / GDM при загрузке и оставить пакеты там. Я предполагаю, что они займут некоторое место и добавят время для обновлений, но в остальном я не думаю, что они вызовут какие-либо проблемы.
Для вашей ситуации вы действительно можете захотеть их удалить, или вы, возможно, уже думали об этом, но я просто хотел бы выложить это там :-)
Я заставил это работать с Kickstart. Если вы создаете файл конфигурации кикстарта, вы можете исключить базу из определения пакетов и получить действительно минимальную установку. Я думаю, что он был настолько минималистичным, что в нем даже не было yum и нескольких других, и мне пришлось добавить эти пакеты обратно.
Я делаю в основном то же самое в данный момент. Мой метод в основном ручной из-за отсутствия инструментов для этого, но он может помочь.
Сначала разверните новый сервер с правильным списком необходимых пакетов, то есть без X и Gnome. Затем сравните список пакетов на старом и новом сервере. Неразумно просто пытаться удалить всю разницу со старого сервера - никогда не знаешь, что сломается, - но это может быть началом. Возьмите несколько больших пакетов из diff, которым вы являетесь конечно не будет ломать вещи (например, наутилус) и начинать оттуда. Попробуйте rpm -e --test
по составленному списку промыть, повторить. Затем окончательный список можно безболезненно использовать на других серверах, учитывая, что все серверы похожи.
Я искренне согласен, что это не лучший, чистый и стандартизированный способ сделать это, но я ценю удаление Gnome и X crud с моих серверов больше, чем наличие некоторого упрощенного процесса для этого. Помните, что я не устанавливал эти серверы, я просто их очищаю. ;-)
Мы удаляем пакеты только во время простоя исправления, поэтому мы можем протестировать приложение (в основном Oracle) сразу после их удаления. В случае поломки мы yum install
список и попробуйте еще раз с меньшим подмножеством. Ничего подобного не случалось, но будьте готовы к худшему. Как сказал Эван: это рискованное дело.
Моя основная цель - удалить с серверов более крупные X-приложения (например, nautilus, firefox, openoffice и т. Д.) В основном по причине снижения уровня безопасности. Тот факт, что некоторые небольшие приложения, возможно, останутся установленными, меня устраивает - на данный момент - потому что мы являются «поймать большую рыбу», так сказать.
Я не делал этого с настоящим живым RHEL, но я извлек X из CentOS 5.1 и 5.2. (Я вытаскивал X из дистрибутивов на основе Redhat в течение многих лет ... с тех пор, как зависимости были сделаны так, что вы, в основном, было для установки X, хотите вы этого или нет.)
Я не помню точных зависимостей, но, насколько я помню, есть некоторые раздражающие зависимости, для которых требуется аргумент «--nodeps» для RPM, чтобы заставить ошибочные RPM удалить. Я просто начинаю извлекать ненужные пакеты, добавлять все больше и больше пакетов в командную строку «rpm -e» и, наконец, добавлять «--nodeps», когда это необходимо.
Не знаю, рекомендовал бы делать это для производственных машин. Я не развертываю какое-либо количество CentOS в производственных средах, поэтому, вероятно, я могу испортить свою установку. В производственной среде дисковое пространство стоит недорого. Мне не нравится устанавливать ненужное программное обеспечение с точки зрения безопасности, но The Right Thing(тм) вероятно, перекомпилировать пакеты с ошибочными зависимостями (очевидно, без проблемных зависимостей), а не просто извлекать и потенциально сделать систему непригодной для использования.