Posts Tagged ‘debian’

SheevaPlug is now my main home server

Friday, June 26th, 2009

I’m finally at the point where the little SheevaPlug can replace the aging Compaq DeskPro EN that has been our main home server.

Functions:

  • mail hub
  • network print server
  • scan server
  • mp3 file server
  • system monitor
  • proxy server

Here are the detailed steps needed to convert this $99 low power server into something useful:

(more…)

SheevaPlug customizing pre-installed Ubuntu/Jaunty

Sunday, May 17th, 2009

Show-n-Tell day — brining LordShiva to the MA offices.

mediawiki / mysql / apache2


root@LordShiva:~# sudo apt-get install mediawiki
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libhtml-template-perl
libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 libterm-readkey-perl mysql-client-5.0 mysql-common mysql-server mysql-server-5.0
mysql-server-core-5.0 php5 php5-cli php5-common php5-mysql psmisc ssl-cert
Suggested packages:
www-browser apache2-doc apache2-suexec apache2-suexec-custom ufw php-pear dbishell libipc-sharedcache-perl libcompress-zlib-perl php5-gd imagemagick
mediawiki-math memcached clamav mysql-doc-5.0 tinyca mailx
The following NEW packages will be installed:
apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libhtml-template-perl
libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 libterm-readkey-perl mediawiki mysql-client-5.0 mysql-common mysql-server mysql-server-5.0
mysql-server-core-5.0 php5 php5-cli php5-common php5-mysql psmisc ssl-cert
0 upgraded, 27 newly installed, 0 to remove and 0 not upgraded.
Need to get 53.6MB/53.6MB of archives.
After this operation, 166MB of additional disk space will be used.
Do you want to continue [Y/n]?

text mode web browsers (elinks / links2)


root@LordShiva:~# apt-get install elinks links2
The following extra packages will be installed:
elinks-data libdirectfb-1.0-0 liblua50 liblualib50 libperl5.10 libpng12-0
libruby1.8 libsysfs2 libtiff4 libts-0.0-0
Suggested packages:
elinks-doc
The following NEW packages will be installed:
elinks elinks-data libdirectfb-1.0-0 liblua50 liblualib50 libperl5.10
libpng12-0 libruby1.8 libsysfs2 libtiff4 libts-0.0-0 links2
0 upgraded, 12 newly installed, 0 to remove and 0 not upgraded.
Need to get 5104kB of archives.
After this operation, 15.4MB of additional disk space will be used.
Do you want to continue [Y/n]?

lanmap

root@LordShiva:~# apt-get install lanmap
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
defoma fontconfig fontconfig-config graphviz libcairo2 libdatrie0
libfontconfig1 libfontenc1 libfreetype6 libgd2-noxpm libgraphviz4 libice6
libltdl7 libpango1.0-0 libpango1.0-common libpcap0.8 libpixman-1-0 libsm6
libthai-data libthai0 libxaw7 libxcb-render-util0 libxcb-render0 libxext6
libxfont1 libxft2 libxmu6 libxpm4 libxrender1 libxt6 ttf-dejavu
ttf-dejavu-core ttf-dejavu-extra ttf-liberation x-ttcidfont-conf x11-common
xfonts-encodings xfonts-utils
Suggested packages:
defoma-doc psfontmgr dfontmgr libft-perl gsfonts graphviz-doc libgd-tools
ttf-japanese-gothic ttf-japanese-mincho ttf-thryomanes ttf-baekmuk
ttf-arphic-gbsn00lp ttf-arphic-bsmi00lp ttf-arphic-gkai00mp
ttf-arphic-bkai00mp
The following NEW packages will be installed:
defoma fontconfig fontconfig-config graphviz lanmap libcairo2 libdatrie0
libfontconfig1 libfontenc1 libfreetype6 libgd2-noxpm libgraphviz4 libice6
libltdl7 libpango1.0-0 libpango1.0-common libpcap0.8 libpixman-1-0 libsm6
libthai-data libthai0 libxaw7 libxcb-render-util0 libxcb-render0 libxext6
libxfont1 libxft2 libxmu6 libxpm4 libxrender1 libxt6 ttf-dejavu
ttf-dejavu-core ttf-dejavu-extra ttf-liberation x-ttcidfont-conf x11-common
xfonts-encodings xfonts-utils
0 upgraded, 39 newly installed, 0 to remove and 0 not upgraded.
Need to get 11.4MB of archives.
After this operation, 24.6MB of additional disk space will be used.

