Language Selection

English French German Italian Portuguese Spanish

June 2007 (#139) Issue of Linux Gazette Online

Filed under
Linux

This month's issue of Linux Gazette is ready and online. This month's highlights include:

  • Creating an Unkillable Process

Annoying as unkillable processes can be, there are some circumstances where you might legitimately want to create one. For example, if I run an audit tool, or if I want to write a program that makes sure I go to bed on time even when I'm really stuck into something, then I might not want even the root user to be able to stop it from running.

One approach would be to simply disallow any root access to the system, or at least disallow it at critical times, but that can get very complex if you still need to be able to administrate the system and/or cannot tell with certainty which times will not be critical. So I wanted an approach that did not rely on disallowing root access altogether.

---

  • Installing Perl Modules as a Non-Root User

If you use Perl for anything more complex than the traditional (and boring) generation of "Hello, World", then it's also likely that you're familiar with those wonderful work-saving devices - Perl modules. Furthermore, chances are that you're also familiar with CPAN, the Comprehensive Perl Archive Network, and the easy interface to it that is provided by the CPAN module. That all works just great - assuming that you a) run a sensible modern OS like Linux, and Cool have root access to the machine you're using (or have a friendly and cooperative sysadmin). But what if those assumptions don't hold true? What if, for example, you have a shell account on a machine run by some mega-corporation that doesn't feel like installing the Foo::Bar::Zotz::Blagger-0.01 module in their /usr/lib/perl? I, for one, can't blame them; a system-wide installation could open them up to unknown bugs galore. When your interests and theirs conflict, you lose every time - since they own the system.

So, what can we do if we really, really need that module but can't get it installed on a system-wide basis?

---

  • Writing PostgreSQL Functions in C

PostgreSQL is a powerhouse in its own right, but it is also extensible. You have a lot of options when it comes to extending PostgreSQL. You can use SQL, PL/pgSQL, PL/Tcl, PL/Perl, PL/Python, and more. Each option has its advantages. C has the advantage of speed, of course. Because PostgreSQL itself is written in C, writing C code also allows you to leverage some of PostgreSQL's own internal code. Your C code can also readily leverage any number of other programming libraries. C functions are also a stepping stone toward defining your own new PostgreSQL base types. Ready to get started? Great! Because instead of trying to butter you up with a witty preamble, I'm going to take you straight to work.

---

  • 2-Cent Tips

Recording ALSA PCM output as RAW data

I'd like to write a short tip here. Sometimes, you may want to record the PCM output stream, maybe for further sound analysis and such. How to do it?

You need to modify your ALSA setting e.g in /usr/share/alsa/alsa.conf and add below lines:

---

June 2007 (#139) Issue of Linux Gazette



More in Tux Machines

Jessie Release Date: 2015-04-25

We now have a target release date of Saturday the 25th of April. We have checked with core teams, and this seems to be acceptable for everyone. This means we are able to begin the final preparations for a release of Debian 8 - "Jessie". The intention is only to lift the date if something really critical pops up that is not possible to handle as an errata, or if we end up technically unable to release that weekend. Please keep in mind that we intend to have a quiet period from Saturday the 18th of April. Bug fixes must be *in Jessie* before then. Read more

Radeon Linux Benchmarks: Catalyst 15.3 Beta vs. Linux 4.0 + Mesa 10.6-devel

Before ending out March, here's some new OpenGL Linux benchmarks comparing the closed-source Catalyst 15.3 Beta driver against the Linux 4.0 development kernel with Mesa 10.6 Git for the freshest open-source graphics driver code. Read more

5 questions to determine if open source is a good fit for a software project

A benefit of open source in general, and commercial open source in particular, is that you have the support of others as well as the ability to do the maintenance yourself. I hope these questions will help you determine whether open source is a good fit for your next software project. Let me know if there are other questions you would add to this list. Read more