HOWTO
# lsof 4.82
# =========
# Slackware 11.0: lsof 4.76
# Slackware 12.0, 12.1, 12.2: lsof 4.78
# If you ever want to uninstall lsof, or clean up files from an old
# version before installing a new one, skip down to the bottom for
# instructions
cd
test -f installed/lsof_4.82.tar.bz2 && mv installed/lsof_4.82.tar.bz2 .
test ! -f lsof_4.82.tar.bz2 &&
wget ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_4.82.tar.bz2
# Verify tarball w/
md5sum:
echo "5518a0c16fc937523b3d1a946cf59e5b lsof_4.82.tar.bz2" | md5sum -c
# Verify tarball w/
sha1sum:
# (this one came from my gpg-verified tarball)
echo "200aaf7494bddab4c47eea2466c65e57ef2f3786 lsof_4.82.tar.bz2" | sha1sum -c
# Verify tarball w/
gpg:
( gpg --list-keys 40BD3D55 > /dev/null 2>&1 || gpg --recv-keys 40BD3D55 ) &&
wget -nc ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_4.82.tar.bz2.sig &&
gpg --verify lsof_4.82.tar.bz2.sig && rm lsof_4.82.tar.bz2.sig
mkdir -p -m 0700 src
cd src
find -maxdepth 1 -type d -name "lsof_*" -exec rm -r {} \;
tar xjvf ~/lsof_4.82.tar.bz2
cd lsof_4.82
test $UID = 0 && chown -R root:root .
# Verify inner tarball w/
md5sum:
echo "91efe55e2d5d06292556fb454d42c800 lsof_4.82_src.tar" | md5sum -c
# Verify inner tarball w/
gpg:
( gpg --list-keys 40BD3D55 > /dev/null 2>&1 || gpg --recv-keys 40BD3D55 ) &&
gpg --verify lsof_4.82_src.tar.sig
tar xvf lsof_4.82_src.tar
test $UID = 0 && chown -R root:root .
chmod -R u+w .
cd lsof_4.82_src
./Configure -n linux
make
# Run tests to make sure everything is working OK
# (make test = standard tests, make opt = optional tests)
( cd tests ; make test )
( cd tests ; make opt )
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg lsof
# Install it
install -m 750 -o root -g wheel lsof /usr/bin/
install -m 444 lsof.8 /usr/man/man8/
# Make sure your non-root user can remove hte source later
chown -R $USER .
chmod -R u+w .
# Become yourself again
exit
cd
mkdir -p -m 0700 installed
rm -f installed/lsof_*.tar.*
mv lsof_4.82.tar.bz2 installed/
# If you ever want to uninstall lsof, this should do it:
cd
su
for pfx in /usr /usr/local;
do
rm -f ${pfx}/bin/lsof ${pfx}/man/man8/lsof.8 ${pfx}/man/cat8/lsof.8.* ${pfx}/share/man/cat8/lsof.8.* /usr/X11/man/cat8/lsof.8.*
done
exit
find ~/src -maxdepth 1 -type d -name "lsof-*" -exec rm -r {} \;
rm -f ~/installed/lsof-*.tar.*