MoonPoint Support Logo

 

Shop Amazon Warehouse Deals - Deep Discounts on Open-box and Used ProductsAmazon Warehouse Deals



Advanced Search
May
Sun Mon Tue Wed Thu Fri Sat
       
6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
2025
Months
MayJun
Jul Aug Sep
Oct Nov Dec


Sat, Apr 04, 2009 3:01 pm

Ncat and Glibc

I wanted to install Ncat on a CentOS Linux system to test firewall rules. I intended to run Ncat on a Windows system behind the firewall to listen for UDP connections while using Ncat on the Linux system outside the firewall to send data to the Windows system through the firewall. I downloaded the Windows version of Nmap, which also provides the command line Ncat tool. I had no problems installing and running it on the Windows system. However, when I downloaded the Linux RPM for Ncat from the Nmap site and tried to install it, I encountered problems.
# rpm --install ncat-4.85BETA7-1.x86_64.rpm
error: Failed dependencies:
        libc.so.6(GLIBC_2.7)(64bit) is needed by ncat-4.85BETA7-1.x86_64

Yet, when I checked the system for the presence of libc.so.6, I found it was present.

# locate libc.so
/lib/libc.so.6
/lib/i686/nosegneg/libc.so.6
/lib64/libc.so.6
/usr/lib/libc.so
/usr/lib/i386-redhat-linux4E/lib/libc.so
/usr/lib/x86_64-redhat-linux4E/lib64/libc.so
/usr/lib64/libc.so

I checked to see what package provided the file.

# rpm -qf /lib/libc.so.6
glibc-2.5-24
# rpm -qf /lib64/libc.so.6
glibc-2.5-24

When I checked the package, there appeared to be two glibc-2.5-24 packages present, since when I ran the command rpm -qi glibc-2.5-24, I saw the package listed twice, but with different sizes

# rpm -qi glibc-2.5-24
Name        : glibc                        Relocations: (not relocatable)
Version     : 2.5                               Vendor: CentOS
Release     : 24                            Build Date: Fri 23 May 2008 10:40:42 PM EDT
Install Date: Tue 29 Jul 2008 10:03:15 AM EDT      Build Host: builder15.centos.org
Group       : System Environment/Libraries   Source RPM: glibc-2.5-24.src.rpm
Size        : 11590290                         License: LGPL
Signature   : DSA/SHA1, Sun 15 Jun 2008 09:51:20 AM EDT, Key ID a8a447dce8562897
Summary     : The GNU libc libraries.
Description :
The glibc package contains standard libraries which are used by
multiple programs on the system. In order to save disk space and
memory, as well as to make upgrading easier, common system code is
kept in one place and shared between programs. This particular package
contains the most important sets of shared libraries: the standard C
library and the standard math library. Without these two libraries, a
Linux system will not function.
Name        : glibc                        Relocations: (not relocatable)
Version     : 2.5                               Vendor: CentOS
Release     : 24                            Build Date: Fri 23 May 2008 11:12:28 PM EDT
Install Date: Tue 29 Jul 2008 10:03:26 AM EDT      Build Host: builder15.centos.org
Group       : System Environment/Libraries   Source RPM: glibc-2.5-24.src.rpm
Size        : 12579066                         License: LGPL
Signature   : DSA/SHA1, Sun 15 Jun 2008 09:51:20 AM EDT, Key ID a8a447dce8562897
Summary     : The GNU libc libraries.
Description :
The glibc package contains standard libraries which are used by
multiple programs on the system. In order to save disk space and
memory, as well as to make upgrading easier, common system code is
kept in one place and shared between programs. This particular package
contains the most important sets of shared libraries: the standard C
library and the standard math library. Without these two libraries, a
Linux system will not function.

I tried updating the package.

# yum upgrade glibc
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge: fr2.rpmfind.net
 * base: mirror.anl.gov
 * updates: ftp.lug.udel.edu
 * addons: centos.aol.com
 * extras: ftp.lug.udel.edu
