Escolar Documentos
Profissional Documentos
Cultura Documentos
The Perfect Server - Pt3 p.15 Review - Exaile p.23 Letters p.26 Top 5 - Sync. Clients p.35
The articles contained in this magazine are released under the Creative Commons Attribution-Share Alike 3.0 Unported license.
This means you can adapt, copy, distribute and transmit the articles but only under the following conditions: You must attribute
the work to the original author in some way (at least a name, email or URL) and to this magazine by name ('full circle magazine')
and the URL www.fullcirclemagazine.org (but not attribute the article(s) in any way that suggests that they endorse you or your use of the work). If
you alter, transform, or build upon this work, you must distribute the resulting work under the same, similar or a compatible license.
L
ast month, Andrew gave us his Top 5 Media Center applications. This month I've
written a How-To on using Ubuntu on an Acer Aspire Revo to create the
foundation for Boxee. For under £150 I've created a fantastic media center
which not only looks great, it's fully customizable!
That's my media center story, but don't forget to read the My Story articles which
this month focus on Ubuntu, Linux and open-source in public education, as well as how
one man went from using old (modern at the time) computers, to using Ubuntu.
Another advertisement this month! But don't panic, it's only for this month and it's Ubuntu is a complete operating
our way of trying to bring more attention to SCaLE 2010. February sees the eighth system that is perfect for
laptops, desktops and servers.
annual . Unfortunately I can't attend, but if anyone does Whether at home, school or
attend, we'd love to hear what it was like, who was there, what happened, so fill us in! work, Ubuntu contains all the
applications you'll ever need
Don't forget to read the Ubuntu Women interview, on page 28, with Jane Silber the including word processor, email
application and web browser.
COO at Canonical. As most of you will know, Jane will take over from Mark as CEO on Ubuntu is and always will be free
March 1st. of charge. You do not pay any
licensing fees. You can
And finally, Robin Catling, the man of many words, is considering resurrecting the download, use and share Ubuntu
with your friends, family, school
FCM podcast. Care to help? - http://ubuntuforums.org/showthread.php?t=1380948 or business, for absolutely
nothing.
Enjoy the issue, and keep in touch!
Once installed, your system is
ready to use with a full set of
productivity, internet, drawing
and graphics applications, and
Editor, Full Circle magazine games.
ronnie@fullcirclemagazine.org
use the new
'contents' link to jump
to the contents page
full circle magazine #33 from any other page!
contents ^
NEWS
Ubuntu Firefox shuns Ubuntu - version 10.4, dubbed
Ubuntu Primes Music Music Store objective as such:
Google for Yahoo! search Lucid Lynx and due in April -
Yahoo! will be the default Service "
engine in the search box in the
The next release of Ubuntu will Although it is not yet official,
top right-hand corner of the
scrap Google as the default Ubuntu's next release looks likely
Firefox browser bundled with
search engine on its Firefox to include a music store service
the OS, and Yahoo! search will similar to Apple's iTunes.
browser in favor of Yahoo!,
be the browser's default
thanks to a new revenue-
homepage. The first hint that Ubuntu
sharing deal between Yahoo! developers were considering a
and commercial Ubuntu backer music store came in September
Canonical. last year when Canonical chief
Mark Shuttleworth announced
With regulators set to approve plans for Lucid Lynx, the next
As is typical with Firefox, users version of Ubuntu. At the time
Yahoo!'s search pact with
will have the option of Shuttleworth made vague
Microsoft, this means that
changing the search box references to an Amazon- and "
Redmond will power the future
default. This means they can iTunes-like music store for the
of Firefox on Ubuntu, a next release.
change it back to Google, and According to the specifications
combination with decidedly users will log into the music store
thanks to another Lucid Lynx
anti-Redmond connotations. Since then the noise around an using their existing Ubuntu One
change announced by
The ultimate irony is that Ubuntu music store has grown username. [...] Already a
Spencer, doing so will also into a coherent direction and a
Microsoft will essentially be Rhythmbox plugin for the Ubuntu
switch the browser's number of details suggest that
paying people to build a Linux One Music Store is listed in
homepage to Google. If you the Ubuntu One Music Store is on Ubuntu's blueprints.
distro.
choose a search provider other track for possible inclusion in
than Google or Yahoo!, Lynx Lucid Lynx which is scheduled to : mybroadband.co.za
Canonical's Rick Spencer be released in April this year.
may or may not update the
announced the Yahoo! revenue
browser's homepage in similar
deal on Tuesday, with a post to The most obvious clue to the
fashion. Canonical has yet to
the Ubuntu developer mailing Ubuntu One Music Store is the
sort out the situation involving wiki page outlining plans for the
list.
other providers. product. Among other details, the
wiki explains the Ubuntu One
With the next release of
: theregister.co.uk
full circle magazine #33 contents ^
COMMAND & CONQUER
N
ow that we've windows). This feature is can set up the commands to
covered the If you were looking through especially useful if you're the run, detach the Screen, and
introduction to GNU my configuration file last kind of person who regularly disconnect from the SSH
Screen last month, month, you must have noticed uses certain CLI-based server. If you want to re-
we're ready to advance into the following two lines at the programs (mutt, irssi, midnight connect and get the info back,
slightly more useful end of my .screenrc: commander, etc.), and want to all you have to do is re-attach
configurations. I'll be covering have them readily available in the Screen session. I
only a few aspects of Screen # autostart screen sessions one easy-to-access window recommend detaching before
screen -t Zsh 0 /bin/zsh without opening a horde of disconnecting from SSH, but
that I use and find useful, but
screen -t IRC 1
they are by no means as /usr/bin/irssi terminals. Screen should automatically
advanced as they get, nor are detach and keep the Screen
they the only aspects worth The lines there add a new If you're an SSH user, you've running when the connection
using in Screen. I'd be happy to window (the number after the probably run into the problem closes. This is useful for system
have readers send in their title) to Screen with the title where you access a machine, administrators who may need
favourite configuration/setting (specified after the “-t” flag), and run a command, and you to run a script to update
for Screen. I can post them at and the following command. end up losing your connection, permissions or whatnot, and
the start of Command & So, the .screenrc launches and then frustrate yourself by will save them the need to
Conquer each month, so that Screen with window 0 running having to re-run the command send the process to the
we can learn something new my Z-shell, with a title of since you lost the output. This background, or to keep the SSH
from them. The things I'll be “Zsh”, and window 1 with irssi is why I, personally, feel that connection open the entire
covering in this article are the running, and a title of “IRC”. Screen (or another terminal time. If I remember correctly,
following: automatically Screen will default to the multiplexer) is a must for any you can even configure the
starting windows with newest window, so my Screen SSH users who will be SSH shell to automatically run
commands, using Screen over sessions always start in IRC, connected for longer than a Screen for any SSH login,
SSH to daemonize commands, since that's what I'll most likely few minutes, and who may meaning you're always going
sharing Screen sessions, use. I don't know if there is a need to run more than one to be in a Screen shell.
splitting the window, and the limit to how many windows command. Even if you're one
benefit of Screen over TTY Screen can have, but I would of those one-command and a Another extremely useful
screens or a normal shell. So, recommend not having more few-minutes users, Screen feature of Screen is the ability
lets get started and fire up our than the number of shortcuts might still be a very useful to share sessions. This is great
Screen sessions, and our to quickly switch between thing for you. If you connect if you're editing a script and
.screenrc files! them (so a maximum of 9 via SSH, and run Screen, you need input from another user.
G
kind. use the power of See-Quill will someday have so many
ood morning Boys needed to learn a bit of a papers that they would, if
and Girls. It's story Then one day, from the top different language. It wouldn't placed on top of each other, be
time. Everyone get of a mountain somewhere (I be too difficult a language to taller than you by 15 times. We
settled and comfy. personally think it was learn. In fact, it was much like should use my power.”
Ready? Good! Colorado, but I'm not sure), the one the people already
came a lovely fairy. This fairy used. It just has a different way So, working together, User
Once upon a time, the world was blue and silver - with of saying things, and you had and See-Quill created a
was ruled by paper. Paper, beautiful wings and white hair, to think about things very “database thingie” (a fairy
paper everywhere. They had to and was about 1 foot tall. Her carefully BEFORE you said technical term), and User lived
make special homes for all that name, believe it or not, was them - to use the power of See- happily ever after.
paper. They were called filing See-Quill. Isn't that a funny Quill.
cabinets, and were big metal name? Anyway, See-Quill said
things that would take rooms that she could fix everything One day, a young boy
and rooms and rooms at having to do with all the paper named, curiously enough, Of course, the story is not
businesses to house all the
full circle magazine #33 contents ^
PROGRAM IN PYTHON - PART 7
completely true. However, to create a recipe database make it very large and
using databases and SQL can program. Around my house, have one record for
make our lives easier. This recipes come in various forms: everything in the recipe.
time, we will learn about some 3x5 card, 8x10 pieces of paper, That, however, would be Serves: 4
simple SQL queries, and how to napkins with the recipe clumsy and hard to deal
use them in a program. Some scribbled on it, pages from with. Instead, we are going : Greg Walters
people might think that this magazines, and even stranger to use the recipe card as a
might not be the “correct” way forms. They can be found in template. One table will
or the “best” way, but it is a books, boxes, binders, and handle the top of the card, 1 cup parboiled Rice (uncooked)
reasonable way. So let's begin. other things. However, they all or the gross information 1 pound Hamburger
pretty much have one thing in about the recipe; one table 2 cups Water
Databases are like the filing common: the format. In almost will handle the middle of 1 8 oz can Tomato Sauce
cabinets in our story above. every case, at the top you have the card, or the ingredients 1 small Onion chopped
Data tables are like the file the recipe title and maybe how information; and one table 1 clove Garlic chopped
folders. The individual records many servings it makes and will handle the bottom, or 1 tablespoon Ground Cumin
in the tables are like the sheets where it came from. The the instructions. 1 teaspoon Ground Oregano
of paper. Each piece of middle contains the list of Salt and Pepper to taste
information is called a field. It ingredients, and the bottom Make sure you have Salsa to taste
falls together very nicely, contains the instructions - installed SQLite and APSW.
doesn't it? You use SQL dealing with the order that SQLite is a small database
(pronounced See-Quill) things are done in, the cooking engine that doesn't require Brown hamburger.
statements to do things with time, and so on. We will use you to have a separate
the data. SQL stands for this general format as the database server, which Add all other ingredients.
Structured Query Language, template of our database makes it ideal for our little
and is basically designed to be project. We will break this up application. Everything you Bring to boil.
an easy way to use databases. into two parts. We'll create the learn here can be used
In practice, however, it can database this time, and the with larger database Stir, lower to simmer and cover.
become very complicated. We application to read and update systems like MySQL and
will keep things pretty simple the database next time. others. The other good Cook for 20 minutes.
for this installment. thing about SQLite is that
Here's an example. Let's say it uses limited data types. Do not look, do not touch.
We need to create a plan, we have the recipe shown right. These types are Text,
like starting any construction Numeric, Blob, and Integer Stir and serve.
project. So, think of a recipe Notice the order we just Primary Key. As you have
card, which is a good thing to discussed. Now when we learned already, text is
think about, since we are going design our database - we could pretty much anything. Our
full circle magazine #33 contents ^
PROGRAM IN PYTHON - PART 7
ingredients, instructions, and SELECT * FROM Recipes would be typing and very redundant. We
the title of our recipe are all can use a method called
text types - even though they If you wish to obtain just a INSERT INTO Recipes aliasing. We can do it like this:
record by its primary key, you (name,servings,source)
have numbers in them. VALUES (“Tacos”,4,”Greg”)
Numeric datatypes store have to know what that value SELECT r.name, r.servings,
is (pkID in this instance), and r.source, i.Instructions
numbers. These can be integer To delete a record we can FROM Recipes r LEFT JOIN
values or floating point or real we have to include a WHERE instructions i ON (r.pkid =
use
values. Blobs are binary data, command in the statement. We i.recipeid) WHERE r.pkid = 1
and can include things like could use: DELETE FROM Recipes WHERE
pictures and other things. pkID = 10 It's shorter and still
Integer Primary Key values are SELECT * FROM Recipes WHERE readable. Now we will write a
pkID = 2
special. The SQLite database There's also an UPDATE small program that will create
engine automatically puts in a statement, but we'll leave that our database, create our
Simple enough...right?
guaranteed unique integer for another time. tables, and put some simple
Pretty much plain language.
value for us. This will be data into the tables to have
Now, suppose we want to just
important later on.
get the name of the recipe and More on SELECT something to work with. We
COULD write this into our full
the number of servings it
APSW stands for Another In the case of our database, program, but, for this example,
makes - for all recipes. It's
Python SQLite Wrapper and is a we have three tables, each can we will make a separate
easy. All you have to do is
quick way to communicate with be related together by using program. This is a run-once
include a list of the fields that
SQLite. Now let's go over some recipeID pointing to the pkID of program - if you try to run it a
you want in the SELECT
of the ways to create our SQL the recipe table. Let's say we second time, it will fail at the
statement:
statements. want to get all the instructions table creation statements.
SELECT name, servings FROM for a given recipe. We can do it Again, we could wrap it with a
To obtain records from a Recipes like this: try...catch handler, but we'll do
database, you would use the that another time.
SELECT statement. The format To insert records, we use the SELECT Recipes.name,
would be: INSERT INTO command. The Recipes.servings, We start by importing the
syntax is Recipes.source, APSW wrapper.
SELECT [what] FROM [which Instructions.Instructions
table(s)] WHERE [Constraints] FROM Recipes LEFT JOIN
INSERT INTO [table name] instructions ON import apsw
(field list) VALUES (values (Recipes.pkid =
So, if we want to get all the to insert) Instructions.recipeid) WHERE The next thing we need to
fields from the Recipes table Recipes.pkid = 1 do is create a connection to our
we would use: So, to insert a recipe into database. It will be located in
the recipe table the command However, that is a lot of the same directory where we
full circle magazine #33 contents ^
PROGRAM IN PYTHON - PART 7
have our application. When we
create this connection, SQLite RECIPES INSTRUCTIONS INGREDIENTS
automatically looks to see if ------------ ---------------------- --------------------
the database exists. If so, it pkID (Integer Primary Key) pkID(Integer Primary Key) pkID (Integer Primary Key)
opens it. If not, it creates the name (Text) recipeID (Integer) recipeID (Integer)
source (Text) instructions (Text) ingredients (Text)
database for us. Once we have serves (Text)
a connection, we need what is
called a cursor. This creates a
mechanism that we can use to structure like this. Each column automatically assigned. Let's source TEXT)'
work with the database. So is a separate table as shown pretend that this is the very
remember, we need both a above right. first record in our table, so the Next we have to tell ASPW
connection and a cursor. These database engine would assign to actually do the sql command:
are created like this: Each table has a field called the value 1 to the pkID. We will
pkID. This is the primary key use this value to relate the cursor.execute(sql)
# Opening/creating database
that will be unique within the information in the other tables
connection=apsw.Connection("c table. This is important so that to this recipe. The instructions Now we create the other
ookbook1.db3") the data tables never have a table is simple. It just holds the tables:
cursor=connection.cursor() completely duplicated record. long text of the instructions, its
This is an integer data type, own pkID and then a pointer to sql = 'CREATE TABLE
Okay - we have our and is automatically assigned the recipe in the recipe table. Instructions (pkID INTEGER
PRIMARY KEY, instructions
connection and our cursor. Now by the database engine. Can The ingredients table is a bit TEXT, recipeID NUMERIC)'
we need to create our tables. you do without it? Yes, but you more complicated in that we
There will be three tables in run the risk of accidentally have one record for each cursor.execute(sql)
our application. One to hold the creating a duplicated record id. ingredient as well as its own
sql = 'CREATE TABLE
gross recipe information, one In the case of the Recipes pkID and the pointer back to Ingredients (pkID INTEGER
for the instructions for each table, we will use this number our recipe table record. PRIMARY KEY, ingredients
recipe, and one to hold the list as a reference for which TEXT, recipeID NUMERIC)'
of the ingredients. Couldn't we instruction and which set of So in order to create the
cursor.execute(sql)
do it with just one table? Well, ingredients go with that recipe. recipe table, we define a string
yes we could, but, as you will variable called sql, and assign
Once we have the tables
see, it will make that one table We would first put the it the command to create the
created, we will use the INSERT
very large, and will include a information into the database table:
INTO command to enter each
bunch of duplicate information. so that the name, source and
sql = 'CREATE TABLE Recipes set of data into its proper table.
number served goes into the
We can look at the table (pkiD INTEGER PRIMARY KEY,
recipe table. The pkID is name TEXT, servings TEXT, Remember, the pkID is
full circle magazine #33 contents ^
PROGRAM IN PYTHON - PART 7
automatically entered for us, place the pkID of the recipe some time reading up on SQL
so we don't include that in the Why is this? Well, when we (lastid) into the sql statement. programming. You'll be happy
list of fields in our insert get data back from ASPW, it Finally, we need to put each you did.
statement. Since we will be comes back as a tuple. This is ingredient into the ingredient
using the field names, they can something we haven't talked table. I'll show you just one for
be in any order, not just the about yet. The quick now:
order they were created in. As explanation is that a tuple is (if
long as we know the names of you look at the code above) sql = 'INSERT INTO
Ingredients
the fields, everything will work like a list, but it can't be (recipeID,ingredients)
correctly. The insert statement changed. Many people use VALUES ( %s,"1 cup parboiled
for our recipe table entry tuples rarely; others use them Rice (uncooked)")' % lastid
becomes often; it's up to you. The
cursor.execute(sql)
bottom line is that we want to
INSERT INTO Recipes (name, use the first value returned. We
serves, source) VALUES It's not too hard to
(“Spanish Rice”,4,”Greg use the 'for' loop to get the
understand at this point. Next
Walters”) value into the tuple variable x.
time it will get a bit more
Make sense? OK. Let's
complicated.
Next we need to find out the continue...
value that was assigned to the If you would like the full
pkID in the recipe table. We Next, we would create the
source code, I've placed it on
can do this with a simple insert statement for the
my website. Go to
command: instructions:
www.thedesignatedgeek.com
sql = 'INSERT INTO to download it.
SELECT last_insert_rowid()
Instructions
(recipeID,instructions) Next time, we will use what
However, it doesn't just VALUES( %s,"Brown hamburger. we've learned over the series
come out as something we can Stir in all other
to create a menu-driven front
really use. We need to use a ingredients. Bring to a
boil. Stir. Lower to simmer. end for our recipe program - it
series of statements like this:
Cover and cook for 20 will allow viewing all recipes in is owner of
minutes or until all liquid a list format, viewing a single ,a
sql = "SELECT is absorbed.")' % lastid consulting company in Aurora,
last_insert_rowid()" recipe, searching for a recipe,
Colorado, and has been
cursor.execute(sql) and adding and deleting programming since 1972. He
cursor.execute(sql)
recipes. enjoys cooking, hiking, music,
and spending time with his
for x in cursor.execute(sql): Notice that we are using the family.
lastid = x[0] variable substitution (%s) to I suggest that you spend
full circle magazine #33 contents ^
HOW-TO Ubuntu, Acer Revo & Boxee
I
decided just before the Alpha) is fully compatible Once it’s installed, Boxee is
FCM#32 - TOP5 MEDIA CENTERS Christmas that I'd like to with Karmic. found in Applications > Sound
retire my first generation & Video. With Boxee running, I
Xbox (aka media center), added my local media folders
and get something more up-to- and my wireless shared
date, so I bought an Acer directories. From there, Boxee
Aspire Revo - a nettop, as they looks through your files
call them, which is basically a guessing at their classification
PC in the shape of a Nintendo (Movies/TV), but you can
Wii. Needless to say, the first assign a media type to a
Dev Graphics Internet M/media System
thing was to get my Ubuntu particular directory if you wish.
9.10 USB stick, and use it to It does the same with audio
install Ubuntu on the Revo. This files, and it will automatically
is painless and is just a bog grab your album covers and
CD/DVD HDD USB Drive Laptop Wireless standard Ubuntu install. The first thing to do is head band photographs. Editing
over to the Boxee site audio/video, or entering
But what software would I (Boxee.tv) and sign up. The information, is quite easy too -
use for playing my media? reason for this is that Boxee is even without a keyboard, as
part XBMC, part social media. Boxee has an on-screen
Having used Xbox Media Boxee is based on XBMC, but it keyboard which is easy to use.
Center (XBMC) on my Xbox, it has several useful addons that
was an obvious choice to try allow you to rate your media As well as using your own
XBMC on my Acer Aspire Revo - and recommend media to media, you have access to
which I did - but I thought I’d friends. All this is done via the dozens of ‘applications’ in
give Boxee a try. I’d heard such Boxee website, hence the Boxee, which are basically
good things about it that it signup. Once you’ve signed up, channels or feeds. Channels
would have been rude of me to you can go to the downloads are video podcasts and internet
ignore it. I have to say I really page, grab the Ubuntu episodes. The list is quite
like it. Just this month the compatible 32/64bit .deb file, varied and has everything from
Boxee developers released the and double-click it to have it CNN to Open University
Boxee Beta to the masses! Not installed via Gdebi. lectures to anime.
only that, but the Beta (unlike
W
netstat -tap | grep mysql
e can install update-alternatives: error:
General type of mail alternative link
Postfix, Courier, The output should look like
configuration: /usr/share/man/man5/maildir.5
Saslauthd, MySQL, .gz is already managed by
this:
Enter:
rkhunter, and maildir.5.gz.
binutils - with a single root@server1:~# netstat -tap
System mail name: | grep mysql
command: We want MySQL to listen on
Enter:
all interfaces, not just tcp 0 0 *:mysql *:* LISTEN
(but using your .com)
(Prefix each command with localhost. Therefore we edit 6267/mysqld
sudo, if appropriate). /etc/mysql/my.cnf and
SSL certificate required root@server1:~#
comment out the line bind-
aptitude install postfix Enter:
address = 127.0.0.1:
postfix-mysql postfix-doc During the installation, the
mysql-client mysql-server Next we install maildrop as SSL certificates for IMAP-SSL
courier-authdaemon courier- vi /etc/mysql/my.cnf
follows: and POP3-SSL are created with
authlib-mysql courier-pop
courier-pop-ssl courier-imap [...] the hostname localhost. To
SpamAssassin, And
pear php-auth php5-mcrypt
rm -f /etc/courier/pop3d.pem mcrypt php5-imagick aptitude install pure-ftpd-
Clamav imagemagick libapache2-mod- common pure-ftpd-mysql quota
suphp quotatool
and modify the following two
files - replacing CN=localhost To install amavisd-new, Edit the file /etc/default/pure-
You will see the following
with SpamAssassin, and ClamAV, ftpd-common:
question:
''CN=server1.example.com' we run:
(and you can also modify the vi /etc/default/pure-ftpd-
aptitude install amavisd-new Web server to reconfigure common
other values, if necessary):
spamassassin clamav clamav- automatically:
vi /etc/courier/imapd.cnf daemon zoo unzip bzip2 arj Enter: and make sure that the start
nomarch lzop cabextract apt-
listchanges libnet-ldap-perl mode is set to standalone and
[...] Configure database for
CN=server1.example.com libauthen-sasl-perl clamav- set VIRTUALCHROOT=true:
docs daemon libio-string- phpmyadmin with dbconfig-
[...]
perl libio-socket-ssl-perl common? [...]
vi /etc/courier/pop3d.cnf libnet-ident-perl zip libnet- Enter: STANDALONE_OR_INETD=standalon
dns-perl e
[...] [...]
Then run the following
Install Apache2, PHP5,
CN=server1.example.com VIRTUALCHROOT=true
[...] command to enable the [...]
phpMyAdmin, FCGI, Apache modules suexec,
quotacheck -avugm
quotaon -avug wget Then we make the script Jailkit is needed only if you
http://heanet.dl.sourceforge. executable, and create the want to chroot SSH users. It
net/sourceforge/mydns-
Install MyDNS ng/mydns-1.2.8.27.tar.gz
system startup links for it: can be installed as follows
(important: Jailkit must be
tar xvfz mydns- chmod +x /etc/init.d/mydns
Before we install MyDNS, we installed before ISPConfig - it
1.2.8.27.tar.gz
need to install a few update-rc.d mydns defaults cannot be installed
prerequisites: cd mydns-1.2.8 afterwards!):
SCRIPTNAME=/etc/init.d/$NAME
cd jailkit-2.10 Next month, in the final
# Gracefully exit if the package has been removed. installment, we will install
test -x $DAEMON || exit 0 ./configure
SquirrelMail and ISPConfig3,
case "$1" in make giving you the perfect server,
start) ready to go!
echo -n "Starting $DESC: $NAME" make install
start-stop-daemon --start --quiet \
--exec $DAEMON -- -b cd ..
echo "."
;; rm -rf jailkit-2.10*
stop)
Install fail2ban
echo -n "Stopping $DESC: $NAME"
start-stop-daemon --stop --oknodo --quiet \
--exec $DAEMON
echo "." This is optional but
;;
reload|force-reload) recommended, because the
echo -n "Reloading $DESC configuration..." ISPConfig monitor tries to show
start-stop-daemon --stop --signal HUP --quiet \ the fail2ban log:
--exec $DAEMON
echo "done." aptitude install fail2ban
;;
M
uch like any change experiences with open source and, sure enough, the errors larger Linux deployment could
in public education, and Linux began with a and crashes disappeared. I not occur at that time, we
the decision to Washington Post article on struck gold! We eventually explored other applications for
study a migration Firefox in December, 2004. Up added Firefox to all the school's deployment. Audacity
to more open-source until that point, my frustration computers. Our school-based continued to receive heavy use
applications and Linux occurs with Internet Explorer grew and technician shared some other for creating podcasts. We
very slowly. With all the legacy grew with each new Web applications with me, and dabbled with Gimp for graphic
applications a school uses application my school pointed me toward Linux as a design. We also deployed
designed for one browser (IE6), purchased. At that time, I replacement operating system. applications on the network
or one operating system worked as a technology I targeted an ancient desktop, side for monitoring servers and
(Windows), inflexible facilitator in one school, poised to make the next trip to bandwidth, but that was the
applications for state and assisting teachers to integrate the warehouse, and limit then.
federal reporting paint us into technology into their reformatted it to run Edubuntu.
a corner where we either classrooms. IE just never Wow! It worked, and actually After a role at the state
submit to the application of worked - between the Active X ran applications smoothly, level, and seeing more
choice, or rebel and receive no errors and the consistent whereas, when running examples of school systems
support for running said crashes. As a K-5 school, the Windows, the desktop bogged exploring open source and
applications. While the interest trend of Web-based down even when running only Linux, I wanted to transition
and passion of open source applications for student one application. When into a district that actively
does grip many educators, tutorials just reformatted under looked at the innovation
these obstacles do take time, began, and Edubuntu, I could possible with these tools. One
but, with patience, we are many of the use Open Office, district in particular continued
beginning to see a trend to applications Gimp, and more to explore various applications,
more school systems exploring struggled in applications at and I sought out that
open-source. In spite of these the IE the same time opportunity. As I became a
challenges, Linux and open environment with little director in this school system
source is alive and gaining . After that performance of 14 schools, I wanted to
support in K-12 education. article, we issues. While I continue to utilize their existing
decided to knew the tools and investigate more
As a lifetime educator, deploy challenge to uses. Some additional
starting as a classroom Firefox in one even begin innovations did not receive the
teacher, my personal school lab, exploring a road blocks that can occur in
T
he first computer I was cooking. I upgraded MS- Then it happened... Linux, and decided to give it a
used was a Televideo DOS at every opportunity, and somewhere, somehow, I try from the CD-ROM. I was
802 running CP/M on a jumped on Windows for discovered something called hooked. Everything worked.
Z80 chip - with two Workgroups with both feet. I Linux. I don't remember if it After years of being a tinkerer,
5.25-inch, single-sided, floppy- read all the magazines, was Slackware or Mandrake or all I really want today is simple,
disk drives, and 32K or 64K of tweaked, upgraded and Suse or Redhat. I do know I stable and clean. I installed
RAM. Except for an industry reformatted with abandon. I tried every flavor on the old Ubuntu 7.04 64-bit to dual-boot
specific program, the only tried DESKview and PCTools. I 486 and on the ThinkPad - until with Vista. I never looked back.
application was WordStar. The bought and proudly registered the memory and disk space I recently moved to 9.04 on the
next computer was an IBM PC, all my software, and had a requirements exceeded what entire disk. I can do everything
followed by a Televideo bookcase of manuals. I even was left. I want to do with speed and
Portable the size of a Netscaped elegance. And regardless of
Samsonite. All these were text- my way When the popular opinion, I did not have
based with green screens. My onto the ThinkPad finally to become an engineer to
first exposure to a GUI was Internet wore out, I make things work. Any help
Tandy's Deskmate. Then, with my bought my I've needed or any questions
finally, came Windows on a CompuS current Acer I've had have been quickly
Tandy 2500 with VGA. We also erve Notebook with resolved by generally
had SCO Unix and some dumb account Vista installed. respectful and enthusiastic
terminals for word processing . When While I have users like myself. Truly a
with Microsoft Word and Real I took always community. The more I learn,
World Accounting, and then a new been an the more I like. I have become
Novell 2. These were all job that required admirer an advocate as well as a user.
company owned machines. me to travel, I of Bill My next computer... Linux for
couldn't wait to get Gates, sure and maybe that monster I
My first personal machine to CompUSA to pick and never always wanted to build when I
was a mail-order box, from out my ThinkPad with Windows personally had any big was a tinkerer.
some long-gone builder, with 95 with a free upgrade to the problems with Microsoft
an Intel 486DX33, 4MB RAM, a soon-to-be-released Windows Windows or the applications,
260MB HDD, 1MB Video, and a 98. I desktop published, I Vista forced me over the edge.
2400-baud modem, plus a 15- databased, I accounted, I It just didn't work very well for
inch .28 SVGA Color Monitor. I spreadsheeted and emailed. me. I had read about Ubuntu
full circle magazine #33 contents ^
ADVERTISEMENT
Ubuntu User is the first print magazine created specifically for Ubuntu users. Ease into
Ubuntu with the helpful Discovery Guide included in each issue, or advance your skills
with in-depth technical articles, HOW-TOs, reviews, tutorials, and community reports.
I
would like to present my wrong with imitating a fine extensible through plugins.
favorite music player in After I began learning to product? Amarok 1.4 is a great
Ubuntu. It's Exaile, a program in Python, I chanced music player, because, despite I'm very happy with Exaile
player for GTK+, written in upon Exaile, which is written in its many features, its interface now. It runs well without
Python. It incorporates Python. I noticed that it is remains simple and intuitive. problems. Although the
automatic fetching of album similar to Amarok and looks Even first-time users will be number of its plugins is tiny
art, lyrics fetching, artist/album better on the Ubuntu Desktop. able to use it adequately. compared to Amarok, I don't
information via Wikipedia, It also starts faster than care, because I use only a few.
support for many portable Amarok, because it doesn't Since Amarok2 was
media players including iPods, need the KDE libs. released, many users haven't Exaile is in active
internet radio such as let go of the old Amarok player, development. Recently, Exaile
shoutcast, and tabbed Exaile has an interface like because its interface is more was rewritten from the ground
playlists. I would like to tell you Amarok 1.4, so some people intuitive. Exaile also has an up for release 0.3.0. This
how I came to this player. say it's just a clone of the great intuitive, relatively minimalistic should make development of
Amarok player. But what's interface, but this is greatly future versions much easier.
When I initially used Ubuntu Because its system
(Gutsy Gibson, 7.10), I requirements are low, it has
immediately disliked been the default player in
Rhythmbox - the standard Xubuntu since release 9.10.
Gnome player. Its interface and
configuration didn't appeal to If you are running Ubuntu,
me. Then I read something and want a cool way to play
about a popular player called and manage your music
Amarok, and installed it. collection, you might want to
Although it didn't fit well into give Exaile a try. You'll find
the Gnome desktop, I liked it. I Exaile in the Ubuntu software
subsequently replaced the repository, and you can get the
unsuitable blue icons with newest version with the
Gnome Icons, which I found on developers' PPA. In my opinion,
gnome-look.org. Then I was Exaile is a top-notch audio
very happy with the music player.
player.
Are you involved with any local What are you going to focus on
Linux/Ubuntu groups? in Jaunty and Jaunty+1?
I
n the hope that this may The Universe of Sound article
help some of the poor (FCM#31) mentions that there is a
hapless people who have "record" button in Exaile, which
allows the recording of a radio song.
had USB drive mounting This does not seem to exist on my
problems and are on the point machine running Ubuntu 9.10 with
of doing irreparable harm to Exaile 0.3.0.1.
their computers or themselves
I offer what I hope to be some
comfort. Fernando replies:
I
gives the ability to manage the . standard program which comes
am a Ubuntu user for over
unmount of the drives. At least with the OS.
two years and am also
I am now able to use USB For brainstorming and initial
against removing Gimp
drives as before. Karmic has notes I use Freemind:
from Ubuntu. I think there
been a good upgrade and the http://freemind.sourceforge.net,
are many Ubuntu users who
above is not a complaint. After a brilliant piece of mind
all, I paid nothing for the OS, it mapping software. Next to that
is solid, reliable and I use it I use Little Red Notebook as a
every day. I have taken much writers diary, scrapbook, or
more than I have given to the notebook. It is in the repository
community, so this is a small and a mighty powerfull tool to
opportunity for me to give use. I personally love the
something back. possibility to tag the contents.
Want to play a scenario or
timeline? Use StoryBook:
http://storybook.intertec.ch.
Writing Tools This is a powerfull freeware
tool giving you all sorts of
A
possibilities. And for creating
s a writer I really
the final manuscript you can
enjoyed the article in
use the template provided at
FCM#30 about the
http://groups.google.com/group
writing tools. It did, in
/open-office-writers. This
my honest opinion, miss some
project deserves all the
applications worth mentioning.
support it can get. Brilliant
Writers Café is a commercial
work.
full circle magazine #33 contents ^
UBUNTU WOMEN Jane Silber Interview
much. I'm delighted to have individual goals are besides the exploring how Canonical and
the opportunity to support the obvious commercial Ubuntu relate to each other,
Ubuntu Women initiative. differences? and breaking some new ground
in the models. The Ubuntu One
AG: After reading the JS: Canonical and Ubuntu have services are a good example of
announcement that you would many common goals. First that. Fundamentally, however,
be taking the reins as CEO for among those is to make Canonical and Ubuntu have a
Canonical, I couldn't help but Ubuntu the most widely symbiotic relationship in which
be excited for you personally, adopted free software platform each benefits from the other.
for Canonical, the Ubuntu - and Canonical invests heavily
Community and, by extension, in the development and AG: Since you mention that the
Women in Open Source. I marketing of Ubuntu to make roles of CEO and leader of the
noticed in the announcement that happen. Elsewhere, the Ubuntu Community will now be
made on Dec. 17th on the goals diverge in places where separate, and Mark stated that
Canonical Blog that, when something is of less interest or he will be able, thanks to you,
This Ubuntu asked about "How will this less suited to one than the to concentrate on product
Women interview in the impact Mark’s role on the other, rather than the goals design and development, and
Women of Ubuntu Series is Ubuntu Community Council being in conflict. For example, talking to partners, and
with Jane Silber, the current and the Ubuntu Technical Canonical has a large team gathering feedback, does this
Canonical COO, but as of March Board?", you stated, "One thing that works with OEMs to get mean Canonical now has a
1st, 2010, she will be taking this move will bring about is a emerging, pre-production R&D team lead by Mark, being
the reins of Canonical as the clearer separation of the role of hardware enabled for Ubuntu. developed under your
CEO. More about this CEO of Canonical and the The contractual and liability guidance?
announcement, and Jane's leader of the Ubuntu requirements for such work
history with Canonical, can be community. It will be two simply aren't well suited to JS: There isn't a new R&D team
found here: different people now, which I community work. In contrast, being stood up, but we do
http://blog.canonical.com/?p=3 think will be helpful in both local advocacy (e.g., continue to have a good
07. First I want to welcome you achieving their joint and installfests, local events, etc.) amount of R&D work
Jane, and thank you for taking individual goals more quickly." is much better suited to the happening throughout
part in this interview series. Can you elaborate on what LoCo teams in the Ubuntu Canonical. In some cases this is
those joint goals of Canonical community than to Canonical. concentrated in a specific
Thanks very and Ubuntu are, and what the There are areas where we are team, such as our Design and
O
This mode would be far better
ne of the most- if you could save the game and just a simple bit of background
popular, casual, go back to it at a later date. music.
puzzle games of all However, the Timed mode
time, Bejeweled has gives you only a certain There is not a lot to this
finally found its way onto the amount of time to get a high game, but it's great to have a
Linux platform, under an open- score, which kind of solves my much-loved game ported to the Ed Hewitt
source version called . complaint about the game. Linux platform. Gweled is an
excellent version of Bejeweled.
If you have never heard of The graphics are clean and My only request to the
Bejeweled, it's a small puzzle colourful. There is nothing developer is to put a save
with the aim to align 3 or more
full circle magazine #33 contents ^
Q&A questions@fullcirclemagazine.org
Please include as much information as you can about your problem.
Q Q
I am not able to view I am considering the XP bootloader to the
Q
videos on Firefox from putting Ubuntu on my I have a second hard second hard drive, so follow
sites such as YouTube. system, and was drive I want to add. the XP instructions here:
Also, I cannot see the wondering if Windows My main drive has http://ubuntuforums.org/showth
flash format files which are a 7 and Linux would play well 9.10 installed. Can I read.php?t=1014708
part of web pages these days. I together. I've heard horror use the 9.10 disc to dump
have searched forums, and stories of people trying to dual whatever is on the XP drive Also, it will not delete any
Googled for help, and applied boot Ubuntu/Vista, and was leaving me a drive with only usernames/passwords in XP.
the steps listed, but the wondering if Windows Windows XP on it, so I can boot
Q
problem stands unresolved. 7/Ubuntu would be as bad. Or, to it if I want to use Windows Is there a way to
make bittorrent
A
would it be better to, say, XP, and, if so, will it delete any
Start off by removing install VirtualBox and run Linux passwords/usernames download faster?
any flash players that within Windows? Which would associated with XP? Download speed is
15.6 kb/s to 18.3 kb/s. I'd like
A
could be interfering: be my best bet for using both
systems, dual Boot (if You can indeed. First, to increase download speed.
possible), or running it within run My connection is broadband.
A
sudo apt-get remove swfdec- Windows via VB, etc.
mozilla mozilla-plugin-gnash Due to the nature of
A
adobe-flashplugin
flashplugin-nonfree They should play bittorrent, your
very nicely together. sudo fdisk -l speeds can vary
Then install the flash plugin: Simply install greatly, depending on
Windows first, then to see what the device what torrent you download,
sudo apt-get install run the Ubuntu installer, numbers are, then use dd to and how many people are
flashplugin-nonfree choosing the amount of hard- move the partition across. So, downloading. However, one
drive space you want for each if the XP partition is /dev/sda2, thing that can greatly speed up
Restart firefox and you OS. If you already have Ubuntu and the new hard drive is torrent downloads is port
should have flash working installed, you can still install /dev/sdb, you would run: forwarding. Take a look in the
again. Windows, but you will need to preferences of your torrent
sudo dd if=/dev/sda2 client, and find which port it is
restore the grub as per this
of=/dev/sdb
post: using. Then go through this
http://ubuntuforums.org/showth site to find instructions for your
Then you need to reinstall
read.php?t=1014708 specific router.
full circle magazine #33 contents ^
MY DESKTOP misc@fullcirclemagazine.org
I'm running Ubunutu 9.04 solely on my Acer Aspire 4315, I run Ubuntu Jaunty on a Dell Inspiron Laptop that was my
with Intel Celeron and 1.5 GB RAM. I use a dark theme fiancé's, but I basically took it over (she now has a
because a light color is too bright on my laptop and netbook with Ubuntu Netbook Remix). It has an Intel
irritates my eyes. I used Screenlets to add gadgets. I prefer Pentium Dual Core processor, with 2 GB RAM, and a 320
an analog clock (to easily estimate how many hours are left GB hard drive (upgrade). Ubuntu runs perfectly on it. It ran
based on the position of the hour hand), a calendar for Vista until I discovered Intrepid Ibex last year. Currently, I
days and scheduling, and a performance counter (to have a customized theme based on Dark Ice. I made my
monitor my laptop because I tend to push it hard). I added own wallpapers, first with Paint.NET on Windows, now with
a trash icon, because I wanted to drag files that I'll delete. GIMP. I use the Guake Terminal for easy command-line
Finally, my wallpaper is a pleasure to look at. access, and Songbird for my tunes. To make space, I
ditched the bottom panel and installed AWN.
https://one.ubuntu.com/ https://www.dropbox.com/
Grsync Unison
http://www.opbyte.it/grsync/ http://www.cis.upenn.edu/~bcpierce/unison/
is a GTK+
frontend to the well
known rsync
synchronization
utility. It supports
saved sessions,
most rsync
functions (delete,
verbose, ignore-
existing, update,
and so on), and
executing
commands before
and after rsync
begins. It also
includes a handy If you don't like Grsync but still enjoy the flexibility of self-
simulation tool, so hosting (as well as the power of rsync), try out . It has
you can make sure most of the same features as Grsync, but, unlike Grsync, it
you're not deleting supports SSH, RSH, sockets, and other network-based features
crucial data before through the GUI. The main issue is that Unison sometimes
you begin. The one hangs up with large files, especially over the internet; the
feature it is missing out of the box is SSH; however, there's a standard rsync, in comparison, handles large files just fine.
handy howto over at http://url.fullcirclemagazine.org/118bb3 The other main downside is that it's not quite as user-friendly
that works just fine. as Grsync, but if you're not afraid to get your hands dirty,
Unison is a great tool.
To install Grsync, use the ` ` package in the `universe`
repository. To install Unison, use the ` ` package in the `universe`
repository.
Conduit
http://live.gnome.org/Conduit
http://podcast.ubuntu-uk.org/
Lucas Westermann
David Haas
Gord Campbell
If you would like to submit , email it to: news@fullcirclemagazine.org
Brian Jenkins
Robert Orsino
Send your or Linux experiences to: letters@fullcirclemagazine.org