Package Refinement

Shabazian, Chip Chip.Shabazian at bankofamerica.com
Tue Sep 26 20:45:43 UTC 2006


The redirect works just fine for me.  Here is a copy/paste from my
session:

[root at server directory]# rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort
-k1,1n > /tmp/test ; head /tmp/test
         0      basesystem
         0      dev
         0      filesystem
         0      gpg-pubkey
         0      gpg-pubkey
         0      gpg-pubkey
        37      docbook-utils-pdf
       184      aspell-config
      1004      crontabs

Specspo, aspell, and probably the rest are in the dialup group, which is
required if you don't use --nobase.  You will have to remove it manually
or use --nobase and ADD a lot of packages to your build.

WHY dialup is required is a different question that I have been asking
Red Hat for YEARS.  I've yet to see a production server that uses
dialup.

-----Original Message-----
From: kickstart-list-bounces at redhat.com
[mailto:kickstart-list-bounces at redhat.com] On Behalf Of Robert Denton
Sent: Tuesday, September 26, 2006 1:29 PM
To: Discussion list about Kickstart
Subject: Re: Package Refinement

I just did a test build with the sample I showed you before, and I
included:

-@ dialup
-@ java

The install did not complain, but the files were still installed.  I am
surprised that the install did not abort or ask for input. In the past
when I have excluded packages from the packages list I had to add the
arch (ex: -package_name.i386) or the install would die.

I am surprised you can have something in your packages list that means
nothing does nothing and there is no complaint from anaconda at all.
The only packages where I include an entire group are for webserver and
mailserver, and then I just remove the packages I do not need from them,
like:

%packages --resolvedeps
@ web-server
-squid.i386
-webalizer.i386
-tux.i386
@ mail-server
-dovecot.i386
-spamassassin.i386
-@ dialup
-@ java

I also specify the following packages individually:

kernel
grub
expect
vim-enhanced
lvm2
perl
perl-libwww-perl
tcl
ntp
netconfig
wget

Oddly though there are a bunch of packages that do not seem to be
related to the groups and are not in my list that get installed. Here
are some examples of packages that I cannot explain how or why they were
installed:

specspo (for internationalizing packages) aspell cracklib-dicts
xorg-x11-libs (I do not install a gui at all)


Robert Denton
Network Administrator
Headsprout
800.401.5062 x1305
www.headsprout.com

On Sep 26, 2006, at 3:53 PM, Shabazian, Chip wrote:

> I don't think you can remove a default package group this way:
> -@ dialup
>
> But, I've never tried it.....
>
> Other than that, yes your sample is fine, however I wouldn't add 
> entire package groups because you need a particular package.  Start 
> with a bare build.  In other words, have a %packages with nothing in 
> it (unless you want to try -@ dialup), then only add the packages you 
> NEED to get the environment running:
>
> up2date httpd perl-libwww-perl
>
> This will resolve deps and give you a list of needed packages which 
> you can then add into your kickstart file if you wish.
>
> You can then figure out what you can REMOVE by removing packages.  rpm

