I setup a kickstart file that contains only @core and several packages explicitely listed. postfix is listed, sendmail is not. And there's no package where I would think it needs cups. Nevertheless, after the install I now have postfix *and* sendmail on the machine and sendmail even being enabled. And cups is installed.
How can I find out what forced them (and probably many other unwanted packages) on the installation? I thought maybe "rpm -q --whatrequires sendmail" would tell me, but it doesn't. Nothing requires it. Same for cups. So, why did it get installed?
Kai
How can I find out what forced them (and probably many other unwanted packages) on the installation? I thought maybe "rpm -q --whatrequires sendmail" would tell me, but it doesn't. Nothing requires it. Same for cups. So, why did it get
installed?
I usually do a rpm -q --provides <package name> and have it list the capabilities that the rpm provides and then do a --whatrequires on the capabilities themselves. Hopefully someone more knowledgeable can jump in and explain an easier way. But that is what I do. You'll see that one of the items that sendmail provides is smptdaemon which is the usual source of dependencies in my experience. However postfix also provides it, so perhaps that's no help.
Alex
On Mon, Apr 28, 2008 at 3:25 PM, Kai Schaetzl maillists@conactive.com wrote:
I setup a kickstart file that contains only @core and several packages explicitely listed. postfix is listed, sendmail is not. And there's no package where I would think it needs cups. Nevertheless, after the install I now have postfix *and* sendmail on the machine and sendmail even being enabled. And cups is installed.
How can I find out what forced them (and probably many other unwanted packages) on the installation? I thought maybe "rpm -q --whatrequires sendmail" would tell me, but it doesn't. Nothing requires it. Same for cups. So, why did it get installed?
<assumption> I would guess that sendmail is included in @core or something else is that depends on a mail package. Just because you include postfix later, you can't count on things included in @core that depend on a mail program to know that postfix will eventually be there. I believe sendmail is the default mail package when it comes to resolving dependencies, unless postfix is already installed. </assumption>
I have a work-in-progress kickstart config that attempts a more minimal install than can be done from CD. The key is "--nobase". But then many essential things must be explicitly installed. This gets me postfix and no sendmail. YMMV.
%packages --nobase bind-utils coreutils crontabs dhclient e2fsprogs file grub mailx man openssh-clients openssh-server postfix rootfiles rpm vim-minimal vixie-cron wget yum -kernel-smp
Jeff Larsen wrote on Mon, 28 Apr 2008 16:12:48 -0500:
%packages --nobase
That's the one I needed here. Thanks. Once I add that both packages are gone. This switch is mentioned on the CentOS wiki, but unfortunately not in the official Red Hat documentation.
Kai
Kai Schaetzl wrote:
How can I find out what forced them (and probably many other unwanted packages) on the installation? I thought maybe "rpm -q --whatrequires sendmail" would tell me, but it doesn't. Nothing requires it. Same for cups. So, why did it get installed?
cups gets pulled in by the redhat-lsb package which has /usr/bin/lpr as a requirement.
sendmail is in the core group. If you kickstart, you can say
-sendmail postfix
in your package section to exclude sendmail from getting installed. You don't want to exclude the redhat-lsb package, as that pulls in loads of needed software during the installation.
Cheers,
Ralph
Ralph Angenendt wrote on Tue, 29 Apr 2008 11:24:21 +0200:
cups gets pulled in by the redhat-lsb package which has /usr/bin/lpr as a requirement.
It came in even after removing redhat-lsb. It stopped after using -- nobase.
sendmail is in the core group. If you kickstart, you can say
-sendmail postfix
in your package section to exclude sendmail from getting installed.
I know that I can remove single packages, but I'm sure there were more unwanted packages getting pulled in. That's why I wanted to know more about the cause.
You
don't want to exclude the redhat-lsb package, as that pulls in loads of needed software during the installation.
Thanks for the info. I checked the requires and I have most of them on the machine, anyway, probably from installing core. What's missing without redhat-lsb are a very few libraries like libICE. I'll see if adding redhat-lsb gives me cups again.
Kai