screen

marc@LordShiva:~$ sudo apt-get install screen
Reading package lists... Done
Building dependency tree
Reading state information... Done

The following extra packages will be installed:
gettext-base iso-codes python-apt python-central python-newt screen-profiles update-motd update-notifier-common
Suggested packages:
isoquery python-apt-dbg python-gtk2 python-vte python-newt-dbg screen-profiles-extras
The following NEW packages will be installed:
gettext-base iso-codes python-apt python-central python-newt screen screen-profiles update-motd update-notifier-common
0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
Need to get 2947kB of archives.
After this operation, 14.6MB of additional disk space will be used.

Seems like a bunch of extra stuff… update-motd?

nfs

Installing NFS to hack around. Eventually storage on lordshiva will be via usb disks.


sudo root@LordShiva:~# sudo apt-get install nfs-kernel-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
libevent1 libgssglue1 libnfsidmap2 librpcsecgss3 nfs-common portmap
The following NEW packages will be installed:
libevent1 libgssglue1 libnfsidmap2 librpcsecgss3 nfs-common
nfs-kernel-server portmap
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 503kB of archives.
After this operation, 1548kB of additional disk space will be used.
Do you want to continue [Y/n]?

I made sure the nfs-kernel-server was also installed on where the disks were and added to /etc/exports something like:

/home/Music lordshiva(ro,sync,no_subtree_check)

and ran sudo exportfs -av

The on the SheevaPlug:

sudo mkdir -p /nfs/Music
sudo mount homeserver:/home/Music /nfs/Music

And updated /etc/gnump3/gnump3.conf to point to /nfs/Music

updating what munin monitors

Running the following commands will make some recommendations on additional things munin can monitor.

# munin-node-configure --shell --families auto
# munin-node-configure --shell --families contrib
# munin-node-configure --shell --families manual

Just cut-n-paste the ones you want to enable into a root shell. Remember to restart the daemon too.

root@LordShiva:~# ln -s /usr/share/munin/plugins/ntp_offset /etc/munin/plugins/ntp_offset
root@LordShiva:~# ln -s /usr/share/munin/plugins/ntp_ /etc/munin/plugins/ntp_europium_canonical_com
root@LordShiva:~# ln -s /usr/share/munin/plugins/ntp_states /etc/munin/plugins/ntp_states
root@LordShiva:~# ln -s /usr/share/munin/plugins/port_ /etc/munin/plugins/port_ssh
root@LordShiva:~# ln -s /usr/share/munin/plugins/port_ /etc/munin/plugins/port_www
root@LordShiva:~# /etc/init.d/munin-node restart

SheevaPlug as a mini-printserver

The pre-installed Ubuntu doesn’t include any kernel modules, but thought I’d try using the SheevaPlug as a mini-print/scan server for my hp PSC 1510 All-in-One printer/scanner.

Install cups which pulls in a ton of other packages as well as the open source print management tools from Hewlett-Packard, hplip

