sinfo-Advanced Network Monitoring
Are you looking to set up some kind of network cluster, but dealing with many different computers, all of which are nearly impossible to keep track of? What if you're in charge of a room full of computers and also of those who are using them (some of whom may be looking to slack off or run something I'll politely dub "objectionable")? sinfo may be what you're looking for. According to its Freshmeat entry:
sinfo is a monitoring tool that uses a broadcast scheme to distribute information on the status of each computer on your local network. It supports CPU, memory usage, network load and information about the top five processes on each computer. sinfo uses ncurses to display the information in an attractive manner.
sinfo displays invaluable system information over multiple PCs for easy administration.
Further extending sinfo's use with the -s switch provides even meatier information.
Installation
A binary is available for those with Debian-based systems, such as Debian, Ubuntu and the like, and chances are that it's already sitting in your repository. Given that this software also includes a startup dæmon, sinfod, I thoroughly recommend taking the binary option if you can, because a great deal of the process is automated (it's also the version I cover here). Nevertheless, in the interests of distro neutrality, I also cover the source version during the installation, as usual.
As far as library requirements are concerned, you need the following, according to the documentation:
-
ncurses: libraries for terminal handling (tested with version 5.7).
-
boost: peer-reviewed portable C++ source libraries using Boost.Bind and Boost.Signals (tested with version 1.42).
-
asio (>=1.1.0): asio is a cross-platform C++ library for network programming (tested with version 1.4.1).
If you're compiling from source, you need the pesky developer packages
as well (-dev). The number of packages under libboost- in particular
are quite extensive, so if you run into any problems during
make, the
libboost libraries may be the culprit, requiring more of its packages
before you can install properly.
For those running with source, once you have the library requirements out of the way, grab the latest tarball and extract it. Open a terminal in the new folder and enter the following commands:
$ ./configure
$ make
If your distro uses sudo:
$ sudo make install
If your distro uses root:
$ su
# make install
Before I continue, I should explain that sinfo is broken into two parts: the everyday application and the background dæmon. As for installing the dæmon, I'm going to leave this part to you, because it seems that just about every distro has a different method of dealing with startup processes (and the Debian package takes care of all that). Check the readme files in the source tarball and the Web site for more information if you're still using the source.
Usage
sinfo is a "semi-GUI" command-line program that's actually pretty easy to use, although advanced users can make it do some pretty cool stuff via command-line switches. To run the program in its basic mode, simply enter:
$ sinfo
Assuming that you have sinfo installed only on your machine for now, the information being displayed will be just that of your machine. From this screen, you see all kinds of useful information, such as available memory, CPU utilization, hostnames and so on. The sinfo Keyboard Commands sidebar shows a list of the keyboard commands that drive sinfo, toggling parts of the program with a single keystroke.
However, in this state, it's really just a glorified version of
top.
The whole point is that you can display information from several machines at
once to keep tabs on a LAN. If the other PCs on your network have sinfo
in their distro's repository, it should be as easy as installing
sinfo via apt-get and the like, then running the program on those
machines. As soon as I did that on a second machine,
voilà,
both PCs were displaying under both installations. Keep installing it
on other networked PCs, and the list will grow larger and larger.
Those are the basics out of the way, but what about the extended features? Obviously, I don't have the space to cover everything here (and you really should check the man page for more details), but let's look at some of my favorite features.
At the command line, if you add the -W switch (or
alternatively --wwwmode)
like so:
$ sinfo -W
the output changes from the usual top-like screen to HTML
output instead—very handy for those into things like remote
administration
with automated Web pages and whatnot.
This is slightly redundant while in the sinfo user interface (simply press
the s key), but it's awesome when doing some kind of command-line scripting:
add the switch -s (or alternatively
--systeminfo), and a big chunk of
serious system information is output as well. As an example, my two
machines had the following extra information:
192.168.1.2 knightro-bigdesktop i686
↪Linux 2.6.32-27-generic #49-Ubuntu SMP Wed De
cpus: 4 MHz: 800.0
RAM: 3276.5 MByte swap: 7629.4 Mbyte
load 1min: 0.0 load 5min: 0.1 load 15min: 0.1
192.168.1.1 nhoj-desktop x86_64
↪Linux 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 0
cpus: 2 MHz: 1000.0
RAM: 2007.6 MByte swap: 2047.3 Mbyte
load 1min: 0.1 load 5min: 0.2 load 15min: 0.1
uptime 0 days, 19:13:03
This kind of information suggests many potential uses, and keeping watch and troubleshooting at LAN parties springs instantly to mind. If any one node is having trouble, there's a good chance that the host will be able to hit the ground running when trying to isolate the problem.
In the end, sinfo is not only well designed, but if it's installed as binary, it's also convenient. Ultimately, I think this application will carve out an instant niche for itself, and hopefully, it will turn into one of those standard applications that are so commonplace, they just become part of the landscape. Maybe porting it would do exactly that.
sinfo Keyboard Commands
-
q — quit sinfo.
-
Page up, Page down — scroll the screen by one page.
-
Up arrow/u, down arrow/d — scroll the screen by one line.
-
Home — jump to the top line.
-
s — toggle display of system information.
-
o — toggle display of your own processes.
-
n — toggle display of network information.
-
D — toggle display of disk load.
-
t — toggle display of the top X processes.
-
c — toggle the scaling of the CPU load bars from "log", "lin" to full.
More about sinfo: http://www.ant.uni-bremen.de/whomes/rinas/sinfo
Brewing something fresh, innovative or mind-bending? Send e-mail to
John Knight is the New Projects columnist for Linux Journal.
Today’s modular x86 servers are compute-centric, designed as a least common denominator to support a wide range of IT workloads. Those generic, virtualized IT workloads have much different resource optimization requirements than hyperscale and cloud applications. They have resulted in a “one size fits all” enterprise IT architecture that is not optimized for a specific set of IT workloads, and especially not emerging hyperscale workloads, such as web applications, big data, and object storage. In this report, you will learn how shifting the focus from traditional compute-centric IT architectures to an innovative disaggregated fabric-based architecture can optimize and scale your data center.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
| Non-Linux FOSS: Seashore | May 10, 2013 |
| Trying to Tame the Tablet | May 08, 2013 |
| Dart: a New Web Programming Experience | May 07, 2013 |
- New Products
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- A Topic for Discussion - Open Source Feature-Richness?
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Home, My Backup Data Center
- One Hand Slapping
- What's the tweeting protocol?
- Trying to Tame the Tablet
- RSS Feeds
- Developer Poll
- Reply to comment | Linux Journal
5 hours 16 min ago - Reply to comment | Linux Journal
7 hours 49 min ago - Reply to comment | Linux Journal
9 hours 6 min ago - great post
9 hours 41 min ago - Google Docs
10 hours 3 min ago - Reply to comment | Linux Journal
14 hours 52 min ago - Reply to comment | Linux Journal
15 hours 38 min ago - Web Hosting IQ
17 hours 12 min ago - Thanks for taking the time to
18 hours 49 min ago - Linux is good
20 hours 47 min ago
Enter to Win an Adafruit Prototyping Pi Plate Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Prototyping Pi Plate Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- Next winner announced on 5-21-13!
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.