338 packages excluded due to repository priority protections
Setting up Upgrade Process
Resolving Dependencies
--> Running transaction check
---> Package glibc.i686 0:2.5-34 set to be updated
--> Processing Dependency: glibc-common = 2.5-34 for package: glibc
--> Processing Dependency: glibc = 2.5-24 for package: glibc-devel
--> Processing Dependency: glibc = 2.5-24 for package: glibc-devel
--> Processing Dependency: glibc = 2.5-24 for package: glibc-headers
---> Package glibc.x86_64 0:2.5-34 set to be updated
--> Running transaction check
---> Package glibc-headers.x86_64 0:2.5-34 set to be updated
---> Package glibc-common.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.x86_64 0:2.5-34 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Updating:
 glibc                   x86_64     2.5-34           base              4.7 M
 glibc                   i686       2.5-34           base              5.2 M
 glibc-common            x86_64     2.5-34           base               16 M
Updating for dependencies:
 glibc-devel             x86_64     2.5-34           base              2.4 M
 glibc-headers           x86_64     2.5-34           base              589 k

Transaction Summary
=============================================================================
Install      0 Package(s)
Update       5 Package(s)
Remove       0 Package(s)

Total download size: 29 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): glibc-devel-2.5-34 100% |=========================| 2.4 MB    00:04
(2/5): glibc-common-2.5-3 100% |=========================|  16 MB    00:32
(3/5): glibc-headers-2.5- 100% |=========================| 589 kB    00:01
(4/5): glibc-2.5-34.i686. 100% |=========================| 5.2 MB    00:09
(5/5): glibc-2.5-34.x86_6 100% |=========================| 4.7 MB    00:08
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
Package glibc-devel needs glibc = 2.5-24, this is not available.
Package glibc-devel needs glibc = 2.5-24, this is not available.
Package glibc-devel needs glibc-headers = 2.5-24, this is not available.
Package glibc-devel needs glibc-headers = 2.5-24, this is not available.
Complete!

When I ran rpm -qi glib afterwards, I saw version 2.5-24 still listed. I tried yum update glibc as well, though I didn't expect the results to be different; they weren't. I then checked for glibc files in the yum cache. There appeared to be both 32-bit and 64-bit versions present.

# ls /var/cache/yum/base/packages/glibc*
/var/cache/yum/base/packages/glibc-2.5-24.i686.rpm
/var/cache/yum/base/packages/glibc-2.5-24.x86_64.rpm
/var/cache/yum/base/packages/glibc-2.5-34.i686.rpm
/var/cache/yum/base/packages/glibc-2.5-34.x86_64.rpm
/var/cache/yum/base/packages/glibc-common-2.5-24.x86_64.rpm
/var/cache/yum/base/packages/glibc-common-2.5-34.x86_64.rpm
/var/cache/yum/base/packages/glibc-devel-2.5-24.i386.rpm
/var/cache/yum/base/packages/glibc-devel-2.5-24.x86_64.rpm
/var/cache/yum/base/packages/glibc-devel-2.5-34.x86_64.rpm
/var/cache/yum/base/packages/glibc-headers-2.5-24.x86_64.rpm
/var/cache/yum/base/packages/glibc-headers-2.5-34.x86_64.rpm

I removed all of them from the yum cache with rm -f /var/cache/yum/base/packages/glibc*. When I tried yum update glibc again, however, the results were the same.

I checked the arch of the installed glibc packages.

# rpm -qa --qf  '%{name}-%{version}-%{release}.%{arch}\n'|grep glibc
glibc-devel-2.5-24.x86_64
compat-glibc-headers-2.3.4-2.26.x86_64
compat-glibc-2.3.4-2.26.i386
glibc-devel-2.5-24.i386
compat-glibc-2.3.4-2.26.x86_64
glibc-2.5-24.x86_64
glibc-2.5-24.i686
glibc-common-2.5-24.x86_64
glibc-headers-2.5-24.x86_64

I did have 32-bit and 64-bit versions installed. I decided to try listing all of the glibc packages for the yum update command. That worked much better.

# yum update glibc glibc-common glibc-devel glibc-headers
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge: fr2.rpmfind.net
 * base: mirrors.rit.edu
 * updates: ftp.lug.udel.edu
 * addons: ftp.lug.udel.edu
 * extras: ftp.lug.udel.edu
338 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package glibc.x86_64 0:2.5-34 set to be updated
---> Package glibc-headers.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.i386 0:2.5-34 set to be updated
---> Package glibc-common.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.x86_64 0:2.5-34 set to be updated
---> Package glibc.i686 0:2.5-34 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Updating:
 glibc                   x86_64     2.5-34           base              4.7 M
 glibc                   i686       2.5-34           base              5.2 M
 glibc-common            x86_64     2.5-34           base               16 M
 glibc-devel             i386       2.5-34           base              2.0 M
 glibc-devel             x86_64     2.5-34           base              2.4 M
 glibc-headers           x86_64     2.5-34           base              589 k