root@LordShiva:~# apt-get install cups hplip
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
acl avahi-utils bc cups-client cups-common cupsddk cupsddk-drivers foomatic-db foomatic-db-engine foomatic-filters ghostscript gsfonts hal hal-info hdparm hpijs
hplip-data libavahi-client3 libavahi-compat-libdnssd1 libcupsimage2 libexif12 libffi5 libgphoto2-2 libgphoto2-port0 libgs8 libhal-storage1 libhal1 libieee1284-3
libijs-0.35 libpaper-utils libpaper1 libpci3 libpciaccess0 libpolkit-dbus2 libpolkit-grant2 libpoppler4 libsane libsensors3 libslp1 libsnmp-base libsnmp15
pciutils pm-utils policykit poppler-utils powermgmt-base psfontmgr python-dbus python-gobject python-imaging python-support radeontool sane-utils smartdimmer
smbclient ttf-freefont wget
Suggested packages:
cups-bsd cups-driver-gutenprint xpdf-korean xpdf-japanese xpdf-chinese-traditional xpdf-chinese-simplified cups-pdf kdeprint gtklp cups-pt xpp foomatic-db-hpijs
foomatic-db-gutenprint foo2zjs openprinting-ppds foomatic-gui ghostscript-x gnome-device-manager apmd hpijs-ppds hplip-doc hplip-gui gphoto2 gtkam hpoj
libsane-extras lm-sensors slpd openslp-doc cpufrequtils policykit-gnome python-dbus-doc python-dbus-dbg python-gobject-dbg python-imaging-doc python-imaging-dbg
unpaper smbfs
Recommended packages:
vbetool
The following NEW packages will be installed:
acl avahi-utils bc cups cups-client cups-common cupsddk cupsddk-drivers foomatic-db foomatic-db-engine foomatic-filters ghostscript gsfonts hal hal-info hdparm
hpijs hplip hplip-data libavahi-client3 libavahi-compat-libdnssd1 libcupsimage2 libexif12 libffi5 libgphoto2-2 libgphoto2-port0 libgs8 libhal-storage1 libhal1
libieee1284-3 libijs-0.35 libpaper-utils libpaper1 libpci3 libpciaccess0 libpolkit-dbus2 libpolkit-grant2 libpoppler4 libsane libsensors3 libslp1 libsnmp-base
libsnmp15 pciutils pm-utils policykit poppler-utils powermgmt-base psfontmgr python-dbus python-gobject python-imaging python-support radeontool sane-utils
smartdimmer smbclient ttf-freefont wget
0 upgraded, 59 newly installed, 0 to remove and 0 not upgraded.
Need to get 38.4MB of archives.
After this operation, 127MB of additional disk space will be used.
Do you want to continue [Y/n]?

Hmm, during the install I plugged in the printer and checked dmesg to see if it was recognized. The lanmap process appears to have had a problem allocating memory:


lanmap: page allocation failure. order:5, mode:0xc0d0
[] (dump_stack+0x0/0x14) from [] (__alloc_pages+0x28c/0x2a0)
[] (__alloc_pages+0x0/0x2a0) from [] (__get_free_pages+0x28/0x5c)
[] (__get_free_pages+0x0/0x5c) from [] (packet_set_ring+0xc4/0x30c)
[] (packet_set_ring+0x0/0x30c) from [] (packet_setsockopt+0x34c/0x4b4)
[] (packet_setsockopt+0x0/0x4b4) from [] (sys_setsockopt+0x84/0xa8)
[] (sys_setsockopt+0x0/0xa8) from [] (ret_fast_syscall+0x0/0x2c)
r8:c0027628 r7:00000126 r6:0004f978 r5:0000005c r4:00000010
Mem-info:
DMA per-cpu:
CPU 0: Hot: hi: 186, btch: 31 usd: 180 Cold: hi: 62, btch: 15 usd: 58
Active:54514 inactive:39796 dirty:0 writeback:0 unstable:0
free:26150 slab:6191 mapped:4044 pagetables:328 bounce:0
DMA free:104600kB min:2884kB low:3604kB high:4324kB active:218056kB inactive:159184kB present:520192kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0
DMA: 8554*4kB 4492*8kB 1155*16kB 399*32kB 48*64kB 1*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 104600kB
Swap cache: add 0, delete 0, find 0/0, race 0+0
Free swap = 0kB
Total swap = 0kB
Free swap: 0kB
131072 pages of RAM
26907 free pages
2296 reserved pages
6165 slab pages
20272 pages shared
0 pages swap cached
device eth0 left promiscuous mode