> won't allow you to remove anything that's needed by another package 
> unless you force it:
>
> rpm -e squid
>
> All of the packages you've removed go into your packages section with 
> a minus in front of them.
>
> Alternatively, you CAN go through the comps.xml and try to figure it 
> all out first, but I've found this way to be MUCH easier.
>
> This is a BARE MINIMUM I have come up with (RHEL3 I believe) that 
> still allows you to get into the server via ssh and load additional 
> rpms
>
> %packages
> # you COULD delete the following, but I want them #-portmap 
> #-openssh-clients #-openssh-server #-openssh #-openssl #-vim-minimal 
> #-vim-common #-dhclient # To install a Minimum X environment, the 
> following is all that is needed # XFree86-twm -cyrus-sasl
> -cyrus-sasl-md5
> -glib2
> -kbd
> -krb5-libs
> -libuser
> -openldap
> -tcp_wrappers
> -usermode
> -zip
> -xinetd
> -wget
> -vixie-cron
> -usbutils
> -up2date
> -unzip
> -unix2dos
> -traceroute
> -tmpwatch
> -time
> -telnet
> -tcsh
> -tcpdump
> -sysreport
> -symlinks
> -stunnel
> -specspo
> -slocate
> -sharutils
> -sendmail
> -rsync
> -rpm-python
> -rpmdb-redhat
> -rootfiles
> -rmt
> -rhpl
> -rhnlib
> -redhat-release
> -redhat-menus
> -redhat-logos
> -readline
> -raidtools
> -quota
> -pyxf86config
> -python-optik
> -python
> -pyOpenSSL
> -psacct
> -procmail
> -pinfo
> -pdksh
> -pciutils
> -patch
> -passwd
> -parted
> -nss_ldap
> -nscd
> -nfs-utils
> -netdump
> -netconfig
> -ncompress
> -mt-st
> -mtr
> -mtools
> -mgetty
> -mdadm
> -man-pages
> -man
> -MAKEDEV
> -make
> -mailx
> -mailcap
> -m4
> -lsof
> -lslk
> -logwatch
> -logrotate
> -lockdev
> -libtool-libs
> -libstdc++
> -libgcj
> -kernel-utils
> -kernel
> -htmlview
> -hotplug
> -hesiod
> -hdparm
> -groff
> -gnupg
> -gmp
> -ftp
> -file
> -elfutils
> -eject
> -ed
> -dump
> -dos2unix
> -diffutils
> -devlabel
> -cyrus-sasl-plain
> -crontabs
> -cpio
> -bzip2
> -binutils
> -bind-utils
> -bc
> -autofs
> -authconfig
> -attr
> -at
> -fbset
> -finger
> -iptables-ipv6
> -irda-utils
> -isdn4k-utils
> -jfsutils
> -jwhois
> -krb5-workstation
> -krbafs-utils
> -lftp
> -lha
> -libwvstreams
> -nano
> -ppp
> -prelink
> -rdate
> -redhat-config-mouse
> -redhat-config-soundcard
> -rp-pppoe
> -rsh
> -samba
> -samba-common
> -schedutils
> -setarch
> -star
> -sudo
> -talk
> -tftp
> -vconfig
> -wireless-tools
> -wvdial
> -cyrus-sasl-gssapi
> -ipsec-tools
> -libobjc
> -pam_smb
> -acl
> -apmd
> -aspell
> -cups
> -cups-libs
> -dosfstools
> -gettext
> -iptables
> -krbafs
> -libjpeg
> -libpng
> -libtiff
> -minicom
> -mkbootdisk
> -nc
> -ntsysv
> -pam_krb5
> -pax
> -pspell
> -rdist
> -redhat-config-network-tui
> -redhat-config-securitylevel-tui
> -redhat-lsb
> -setserial
> -setuptool
> -syslinux
> -utempter
> -ash
> -kernel-pcmcia-cs
> -yp-tools
> -ypbind
> -acpid
> -authd
> -diskdumputils
> -eal3-certification
> -eal3-certification-doc
> -iscsi-initiator-utils
> -jpackage-utils
> -laus
> -nss_db
> -pam_passwdqc
> -up2date-update
>
> Chip
>
> -----Original Message-----
> From: kickstart-list-bounces at redhat.com 
> [mailto:kickstart-list-bounces at redhat.com] On Behalf Of Robert Denton
> Sent: Tuesday, September 26, 2006 12:40 PM
> To: Discussion list about Kickstart
> Subject: Re: Package Refinement
>
> Thanks for the quick response.  So, if I do nnot use --nobase, but 
> want to exclude those default groups, can I do this:
>
> %packages --resolvedeps
> @ web-server
> -squid.i386
> -webalizer.i386
> -tux.i386
> @ mail-server
> -dovecot.i386
> -spamassassin.i386
> -@ dialup
> -@ java
>
> kernel
> grub
> e2fsprogs
> expect
> vim-enhanced
> lvm2
> perl
> tcl
> perl-libwww-perl
> ntp
> netconfig
> wget
>
>
>
> On Sep 26, 2006, at 3:32 PM, Shabazian, Chip wrote:
>
>> Sorry, in %packages, DON'T include version, and don't forget the s 
>> like I did ;)
>>
>> %packages
>> -finger
>> -iptables-ipv6
>> httpd
>> perl-libwww-perl
>>
>> -----Original Message-----
>> From: kickstart-list-bounces at redhat.com 
>> [mailto:kickstart-list-bounces at redhat.com] On Behalf Of Shabazian, 
>> Chip
>> Sent: Tuesday, September 26, 2006 12:28 PM
>> To: Discussion list about Kickstart
>> Subject: RE: Package Refinement
>>
>>
>> 1) You can figure out which rpm provides which file by using -qf:
>>
>> [root at someserver directory]# rpm -qf
>> /usr/lib/perl5/vendor_perl/5.8.0/LWP
>> perl-libwww-perl-5.65-6
>>
>> 2) If you want to exclude all those hidden packages, you can use
>> nobase:
>>
>> %packages --nobase
>>
>> However, doing this will require you to ADD a lot of packages back to

