LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 01-30-2015, 11:33 AM   #1
WiseDraco
Member
 
Registered: Nov 2006
Location: Europe,Latvia,Riga
Distribution: slackware,slax, OS X, exMandriva
Posts: 591

Rep: Reputation: 73
Unhappy updating glibc problem...


Hello!
hear about new GLIBC vulnearability, read an
http://www.securityfocus.com/archive/1/534572
make a megascript:

Code:
#!/bin/bash
##Updated packages for Slackware x86_64 14.0:
wget ftp://ftp.slackware.com/pub/slackware/slackware64-14.0/patches/packages/glibc-2.15-x86_64-9_slack14.0.txz

wget ftp://ftp.slackware.com/pub/slackware/slackware64-14.0/patches/packages/glibc-i18n-2.15-x86_64-9_slack14.0.txz

wget ftp://ftp.slackware.com/pub/slackware/slackware64-14.0/patches/packages/glibc-profile-2.15-x86_64-9_slack14.0.txz

wget ftp://ftp.slackware.com/pub/slackware/slackware64-14.0/patches/packages/glibc-solibs-2.15-x86_64-9_slack14.0.txz

wget ftp://ftp.slackware.com/pub/slackware/slackware64-14.0/patches/packages/glibc-zoneinfo-2014j-noarch-1.txz
- download all that files, and in its directory run "pkgtool", and "install packages from current directory".
looks like instead this i must be do "upgradepkg *.txz" , but now is too late - i have in packages list all that glibc x86_64_9 files, and also previous version x86_64-7 packages too.

try do "upgradepkg *.txz" now and get,as i can expect,

Skipping package glibc-zoneinfo-2014j-noarch-1 (already installed)

what i must do? do newer package automatically replace older? or i must manually remove via pkgtool -> remove, all new packages, and do upgradepkg ?

or what?
Also interested in - after that glibc upgrade i must restart server, or new packages start working ok without restart?
Also interesting about multilibs - after glibc upgrade i must build multilibs again?

Thanks in advance...
 
Old 01-30-2015, 12:04 PM   #2
the3dfxdude
Member
 
Registered: May 2007
Posts: 730

Rep: Reputation: 358Reputation: 358Reputation: 358Reputation: 358
Quote:
Originally Posted by WiseDraco View Post
- download all that files, and in its directory run "pkgtool", and "install packages from current directory".
looks like instead this i must be do "upgradepkg *.txz" , but now is too late - i have in packages list all that glibc x86_64_9 files, and also previous version x86_64-7 packages too.

try do "upgradepkg *.txz" now and get,as i can expect,

Skipping package glibc-zoneinfo-2014j-noarch-1 (already installed)

what i must do? do newer package automatically replace older? or i must manually remove via pkgtool -> remove, all new packages, and do upgradepkg ?
As you found, you can actually install the same package but different versions side-by-side. If the files are named the same, installpkg will clobber the existing files with the ones from the package you invoked pkgtool (installpkg) with. Normally, when you removepkg any package that has the same files found in other packages, removepkg will not touch them. The only grey area here is what any doinst.sh script has done. You can removepkg the older package, but with a package like glibc, you might want to have a fail-safe plan in case the system stops working. But in general, the thing to do is removepkg the older package, and not worry about upgradepkg --reinstall or trying to remove the newly installed package.

Note that I do not remember having to deal the glibc this way, so again, have a plan to handle anything that might happen.

Quote:
Originally Posted by WiseDraco
Also interested in - after that glibc upgrade i must restart server, or new packages start working ok without restart?
Considering the type of vulnerability, I decided that it is easier just to reboot my systems. You don't always need to reboot, even for libc, but this had local and remote execution possibilities, and it is easier to flush old copies of libc with a reboot. Again plan accordingly.

Quote:
Originally Posted by WiseDraco
Also interesting about multilibs - after glibc upgrade i must build multilibs again?
I have never used multilib, so I do not know the steps, but your multilib needs an update too.
 