When I tried to killall lanmap, ssh sessions hung. I could get in via console still. The network seemed to be a bit wonky, so rebooted.

Hmm, scary kernel messsages

This is after the reboot and seems to be when hal is starting up on install. Install is slowing continuing.


Unable to handle kernel paging request at virtual address 1a364e25
pgd = c9e2c000
[1a364e25] *pgd=00000000
Internal error: Oops: 5 [#1]
Modules linked in:
CPU: 0 Not tainted (2.6.22.18 #1)
PC is at strnlen+0x20/0x34
LR is at vsnprintf+0x314/0x5b4
pc : [] lr : [] psr: a0000013
sp : ca99bdc0 ip : ca99bdd0 fp : ca99bdcc
r10: ffffffff r9 : ffffffff r8 : 00000000
r7 : ffffffff r6 : caa68041 r5 : 1a364e25 r4 : ca99be40
r3 : c00c8994 r2 : 1a364e25 r1 : fffffffe r0 : 1a364e25
Flags: NzCv IRQs on FIQs on Mode SVC_32 Segment user
Control: 0005317f Table: 09e2c000 DAC: 00000015
Process udevadm (pid: 4301, stack limit = 0xca99a268)
Stack: (0xca99bdc0 to 0xca99c000)
bdc0: ca99be1c ca99bdd0 c02414f8 c0240218 c023db48 ca99bdec ca99bdfc ca99bdf0
bde0: c027369c 35597fbe caa68041 c00d321a ca99be44 00000014 00000041 d4502000
be00: caa68000 c03ed298 00000000 c03fc7a4 ca99be38 ca99be20 c0241864 c02411f4
be20: c03ed240 ca99be40 caa68000 ca99beec ca99be48 c026ef10 c024184c c00d3219
be40: 1a364e25 1a364e25 d4502000 00001000 d4502000 d450200c d4502020 d4502033
be60: 1a364e25 00000044 000280d0 c03f1574 00000000 00000000 ffffff9c c03f1574
be80: c08927e8 000080d0 c03f1570 ce818ac0 00000000 00000000 ca99beec ca99bea8
bea0: c01472ec c0146724 000280d0 00000010 c0581d00 ca99a000 40020000 4001f000
bec0: 00100073 ca9e82a0 c08927e8 c03ed240 ca9e82a0 c08927e8 c03ed240 ca9e82c0
bee0: ca99befc ca99bef0 c026e810 c026ee28 ca99bf44 ca99bf00 c019ca14 c026e7fc
bf00: ca99bf74 ca99bf10 c0153c60 ca99bf70 00001000 4001f000 00000000 d48a7700
bf20: 4001f000 ca99bf70 00001000 4001f000 ca99a000 00000000 ca99bf6c ca99bf48
bf40: c01625e8 c019c964 00000000 00000000 00000000 00000000 d48a7700 00001000
bf60: ca99bfa4 ca99bf70 c01629fc c0162540 00000000 00000000 00000022 00000000
bf80: ffffffff 2a024d18 2a024d18 000007ff 00000003 c0027628 00000000 ca99bfa8
bfa0: c0027480 c01629c8 2a024d18 2a024d18 00000007 4001f000 00001000 00000000
bfc0: 2a024d18 2a024d18 000007ff 00000003 bece6f0c 0000000a 4017f000 bece6f0c
bfe0: 40170000 bece6e68 400aab04 400fe3fc 60000010 00000007 00002031 00002431
Backtrace:
[] (strnlen+0x0/0x34) from [] (vsnprintf+0x314/0x5b4)
[] (vsnprintf+0x0/0x5b4) from [] (sprintf+0x2c/0x34)
[] (sprintf+0x0/0x34) from [] (show_uevent+0xf8/0x140)
r3:1a364e25 r2:1a364e25 r1:c00d3219
[] (show_uevent+0x0/0x140) from [] (dev_attr_show+0x24/0x28)
r7:ca9e82c0 r6:c03ed240 r5:c08927e8 r4:ca9e82a0
[] (dev_attr_show+0x0/0x28) from [] (sysfs_read_file+0xc0/0x130)
[] (sysfs_read_file+0x0/0x130) from [] (vfs_read+0xb8/0x148)
[] (vfs_read+0x0/0x148) from [] (sys_read+0x44/0x70)
r7:00001000 r6:d48a7700 r5:00000000 r4:00000000
[] (sys_read+0x0/0x70) from [] (ret_fast_syscall+0x0/0x2c)
r8:c0027628 r7:00000003 r6:000007ff r5:2a024d18 r4:2a024d18
Code: ea000000 e2800001 e2511001 3a000002 (e5d03000)

I’ve removed just hal, apt-get --purge remove hal

Hmm, now it appears that the pre-install Ubuntu/Jaunty doesn’t include any kernel loadablel modules for things like USB printers. Time to install stock Debian on this beastie.

Another list of Ubuntu essentials

Thursday, June 29th, 2006

Mark Pilgrim has compiled his list of Ubuntu essentials — time to add some KDE goodness to ‘My Ubuntu/Dapper Configuration‘ page…

More on Dual Monitor with Ubuntu/Dapper

Saturday, June 24th, 2006

This is a follow on to last week’s post about Dual Monitor on Ubuntu/Dapper

I’ve been using the xorg.conf-ati.20060621 configuration at work with two monitors, but when at home the laptop didn’t degrade down to working with the one LCD monitor of the laptop. So, here is a new configuration that lets you switch between a single monitor mode (1024×768) or one large one (2048×768) that can be ‘slid over to’ by using the mouse. The key press is Control-Alt-+ (the + over on the side where the number entry is). On the laptop, it is Control-Alt-blue_Fn-?

Here the is xorg.conf file:

xorg.conf-ati-works-with-one-monitor.20060624

Dual Monitor on Ubuntu/Dapper

Wednesday, June 21st, 2006

I’ve noticed a number of people asking about dual head support in dapper on #ubuntu, so here is my setup:

This hp/compaq nc6000 laptop/notebook that has an ATI card:


$ sudo lspci|grep VGA
0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]

I have two head monitors working with both the ‘ati’ and the closed source ‘fglrx’ drivers.

Here are the configuration files:

  • xorg.conf-fglrx.20060621 — works when booting without the second monitor
  • xorg.conf-ati.20060621 — when booting with out the second monitor attached, it still thinks it is there. Some windows may pop up on the unreachable monitor.
  • Before you start hacking around with your xorg.conf, save a copy somewhere safe.

    iPodder (v2.0rc3) on UbuntuLinux

    Monday, May 23rd, 2005

    I usually run debian/sarge on my laptop, but tonight it is booted to Ubuntu ‘Hoary Hedgehog’ and wanted iPodder running in this environment too.

    The current ‘released’ version of iPodder today is v2.0rc3 for Linux.

    First off, go grab and install the the kit from http://ipodder.sourceforge.net/

    You’ll need to use python2.3 instead of the default python which is v2.4. I already had it installed, but you many need to install it. Also the older version of the xmms python library needed to be installed, but the current version of libwxgtk2.5.3-python is needed.

    The commands to install those packages is:

    sudo apt-get install python2.3 python2.3-xmms libwxgtk2.5.3-python

    Finally the PYTHONPATH needs to be extended to pick up the wx 2.5.3 libraries.

    Either edit /usr/bin/iPodder to look like this, or just do it manually when you want to run iPodder:

    export PYTHONPATH=/usr/lib/python2.4/site-packages/wx-2.5.3-gtk2-unicode/:$PYTHONPATH-unicode:$PYTHONPATH
    cd /opt/iPodder
    python2.3 iPodderGui.py

    Enjoy!

    fyi: straw database recovery

    Friday, May 13th, 2005

    This morning I accidentally double clicked on the straw RSS aggregator icon and two copies raced
    to see who could corrupt the app’s database first.

    straw refused to start with this error:

    ItemStore.py:52:__init__: DB_RUNRECOVERY: Fatal error, run
    database recovery – - PANIC: Invalid argument
    Recovery Error: See README for details on how to recover data.

    And the straw README says to do this:

    $ db_recover -h $HOME/.straw -c -v
    $ db_checkpoint -1 -v

    Fair enough, but I don’t have those scripts installed db\_recover or db\_checkpoint. It turns out that they are in the libdb2-util package. (apt-get install libdb2-util)

    Fortunately the recovery processed work fine.

    Getting the bleeding edge iPodder on Linux (debian/sarge) mini-HOWTO

    Tuesday, January 4th, 2005

    Lately, I’ve been using the bleeding edge version of iPodder from CVS (which confusingly is in the
    iSpider directory) Here is how you can grab a copy for yourself:

    $ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ipodder login
    CVS password: (press return)

    $ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ipodder co iSpider

    [tons of informational messages about downloading iSpider]

    $ cd iSpider
    $ export PYTHONPATH=/usr/lib/python2.3/site-packages/wx-2.5.3-gtk2-unicode:$PYTHONPATH-unicode:$PYTHONPATH
    $ python iPodderGui.pyw

    … And fire up your favorite dev tools!

    iPodder GUI on Linux (debian/sarge) mini-HOWTO

    Tuesday, January 4th, 2005

    I’ve been using the ipodder beta on
    my laptop that runs GNU/Linux Debian/Sarge in the command line only mode. But over the holidays there was and update to wxpython that gets the GUI working.

    This is what you need to do:

    $ alien –to-deb ipodder-1.1.2-1cl.noarch.rpm
    $ sudo dpkg -i ipodder_1.1.2-2_all.deb
    $ export PYTHONPATH=/usr/lib/python2.3/site-packages/wx-2.5.3-gtk2-unicode:$PYTHONPATH-unicode:$PYTHONPATH
    $ /opt/iPodder/iPodderGui.py

    and enjoy…

    Creating an audio blog reply using Festival

    Tuesday, October 26th, 2004

    I listened to Dave Winer’s Coffee Notes for 24-Oct-2004 podcast on the way home tonight and felt compelled to reply to him with an audio reply email about Richard Scoble/Scooble’s voice mail. Here is how I created it.

    * Get the Festival Speech Synthesis package for your Debian GNU/Linux box


    $ sudo apt-get install festival

    [...bunch of status about installing a festival and dependancies removed...]
    $

    * Create a snappy reply. I like emacs. This is exactly what hi-dave.txt looks like:

    Hi Dave!

    This is Marc No-zell and I just listened to your Coffee Talk with
    Richard Scoble. It sounds like Microsoft’s voice mail system is using
    a descendant of the DECK-talk system that was created by DECK in the
    1980s.

    I’m creating this audio reply using the Festival Speech Synthesis
    System on my Deb-ian GNU Linux laptop. Neener, neener, neener!

    Well, thanks for the Coffee Notes!

    Now I did do a little cheating here. Festival follows strict pronunciation rules and sometimes gets words wrong. For example my surname would be said as ‘nozzel’, so I spell it how I want it to sound. The same is true for DECtalk and DEC, which sounds like ‘dec-tork’ and ‘december’ (trying to be a little too clever ;-)

    * Convert from text to wave format:


    $ text2wave hi-dave.txt -o hi-dave.wav

    * Convert from wav to mp3 format


    $ lame hi-dave.wav hi-dave.mp3

    * Listen to the result:


    $ xmms hi-dave.mp3