By
Adam "StoneTable" Israel
and
Jorge "whiprush" Castro
Now that the LinuxWorld
hype is all over we can get put away the news announcements and bring you some
useful tips on Linux and other
The
Xouvert
project launched this week as an experimental branch of XFree86. Rumors of an X
fork have been floating around for quite some time, plus some
ridiculous accusations
of an X hijacking by the GNOME Project. Most "facts" around this whole
issue have been nothing but unsubstantiated rumor and opinion, so we're going to
wait to see what happens, since the project has not released anything yet. Let
the completely speculative arguments about X begin!
Secure corporate Instant
Messaging is all the rage these days with most major providers vying to provide
businesses with secure IM services.
Gaim-encryption
is a plugin for
Gaim
that encrypts your conversations with OpenSSL over the existing IM networks,
given that both parties have GAIM and the plugin. That is a downside, but
there is also a plugin for GAIM on Windows. This could be the answer to secure
cross platform IM for small businesses without having to go through the trouble
of setting up a
Jabber
server or paying out the nose for a corporate IM solution dependant on some
proprietary security system. Since Gaim-encryption is dependant on Yahoo, MSN,
and AOL's networks, for you probably won't get the reliability needed for a
large firm, but for secure IM on the cheap, it's hard to beat.
Joe Barr
attempted
to use Fedora for Red Hat, but gave up.
Fedora
is a project to bring updated third party applications to Red
Hat Linux. RPM, the packaging format originally developed by Red Hat, is the
packaging format of a good number of Linux distributions, and it's the standard
according to the Linux Standards Base (LSB). Unfortunately, RPM has been wrongly
criticized for its lack of gracefully handling dependencies. This is usually
because most users do not think to use up2date to install their packages,
instead attempting to install an RPM by itself. This is akin to grabbing .debs
and tarballs by hand, which would be just as painful. So what's a Red Hat user
to do?
Apt, Debian's Advanced
Packaging Tool, was ported to some RPM distributions in a hope of relieving
users from "RPM Hell". While the tool is helpful, the critical piece of Debian's
success with apt really has nothing to do with apt or dpkg, but the actual
community of packagers. Apt for RPM has one part of the equation, the tools,
but so far it has lacked the developer and packager resources to make installing
applications cumulatively easier on Red Hat. This is what Fedora wants to
change. Though only at 200 or so packages, the Fedora project is at its infancy,
it will take quite some time for the project to match the wide range of packages
offered via Debian (11,000 packages) or Gentoo (5,100 packages).
Fedora also offers the
yummy package manager as well as the Synaptic GUI to help users manage their
packages. So Red Hat users, which do you use? There is also
FreshRPMS,
another repository with third party packages. We know many RH administrators use
apt as a free alternative to up2date; what other tricks can you share with the
Ars community? Will third party repositories for commercial distributions ever
be as popular as the non commercial ones?
One of the most attractive
aspects of Open Source Software (OSS)
KDE users will appreciate
the
Blog of Rob
as well as
Tales of the Racoon Fink. No, we don't make these names up. KDE's
Developer Journals
also offer you a peek inside the mind of a whole group of KDE developers.
GNOME users can check out
planet gnome
for the GNOME universe. From here you can keep track of the latest
Evolution developments,
the
new Bluecurve,
as well as pointers to FAQs you won't find on normal news sites, like the
Unofficial OpenOffice
Hacker's guide. If
building OpenOffice doesn't break your spirit and send you back to the Land of
the Stable, nothing will.
Apt has magical cow
powers - This
simple bash script makes it much simpler to update a group of apt-enabled
servers for you. You weren't ssh'ing into each rackmount server one at a time
were you?
#!/bin/sh
hosts="host1 host2 host3 ..."
for i in $hosts; do
ssh root@$i apt-get update
ssh root@$i apt-get upgrade
done
Note that this script can work for most anything, so substitute emerge or
up2date if necessary. Unfortunately, with multiple hosts you still have to enter
a password, making it less efficient. To deal with this we need something to
handle our trusted hosts for us:
LUSSH - Key Management
made Easy - LUSSH
comes with the
LUFS
utility. LUFS by itself is extremely useful, allowing you to mount remote hosts
to your local machine via ssh. This means that instead of ssh'ing or scp'ing
files back and forth, you can just mount the remote system and use it as if it
was available locally. LUFS does caching for you and makes it all generally
transparent.
LUSSH however, also
handles your ssh keys for you. For example, let's say you want to write a script
to backup your files to a remote host over ssh. Normally ssh prompts for a
password, making it both annoying and dangerous to work around. (You weren't
going to store that password in a local file were you?). The ideal solution is
to go passwordless with trusted authentication via your ssh keys. Normally this
involves manually moving the keys around. LUSSH just asks you the hostname,
accepts your password, and then swaps the keys for you. From then on you do not
need to input your password to authenticate to that remote host. Now you can
freely script your task without worrying about the password prompt. Now let's
say you need to do this from multiple locations and or hosts, this brings us to:
Screen - Multiple
Terminals -
Screen, the
terminal multiplexor. Screen is like a window manager for your console. Unlike a
virtual terminal, screen allows you to detatch from a terminal. While
detached, the program you were running continues to run. You can then
reattach later and continue your task. This is useful if you want to run a
bunch of tasks but don't want to keep an ssh session open or if you lose your
connection. Screen is almost always used when running a game server in Linux.
You can attach occasionally to check the server output without having to
interrupt the server. First, we want to connect to our remote host via ssh and
then run screen:
jorge@piccolo:~ ssh trunks
jorge@trunks:~$ screen
Note how my remote machine
doesn't ask for a password, thanks to LUSSH. Now, execute whichever command you
wish, for the example make it something that will remain in the foreground. Our
"watch uptime" from a while back will suffice. Now, you've got something running
on the remote host, and we want to detatch it (it will still be running, but
your terminal windows will be free). Hit CTRL-A, then d. You are now detached.
The process you were viewing run is still running... you can confirm this with
ps -a. You can now exit back onto localhost (piccolo in this example),
yet the program continues to run on the remote host even though we're not
connected to it. To reattach, ssh back into the remote host and at the prompt
type "screen -r". Screen will return you to where you left off. This is just a
simple example; what other ways are Arsians using screen? (IRC is a popular use
for this) Let us know in the Discussion.
Synchronization is an
important task that users do, especially if you own multiple computers or a
laptop. This week's application is for keeping all your data files up to date,
regardless what PC you are on.
Unison
is a file synchronizer that is a easy for new users to pick up. While rsync is
great for scripting servers and unmonitored operation, Unison is a client side
application that you can use when you don't feel like setting up rsync. And,
like rsync, it is cross platform so you can keep all your machines synchronized.
While rsync is more of a mirroring tool, Unison is designed for normal users
that don't need the scripting capabilities of rsync.
The feature we like best
about Unison is its GUI interface, which makes it easy for newbies to use and
learn quickly. Both machines are listed in a window, and a simple arrow points
to which machine the file(s) will be copied too. Since it is cross platform, it
makes Windows-to-Linux synchronization painless. Performance is similar to rsync,
since it uses the same protocol.