2nd attempt since I seem to be having typing problems today...
I know this isn't the SL devos fault, but maybe I'm doing something
unexpected or being silly. Either seems fairly likely today.
It seems that yum shell doesn't understand check-update, so feeding it
info like:
makecache
repo enable sl-damtpbits
repo enable .....
repo enable .....
makecache
check-update
results in:
$ yum shell yum.repo.shell
Loading "skip-broken" plugin
Loading "fastestmirror" plugin
Loading "priorities" plugin
Loading "kernel-module" plugin
Loading "changelog" plugin
Loading "downloadonly" plugin
Loading "tsflags" plugin
Setting up Yum Shell
Setting up repositories
sl-testedbits 100% |=========================| 1.1 kB 00:00
sl-mirror-base 100% |=========================| 1.1 kB 00:00
Loading mirror speeds from cached hostfile
Setting up repositories
sl-damtpbits 100% |=========================| 951 B 00:00
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
Setting up repositories
sl-mirror-security 100% |=========================| 951 B 00:00
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
Setting up repositories
sl-mirror-fastbugs 100% |=========================| 951 B 00:00
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
usage: yum [options] < grouplist, localinstall, groupinfo, localupdate,
resolvedep, erase, deplist, groupremove, makecache, upgrade, provides, shell,
install, whatprovides, groupinstall, update, groupupdate, info, search,
check-update, list, remove, clean, grouperase >
None
Shell specific arguments:
config - set config options
repository (or repo) - enable/disable repositories
transaction (or ts) - list, reset or run the transaction set
run - run the transaction set
exit or quit - exit the shell
Leaving Shell
replacing 'check-update' with 'list updates' does something sane, and ends with
a list of updates from the repos we now have enabled.
Just to make me feel less confident in yum the following does not do what I
would expect:
repo list
repo enable sl-damtpbits
repo list
Instead of showing the repo being (temporarily) enabled it appears not to have
affected the list at all.
$ yum shell
Loading "skip-broken" plugin
Loading "fastestmirror" plugin
Loading "priorities" plugin
Loading "kernel-module" plugin
Loading "changelog" plugin
Loading "downloadonly" plugin
Loading "tsflags" plugin
Setting up Yum Shell
> repo list
repo id repo name status
...
sl-damtpbits DAMTP extra bits for SL5 disabled
...
> repo enable sl-damtpbits
Setting up repositories
Loading mirror speeds from cached hostfile
Disabling Repository
> repo list
repo id repo name status
...
sl-damtpbits DAMTP extra bits for SL5 disabled
...
however if I do makecache *before* doing repo enable then it works...
$ yum shell
Loading "skip-broken" plugin
Loading "fastestmirror" plugin
Loading "priorities" plugin
Loading "kernel-module" plugin
Loading "changelog" plugin
Loading "downloadonly" plugin
Loading "tsflags" plugin
Setting up Yum Shell
> repo list
repo id repo name status
...
sl-damtpbits DAMTP extra bits for SL5 disabled
...
> makecache
Setting up repositories
sl-testedbits 100% |=========================| 1.1 kB 00:00
sl-mirror-base 100% |=========================| 1.1 kB 00:00
Loading mirror speeds from cached hostfile
> repo enable sl-damtpbits
Setting up repositories
sl-damtpbits 100% |=========================| 951 B 00:00
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
> repo list
repo id repo name status
...
sl-damtpbits DAMTP extra bits for SL5 enabled
...
Finally (I hope) 'repo enable *' causes a python error and backtrace but then I
think that is because it doesn't like wildcards here.
Is 'yum shell' something I shouldn't be playing with? I was doing this to
avoid having to make 2 calls to yum:
yum --enablerepo=... --enablerepo=... makecache
yum --enablerepo=... --enablerepo=... check-update
the makecache being to ensure that the cache (of the repos I'm normally leaving
off) is fresh for the check-update. From the manual I'd assumed it tuned into
calling yum shell with something like:
repo enable ...
repo enable ...
makecache
check-update
Instead it seems I need to feed it:
makecache
repo enable ...
repo enable ...
makecache
list updates
which is fair enough if only I understood why...
BTW is the installonlyn yum plugin available (as part of some package
somewhere)?
http://people.redhat.com/~katzj/installonlyn.py
# A plugin for yum which only leaves n 'kernel' packages installed instead
# of infinitely doing installonly
I found a thread on a Centos mailing list suggesting it was part of yum-utils
but that was for Centos-4 anyway.
http://lists.centos.org/pipermail/centos-devel/2006-August/002361.html
FC 5 and 6 appear to have this functionality included in the base yum package
and so does the yum in TUV-el5 if you see what I mean.
$ rpm -qlp yum-3.0.1-5.el5.src.rpm | grep installonlyn
installonlyn.py
I don't know if it is *enabled* by default in those releases though!
--
Jon Peatfield, Computer Officer, DAMTP, University of Cambridge
Mail: [log in to unmask] Web: http://www.damtp.cam.ac.uk/
|