Re: [opensuse] Keeping 2 or more machines up-to-date, without wastingbandwidth [SOLVED (Kind of)]

2007-09-25 Thread Sylvester Lykkehus

Hans van der Merwe wrote:

On Tue, 2007-09-25 at 14:15 +, Hans van der Merwe wrote:

On Tue, 2007-09-25 at 15:40 +0200, Sylvester Lykkehus wrote:



I know you can add a local path (shared NFS path) as a channel in Smart.
Maybe that can help you simplify things?

Hans


Scratch that, try this instead (havent done this myself yet):

Do the following on all the machines:
1.  execute> sudo smart config --set remove-packages=false  (this will
keep the downloaded packages in /var/lib/smart/packages)
2.  have all the machines point to one /var/lib/smart/packages share
(NFS, SMB etc)

Now update the machines one after the other - because the next PC will
see the already downloaded packages in the
shared /var/lib/smart/packages dir it will not download it again.
Downside is that  will keep ALL packages, so
you'll will end up with multiple versions of packages after a while.

Can this work?

Hans



I will try this one out.

Thanks for the input to all of you

Best regards
Sylvester
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [opensuse] Keeping 2 or more machines up-to-date, without wastingbandwidth [SOLVED (Kind of)]

2007-09-25 Thread Hans van der Merwe

On Tue, 2007-09-25 at 14:15 +, Hans van der Merwe wrote:
> On Tue, 2007-09-25 at 15:40 +0200, Sylvester Lykkehus wrote:
> > It's ugly, but it works for now:
> > /smart-update is exported as NFS on the local machine, and mounted on 
> > /smart-update on the remote
> > User has access to smart with NOPASSWD in sudoer's on both.
> > 
> > #!/bin/bash
> > DUMP_L="/smart-update/updates_local.txt"
> > DUMP_R="/smart-update/updates_remote.txt"
> > PKGDIR="/smart-update/packages"
> > # Get local list
> > sudo smart upgrade --update --dump 2> $DUMP_L
> > # Get remote list
> > ssh 10.0.0.2 sudo smart upgrade --update --dump 2> $DUMP_R
> > # Download packages
> > smart download --target=$PKGDIR $(tr '\n' ' ' < $DUMP_L) $(tr '\n' ' ' < 
> > $DUMP_R)
> > # Upgrade local packages
> > cd $PKGDIR;sudo smart install -y $(tr '@' '.' < $DUMP_L | xargs -i echo 
> > {}.rpm | tr '\n' ' ')
> > # Upgrade remote packages
> > ssh 10.0.0.2 "cd $PKGDIR;sudo smart install -y $(tr '@' '.' < $DUMP_R | 
> > xargs -i echo {}.rpm | tr '\n' ' ')"
> > 
> > 
> > Not very glamorous, but it does what I want it to do.
> > And I know the text processing of package names is not optimal, feel 
> > free to post better ways to do it :)
> 
> I know you can add a local path (shared NFS path) as a channel in Smart.
> Maybe that can help you simplify things?
> 
> Hans

Scratch that, try this instead (havent done this myself yet):

Do the following on all the machines:
1.  execute> sudo smart config --set remove-packages=false  (this will
keep the downloaded packages in /var/lib/smart/packages)
2.  have all the machines point to one /var/lib/smart/packages share
(NFS, SMB etc)

Now update the machines one after the other - because the next PC will
see the already downloaded packages in the
shared /var/lib/smart/packages dir it will not download it again.
Downside is that  will keep ALL packages, so
you'll will end up with multiple versions of packages after a while.

Can this work?

Hans




E-Mail disclaimer:
http://www.sunspace.co.za/emaildisclaimer.htm
-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [opensuse] Keeping 2 or more machines up-to-date, without wastingbandwidth [SOLVED (Kind of)]

2007-09-25 Thread Hans van der Merwe

On Tue, 2007-09-25 at 15:40 +0200, Sylvester Lykkehus wrote:
> It's ugly, but it works for now:
> /smart-update is exported as NFS on the local machine, and mounted on 
> /smart-update on the remote
> User has access to smart with NOPASSWD in sudoer's on both.
> 
> #!/bin/bash
> DUMP_L="/smart-update/updates_local.txt"
> DUMP_R="/smart-update/updates_remote.txt"
> PKGDIR="/smart-update/packages"
> # Get local list
> sudo smart upgrade --update --dump 2> $DUMP_L
> # Get remote list
> ssh 10.0.0.2 sudo smart upgrade --update --dump 2> $DUMP_R
> # Download packages
> smart download --target=$PKGDIR $(tr '\n' ' ' < $DUMP_L) $(tr '\n' ' ' < 
> $DUMP_R)
> # Upgrade local packages
> cd $PKGDIR;sudo smart install -y $(tr '@' '.' < $DUMP_L | xargs -i echo 
> {}.rpm | tr '\n' ' ')
> # Upgrade remote packages
> ssh 10.0.0.2 "cd $PKGDIR;sudo smart install -y $(tr '@' '.' < $DUMP_R | 
> xargs -i echo {}.rpm | tr '\n' ' ')"
> 
> 
> Not very glamorous, but it does what I want it to do.
> And I know the text processing of package names is not optimal, feel 
> free to post better ways to do it :)

I know you can add a local path (shared NFS path) as a channel in Smart.
Maybe that can help you simplify things?

Hans




E-Mail disclaimer:
http://www.sunspace.co.za/emaildisclaimer.htm
-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]