[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Make hardlinking kernel-devel optional



Once upon a time, Dave Jones <davej redhat com> said:
> only if you have a huge number of kernels installed, which shouldn't be the case.

If you don't have a huge number of kernels installed, hardlink isn't a
big benefit.  The kernel-devel package is 14MB installed.  Hardlinking
with 3 kernel-devel packages installed will save no more than 28MB (and
probably less).  That is lost in the noise of a normal system.  Just
doing "yum update" will often use much more than 28MB; even after a "yum
clean packages" on a rawhide system I see 90MB in /var/cache/yum.

Also, hardlink apparently may not be very efficient.  I whipped up a
version in perl that (in my limited testing) appears faster.  Others
have written C and C++ (and maybe IIRC python) versions that also appear
to be faster.  How about replacing it with something better performing?

The solution of "rpm -e hardlink" is also not very good, as some people
use hardlink for other things (and so can't just remove it).

As a compromise, how about only kicking hardlink off if there are more
than X kernel-devel packages installed (where X is more than the norm,
like 5)?  Or how about making the hardlink run as a cron job?

Another though: why the "find | while ; do hardlink"?  You should just
be able to do:

if [ -x /usr/sbin/hardlink ] ; then
  /usr/sbin/hardlink /usr/src/kernels/*FC*
fi

The post script is forking hardlink over 5000 times as well as causing
thousands of repeated directory lookups by find and the shell (that
hardlink then has to do anyway), instead of just letting one run of
hardlink do its job (it should recurse just fine).

-- 
Chris Adams <cmadams hiwaay net>
Systems and Network Administrator - HiWAAY Internet Services
I don't speak for anybody but myself - that's enough trouble.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]