linux_logo(1) Color ANSI penguin logo w/ system information.


linux_logo [-h | -v ] [-a ] [ -b | -c] [-d] [-D file] [-e file] [-f] [-g | -l] [-k] [-i] [-n]


linux_logo is a program that generates a color ANSI picture of a penguin which includes some system information obtained from the /proc filesystem.


Show summary of options.
Show version of program.
-ascii -a
Display the logo as monochrome ascii.
-banner -b
Display the banner-style logo.
-classic -c
Display the original penguin logo.
Disable "prettying" of output
-D filename
Use logo from "filename"
-e filename
Use cpuinfo from "filename" for debugging purposes
Force the screen clear before drawing the logo.
Use custom output STRING for sysinfo. See below for more info.
Display only the system information.
Ignore the ~/.linux_logo and /etc/linux_logo.conf config files
Keep sysinfo flushed-left (non-centered)
Display only the logo.
-L ...
Custom logo options. See README
-o Num
Shift output Num spaces to the right
Preserve cursor location
Skip the BogoMips test [ speeds up display on non-Linux platforms ].
-t string
Display an arbitrary string
Display the system uptime.
-w val
Set screen width to val
Display the load average.



The cpuinfo supplied in /proc/cpuinfo is not always usable by linux_logo. In the relevant sysinfo_x.c file there is a place to add custom output formatting to "beautify" the cpuinfo. For instance "K6 (166 - 266)" is parsed to "K6". Formats have been added for the K6 and certain Cyrix microprocessors.

If the cpuinfo for your microprocessor generates ugly output, send the output from your /proc/cpuinfo and a sample of how it should look to the author.

Unfortunately the 2.0.x kernels don't know about newer chips. So to get linux_logo to recognize your Pentium II and newer chips you must find some piece of information in /proc/cpuinfo that distinguishes them from a pentium pro, or upgrade to a 2.2.x or 2.3.x kernel.


The format string special sequences start with # (use ## to print #). All other characters, except for \n, are printed as is.


#CCompiled Date#47 Fri Jan 8 10:37:09 EST 1999
#EUser TextMy Favorite Linux Distribution
Displayed with -t
#LLoad averageLoad average 0.04, 0.01, 0.01
where supported
#NNumber of CPU'sTwo
#OOS NameLinux
#PProcessor or ProcessorsProcessor
in Megabytes
#TType of CPUK6
#UUptimeUptime 10 hours 59 minutes
#VVersion of OS2.2.0-pre5
\\ncarriage return


  • The letter after the # must be capitalized.
  • Options not available are silently ignored.
  • Megahertz only available on some platforms and newer kernels.
  • See defaults.h on how to have #N report in non-english numbers.
  • Plural [#S] gives nothing if there is 1 cpu, gives 's' otherwise.
  • The "-y" and "-u" [display uptime and load average] command line options don't affect the output if a custom format is used.

The default banner format is:

"#O Version #V, Compiled #C\n \
#N #M#X#T Processor#S, #R RAM, #B Bogomips Total\n \

The default banner format displays the following on the author's computer:

Linux Version 2.2.0-pre5, Compiled #47 Fri Jan 8 10:37:09 EST 1999
One 188MHz AMD K6 Processor, 64M RAM, 374.37 Bogomips Total
Another example would be:

linux_logo -F "Redhat Linux 5.2\nKernel Version #V\n#U\n#L\n"

which would display:

Redhat Linux 5.2
Kernel Version 2.2.0-pre5
Uptime 11 hours 4 minutes
Load average 0.00, 0.00, 0.00


The Debian pre-packaged version of linux_logo includes the Debian logo in addition to the 'Classic' and 'Banner' logos. The Debian logo is the default logo unless one of the other logos is specified on the command line.


~/.linux_logo and /etc/linux_logo.conf can be filled with command line options and will be parsed before the actual command line


Vince Weaver
<[email protected]>.

This manual page was written by Steve Kostecke <[email protected]>, for the Debian GNU/Linux system.