Transaction Summary
=============================================================================
Install      0 Package(s)
Update       6 Package(s)
Remove       0 Package(s)

Total download size: 31 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): glibc-devel-2.5-34 100% |=========================| 2.0 MB    00:03
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating  : glibc-common                 ####################### [ 1/12]
  Updating  : glibc                        ####################### [ 2/12]
  Updating  : glibc                        ####################### [ 3/12]
warning: /etc/ld.so.conf created as /etc/ld.so.conf.rpmnew
warning: /etc/localtime created as /etc/localtime.rpmnew
warning: /etc/nsswitch.conf created as /etc/nsswitch.conf.rpmnew
  Updating  : glibc-headers                ####################### [ 4/12]
  Updating  : glibc-devel                  ####################### [ 5/12]
  Updating  : glibc-devel                  ####################### [ 6/12]
  Cleanup   : glibc                        ####################### [ 7/12]
  Cleanup   : glibc-headers                ####################### [ 8/12]
  Cleanup   : glibc-devel                  ####################### [ 9/12]
  Cleanup   : glibc-common                 ####################### [10/12]
  Cleanup   : glibc-devel                  ####################### [11/12]
  Cleanup   : glibc                        ####################### [12/12]

Updated: glibc.x86_64 0:2.5-34 glibc.i686 0:2.5-34 glibc-common.x86_64 0:2.5-34 glibc-devel.i386 0:2.5-34 glibc-devel.x86_64 0:2.5-34 glibc-headers.x86_64 0:2.5-34
Complete!

I then checked the architecture for the installed packages again:

# rpm -qa --qf  '%{name}-%{version}-%{release}.%{arch}\n'|grep glibc
glibc-devel-2.5-34.i386
glibc-2.5-34.x86_64
compat-glibc-headers-2.3.4-2.26.x86_64
compat-glibc-2.3.4-2.26.i386
glibc-headers-2.5-34.x86_64
glibc-common-2.5-34.x86_64
compat-glibc-2.3.4-2.26.x86_64
glibc-devel-2.5-34.x86_64
glibc-2.5-34.i686

But when I tried to install ncat again, I got the same error as before.

# rpm --install ncat-4.85BETA7-1.x86_64.rpm
error: Failed dependencies:
        libc.so.6(GLIBC_2.7)(64bit) is needed by ncat-4.85BETA7-1.x86_64

When I checked on what was required for the ncat package, I saw the following:

# rpm --requires -qp ncat-4.85BETA7-1.x86_64.rpm
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)

I then tried installing the 32-bit version of ncat, but that attempt failed as well.

# rpm --install ncat-4.85BETA7-1.i386.rpm
error: Failed dependencies:
        libc.so.6(GLIBC_2.7) is needed by ncat-4.85BETA7-1.i386

Since I had already expended far more time than I anticipated in trying to install netcat, I decided to try an alternative program with similar capabilities, socat, instead. I didn't have any problems installing it.

# yum install socat
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge: fr2.rpmfind.net
 * base: mirrors.rit.edu
 * updates: ftp.lug.udel.edu
 * addons: centos.aol.com
 * extras: ftp.lug.udel.edu
338 packages excluded due to repository priority protections
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package socat.x86_64 0:1.7.1.0-1.el5.rf set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 socat                   x86_64     1.7.1.0-1.el5.rf  rpmforge          398 k

Transaction Summary
=============================================================================
Install      1 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

Total download size: 398 k
Is this ok [y/N]: y
Downloading Packages:
(1/1): socat-1.7.1.0-1.el 100% |=========================| 398 kB    00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: socat                        ######################### [1/1]

Installed: socat.x86_64 0:1.7.1.0-1.el5.rf
Complete!

References:

  1. Nmap
  2. Ncat
    MP: Weblog
  3. Re: [rhelv5-list] Updating RHEL5.2 causes yum to loop infinitely...
    The Mail Archive
  4. Socat
    Top 100 Nework Security Tools
  5. socat - Multipurpose relay
    dest-unreach.org

[/network/tools/scanning/nmap] permanent link

Valid HTML 4.01 Transitional

Privacy Policy   Contact

Blosxom logo