Results 1 to 10 of 10

Thread: How to: Create a local update server

  1. #1

    Default How to: Create a local update server

    We have several linux hosts at our site. I would like to set one of the servers to offer a local update service rather than have each host contact the public servers for update information. This would greatly speed the updates for each host since we only have a DSL connection (about 1.2Mbps transfer rate).

    Is there a tutorial somewhere that describes how to set up a "shadow" update server?

  2. #2
    Join Date
    Nov 2009
    Location
    West Virginia Sector 13
    Posts
    15,769

    Default Re: How to: Create a local update server

    In short copy all the files from the repos you use. Note that you will need to do this periodically to get updates.
    Point the clients to this new directory(s)

    That should do it.

  3. #3
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    27,235
    Blog Entries
    15

    Default Re: How to: Create a local update server

    Hi
    Use rsync to mirror the stuff your wanting;
    openSUSE:Mirror infrastructure - openSUSE
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

  4. #4
    Join Date
    Jun 2008
    Location
    UTC+10
    Posts
    9,686
    Blog Entries
    4

    Default Re: How to: Create a local update server

    Set up a squid proxy and point your clients to that. It will only fetch on demand by the first client to update.

  5. #5

    Default Re: How to: Create a local update server

    Set up a squid proxy and point your clients to that.
    A couple of questions about doing this.
    1. Would I need to changed the "maximum_object_size"? The default is 4MB. (I suspect so.)
    2. I am unclear how to point a client to the proxy for the different repos through the proxy. How do I do that?

  6. #6
    Join Date
    Jun 2008
    Location
    UTC+10
    Posts
    9,686
    Blog Entries
    4

    Default Re: How to: Create a local update server

    1. Yes, and you should probably increase the disk cache size.
    2. Just config the system to use the proxy for all http access in YaST and all repos will be accessed via the proxy. I'm not sure how to make only YaST use the proxy, it might be possible with an aria2c config file since that's what YaST normally uses.

  7. #7

    Default Re: How to: Create a local update server

    I keep the packages on a file server:
    Code:
    zypper mr -tk
    and symlink /var/cache/zypp/packages on each computer to a directory on the fileserver, so I download the packages or merge the deltas only once:

    Code:
    /var/cache/zypp/packages -> /sdata/Linux/openSUSE/11.4/packages
    Which machine does the update first doesn't matter.

  8. #8
    josephkk NNTP User

    Default Re: How to: Create a local update server

    On Sat, 27 Aug 2011 08:06:02 GMT, jimoe666
    <jimoe666@no-mx.forums.opensuse.org> wrote:

    >
    >> Set up a squid proxy and point your clients to that.

    >A couple of questions about doing this.
    >1. Would I need to changed the "maximum_object_size"? The default is
    >4MB. (I suspect so.)
    >2. I am unclear how to point a client to the proxy for the different
    >repos through the proxy. How do I do that?


    Rather than try the proxy method, i have done the copies (wget is a bit
    faster than rsync for the first copy) and use a cron job once a week to
    update the master local repo. Local repos are much faster than ordinary
    network update downloads. Only Update needs to be kept up to date, as the
    oss, non-oss, and distribution repos are static. Other repos that you use
    may also benefit from local copies. Not all have rsync capability.

    ?-)

  9. #9

    Default Re: How to: Create a local update server

    Quote Originally Posted by ken_yap View Post
    2. Just config the system to use the proxy for all http access in YaST and all repos will be accessed via the proxy. I'm not sure how to make only YaST use the proxy, it might be possible with an aria2c config file since that's what YaST normally uses.
    I could see no obvious way to have just Yast use the proxy.

    I decided it would not hurt to have all of the computers use the proxy. The DSL speed (0.8 Mbps up, 1.2 Mpbs down) is no longer considered very fast; having the same ol' same ol' cached locally for everyone can be a boon.

    The other method of pointing the package cache on all of the hosts to a common location works as well. I'll have to wait for a significant update to see which method works the best for me.

  10. #10

    Default Re: How to: Create a local update server

    If you keep the rpms locally, zypper will (by default) download only the binary diff (.delta.rpm) whenever possible ant this will significantly decrease the size of files to download - at the cost of memory and CPU - so rather do the update on your fastest machine.
    See download.use_deltarpm in /etc/zypp/zypp.conf. The default is "true" (which is right for you).

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •