May 2019 Archives
Juliet Kemp explores the incredibly useful xargs command. It takes in input and executes your chosen command on it. Deceptively simple in concept; extremely powerful in execution. Here we'll look at xargs with find, and then at some other possibilities.
Linux offers multiple remote graphical desktop options for other Linux hosts, but what if you run a mixed Linux-Windows shop? Eric Geier shows how to run remote Windows desktops on Linux.
Apache isn't the only Web server in town, though it is by far the most popular. Eric Geier rounds up a batch of excellent Open Source Web servers for all occasions, from fully-featured to stripped-down yet capable of handling large loads.
Linux and open source rule the wireless hotspot world, and Eric Geier has rounded up five excellent, feature-packed open source wireless hotspots for us.
Eric Geier rounds up eight Linux router projects with a little something for everyone, from Internet gateways for home users to enterprise Cisco replacements.
It isn't very difficult to crimp your own CAT5 cabling. You can repair and re-use old cable, cut cable to exact lengths, and save money. Aaron Weiss shows how, with lots of good pictures.
When the simple file and printer sharing features offered by Windows, Unix/Linux, and Mac aren't enough, you should consider using a network-attached storage (NAS) server.
v id="excerpt">If you're already using Subversion for version control, extend it with commit hooks to make it a more integrated part of your development workflow.
There is more to graphics and photo editing in Linux than the wonderful Gimp. Paul Ferrill rounds up a raft of excellent Linux image editors and paint programs for all ability levels.
v id="excerpt">What are the first things you should look at after learning of a sudden change in MySQL server performance?
v id="excerpt">Having file systems in the kernel has its pros and cons. Being able to write file systems in user-space also has some pros and cons, but FUSE (File System in Userspace) allows you to create some pretty amazing results. This article takes a very brief look at user-space file systems and FUSE.
v id="excerpt">Mice are conceptually one of the simplest device drivers in the Linux operating system. Not all mice are handled by the kernel; rather, there is a two-layer abstraction. The kernel provides services for mice that cannot be driven directly by the user libraries and applications. That is, mice other than serial mice. On top of this library and application, programs (selection or gpm) provide a single common interface to all mice whether supported directly by the kernel or via a serial line.
v id="excerpt">Last month I talked about how to write a device driver for radio-tuner cards. This month, I'll cover video-capture devices, which share the same interfaces as radio devices.
v id="excerpt">One of the keys to any type of security is knowledge. To keep a network secure, you must know about security in general, but you must also be aware of the environment in which your computers operate.
v id="excerpt">While not quite as slick as Beryl, you can access multiple desktops using X.
v id="excerpt">This is the third installment in our detailed look at administering electronic mail. Previously, we considered general mail concepts and the sendmail transport agent. This month, we will look at procmail, a package designed for filtering electronic mail based upon a variety of criteria. This program was written by Stephen van den Berg, and the package's homepage can be found at http://www.procmail.org/.
In the land of Linux, there are three giants. Three distributions which have stood the test of time and from which most others have come. What makes these three unique and how have they shaped Linux as we know it today?
v id="excerpt">Having just discussed replication in Linux -- what it is, how it can be used and how it's not the same as a backup -- it's time to tackle a simple example of one of the replication tools: rsync. You will be surprised how easy it is to use rsync to replicate data to a second storage pool.
Dig deeper into m4, and look at included files, diversions, frozen files, and debugging and tracing.
v id="excerpt">Adding more cores doesn't guarantee your programs will go faster: You need to tell the programs how to use the cores. We'll show you how to use OpenMP to speed up your code in just 30 minutes.
One especially impressive feature of zsh is its context-sensitive completion system. With zsh, you can use the tab key to complete file names, command flags, shell variable names, and even scripting language syntax.
Learn how to obtain, build, and use an MPI stack for Linux machines. This tutorial will take you from "hello world" to parallel matrix multiplication in a matter of minutes.
A fairly common Linux storage question: Which is better for data striping, RAID-0 or LVM? Let's take a look at these two tools and see how they perform data striping tasks.
Kerberos and LDAP are popular, separately, but if you put them together they provide a powerful solution for secure authentication. In the first of two tutorials, Juliet Kemp walks through installation and configuration of Kerberos.
In our never ending-quest for reasonable storage management and monitoring tools, we examine a simple tool in the sysstat collection: nfsiostat. Coupled with iostat, the combination creates a nice set of tools for monitoring NFS.
Swatch isn't a cleverly designed watch from the 1980s but you'll think it's just as handy (and cleverly designed) as one. Like Logwatch, swatch is a perl script that watches your logs but swatch watches them for regular expressions that you configure. Swatch will notify you via mail or the console screen (stdout) when it matches the configured log file entries with your watchfor directives.
Kernel threads are used to implement background tasks inside the kernel. They are similar to user processes, but live in kernel address space. Here’s how to use them.
Did you ever want a little background music with your daily grind but either you didn't want to (or couldn't) fire up something graphical to use? That's where mpg123 comes to your rescue. Mpg123 is a fast console MPEG audio player and decoder library. If you're about to click on to another story because you think that a command line music playing application is devoid of features or functions, you're going to miss out on one of the coolest and most versatile MP3 applications you've ever seen.
We work in a lab environment at Cisco Systems in RTP, North Carolina, and are responsible for the care and feeding of many Intel, Sun, and Cisco boxes that make up the lab environment. Because it's a lab, developers and testers require frequent re-installations of these systems to return them to a known state. We also need to install operating systems on new boxes fairly often.
In the last column, I talked about how to read and write from multiple file
descriptors seemingly simultaneously with the select() function call. Using multiplexed I/O
lets programs block while waiting for notification that some file descriptors are ready for reading
Worldwide, data is growing at a tremendous rate. However, one recent study has pointed out that the size of files is not necessarily growing at the same rate; meaning the number of files is growing rapidly. How do we manage all of this data and files? While the answer to that question is complex, one place we can start is with Extended File Attributes.
Before releasing any amount of code, developers usually test their work to tune performance and prove that the software works as intended. But often, validation is quite difficult, even if the application is simple.
For example, the venerable Unix/Linux ls utility is conceptually quite simple, yet its many options and the myriad vagaries of the underlying file system make validating ls quite a challenge.
In previous columns, we've looked at the Linux file model, and discussed many of the Linux system calls. This month, we're going to talk a bit more about the semantics of the read() and write() system calls. Remember that read() and write() have very similar prototypes:
In a business or personal relationship, having multiple arguments is generally unpleasant and therefore to be avoided. However, in the case of the Linux shell, having multiple arguments is downright handy. Of course, in the Linux world, the word argument does not refer to a dispute; instead, it refers to a word appearing on the command line following the name of a program or script. Shell scripts that process multiple arguments afford economy and ease of use; you can simply type a command name once and have that command operate on an entire series of arguments. So this month we'll look at incorporating this capability into a home-brew script.
As you might have noticed, we love talking about file systems. In these discussions the term "inode" is often thrown about. But what is an inode and how does it relate to a file system? Glad you asked.