Guolin Cheng said: > Just have some crude thoughts about the method of packages upgrade for > our hundreds of Fedora Core 1 Linux boxes. Since it is quite awkward to > upgrade hundreds of clients through Internet(big burden on Internet > servers on the other side), I'd like to setup my own Master package > Master server for all my hundreds of clients. Clients will pull > packages from my Master server, while my Master server will sync upgrade > from Internet. Because we twist a lot packages to enable&disable > building options, we have to download source RPMs as well, so there > should have two places for upgrade packages. The first one is exactly > the same the one on Internet, while the second is different, it only > contains updated binary rpms we need for our own distribution, both > untouched, modified&rebuilt. So the steps to set up the above > infrastructure will be as the following: http://www.linuxadvocate.net/apt/apt-mirror/ it's crude, i'm waiting for options to be put into ftpcopy by the author (emailed him about having a text file for excluding files), but that should be good to get you started. if you're updating tons of systems, may i recommend that once you have them pointed at your system to put a script similiar to this in each of their /etc/cron.hourly directories: --begin-- #!/bin/bash apt-get -qq update && apt-get -dqqy upgrade --end-- the -dqqy will download only, be extremely quiet about what they're doing (no messages, no mail) and let you install the updates when you want them to. i'd recommend the apt-mirror script to be run once a day, at least. i have it run once every two hours via a crontab. > 1, Use rsync|ftpcopy to copy the FC1 updates tree from Internet to > master server, either through crontab or by hand manually, at last send > an email to system administrator about the difference. That difference > will contain info about new updated rpms. well, you can write a simple script that'll take a snapshot of what's available prior to the apt-mirror script running, and then another snap of what's available after, and then see what's come in new and send an email about it. tell you what, i'll write that script tonight and post it to this thread, it's something i've meant to do for a week now. > 2, Have a look of the new upgraded rpms, see if there is a need to > rebuild some of them. If so, install source rpms, then twist .spec > files, and rebuild to get customized binary rpms. hmmm. you may want to have apt-mirror grab those SRPMS too. but how would you determine if you need to rebuild from a SRPM? > 3, copy new upgrade binary rpms, either untouched or rebuilt at step 2, > to a place where all clients can reach by means of nfs|http|ftp. apt-mirror uses genbasedir (provided by apt) to build the repository for everyone. > 4, on clients, through crontabs, use cfengine or customized scripts to > install the upgrade packages with the help of up2date|yum periodically. if you want to use yum, check out http://www.linuxadvocate.net/yum/ -d +( duncan brown : duncanbrown@xxxxxxxxxxxxxxxxx )+ +( linux "just works" : www.linuxadvocate.net )+ -------------------------------------------------- Understatement of the century: "Hello everybody out there using minix - I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones" - Linus Torvalds, August 1991 --------------------------------------------------