This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
build:misc [2007/05/30 21:23] 71.10.176.218 Updated per installation of Debian 4.0 on Bud. (CMB) |
build:misc [2008/08/16 14:10] 207.150.66.62 Add mtr-tiny, htop, document locales issue. (CMB) |
||
---|---|---|---|
Line 3: | Line 3: | ||
Here's where we'll document the installation of miscellaneous small software packages. | Here's where we'll document the installation of miscellaneous small software packages. | ||
- | ===== System ===== | + | Note that some of these packages may get installed during the installation of the OS, depending on the revision and the options selected. Packages that we've seen get installed include ''mailx'', ''lsof'', ''less'', ''w3m'', ''telnet'', ''bc'', and ''at''. |
+ | ===== System ===== | ||
+ | The ''locate'' program is great for finding files on the system, without ''find'' having to search through a bunch of directories. | ||
<code rootshell> | <code rootshell> | ||
apt-get install slocate | apt-get install slocate | ||
/etc/cron.daily/slocate & | /etc/cron.daily/slocate & | ||
+ | </code> | ||
+ | |||
+ | This resolves some issues with Perl complaining about ''LC_ALL''/''LANG''/''LANGUAGE'' when using ''en_US.UTF-8'' encoding. | ||
+ | <code rootshell> | ||
+ | apt-get install locales locales-all | ||
+ | </code> | ||
+ | |||
+ | This program provides a utility to configure init files for various runlevels. | ||
+ | <code rootshell> | ||
apt-get install -y sysv-rc-conf | apt-get install -y sysv-rc-conf | ||
+ | </code> | ||
+ | |||
+ | This package is used by several web and email packages (Apache and PINE). | ||
+ | <code rootshell> | ||
+ | apt-get install mime-support | ||
+ | </code> | ||
+ | |||
+ | We'll need OpenSSL and certificate management packages for web and email later (Apache and Postfix). | ||
+ | <code rootshell> | ||
+ | apt-get install openssl ssl-cert ca-certificates | ||
+ | </code> | ||
+ | |||
+ | The ''psmisc'' package includes some useful tools, including ''pstree'', ''killall'', and ''fuser''. | ||
+ | <code rootshell> | ||
+ | apt-get install psmisc | ||
+ | </code> | ||
+ | |||
+ | The ''lsof'' program list files (and sockets) that are open, and which processes are using them. | ||
+ | <code rootshell> | ||
+ | apt-get install lsof | ||
+ | </code> | ||
+ | |||
+ | The ''htop'' program is an enhanced version of ''top''. | ||
+ | <code rootshell> | ||
+ | apt-get install htop | ||
+ | </code> | ||
+ | |||
+ | ==== mail command line utility ==== | ||
+ | The "mail" comand line utility was not installed which caused several scripts thet rely on that command to fail. It is part of the mailx package. | ||
+ | <code rootshell> | ||
+ | apt-get install mailx | ||
</code> | </code> | ||
Line 37: | Line 79: | ||
apt-get install -y curl | apt-get install -y curl | ||
apt-get install links | apt-get install links | ||
- | apt-get install lynx | + | apt-get install lynx-cur # Newer release of lynx |
apt-get install ncftp | apt-get install ncftp | ||
+ | apt-get install lftp | ||
apt-get install rsync | apt-get install rsync | ||
#apt-get install elinks | #apt-get install elinks | ||
#apt-get install w3m | #apt-get install w3m | ||
</code> | </code> | ||
+ | |||
===== Network Tools ===== | ===== Network Tools ===== | ||
+ | Note that netcat apparently gets installed by default in Debian 4.0. | ||
+ | |||
+ | Tcpdump is a good tool for monitoring packets going across the wire. It's helpful when troubleshooting network protocol issues. | ||
<code rootshell> | <code rootshell> | ||
apt-get install -y tcpdump | apt-get install -y tcpdump | ||
+ | </code> | ||
+ | |||
+ | Telnet is no longer good for connecting to remote systems to get shell access. (Always use SSH for remote shell access.) However, it's good for connecting to other ports to test network connectivity. (For example, it's the easiest way to test low-level SMTP functionality.) | ||
+ | <code rootshell> | ||
+ | apt-get install telnet | ||
+ | </code> | ||
+ | |||
+ | The ''mtr'' program is an enhanced version of ''traceroute'', with some additional features. We want the "tiny" version, which does not require X11. | ||
+ | <code rootshell> | ||
+ | apt-get install mtr-tiny | ||
+ | </code> | ||
+ | |||
+ | ZModem isn't used much any more, but it can be used to send files across an existing SSH (or any other pty) connection. The ''lrzsz'' package supports ZModem -- use the ''rz'' command to receive a file. KDE's Konsole provides good ZModem upload support. | ||
+ | <code rootshell> | ||
+ | apt-get install lrzsz | ||
</code> | </code> | ||
Line 54: | Line 116: | ||
apt-get install binutils | apt-get install binutils | ||
apt-get install -y gcc cpp linux-kernel-headers | apt-get install -y gcc cpp linux-kernel-headers | ||
+ | apt-get install -y g++ | ||
apt-get install binutils-doc manpages-dev | apt-get install binutils-doc manpages-dev | ||
- | #apt-get install gcc-doc cpp-doc (NOTE: these were uninstallable) | + | apt-get install -y gcc-doc cpp-doc |
apt-get install make autoconf automake libtool flex bison m4 autotools-dev libc6-dev | apt-get install make autoconf automake libtool flex bison m4 autotools-dev libc6-dev | ||
apt-get install glibc-doc libtool-doc | apt-get install glibc-doc libtool-doc | ||
apt-get install gdb | apt-get install gdb | ||
apt-get install patch | apt-get install patch | ||
+ | apt-get install build-essential dpkg-dev | ||
apt-get install diff-doc | apt-get install diff-doc | ||
+ | </code> | ||
+ | |||
+ | ===== Revision Control ===== | ||
+ | These are various source code management (SCM) packages. | ||
+ | <code rootshell> | ||
+ | apt-get install cvs | ||
apt-get install -y subversion subversion-tools db4.4-util | apt-get install -y subversion subversion-tools db4.4-util | ||
sed -i -e 's/^# global-ignores.*$/global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store/' \ | sed -i -e 's/^# global-ignores.*$/global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store/' \ | ||
/etc/subversion/config | /etc/subversion/config | ||
+ | apt-get install -y git-core git-doc git-svn gitweb | ||
</code> | </code> | ||
Line 70: | Line 141: | ||
<code rootshell> | <code rootshell> | ||
apt-get install perl-doc | apt-get install perl-doc | ||
+ | apt-get install libcompress-zlib-perl # Compress::Zlib | ||
</code> | </code> | ||
+ | |||
+ | ===== Shells ===== | ||
+ | Install ksh93, tcsh, and csh using apt-get. Add sym links for path variations and add to /etc/shells if not done automatically. | ||
+ | <code> | ||
+ | apt-get install ksh | ||
+ | apt-get install tcsh | ||
+ | apt-get install csh | ||
+ | ln -s /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /usr/local/bin | ||
+ | ln -s /bin/bash /bin/csh /bin/sh /usr/bin | ||
+ | ln -s /usr/bin/perl /usr/local/bin | ||
+ | ln -s /usr/bin/perl /bin | ||
+ | </code> | ||
===== Ruby ===== | ===== Ruby ===== | ||
+ | NOTE: These have not been installed yet. It's generally recommended to install Ruby and RubyGems from sources. Anything else should be installed through RubyGems. | ||
+ | |||
<code rootshell> | <code rootshell> | ||
#apt-get install ruby ruby1.8 irb1.8 libreadline-ruby1.8 libruby1.8 | #apt-get install ruby ruby1.8 irb1.8 libreadline-ruby1.8 libruby1.8 | ||
Line 81: | Line 167: | ||
</code> | </code> | ||
- | + | ===== PINE ===== | |
- | ===== TODO: PINE ===== | + | Due to the license, PINE only comes as a source package in Debian's non-free archive. So it has to be built from sources. This requires GCC development packages (see above) and a few ''-dev'' packages: |
- | Due to the license, PINE only comes as a source package in Debian's non-free archive. So it has to be built from sources. This requires GCC development packages and a few ''-dev'' packages (''libncurses5-dev'', ''libldap2-dev'', and ''libssl-dev''). | + | <code rootshell> |
- | + | apt-get install libldap2-dev libncurses5-dev libssl-dev zlib1g-dev | |
- | #apt-get install dpkg-dev | + | |
- | #apt-get install libncurses5-dev libldap2-dev libssl-dev | + | |
- | + | ||
- | To download the source package, you'll need to add these lines to ''/etc/apt/sources.list'': | + | |
- | <file> | + | |
- | deb-src http://http.us.debian.org/debian stable main contrib non-free | + | |
- | deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free | + | |
- | </file> | + | |
- | Run ''apt-get update'' after changing the file, to cache the list of packages. | + | |
- | + | ||
- | Create and change to a temporary directory for the installation for easier cleanup of the installation files. | + | |
- | + | ||
- | Install the pre-requisite packages: | + | |
- | <code bash> | + | |
- | apt-get install mime-support | + | |
</code> | </code> | ||
- | Download and build the source package: | + | Make sure you've met all the dependencies: |
- | <code bash> | + | <code rootshell> |
apt-get --only-source build-dep pine | apt-get --only-source build-dep pine | ||
- | apt-get --only-source -b source pine | ||
</code> | </code> | ||
- | Then install the resulting packages. (It builds a separate package for ''pico''.) | + | Create a location to build the package. The typical location for this is ''/usr/src''. |
<code rootshell> | <code rootshell> | ||
- | dpkg -i pine_4.44-4_i386.deb | + | mkdir /usr/src/pine |
- | dpkg -i pico_4.44-4_i386.deb | + | cd /usr/src/pine |
+ | </code> | ||
+ | |||
+ | Download and build the source package: | ||
+ | <code rootshell> | ||
+ | apt-get --only-source -b source pine | ||
</code> | </code> | ||
+ | Press enter when prompted to read about not being allowed to distribute the binaries. The build process will take several minutes after that. | ||
- | The above commands might actually be: | + | Then install the resulting packages. |
<code rootshell> | <code rootshell> | ||
- | dpkg -i pine_4.62-1_i386.deb | + | dpkg -i pine_4.64-3_i386.deb |
- | dpkg -i pilot_4.62-1_i386.deb | + | dpkg -i pine-tech-notes_4.64-3_all.deb |
</code> | </code> | ||
Line 124: | Line 200: | ||
apt-get install -y python | apt-get install -y python | ||
apt-get install -y python-doc | apt-get install -y python-doc | ||
- | #/usr/sbin/update-alternatives --install /usr/bin/python python /usr/sbin/python2.4 1 | ||
</code> | </code> | ||
===== Security ===== | ===== Security ===== | ||
GNU Privacy Guard is a clone of PGP. The command-line utility is called ''gpg''. It's now installed by default. | GNU Privacy Guard is a clone of PGP. The command-line utility is called ''gpg''. It's now installed by default. | ||
+ | |||
+ | |||
+ | |||
+ | ===== Documentation ===== | ||
<code rootshell> | <code rootshell> | ||
+ | apt-get install doc-base | ||
</code> | </code> | ||
- | |||
===== Other ===== | ===== Other ===== | ||
- | |||
<code rootshell> | <code rootshell> | ||
apt-get install tree | apt-get install tree | ||
- | |||
</code> | </code> | ||
- | Mike Knight requested ''bc''for doing simple math. | + | ''bc'' for doing simple math. |
<code rootshell> | <code rootshell> | ||
apt-get install bc | apt-get install bc | ||
</code> | </code> | ||
+ | Deferred execution scheduler to supplement cron: | ||
+ | <code rootshell> | ||
+ | apt-get install at | ||
+ | </code> | ||
- | ===== Credits ===== | + | Gary requests "elm", the user mail agent as we have on Michelob. |
- | Lee Lammert built and installed PINE. | + | 3 problems: |
+ | 1. elm uses mbox and we are using maildir on bud & budlight. We would have to movemail from gnu | ||
+ | or fetchmail to move the mail. | ||
+ | 2. elm WAS the most used mail agent in the early 90s and the default for Debian. But in 1999, Debian switched | ||
+ | to Mutt. There is no longer a apt-get Debian installable for elm. I moved the latest (2.5.8 in Aug '05) | ||
+ | and untarred it in /usr/src for possible future use if we get around issues 1 & 3. | ||
+ | 3. We are intending users to be on shell access on budlight but mail to be on bud. | ||
+ | We would need to NFS mount the mail directories or use fetchmail to get the IMAP from bud to budlight. | ||
+ | ===== General Customization ===== | ||
+ | |||
+ | ==== motd ==== | ||
+ | |||
+ | Replace symbolic link from ''/etc/motd'' to ''/var/run/motd'' with a file that has the information we want. | ||
+ | |||
+ | <code> | ||
+ | mv /etc/motd /etc/motd.orig | ||
+ | cat > /etc/motd << EOD | ||
+ | ******************************************************************************* | ||
+ | * St. Louis UNIX Users Group XXXXXXXX server running Debian Etch * | ||
+ | * For use by our paying members. Rules of conduct must be followed. * | ||
+ | * * | ||
+ | * For system information, see: * | ||
+ | * http://www.sluug.org/members/accounts/ * | ||
+ | * * | ||
+ | ******************************************************************************* | ||
+ | EOD | ||
+ | chmod a+r /etc/motd | ||
+ | </code> | ||
+ | |||
+ | Edit the new motd to fill in the server name and change anything needed to match this syste. | ||
+ | |||
+ | ==== issue ==== | ||
+ | |||
+ | The ''/etc/issue*'' files are customized in the [[ssh#configuration|ssh configuration]] procedure. | ||
+ | |||
+ | ===== Credits ===== | ||
+ | Lee Lammert originally built and installed PINE. | ||
===== Requests ===== | ===== Requests ===== | ||
Line 154: | Line 271: | ||
===== TODO ===== | ===== TODO ===== | ||
- | |||
- | See if we can or need to load locales for ''en_US (ISO-8859-1)'' and ''en_US.UTF-8'', and set ''en_US'' as the default locale. We had done this in Debian 3.1. | ||
- |