summaryrefslogtreecommitdiffstats
path: root/scripts/ver_linux
blob: 4725ebfeb3cc414a6d8b585fa4cef1d73d0b22c0 (plain)
1
2
3
4
5
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
#!/bin/sh
# Before running this script please ensure that your PATH is
# typical as you use for compilation/istallation. I use
# /bin /sbin /usr/bin /usr/sbin /usr/local/bin, but it may
# differ on your system.
#
PATH=/sbin:/usr/sbin:/bin:/usr/bin:$PATH
echo '-- Versions installed: (if some fields are empty or looks'
echo '-- unusual then possibly you have very old versions)'
uname -a
insmod -V  2>&1 | awk 'NR==1 {print "Kernel modules        ",$NF}'
echo "Gnu C                 " `gcc --version`
ld -v 2>&1 | awk -F\) '{print $1}' | awk \
      '/BFD/{print "Binutils              ",$NF}'
ls -l `ldd /bin/sh | awk '/libc/{print $3}'` | sed -e 's/\.so$//' \
  | awk -F'[.-]'   '{print "Linux C Library        " $(NF-2)"."$(NF-1)"."$NF}'
echo -n "Dynamic linker         "
ldd -v > /dev/null 2>&1 && ldd -v || ldd --version |head -1
ls -l /usr/lib/lib{g,stdc}++.so  2>/dev/null | awk -F. \
       '{print "Linux C++ Library      " $4"."$5"."$6}'
ps --version 2>&1 | awk 'NR==1{print "Procps                ", $NF}'
mount --version | awk -F\- '{print "Mount                 ", $NF}'
hostname -V 2>&1 | awk 'NR==1{print "Net-tools             ", $NF}'
loadkeys -h 2>&1 | awk \
'(NR==1 && $3) {ver=$3}
 (NR==2 && $1 ~ /console-tools/) {print "Console-tools         ",$3; done=1}
 END {if (!done) print "Kbd                   ",ver}'
expr --v | awk '{print "Sh-utils              ", $NF}'
X=`cat /proc/modules | sed -e "s/ .*$//"`
echo "Modules Loaded         "$X