>> the build in order to get a bootable, useable system.  I find it 
>> easier to remove unwanted packages and add the ones I want:
>>
>> %package
>> -finger
>> -iptables-ipv6
>> httpd
>> perl-libwww-perl-5.65-6
>> ... etc
>>
>> 3) You can use your standard redirects:
>>
>> rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1n > /tmp/ 
>> rpms_by_size
>>
>>
>> -----Original Message-----
>> From: kickstart-list-bounces at redhat.com 
>> [mailto:kickstart-list-bounces at redhat.com] On Behalf Of Robert Denton
>> Sent: Tuesday, September 26, 2006 12:13 PM
>> To: Discussion list about Kickstart
>> Subject: Package Refinement
>>
>> Hello all,
>>
>> Now that I have the kickstart file mostly working how I would like 
>> it,
>
>> I would like some advice on how to reduce the packages installed to 
>> the bare minimum for what I would like to do (simple webserver - not 
>> exposed to internet). Here are some specific queries:
>>
>> 1. I have noticed that my perl scripts that use LWP will not work 
>> unless I include @development-tools in the package list.  Since the 
>> units I am building will not serve as workstations for development, I

>> would rather not install that group at all.  I am wondering 
>> specifically what package in that group is providing the LWP support.
>
>> There are a lot of PERL related packages in @development- tools but 
>> they all seem to relate to XML. The page I am relying on for info is
>> here:
>>
>> 	http://penguin.triumf.ca/comps/fc4/comps-v4-lang-en_US.html
>>
>> 2. "Default, Hidden"  There are two package groups that are listed as

>> Default, Hidden, which I am wondering if they are installed without 
>> being listed in the packages group.  They are @dialup and @java.
>> Lets take dialup for example. @dialup includes the following
>> defaults:  ppp, isdn4k-utils, lrzsz, minicom, statserial, wvdial.
>> Oddly, everyone of these packages are installed although I did not 
>> specify the group in the packages list.  Thus the 'Default. Hidden'
>> must indeed override the packeges list.  Is there some reason why my 
>> system would need these files although there is NO modem?
>>
>> 3. I have found a way to list all packages installed, sorted by size 
>> but I would love to redirect the output of the command to a file. My 
>> usual bag of tricks is not working (cat, >, etc). Any suggestions?
>> Here is the command:
>>
>> rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1n
>>
>> Thanks for any and all input!!
>>
>> _______________________________________________
>> Kickstart-list mailing list
>> Kickstart-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/kickstart-list
>>
>> _______________________________________________
>> Kickstart-list mailing list
>> Kickstart-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/kickstart-list
>>
>> _______________________________________________
>> Kickstart-list mailing list
>> Kickstart-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/kickstart-list
>
>
> _______________________________________________
> Kickstart-list mailing list
> Kickstart-list at redhat.com
> https://www.redhat.com/mailman/listinfo/kickstart-list
>
> _______________________________________________
> Kickstart-list mailing list
> Kickstart-list at redhat.com
> https://www.redhat.com/mailman/listinfo/kickstart-list


_______________________________________________
Kickstart-list mailing list
Kickstart-list at redhat.com
https://www.redhat.com/mailman/listinfo/kickstart-list




More information about the Kickstart-list mailing list