Slackware 11.0
From GanjaLinux
This machine is undergoing an upgrade from Slackware 11.0 to 12.0 (follow link for details).
Contents |
Mirror
- Slackware Mirrors
- Relevant Example Mirroring Scripts
Services
ntpd
- joined US pool by adding the following servers to /etc/ntp.conf as per http://www.pool.ntp.org/zone/us
server 0.us.pool.ntp.org server 1.us.pool.ntp.org server 2.us.pool.ntp.org server 3.us.pool.ntp.org
- executed the following to update time
ntpdate 0.us.pool.ntp.org
- added the following to /etc/rc.local to enable ntpd service as per http://www.edafe.org/slackware/index.html
# Start the NTP daemon: if [ -x /usr/sbin/ntpd ]; then ââecho "Starting NTP daemon: /usr/sbin/ntpd" ââ/usr/sbin/ntpd fi
gkrellmd
- create the /etc/gkrellmd.conf file with
# Sample config file for the GKrellM server gkrellmd # The server update frequency is independent of and should be less than # the client update frequency. Values may be from 1 to 10 and should be # smaller values to reduce network traffic. # update-hz 3 # Limit number of simultaneous clients allowed to connect. # max-clients 2 # Specify the port to listen on for connections. # port 19150 # List of hosts allowed to connect. If no hosts are specified in a # gkrellmd.conf file or on the command line, all hosts will be allowed. # #allow-host localhost #allow-host 127.0.0.1 #allow-host ::1 allow-host 192.168.1.* # Drop privileges after startup (you must start gkrellmd as root to do it). # user nobody group proc # Run in background and detach from the controlling terminal detach # Time interval between checks for various monitors. If nfs-interval # is <= 0 then gkrellmd will not read data for nfs file system types. # #fs-interval 2 #nfs-interval 16 # The Internet monitor defaults to reading tcp connections once per second. # However, for Linux SMP kernels where reading /proc/net/tcp causes high # cpu usage, the inet-interval may be set to 1-20 seconds to slow down # /proc/net/tcp reads. Or set it to 0 to totally disable the Inet monitor. # Requires at least gkrellmd version 2.1.8. # #inet-interval 1 #inet-interval 1 # If the mbmon daemon is started before gkrellmd with this command: # mbmon -r -P port-number # (the "-r" mbmon tag mode is required) then gkrellmd will monitor mbmon # reported sensors if this is uncommented and the port-numbers match. # #mbmon-port port-number # Configure gkrellm clients to disconnect from a gkrellmd server if # there is an io-timeout seconds interval where the client receives no input # from the server. Use this for conditions where gkrellmd may be # ungracefully terminated such that socket connections are not closed. # Minimum is 2 (less than 2 for no I/O disconnecting and is the default). # Requires at least 2.1.8 versions of both gkrellmd and gkrellm. # #io-timeout 5 # Configure gkrellm clients to attempt automatic reconnects to a # gkrellmd server every reconnect-timeout seconds after a disconnected # state is detected. Disconnected states are created by normal gkrellmd # shutdowns or by an expiring io-timeout. # Minimum is 2 (less than 2 for no automatic reconnecting and is the default). # shutdowns or by an expiring io-timeout. # Minimum is 2 (less than 2 for no automatic reconnecting and is the default). # Requires at least 2.1.8 versions of both gkrellmd and gkrellm. # #reconnect-timeout 5 # Server side local mailbox counts can be sent to gkrellm clients. List here # paths to mbox, MH mail, or Maildir style mailboxes. # Requires at least 2.1.11 versions of both gkrellmd and gkrellm. # #mailbox /var/mail/bill #mailbox ~/Mail/inbox # List of plugins to enable. Use "gkrellmd -plist" to view a list of all # available plugins. Use "gkrellmd -plog" to output a log of the plugin # install process (note: the detach option is ignored when using -plog). # #plugin-enable gkrelltop #plugin-enable next-plugin # Configure gkrellmd to send the connect time for a network interface # to all clients to be displayed in the client gkrellm timer button # monitor display. If this is done, the client gkrellm timer button can # to all clients to be displayed in the client gkrellm timer button # monitor display. If this is done, the client gkrellm timer button can # still execute commands on the client, but the button will not affect the # timer display. If you want the client timer button to execute commands # on the server, your timer button commands will have to use sudo. # So set this if your server box has a ppp or ippp connection and you # want to monitor its connect time. #net-timer ppp0
- added the following to /etc/rc.d/rc.local
if [ -x /etc/rc.d/rc.gkrellmd ]; then echo "Starting gkrellmd" /etc/rc.d/rc.gkrellmd start fi
- created /etc/rc.d/rc.gkrellmd with the following, as found at http://quaddro.net/wiki/Tutorials/SlackwareRCscripts
#!/bin/sh
# Start/stop/restart gkrellmd
# gkrellmd looks for config at /etc/gkrellmd.conf and /usr/local/etc/gkrellmd.conf
GKRELLMD=/usr/bin/gkrellmd
gkrellmd_start() {
$GKRELLMD -d
#We put -d here to run gkrellmd in the background and detach in case no config file exists, or the config file does not specify "detach"
}
gkrellmd_stop() {
killall gkrellmd
}
gkrellmd_restart() {
gkrellmd_stop
sleep 1
gkrellmd_start
}
case "$1" in
'start')
gkrellmd_start
;;
'stop')
gkrellmd_stop
;;
'restart')
gkrellmd_restart
;;
*)
echo "usage $0 start|stop|restart"
esac
chmod +x /etc/rc.d/rc.gkrellmd
ProFTPD
- uncomment the following line in /etc/inetd.conf
ftp stream tcp nowait root /usr/sbin/tcpd proftpd
Cron
- Added the following script to /etc/cron.hourly/
#!/bin/sh /usr/sbin/ntpdate us.pool.ntp.org /sbin/hwclock -w
distccd
$ export DISTCC_HOSTS='localhost server' $ distccd --daemon --allow 192.168.1.0/24 --user nobody $ make -j8 CC=distcc
mt-maapd
stable
- based on http://wiki.mt-daapd.org/wiki/Quickstart_Tarball
- install required libraries
# slapt-get --install libid3tag Reading Package Lists... Done The following NEW packages will be installed: libid3tag 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 68.0kB of archives. After unpacking 200.0kB of additional disk space will be used. Get http://mirrors.easynews.com/linux/slackware/slackware-11.0/ libid3tag 0.15.1b-i486-1 [68kB]...Done Preparing to install libid3tag-0.15.1b-i486-1 Installing package libid3tag-0.15.1b-i486-1... PACKAGE DESCRIPTION: libid3tag: libid3tag (ID3 tag manipulation library) libid3tag: libid3tag: libid3tag is a library for reading and (eventually) writing ID3 tags, libid3tag: both ID3v1 and the various versions of ID3v2. libid3tag: libid3tag: libid3tag was written by Robert Leslie. libid3tag: Executing install script for libid3tag-0.15.1b-i486-1... Done # slapt-get --install gdbm Reading Package Lists... Done The following NEW packages will be installed: gdbm 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 52.0kB of archives. After unpacking 130.0kB of additional disk space will be used. Get http://mirrors.easynews.com/linux/slackware/slackware-11.0/ gdbm 1.8.3-i486-3 [52kB]...Done Preparing to install gdbm-1.8.3-i486-3 Installing package gdbm-1.8.3-i486-3... PACKAGE DESCRIPTION: gdbm: gdbm (GNU database routines) gdbm: gdbm: GNU dbm is a set of database routines that work similar to the gdbm: standard UNIX dbm routines. gdbm: Executing install script for gdbm-1.8.3-i486-3... Done
- install from tarball
$ wget http://umn.dl.sourceforge.net/sourceforge/mt-daapd/mt-daapd-0.2.4.tar.gz $ tar xvzf mt-daapd-0.2.4.tar.gz $ cd mt-daapd-0.2.4 # ./configure && make && make install
- configure
# cp contrib/mt-daapd.conf /usr/local/etc/ # cp contrib/mt-daapd.playlist /usr/local/etc/ # cp contrib/mt-daapd-ssc.sh /usr/local/bin/
- startup script PENDING
unstable
- dependencies
# slapt-get --install libogg vorbis-tools libvorbis libao flac $ wget http://www.software-mirror.com/linuxpackages/Slackware-11.0/ken/sqlite3-3.3.16-i486-1kjz.tgz # installpkg sqlite3-3.3.16-i486-1kjz.tgz PACKAGE DESCRIPTION: sqlite3: SQLite3 - Small, embeddable database system sqlite3: sqlite3: SQLite is a small C library that implements a self-contained, sqlite3: embeddable, zero-configuration SQL database engine. Version 3 adds: sqlite3: - A more compact format for database files. sqlite3: - Manifest typing and BLOB support. sqlite3: - Support for both UTF-8 and UTF-16 text. sqlite3: - User-defined text collating sequences. sqlite3: - 64-bit ROWIDs. - Improved concurrency. sqlite3: - Correlated subqueries, autovacuum, autoincrement, ALTER TABLE sqlite3: Packaged by Ken Zalewski (kennyz@nycap.rr.com) Executing install script for sqlite3-3.3.16-i486-1kjz...
- configure
$ wget http://nightlies.fireflymediaserver.org/nightlies/svn-1696/mt-daapd-svn-1696.tar.gz $ ./configure --prefix=/usr/local/ --enable-avahi --enable-sqlite3 --enable-oggvorbis --enable-flac $ make $ checkinstall
- install
# installpkg mt-daapd-svn-1549-i386-1.tgz
- upgrade
# upgradepkg mt-daapd-svn-1673-i386-1.tgz # upgradepkg --reinstall mt-daapd-svn-1696-i386-1.tg
RRDtool
- downloaded latest stable 1.2.23, 2007-05-02 18:06
- referred to http://oss.oetiker.ch/rrdtool/doc/rrdbuild.en.html for instructions
- installed using checkinstall to /usr/local/rrdtool-1.2.23/
- executed the following to complete installation
make site-perl-install
test
# /usr/local/rrdtool-1.2.23/share/rrdtool/examples/4charts.pl This script has created 4charts.png in the current directory This demonstrates the use of the TIME and % RPN operators
MRTG
installation
- downloaded latest stable release 2.15.2, 2007-04-29
- referred to http://oss.oetiker.ch/mrtg/doc/mrtg-unix-guide.en.html for installation
- installed via checkinstall to /usr/local/mrtg-2
configuration
# /usr/local/mrtg-2/bin/cfgmaker \ --global 'WorkDir: /var/www/htdocs/mrtg' \ --global 'Options[_]: bits,growright' -output /home/mrtg/cfg/mrtg.cfg \ public@router
- configured router to include snmpd and dependencies
- configured crontab on workstation with the following
# crontab -e -u mrtg
# run MRTG every 5 minutes */5 * * * * /usr/local/mrtg-2/bin/mrtg /home/mrtg/cfg/mrtg.cfg --logging /var/log/mrtg.log 1> /dev/null
#crontab -e
# get hdd temperatures */5 * * * * /usr/local/bin/rrd_hddtemp.pl > /dev/null
- had to add the rdd_hddtemp.pl to root's crontab because permission to open /dev/hd* could not be set for mrtg
- tried adding mrtg to group disk to no avail
/dev/sda: Permission denied System Drive (/dev/sda) temp: degrees C /dev/hde: Permission denied primary master (/dev/hde) temp: degrees C /dev/hdf: Permission denied primary slave (/dev/hdf) temp: degrees C /dev/hdg: Permission denied secondary master (/dev/hdg) temp: degrees C /dev/hdh: Permission denied secondary slave (/dev/hdh) temp: degrees C
- variables to monitor
- load
- users
- memory
- uptime
- round-trip time
- temperature / rain
execution
- for testing only, use of crontab successful
# /usr/local/mrtg-2/bin/mrtg --user=mrtg /home/mrtg/cfg/mrtg.cfg
customization
- adapted to use RRDTool as per http://oss.oetiker.ch/mrtg/doc/mrtg-rrd.en.html
iptables
- 2.4 kernel required IMQ patch for HTB QoS support.
- downloaded iptables-1.3.6 from http://distro.ibiblio.org/pub/linux/distributions/slackware/slackware-11.0/testing/source/iptables-1.3.6/
- modified included iptables.SlackBuild to include IMQ patch available at http://www.linuximq.net/patches.html
- TODO include file
- used myshaper script
MoBlock
dependencies
RequiredBuilder
- required MoBlock.SlackBuild taken from http://www.slacky.eu/repository/slackware-11.0/network/moblock/0.8/src/
- installed http://www.stabellini.net/requiredbuilder-0.15.2-noarch-1stb.tgz
compilation
- used MoBlock.SlackBuild
installation
# installpkg MoBlock-0.8-i486-2fv.tgz
execution
# MoBlock-nfq.sh
Net-SNMP
- used pre-build package from linuxpackages.net
- installed dependency
# slackpkg install rpm-4.2.1-i486-3
tor
dependencies
$ wget http://www.monkey.org/~provos/libevent-1.3e.tar.gz $ ./configure && make $ checkinstall # installpkg libevent-1.3e-i386-1.tgz
installation
$ ./configure && make $ checkinstall # installpkg tor-0.1.2.18-i386-1.tgz
Applications
slackpkg
- install from official /extra package.
slapt-get
wget http://software.jaos.org/slackpacks/11.0/slapt-get-0.9.11f-i386-1.tgz installpkg slapt-get-0.9.11f-i386-1.tgz slapt-get --update
distcc
make -j2 CC=distcc CXX='distcc g++'
rTorrent
$ wget http://libtorrent.rakshasa.no/downloads/libtorrent-0.11.2.tar.gz $ tar xvzf libtorrent-0.11.2.tar.gz $ cd libtorrent* $ ./autogen.sh $ ./configure $ make # make install $ wget http://libtorrent.rakshasa.no/downloads/rtorrent-0.7.2.tar.gz $ tar xvzf rtorrent* $ cd rtorrent* $ ./autogen.sh $ ./configure $ make # make install
par2cmdline
- trying Slackware 10.0 pre-built contrib package first.
$ wget http://jeremie.lesage.free.fr/slack/par2cmdline-0.4-i486-6kan.tgz # installpkg par2cmdline-0.4-i486-6kan.tgz
hellanzb
dependencies
installation
$ wget http://www.hellanzb.com/distfiles/hellanzb-0.11.tar.gz $ tar xvzf hellanzb-0.11.tar.gz # python setup.py install # mv /usr/etc/hellanzb.conf.sample /usr/etc/hellanzb.conf # vim /usr/etc/hellanzb.conf
netselect
installation
# make clean
rm -f netselect netselect *.o *~ build-stamp core
root@server:~/sw/netselect# make
gcc -O2 -Wall -I. -g -c -o netselect.o netselect.c
distcc[4676] (dcc_get_hostlist) Warning: no hostlist is set; can't distribute work
distcc[4676] (dcc_build_somewhere) Warning: failed to distribute, running locally instead
gcc -g -o netselect netselect.o
sudo chown root netselect && sudo chmod u+s netselect
root@server:~/sw/netselect# make install
install -d /usr/local/bin
#-install -d /usr/local/man/man8
install -s -o root -g root -m 4755 \
netselect /usr/local/bin
install -o root -g root -m 0755 netselect-apt /usr/local/bin
#install -o root -g root -m 0644 netselect.8 /usr/local/man/man8
execution
$ netselect -vv slamd64.he.net nymphomatic.org ftp.scarlet.be mirror.vbfx.com anorien.warwick.ac.uk wahlfaelschung.de heanet.ie ditalinux.it slackware.pl darkstar.ist.utl.pt ftp.x86.sk xcp.kiev.ua netselect: unknown host ditalinux.it Running netselect to choose 1 out of 12 addresses. ......................................................................................... ftp.scarlet.be 209 ms 24 hops 90% ok ( 9/10) [ 788] mirror.vbfx.com 141 ms 14 hops 90% ok ( 9/10) [ 374] slamd64.he.net 54 ms 14 hops 90% ok ( 9/10) [ 144] nymphomatic.org 9999 ms 30 hops 0% ok wahlfaelschung.de 256 ms 18 hops 90% ok ( 9/10) [ 795] heanet.ie 9999 ms 30 hops 0% ok anorien.warwick.ac.uk 9999 ms 30 hops 0% ok ditalinux.it 9999 ms 30 hops 0% ok darkstar.ist.utl.pt 238 ms 27 hops 25% ok ( 1/ 4) [ 3522] slackware.pl 254 ms 17 hops 90% ok ( 9/10) [ 761] ftp.x86.sk 274 ms 25 hops 80% ok ( 8/10) [ 1200] xcp.kiev.ua 299 ms 24 hops 90% ok ( 9/10) [ 1128] 144 slamd64.he.net
html2text
$ wget http://www.mbayer.de/html2text/downloads/html2text-1.3.2a.tar.gz $ tar xvzf html2text-1.3.2a.tar.gz cd html2text-1.3.2a/ $ ./configure $ gmake # mv html2text /usr/local/bin/ # mv html2text.1.gz /usr/local/man/man1/ # mv html2textrc.5.gz /usr/local/man/man5/
nessus
installation
$ tar xvzf nessus-libraries-2.2.9.tar.gz $ cd nessus-libraries/ $ ./configure && make && checkinstall #
mdf2iso
# wget http://www.software-mirror.com/linuxpackages/Slackware-11.0/Console/mdf2iso/mdf2iso-0.3.0-i486-4rg.tgz # installpkg mdf2iso-0.3.0-i486-4rg.tgz
- TODO use new program http://iat.berlios.de/
PPTP Client Project
# wget http://quozl.netrek.org/pptp/pptp-1.7.1.tar.gz # make # checkinstall # installpkg pptp-1.7.1-i386-1.tgz
pptpconfig
dependencies
- php 4.3.7 or higher, configured --enable-pcntl
- confirmed via
php --info
- confirmed via
- php-gtk 1.0.0 or higher,
# wget http://gtk.php.net/do_download.php?download_file=php-gtk-1.0.2.tar.gz # ./buildconf Configuring for: PHP Api Version: 20020918 Zend Module Api No: 20020429 Zend Extension Api No: 20050606 # ./configure configure: error: Unable to locate libglade
- opted for php-gtk 2 beta after building GNOME SlackBuild.
# ./buildconf
# make && make test && make install
/bin/sh /usr/src/php-gtk-2.0.0beta/libtool --mode=install cp ./php_gtk2.la /usr/src/php-gtk-2.0.0beta/modules
cp ./.libs/php_gtk2.so /usr/src/php-gtk-2.0.0beta/modules/php_gtk2.so
cp ./.libs/php_gtk2.lai /usr/src/php-gtk-2.0.0beta/modules/php_gtk2.la
PATH="$PATH:/sbin" ldconfig -n /usr/src/php-gtk-2.0.0beta/modules
----------------------------------------------------------------------
Libraries have been installed in:
/usr/src/php-gtk-2.0.0beta/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
Installing shared extensions: /usr/lib/php/extensions/
- libglade
- not the libglade (convert) provided by libglade
# http://ftp.gnome.org/pub/GNOME/sources/glade3/3.4/glade3-3.4.0.tar.gz # ./configure gthread-2.0 libxml-2.0 >= 2.4.0) were not met: Requested 'gtk+-2.0 >= 2.10.0' but version of GTK+ is 2.8.20
# wget ftp://xmlsoft.org/libxml2/libxml2-2.6.30.tar.gz # ./configure && make && make tests # checkinstall # installpkg libxml2-2.6.30-i386-1.tgz
- did not solve libglade dependency (perhaps due to naming libxml2 vs libxml?).
- opting for installation of GNOME 2 via GNOME SlackBuild.
- did not solve libglade dependency (perhaps due to naming libxml2 vs libxml?).
- pppd 2.4.2 (for GPL-compatible MPPE options),
- pptp 1.2.0 (for close stderr on fork())
# wget http://quozl.netrek.org/pptp/pptpconfig/pptpconfig-20060821.tar.gz
GNOME
- installation of GNOME SlackBuild
Shell Scripts
lspkg, pkginfo, whichpkg
- writen by thegeekster
Libraries
wxWidgets
- downloaded wxBase for 2.4.33.3 server (no X11)
./configure --disable-gui --enable-geometry --disable-sound \ --without-sdl --enable-display --disable-debugreport --enable-optimise \ --enable-unicode --disable-debug_flag --with-libjpeg=builtin --with-libpng=builtin \ --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin --without-odbc \ --with-expat
- could not build wxBase-2.8.0-rc1
make: *** No rule to make target `src/xml/xml.cpp', needed by `xmldll_xml.o'. Stop.
- download wxGTK-2.8.0-rc1
./configure --disable-gui --disable-geometry --disable-sound --without-sdl --disable-display --disable-debugreport --enable-optimise --enable-unicode --disable-debug_flag --without-libjpeg --without-libpng --without-libtif --with-zlib=builtin --without-odbc --without-expat make -j2 CC=distcc CXX='distcc g++' checkinstall ldconfig installpkg wxGTK-2.8.0-rc1-i386-1.tgz
- trying pre-built wxGTK package from linuxpackages.org
installpkg wxGTK-2.8.0-i486-1asz.tgz
wxPython
- downloaded wxPython-src-2.7.2.0
checkinstall python setup.py UNICODE=1 EP_ADD_OPTS=1 BUILD_GLCANVAS=0 install
- trying pre-built linuxpackage.org wxPython
installpkg wxPython-2.8.0.1-i486-1asz.tgz
Twisted
dependencies
installation
wget http://tmrc.mit.edu/mirror/twisted/Twisted/2.5/Twisted-2.5.0.tar.bz2 cd Twisted-2.5.0/ ./setup.py build
- got the following error
package init file 'twisted/plugins/__init__.py' not found (or not a regular file)
- ignoring
./setup.py install
libsigc++
- required by rTorrent.
$ wget http://lp.slackwaresupport.com/Slackware-11.0/fred/libsigc++-2.0.17-i486-1arf.tgz $ installpkg libsigc++-2.0.17-i486-1arf.tgz Installing package libsigc++-2.0.17-i486-1arf... PACKAGE DESCRIPTION: libsigc++: libsigc++ The Typesafe Callback Framework for C++ libsigc++: libsigc++: libsigc++ implements a typesafe callback system for libsigc++: standard C++ libsigc++: libsigc++: Build for Slackware libsigc++: Executing install script for libsigc++-2.0.17-i486-1arf...
Security
sudoers
- status: TODO sudo doesn't except password.
- add personal user to wheel group
vim /etc/group
- use visudo and uncomment the %wheel entry in /etc/sudoers
- visudo doesn't resport $VISUAL or $EDITOR settings. FIXME
$ visudo
Terminal
$ stty -a speed 38400 baud; rows 25; columns 105; line = 0; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = <undef>; eol = M-^?; eol2 = M-^?; swtch = <undef>; start = <undef>; stop = <undef>; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0; -parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -ignbrk -brkint ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany imaxbel -iutf8 opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
- disable stty terminal controls
$ stty stop undef $ stty start undef $ stty eof undef
Bugs
Spurious 8259A interrupt: IRQ7
- unresolved
LILO
- 4x Duplicated Volume-ID