Comments
Looks like a nice tool for
Looks like a nice tool for keeping an eye on network resources, although I think the likes of Niagos / Icinga are more useful for larger enterprise use.
Something's missing
I use ubuntu and it's in the repositories. I installed it OK using apt-get, but there's no data. Running basic sinfo shows no data:
/ 0 nodes, 0 CPUs total CPU utilization: -nan% ( 0.000 GHz / 0.000 GHz )
Trying to pick up one of my other machines (that have sinfo installed) either defaults to the local machine with above result, or if I include a port I get:
receive error: Host not found (authoritative).
Anyway, it seems like a useful utility as I have 4 machines on my local network, but so far I'm not able to get it to work...
Thanks
Thanks for the article. Works well on my server but on my netbook (wireless) the daemon exits silently. When I run it with -F I get:
[root@acer ~]# sinfod -n wlan0 -F
sinfod 0.0.43 (compiled Nov 26 2011 08:43:00)
Exception: Address family not supported by protocol
And the client app never shows any display.
Didn't find anything about the exception with google.
Great List of Knowledge
I think is newbie but this article make me try to became expert.thanks
thanx
thanks for this one, i have to give it a try. Network monitoring can turn as hell, and i'm always in need to some helpfull softs
nagios
You could also give 'nagios' a try
nagios
I do.... i use centreon, but i find it a real pain to use.
And most of all, it is so poorly documented....
Ooh! Is this app light on
Ooh!
Is this app light on it's feet? How does it compare to central logging? Central logging can easily be parsed, but is still a chore to filter out false-positives.