2 members found this post helpful.
Old 01-30-2015, 12:44 PM   #3
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,540

Rep: Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309
Quote:
Originally Posted by the3dfxdude View Post
Considering the type of vulnerability, I decided that it is easier just to reboot my systems. You don't always need to reboot, even for libc, but this had local and remote execution possibilities, and it is easier to flush old copies of libc with a reboot. Again plan accordingly.
I listed processes that had held open the previous version of libc

Code:
 lsof | egrep 'DEL.*(libc)' | sort
Then went and killed the user space ones.

For some of the system stuff you can use the init scripts - example:
Code:
cd /etc/rc.d
./rc.sshd restart
./rc.httpd restart
./rc.bind restart
./rc.syslogd restart
For some processes you can just cause them to reload:
Code:
killall -HUP agetty
For myself I figured that restarting udevd wasn't important and didn't want to risk even trying on a remote server, as from experience you can't really restart it without some side effects. Please correct me if I'm wrong!
 
2 members found this post helpful.
Old 01-30-2015, 01:42 PM   #4
WiseDraco
Member
 
Registered: Nov 2006
Location: Europe,Latvia,Riga
Distribution: slackware,slax, OS X, exMandriva
Posts: 591

Original Poster
Rep: Reputation: 73
Thanks you very much, comrades!
finally i remove new one packages, and do upgradepkg, then restart machine. looks, all works fine after restart
 
Old 01-30-2015, 03:31 PM   #5
the3dfxdude
Member
 
Registered: May 2007
Posts: 730

Rep: Reputation: 358Reputation: 358Reputation: 358Reputation: 358
Quote:
Originally Posted by drmozes View Post
I listed processes that had held open the previous version of libc

Code:
 lsof | egrep 'DEL.*(libc)' | sort
Then went and killed the user space ones.

For some of the system stuff you can use the init scripts - example:
Code:
cd /etc/rc.d
./rc.sshd restart
./rc.httpd restart
./rc.bind restart
./rc.syslogd restart
For some processes you can just cause them to reload:
Code:
killall -HUP agetty
For myself I figured that restarting udevd wasn't important and didn't want to risk even trying on a remote server, as from experience you can't really restart it without some side effects. Please correct me if I'm wrong!
Ah thanks for refreshing my memory on how to handle it. I checked lsof previously, but decided libc touched enough services, I didn't want to audit each one. But I went ahead and checked udevd with objdump -T and found no gethostbyname symbols. So I think we could get by without a restart, but of course I can't know everyone's system.
 
Old 01-31-2015, 04:04 AM   #6
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,540

Rep: Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309Reputation: 1309
Quote:
Originally Posted by the3dfxdude View Post
Ah thanks for refreshing my memory on how to handle it. I checked lsof previously, but decided libc touched enough services, I didn't want to audit each one. But I went ahead and checked udevd with objdump -T and found no gethostbyname symbols. So I think we could get by without a restart, but of course I can't know everyone's system.
OK good to know - I didn't expect udev to do host lookups but did not check.

I realised that killall -HUP is not useful -- the reason agetty was restarted was because it died in response to -HUP, and init restarted it.
I confused myself - -HUP causes some processes to reload their configs (inetd is an example) if they are programmed to respond to -HUP in this way: they don't restart the process, so -HUP would never be useful in this situation.
 
  


Reply

Tags
glibc, upgrade



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
updating glibc-2.3.2 to glibc-2.3.4 jgrc Linux - Enterprise 2 11-27-2007 12:24 PM
updating glibc-2.3.2-11.9 to glibc-2.3.4 under rh9 bloodiestmarry Linux - Software 5 02-27-2005 05:43 AM
updating glibc problem overlord73 Linux - Software 3 02-11-2005 05:51 AM
Problem in glibc updating urkhaa1975 Fedora 3 02-03-2004 07:37 AM
Problem Updating glibc 2.2.5-34 to 2.3.2 FinalSolution Linux - Software 2 10-17-2003 05:22 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:14 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration