在虚拟化的红帽服务器的农场中,出于安全原因需要安装最less的系统。 最小的安装有几个优点(甚至没有安全相关):
不幸的是,这并不容易,因为红帽上的“最小安装”包含许多不必要的软件包。
当农场运行Oracle iAS时,还有一个额外的挑战。 我被告知,iAS与本地graphics环境有依赖关系。 所以最后农场里的每个服务器都有gnome,X等
我一直在寻找networking,一个解决scheme似乎正在制作一个kickstart脚本,将只安装必要的软件包。 但是我觉得这很困难,并且对于如何保持系统依赖关系有所怀疑。
你如何安装最小的红帽服务器? 是否可以使用kickstart或将在安装或更新中有依赖项问题? 有没有办法避免为iAS安装graphics环境?
我一直在寻找networking,一个解决scheme似乎是做一个kickstart脚本,将只安装必要的软件包。 但是我觉得这很困难,并且对于如何保持系统依赖关系有所怀疑。
制作kickstart文件并不困难:在你安装的服务器的/ root目录中查找名为anaconda-ks.cfg的文件。 这是一个kickstart文件,使一个新的服务器看起来像现有的。 每个RH,Fedora或者CentOS服务器都有这个文件。
如果您不熟悉写入kickstart文件,可以在system-config-kickstart中编辑文件。 你虽然需要X.
你如何安装最小的红帽服务器? 是否可以使用kickstart或将在安装或更新中有依赖项问题? 有没有办法避免为iAS安装graphics环境?
你用kickstart文件做得很好。 Kickstart会影响您安装后更新的方式。 在安装过程中,相关性会自动计算。 你已经删除的软件包(如果可能的话)仍然是需要的。 您无法为系统安装具有中断依赖关系的系统 。 Oracle的依赖关系是一个完全不同的问题。
如果Oracle需要一个graphics化的环境(这样做,我知道它很糟糕,但确实如此),除了安装X之外别无select。然而,afaik,Oracle需要X,因为它有一个graphics化的安装程序。 之后你不需要X. 所以安装后,你可以删除X.
在我的店里,我们只安装了一个非常小的一套X库,顺便说一句。 只需足以通过X转发来运行xclock(从而运行安装程序)即可。 这就够了。
Oracle有更疯狂的依赖关系。 Oracle安装程序需要一些古老的C库compat包。 不是因为它确实需要它们,而是因为它们运送的zip实现需要它们。 他们为什么运送这个zip实现? 有传言说,Oracle推出的非常古老的压缩实施有更有利的许可条款(如:不是GPL),所以他们拒绝使用更新的实现。 只是传闻,从来没有听到确认…
KIckstart很好。 如果你想确定某些软件包没有被安装,你可以在要安装的软件包/组列表中列出它们,前面加一个减号(' – ')。
例如
%packages
@base
core-utils
-httpd
确保apache不会被安装
然后在%post部分中,您可以运行诸如chkconfig命令来closures您不想要的服务 – 并且执行任何您想要执行的操作来加强安装。
你的问题实际上不是RedHat,而是更多的Oracle依赖。
正如前面的海报所说,Oracle的依赖关系是疯狂的,主要连接到蹩脚的安装程序,而不是产品本身。
你需要把你的问题分成两部分:
第二部分是最困难的,你需要花一些时间从oracle pre-req中确定什么是真正需要的,什么是一个愚蠢的依赖。
但完成后,您可以自动安装,并在所有系统上进行最低限度的维护。
您可以安装一次,进行备份并在其他系统上使用它。 为了获得一个最小的系统使用,你可以:
我会说后者更容易完成。 这可能需要一段时间,但这并不重要,因为你只会做一次。
如果农场具有同质的虚拟“硬件”,那就更好了。 如果不是,一般你需要关心的是充分利用磁盘空间。 只要使“主”副本在尺寸方面符合最小分母,并参见下文。
最后一部分在一些条件下相对容易实现。 如果在(虚拟)磁盘末尾有一个最大的分区,您可以在“fdisk”中将其删除,然后重新创build它以填满磁盘。 然后你运行resize2fs就完成了。 另一个想法可能是使用LVM,它允许使用“lvextend”更容易扩大音量。 (在LVM中,脚本/自动化是非常容易的。)
我正在回答另一个老的,因为我昨天花了一段时间。 我希望红帽安装一个专用服务器的最小数量的包。
看来在最新版本中,即使没有在%packages部分中指定单个包,默认情况下也会安装组@base 。
这安装了比我在某些系统上维护更多的包和服务。
然后我在CentOS Kickstart / Anaconda Wiki中find%packages --nobase 。 这确实是基于Red Hat的发行版的最小安装。 你会发现许多你习惯的并且依赖于缺less的命令。 但是,如果你想要一个最小的起点,这是它。