Linux Jo Una March 15
Linux Jo Una March 15
A Look at
the History
behind
systemd
MARCH 2015 | ISSUE 251 | www.linuxjournal.com
SYSTEM
ADMINISTRATION
LJ251-March2015.indd 1
Libreboot
for a Free
Software
Laptop
WATCH:
ISSUE
OVERVIEW
Using Puppets
Hiera and
Encrypting
Credentials
2/19/15 9:21 AM
LINUX JOURNAL
ARCHIVE DVD
19942014
NOW AVAILABLE
www.linuxjour nal.com/dvd
LJ251-March2015.indd 2
2/19/15 9:21 AM
Are you
dealing
with
proprietary
storage?
you tired
tieredofof
dealing
with
proprietary
storage?
zStax StorCore
from Silicon
9%24MHDC2SNQ@FD
From modest data storage needs to a multi-tiered production storage environment, zStax StorCore
zStax StorCore 64
VPDOOPHGLXPRIILFHILOHVHUYHUV
VWUHDPLQJYLGHRKRVWV
VPDOOGDWDDUFKLYHV
EDFNHQGVWRUDJHIRUYLUWXDOL]HGHQYLURQPHQWV
PLVVLRQFULWLFDOGDWDEDVHDSSOLFDWLRQV
DOZD\VDYDLODEOHDFWLYHDUFKLYHV
expert
today:866-352-1173
866-352-1173 - http://www.siliconmechanics.com/zstax
TalkTalk
withwith
an an
expert
today:
LJ251-March2015.indd 3
2/19/15 9:21 AM
CONTENTS
MARCH 2015
ISSUE 251
SYSTEM ADMINISTRATION
FEATURES
58 Using Hiera
with Puppet
Use Hiera to encrypt
sensitive data
in Puppet.
Scott Lackey
68 Managing
Services
in Linux:
Past, Present
and Future
Learn about the
history of init systems
in Linux and
understand how
these systems
evolved over time.
Jonas Gorauskas
82 Infinite
BusyBox
with systemd
Build one Linux
system within
another, using
the latest utilities
within the
systemd suite of
management tools.
Charles Fisher
LJ251-March2015.indd 4
2/19/15 9:21 AM
COLUMNS
34
22
Dave Taylors
Work the Shell
Lets Play Cards with Acey-Deucey,
Part II
38
Kyle Rankins
Hack and /
Libreboot on an X60, Part I:
the Setup
44
Shawn Powers
The Open-Source Classroom
The Teeny Tiny $20 Tablet
100
24
IN EVERY ISSUE
8
10
16
32
54
105
Current_Issue.tar.gz
Letters
UPFRONT
Editors Choice
New Products
Advertisers Index
ON THE COVER
(3VVRH[[OL/PZ[VY`ILOPUKZ`Z[LTKW
)\PSK3PNO[^LPNO[=PY[\HS*VU[HPULYZW
<ZPUN7\WWL[Z/PLYHHUK,UJY`W[PUN*YLKLU[PHSZW
3PIYLIVV[MVYH-YLL:VM[^HYL3HW[VWW
7S\Z!.L[H-\SS`*HWHISL(UKYVPK;HISL[MVYW
44
LINUX JOURNAL (ISSN 1075-3583) is published monthly by Belltown Media, Inc., 2121 Sage Road, Ste. 395, Houston, TX 77056 USA. Subscription rate is $29.50/year. Subscriptions start with the next issue.
LJ251-March2015.indd 5
2/19/15 11:53 AM
Executive Editor
Senior Editor
Associate Editor
Art Director
Products Editor
Editor Emeritus
Technical Editor
Senior Columnist
Security Editor
Hack Editor
Virtual Editor
Jill Franklin
[email protected]
Doc Searls
[email protected]
Shawn Powers
[email protected]
Garrick Antikajian
[email protected]
James Gray
[email protected]
Don Marti
[email protected]
Michael Baxter
[email protected]
Reuven Lerner
[email protected]
Mick Bauer
[email protected]
Kyle Rankin
[email protected]
Bill Childers
[email protected]
Contributing Editors
)BRAHIM (ADDAD s 2OBERT ,OVE s :ACK "ROWN s $AVE 0HILLIPS s -ARCO &IORETTI s ,UDOVIC -ARCOTTE
0AUL "ARRY s 0AUL -C+ENNEY s $AVE 4AYLOR s $IRK %LMENDORF s *USTIN 2YAN s !DAM -ONSEN
President
Carlie Fairchild
[email protected]
Publisher
Mark Irgang
[email protected]
Associate Publisher
John Grogan
[email protected]
Katherine Druckman
[email protected]
Candy Beauchamp
[email protected]
LJ251-March2015.indd 6
2/19/15 9:21 AM
LJ251-March2015.indd 7
2/19/15 9:21 AM
Current_Issue.tar.gz
Putting Out
Fires and
Designing FireProof Buildings
SHAWN POWERS
VIDEO:
LJ251-March2015.indd 8
2/19/15 9:21 AM
CURRENT_ISSUE.TAR.GZ
LJ251-March2015.indd 9
2/19/15 9:21 AM
letters
Im glad youre back in the fold,
welcome home!Shawn Powers
Vagrant Simplified
2EGARDING 3HAWN 0OWERS h6AGRANT
Simplified in the January 2015
ISSUE GREAT ARTICLE ) TRIED 6AGRANT
a few months back, and I couldnt
get the light bulb to turn on. Thus,
I put it aside. Shawns article
supplied the understanding I was
missing. Many thanks.
Tim Parks
Digital Format
An interesting thing happened. I
dropped reading LJ a while back due
to hating to stare into a monitor.
But last week I finally purchased an
Amazon tablet and re-subscribed to LJ
because of the LJ app. Its now easy
TO READ ON A NICE SCREEN %VEN THOUGH
I still enjoy printed magazines, I do
respect the environment and agree
that chopping down green for this
is not good. So good choice on an
environmentally-friendly mag.
Peter K.
Thanks Peter! Paper magazines
have a dear place in my heart as
well, but I cant deny the digital
format has some advantages too.
LJ251-March2015.indd 10
2/19/15 9:21 AM
LETTERS
0.00
wget -O /tmp/_option.html
http://finance.yahoo.com/q/op?s=SPY&date=1429228800
10
21
65.14
wget -q -O /tmp/_option.html
http://finance.yahoo.com/q/op?s=SPY&date=1429228800
&& sleep 1 && grep
'option_entry\|:volume' /tmp/_option.html | sed -n
's/\r//;s/[^>]*//;s/>//;s/<\/div>//;p' | sed
's/<\/strong>//;s/[^>]*>//;s/<\/a>//;s/%//'
| grep -A8 SPY141226P00230000
LJ251-March2015.indd 11
2/19/15 9:21 AM
LETTERS
LJ251-March2015.indd 12
2/19/15 9:21 AM
LJ251-March2015.indd 13
LETTERS
2/19/15 9:21 AM
LETTERS
LJ251-March2015.indd 14
2/19/15 9:21 AM
WRITE LJ A LETTER
We love hearing from our readers. Please
send us your comments and feedback via
http://www.linuxjournal.com/contact.
At Your Service
SUBSCRIPTIONS: Linux Journal is available
in a variety of digital formats, including PDF,
.epub, .mobi and an on-line digital edition,
as well as apps for iOS and Android devices.
Renewing your subscription, changing your
e-mail address for issue delivery, paying your
invoice, viewing your account details or other
subscription inquiries can be done instantly
on-line: http://www.linuxjournal.com/subs.
E-mail us at [email protected] or reach
us via postal mail at Linux Journal, PO Box
980985, Houston, TX 77098 USA. Please
remember to include your complete name
and address when contacting us.
ACCESSING THE DIGITAL ARCHIVE:
Your monthly download notifications
will have links to the various formats
and to the digital archive. To access the
digital archive at any time, log in at
http://www.linuxjournal.com/digital.
LETTERS TO THE EDITOR: We welcome your
letters and encourage you to submit them
at http://www.linuxjournal.com/contact or
mail them to Linux Journal, PO Box 980985,
Houston, TX 77098 USA. Letters may be
edited for space and clarity.
WRITING FOR US: We always are looking
for contributed articles, tutorials and
real-world stories for the magazine.
An authors guide, a list of topics and
due dates can be found on-line:
http://www.linuxjournal.com/author.
FREE e-NEWSLETTERS: Linux Journal
editors publish newsletters on both
a weekly and monthly basis. Receive
late-breaking news, technical tips and
tricks, an inside look at upcoming issues
and links to in-depth stories featured on
http://www.linuxjournal.com. Subscribe
for free today: http://www.linuxjournal.com/
enewsletters.
ADVERTISING: Linux Journal is a great
resource for readers and advertisers alike.
Request a media kit, view our current
editorial calendar and advertising due dates,
or learn more about other advertising
and marketing opportunities by visiting
us on-line: http://ww.linuxjournal.com/
advertising. Contact us directly for further
information: [email protected] or
+1 713-344-1956 ext. 2.
LJ251-March2015.indd 15
2/19/15 9:21 AM
UPFRONT
NEWS + FUN
diff -u
LJ251-March2015.indd 16
2/19/15 9:21 AM
UPFRONT
LINUX JOURNAL
now available
for the iPad and
iPhone at the
App Store.
linuxjournal.com/ios
For more information about advertising opportunities within Linux Journal iPhone, iPad and
Android apps, contact John Grogan at +1-713-344-1956 x2 or [email protected].
LJ251-March2015.indd 17
2/19/15 9:21 AM
UPFRONT
LJ251-March2015.indd 18
2/19/15 9:21 AM
Continuous Deployment
Architecture Fundamentals
Business Skills
Save 20%
softwarearchitecturecon.com
@oreillysacon
LJ251-March2015.indd 19
on your ticket
Use code LINUXJ
2/19/15 9:21 AM
UPFRONT
Android Candy:
Bluetooth Auto
Connect
I love my latest Android device (see this issues
Open-Source Classroom column for details), but
for some reason, it wont automatically connect
to my Bluetooth headset. When I turn on my
headset, I want it to connect to my Android
device so I can start using it right away. In order
to make it connect, I have to go into the settings
app, then Bluetooth, and then tap the device to
connect. Thankfully, theres an application that
makes life a lot easier.
Bluetooth Auto Connect is a program that runs in
the background. It doesnt constantly poll for newly
turned on Bluetooth devices, because that would
waste battery power. It has several other ways to
initiate the connection though. My favorite is the
connect when powered on option. Because I
always have to turn the phone on in order to start
my audiobook (or music), its not an inconvenience
to turn the screen on in order to connect Bluetooth.
As soon as the power button is pressed, it connects
to my headset, and by the time I open the media
player application, its ready to rock!
Sometimes its the simplest applications that are
the most useful. Bluetooth Auto Connect is one
of those. Check it out in the Google Play Store
today: https://play.google.com/store/apps/
details?id=org.myklos.btautoconnect.
SHAWN POWERS
They Said It
Do something every
day that you dont
want to do; this is
the golden rule for
acquiring the habit
of doing your duty
without pain.
Mark Twain
Its okay if you mess
up. You should give
yourself a break.
Billy Joel
Let me tell you the
secret that has led
me to my goal. My
strength lies solely
in my tenacity.
Louis Pasteur
If you limit your
choices only to what
seems possible or
reasonable, you
disconnect yourself
from what you truly
want, and all that is
left is a compromise.
Robert Fritz
The highest result
of education is
tolerance.
Helen Keller
LJ251-March2015.indd 20
2/19/15 9:21 AM
LJ251-March2015.indd 21
2/19/15 9:21 AM
UPFRONT
Non-Linux FOSS:
MenuMeters
It sounds like a back in my day story,
but I really do miss the days when
Customizing MenuMeters
22 / MARCH 2015 / WWW.LINUXJOURNAL.COM
LJ251-March2015.indd 22
2/19/15 9:21 AM
UPFRONT
Tighten Up SSH
SSH is a Swiss Army knife and Hogwarts
magic wand all rolled into one simple
command-line tool. As often as we use it, we
sometimes forget that even our encrypted
friend can be secured more than it is by
default. For a full list of options to turn on
and off, simply type man sshd_config to
read the man page for the configuration file.
As an example, one of the first things
I do is disable root login via SSH. If you
open /etc/ssh/sshd_config as root, search
for a line mentioning PermitRootLogin
and change it to no . If you cant find a
line with that option, just add it to the
end. It will end up looking like:
PermitRootLogin no
Change it to:
Protocol 2
LJ251-March2015.indd 23
2/19/15 9:21 AM
UPFRONT
LJ251-March2015.indd 24
2/19/15 9:21 AM
UPFRONT
Figure 1. When Model Builder starts, you can set several parameters and the equations
you want to analyze.
contain essentially any function or
expression that NumPy understands,
since Model Builder uses Python to
do the heavy lifting.
Because Model Builder is designed
TO HANDLE SYSTEMS OF EQUATIONS
you need to define the y portion as
elements of a list. So the y variable
FOR THE FIRST EQUATION IS LABELED AS
y[0]; the y variable for the second
EQUATION IS LABELED Y;= AND SO ON
These are called the state variables.
LJ251-March2015.indd 25
2/19/15 9:21 AM
UPFRONT
Figure 2. Once you finish defining the problem and run the integration, a result window
pops up with a graph of the integration.
26 / MARCH 2015 / WWW.LINUXJOURNAL.COM
LJ251-March2015.indd 26
2/19/15 9:21 AM
UPFRONT
Figure 3. You always can get a typeset display of your equations to verify what they
should look like.
leave it alone here. The first
step box is the size of the first
step. Usually, you should leave
this as 0 to allow for automatic
determination. The minimum
and maximum step size boxes set
these variables that are used in
the variable step size algorithm.
Typically, you should leave these
as 0 as well to allow for automatic
LJ251-March2015.indd 27
2/19/15 9:21 AM
UPFRONT
Figure 4. You can pull up all of the results of your integration and do further analysis.
item FileASave to save the model
to a file. This file format is an
XML file, so you could edit it with
a text editor if you want. When
you are ready to do more work
with it, you can load it by clicking
on FileAOpen.
Once the calculations are done,
which may be fast for simple
problems, a results window will pop
up (Figure 2). matplotlib handles
LJ251-March2015.indd 28
2/19/15 9:21 AM
UPFRONT
Figure 5. You can generate a power spectrum of any column of your results.
WHERE YOU CAN SEE THE EQUATIONS
typeset (Figure 3). Beside this icon
is the Results icon. Clicking on
that pops up a spreadsheet of all
of the results from your integration
&IGURE 4HE COLUMNS OF DATA
include the time, the value of
y[0] and the step sizes, among
other things. You can select a
couple columns by holding down
the Ctrl key and clicking on the
LJ251-March2015.indd 29
2/19/15 9:21 AM
UPFRONT
LJ251-March2015.indd 30
2/19/15 9:21 AM
12th Annual
C
F
Re onf ree
w
ua gi ere
w
lif str nc
w.
G
fla o ied ati e
gg O
E on
m nli nd
gm ne U
t.c - sers
Roosevelt Hotel, NYC
.
om
Madison Ave and 45th St, next to Grand Central Station
/li
nu
x
fo
rQ
CLOUD TECHNOLOGY
Plan to Attend:
Bernard S Donefer
Associate Director,
Baruch College
Mike Blalock
Global Sales Director,
Intel
Cloud Technology,Big Data, Low Latency, Networks, Data Centers, APIs, Scalability, cost savings for the global financial markets.
Leading Wall Street IT directors and vendor technology experts
will speak on the program.
Paul Jameson
Managing Director,
Global Fin Services,
Cisco Systems
Dave Malik
Senior Director,
Advanced Services,
Cisco Systems
Dino Vitale
Dir, Morgan Stanley
Quality Assurance &
Production Mgmt
Harvey Stein
Head of Credit Risk
Modeling,
Bloomberg
Fadi Gebara
Sr Manager,
IBM Research
Terry Keene
CEO,
iSys
Rob Krugman
VP Digital Strategy,
Broadridge Fin Sols
Lee Fisher
VP Marketing, Redline
Trading Solutions
Jeremy Eder
Perf Engineering,
Red Hat
Matt Smith
Sol Architect,
Red Hat
David B. Weiss
Sr Analyst,
Aite
Rick Aiere
Architect Specialty,
AIG
Jeffrey Scheel
Senior Technical Staff,
IBM Linux Tech Center
Ed Turkel
Mgr WW HPC Mkting,
Hewlett-Packard
Charles Milo
Enterprise Technical
Specialist, Intel
Davor Frank
Sr Solutions Architect,
Solarflare
Phil Albinus
Editor, Traders Magazine, SourceMedia
Speakers will cover 2015 Cloud, HPC and the latest programs
to increase speed, put-through, and reduce costs.
Full conference program includes industry luncheon, general
sessions, drill down sessions, exhibits, post show receptions.
Dont have time for the full Conference? Attend the free
Show. Register in advance at: www.flaggmgmt.com/linux
2015 Sponsors
Shagun Bali
Analyst,
TABB Group
8:00 - 4:00
8:30 - 4:50
Visit: www.flaggmgmt.com/linux
LJ251-March2015.indd 31
2/19/15 9:22 AM
EDITORS' CHOICE
NmapNot Just
for Evil!
If SSH is the Swiss Army knife of the
system administration world, Nmap
is a box of dynamite. Its really
easy to misuse dynamite and blow
your foot off, but its also a very
powerful tool that can do jobs that
are impossible without it.
When most people think of
Nmap, they think of scanning
servers, looking for open ports
to attack. Through the years,
however, that same ability is
incredibly useful when youre in
charge of the server or computer
IN QUESTION 7HETHER YOURE TRYING
to figure out what kind of server
is using a specific IP address in
your network or trying to lock
down a new NAS device, scanning
networks is incredibly useful.
Figure 1 shows a network scan
OF MY 1.!0 .!3 4HE ONLY THING )
use the unit for is NFS and SMB file
sharing, but as you can tell, it has
a ton of ports wide open. W ithout
Nmap, it would be difficult to figure
out what the machine was running.
Another incredibly useful way
to use Nmap is to scan a network.
EDITORS
CHOICE
STATE
SERVICE
80/tcp
open
http
443/tcp
open
https
2190/tcp open
tivoconnect
2191/tcp open
tvbus
LJ251-March2015.indd 32
2/19/15 9:22 AM
LJ251-March2015.indd 33
2/19/15 9:22 AM
COLUMNS
Lets Play
Cards with
Acey-Deucey,
Part II
DAVE TAYLOR
LJ251-March2015.indd 34
2/19/15 9:22 AM
COLUMNS
Queen of Diamonds
$
initializeDeck
fi
shuffleDeck
dealCards
echo "Do you think the next card will be between? (y/n/q) "
read answer
LJ251-March2015.indd 35
2/19/15 9:22 AM
COLUMNS
won=$(( $won + 1 ))
else
else
winner=0
fi
echo "You bet that it would not be between the two and
it isn't. You WIN!"
while [ /bin/true ] ; do
LJ251-March2015.indd 36
2/19/15 9:22 AM
COLUMNS
games=$(( games + 1 ))
Ace of Hearts
7 of Spades
$ sh acey-deucey.sh
I've dealt:
6 of Hearts
9 of Clubs
LJ251-March2015.indd 37
2/19/15 9:22 AM
COLUMNS
HACK AND /
Libreboot on
an X60, Part I:
the Setup
KYLE RANKIN
Find out what Libreboot is and why you should dust off that old
ThinkPad and give it a fresh BIOS.
Recently I wrote a review
for the Linux Journal Web site
on the Purism Librem 15 laptop
(http://www.linuxjournal.com/
content/purism-librem-15-review).
The goal of this laptop is to provide a
piece of modern hardware that can run
100% free software not just for the OS,
but also all device drivers and firmware
up to and including the BIOS. At the
time Im writing this, the last major
sticking point along those lines for the
PROJECT IS THE )NTEL -ANAGEMENT %NGINE
a proprietary piece of firmware that is
REQUIRED TO BOOT UP MODERN SYSTEMS )N
that review, I wrote the following:
It turns out its rather difficult to
have a fully free software laptop.
%VEN IF YOU CAN PICK HARDWARE THAT
can use free software drivers, theres
still that pesky BIOS. While coreboot
LJ251-March2015.indd 38
2/19/15 9:22 AM
COLUMNS
HACK AND /
LJ251-March2015.indd 39
2/19/15 9:22 AM
COLUMNS
HACK AND /
LJ251-March2015.indd 40
2/19/15 9:22 AM
COLUMNS
HACK AND /
Supported Hardware
Due to the fact that Libreboot avoids
any proprietary firmware in the BIOS,
its hardware support is somewhat
LJ251-March2015.indd 41
2/19/15 9:22 AM
COLUMNS
HACK AND /
LJ251-March2015.indd 42
2/19/15 9:22 AM
COLUMNS
HACK AND /
Conclusion
Well, if I havent scared you off yet, I
hope you check out my next column
in this series where I jump right into
step-by-step instructions on how to
flash an X60 with Libreboot. Although
THE PROCESS ISNT QUITE AS SIMPLE AS
updating a traditional proprietary BIOS
LINUX JOURNAL
on your
Android device
Download the app now on
the Google Play Store
www.linuxjournal.com/android
For more information about advertising opportunities within Linux Journal iPhone, iPad and
Android apps, contact John Grogan at +1-713-344-1956 x2 or [email protected].
LJ251-March2015.indd 43
2/19/15 9:22 AM
COLUMNS
The Teeny
Tiny $20 Tablet
SHAWN POWERS
LJ251-March2015.indd 44
2/19/15 9:22 AM
COLUMNS
LJ251-March2015.indd 45
2/19/15 9:22 AM
COLUMNS
My New Non-Phone
I spent a very, very long time
researching what phone to purchase.
Since what I was proposing goes
against everything the prepaid
vendors stand for, its not like I could
check their Web sites to see if the
phones were rootable or if theyd
work without activation. I considered
several models:
The Rooting
Sometimes the hardest part of the
PROCESS IS TO GET OUT OF THE h!#4)6!4%
-% ./7v SCREEN 7ITH ENOUGH
button pressing, I was able to put the
LJ251-March2015.indd 46
2/19/15 9:22 AM
COLUMNS
Figure 1. Oddly,
a replacement
battery for this
phone costs more
than the phone
itself. At $19.99,
you cant go
wrong!
LJ251-March2015.indd 47
2/19/15 9:22 AM
COLUMNS
LJ251-March2015.indd 48
2/19/15 9:22 AM
COLUMNS
Figure 2. Although
the cellular radio
icon bothers
me, its the only
frustration I
havent been able
to eliminate!
which would make my new minitablet even more useful on the road.
One last recommendation I have
is to download one of the SD Fix
WWW.LINUXJOURNAL.COM / MARCH 2015 / 49
LJ251-March2015.indd 49
2/19/15 9:22 AM
COLUMNS
LJ251-March2015.indd 50
2/19/15 9:22 AM
LJ251-March2015.indd 51
2/19/15 9:22 AM
COLUMNS
What Else?
For me, having a tiny Android
device that lets me sync audiobooks
with FolderSync and play with
the Listen app is all I could want
and more. That doesnt mean I
couldnt think of more things to
do with a cheap Android device,
however. I actually bought another
LG Realm when they were on sale,
and I have lots of plans for it
things like:
Q A Plex player for watching movies.
Q A really cheap IP camera (birdcam!)
for my nightstand.
our televisions.
Q Wi-Fi testing tool (WiFi Analyzer).
LJ251-March2015.indd 52
2/19/15 9:22 AM
LJ251-March2015.indd 53
2/19/15 9:22 AM
NEW PRODUCTS
LJ251-March2015.indd 54
2/19/15 9:22 AM
NEW PRODUCTS
Linutop XS
Until the era of the Linutop computer, the word
minuscule has not been a common descriptor for
a full-fledged PC. That word nevertheless hits the
NAIL SQUARELY ON THE HEAD TO DESCRIBE THE NEW
Linutop XS, a truly tiny Linux computer designed
to reduce TCO from shipping to deployment,
operation and maintenance. As Linutops smallest and most energy-efficient computer
to date, the Linutop XS weighs a mere 3.3 ounces (92 g), measures about the size
OF A TYPICAL PLAYING CARD AND OPERATES ON ONLY 6OLTS AND 7ATTS ,INUTOP SAYS
that the Linutop XS comes loaded with Debian Weezy and ready-to-use software,
including Libre Office and Linutop Kiosk, making it an ideal system for a wide range
of applications in business, government, education and the home.
http://www.linutop.com
JetBrains Upsource
The idea for JetBrains new team
collaboration tool for developers,
called Upsource, originally came
from the intention to make a
TOTALLY DIFFERENT TOOL )NTELLI* )$%!
available from both the desktop
and the Web. The final result is Upsource 1.0, a new Web-based team collaboration
tool that helps developers read, browse and review code maintained in Git, Mercurial,
Subversion and/or Perforce repositories. Both a repository browser and a code-review
tool, Upsource 1.0 provides instant read access to code developed throughout an
ORGANIZATION AND HELPS IMPROVE CODE QUALITY BY ENABLING EASY CODE REVIEW *ET"RAINS
ADDS THAT THANKS TO PLATFORM SHARING WITH THE )NTELLI* )$%! )$% FOR *AVA *AVA TEAMS
enjoy an additional advantage. Upsource boasts in-depth knowledge of Java code and
is able to execute server-side static code analysis on Java projects, as well as provide
code-aware navigation and smart search for code usages.
http://www.jetbrains.com/upsource
WWW.LINUXJOURNAL.COM / MARCH 2015 / 55
LJ251-March2015.indd 55
2/19/15 9:22 AM
NEW PRODUCTS
LJ251-March2015.indd 56
2/19/15 9:22 AM
NEW PRODUCTS
http://www.nostarch.com
LJ251-March2015.indd 57
2/19/15 9:22 AM
USING
HIERA
WITH
PUPPET
A GUIDE TO USING HIERA WITH PUPPET,
SEPARATING CODE FROM DATA
AND ENCRYPTING PASSWORDS
AND CERTIFICATES.
SCOTT LACKEY
LJ251-March2015.indd 58
2/19/15 9:22 AM
:backends:
- yaml
:yaml:
WWW.LINUXJOURNAL.COM / MARCH 2015 / 59
LJ251-March2015.indd 59
2/19/15 9:22 AM
:datadir: /etc/puppet/hieradata
:hierarchy:
- "node/%{::fqdn}"
- "environment/%{::env}/main"
- "environment/%{::env}/%{calling_module}"
- defaults
LJ251-March2015.indd 60
2/19/15 9:22 AM
class nginx::credentials (
basic_auth = hiera('nginx::credentials::basic_auth'),
modules/nginx/manifests/credentials.pp
class nginx::credentials (
basic_auth = 'some_default',
){}
){}
LJ251-March2015.indd 61
2/19/15 9:22 AM
* default
:backends:
* psql
modules/nginx/manifests/credentials.pp
:psql:
:connection:
:dbname: hiera
:host: localhost
class nginx::credentials (
:user: root
basic_auth = hiera_array('nginx::credentials::basic_auth'),
:password: password
){}
'environment/prod'
key
'nginx::credentials::basic_auth'
value
'password'
LJ251-March2015.indd 62
2/19/15 9:22 AM
:pkcs7_private_key: /path/to/private_key.pkcs7.pem
:pkcs7_public_key: /path/to/public_key.pkcs7.pem
:hierarchy:
- "node/%{::fqdn}"
- "environment/%{::env}/main"
- "environment/%{::env}/%{calling_module}"
* defaults
nginx::credentials::basic_auth : >
ENC[PKCS7,Y22exl+OvjDe+drmik2XEeD3VQtl1uZJXFFF2Nn
/HjZFXwcXRtTlzewJLc+/gox2IfByQRhsI/AgogRfYQKocZg
IZGeunzwhqfmEtGiqpvJJQ5wVRdzJVpTnANBA5qxeA==]
LJ251-March2015.indd 63
2/19/15 9:22 AM
- "environment/%{::env}/%{calling_module}"
mytest.erb:
...
username: user1
passwd: <%= scope.lookupvar('nginx::credentials::basic_auth') %>
#don't do this
...
LJ251-March2015.indd 64
2/19/15 9:22 AM
LJ251-March2015.indd 65
2/19/15 9:22 AM
mytest.erb:
nginx::credentials::basic_auth
...
username: user1
mymodule.pp:
class mymodule {
include nginx::credentials
$basic_auth = "${nginx::credentials::basic_auth}"
file { '/etc/credentials/boto_cloudwatch.cfg':
content =>
template ("mymodule/mytest.erb"),
Resources
DocsHiera 1 Overview: https://docs.puppetlabs.com/hiera/1
First Look: Installing and Using Hiera:
http://puppetlabs.com/blog/first-look-installing-and-using-hiera
TomPoulton/hiera-eyaml: https://github.com/TomPoulton/hiera-eyaml
dalen/hiera-psql: https://github.com/dalen/hiera-psql
Encrypting sensitive data in Puppet: http://www.theguardian.com/info/developer-blog/
2014/feb/14/encrypting-sensitive-data-in-puppet
LJ251-March2015.indd 66
2/19/15 9:22 AM
SREcon is back!
SREcon15
SREcon15EUROPE
www.usenix.org/srecon15
www.usenix.org/srecon15europe
LJ251-March2015.indd 67
srecon15_lj.indd 1
2/19/15 9:23 AM
2/17/15 11:03 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
INITIALIZING
AND MANAGING
SERVICES
IN LINUX:
PAST,
PRESENT
AND
FUTURE
systemd is the new init system
used by many of the top Linux distributions,
but do you know the history behind it
and how we got here?
Learn about the history of init systems
in Linux and their UNIX legacy.
Gain a better perspective about how Linux
manages services and other support processes.
Jonas Gorauskas
68 / MARCH 2015 / WWW.LINUXJOURNAL.COM
LJ251-March2015.indd 68
2/19/15 9:23 AM
LJ251-March2015.indd 69
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
LJ251-March2015.indd 70
2/19/15 9:23 AM
LJ251-March2015.indd 71
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
Q USB devices.
Q %XTERNAL STORAGE VOLUMES
Q Bluetooth devices.
Q The cloud.
LJ251-March2015.indd 72
2/19/15 9:23 AM
LJ251-March2015.indd 73
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
LJ251-March2015.indd 74
2/19/15 9:23 AM
LJ251-March2015.indd 75
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
[Service]
ExecStart=/usr/bin/sshd -D
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target
[Unit]
Description=OpenSSH Daemon
Wants=sshdgenkeys.service
slices.target
After=sysinit.target sockets.target timers.target
paths.target slices.target
After=sshdgenkeys.service
JobTimeoutSec=15min
After=network.target
JobTimeoutAction=poweroff-force
LJ251-March2015.indd 76
2/19/15 9:23 AM
LJ251-March2015.indd 77
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
sshd.service
...937 /usr/sbin/sshd -D
Controversies
From my vantage point, the future is
not 100% certain when it comes to init
schemes for Linux. The clear leader, as
) WRITE THIS IN LATE IS SYSTEMD !
lot of distributions are adopting it; the
LATEST ONES ARE 2(%, AND $EBIAN
However, the adoption of systemd
has been controversial, and these
distributions have received a lot of
strong feedback from their respective
communities. Of note is the Debian
technical committee debate that
occurred in the Debian mailing list and
a complaint by Linus Torvalds himself
in the Linux kernel mailing list.
systemd is not just an init scheme.
It unifies everything that is related to
starting and managing system services
into a centralized and monolithic
whole: user login, cron jobs, network
services, virtual TTY management
and so on. The use of shell scripts to
control system startup has the benefit
of providing flexibility, and a lot of
LJ251-March2015.indd 78
2/19/15 9:23 AM
break down
your innovation barriers
power your business to its full potential
When youre presented with new opportunities, you want to focus on turning
them into successes, not whether your IT solution can support them.
Peer 1 Hosting powers your business with our wholly owned FastFiber NetworkTM,
solutions that are secure, scalable, and customized for your business.
Unsurpassed performance and reliability help build your business foundation to
be rock-solid, ready for high growth, and deliver the fast user experience your
customers expect.
LJ251-March2015.indd 79
Managed Hosting
Dedicated Hosting
Colocation
2/19/15 9:23 AM
FEATURE Initializing and Managing Services in Linux: Past, Present and Future
Conclusion
The userspace initialization and
management of Linux systems has
had a rich and diverse history. I hope
that this article has given you a new
perspective for how we got to where
we are today with systemd becoming
the new standard. I have covered all
the pros and cons of the different
schemes and how those factors have
Resources
The source code of various Linux distributions, including:
Q Debian 7 and 8
Q CentOS 6.5 and 7
Q Slackware 14
Q Fedora 20
Q Ubuntu 12.4 and 14.4
Q Arch Linux
The Web site of Lennart Poettering: http://0pointer.net/blog
The systemd Documentation: http://freedesktop.org/wiki/Software/systemd
Upstart Documentation: http://upstart.ubuntu.com/cookbook
LJ251-March2015.indd 80
2/19/15 9:23 AM
NEW!
Linux Journal
eBook Series
GEEK GUIDES
Slow Down to Speed Up:
FREE
Down
loa
NOW d
!
By Bill Childers
DevOps is one of the newest and largest movements in Information
Technology in the past few years. The name DevOps is a portmanteau
of Development and Operations and is meant to denote a fusion of
these two functions in a company. Whether or not your business actually
does combine the two functions, the lessons and tools learned from the
DevOps movement and attitude can be applied throughout the entire
Information Technology space. This eBook focuses on one of the key
attributes of the DevOps movement: Quality Assurance. At any point,
you should be able to release your product, code or configurationso
long as you continue keeping your deliverables in a deployable state. This is done by slowing
down to include a Quality Assurance step at each point in your workflow. The sooner you catch
an error or trouble condition and fix it, the faster you can get back on track. This will lower the
amount of rework required and keep your teams momentum going in a forward direction,
enabling your group to move on to new projects and challenges.
2/19/15 9:23 AM
Infinite
BusyBox
with
systemd
Lightweight virtual containers
with PID 1.
Charles Fisher
LJ251-March2015.indd 82
2/19/15 9:23 AM
indicated otherwise:
cd /home
wget http://busybox.net/downloads/binaries/latest/busybox-x86_64
LJ251-March2015.indd 83
2/19/15 9:23 AM
LJ251-March2015.indd 84
2/19/15 9:23 AM
ln -s bin sbin
ln -s bin usr/bin
echo 'root::0:0:root:/root:/bin/sh' >
/home/nifty/etc/passwd
echo 'console::respawn:/bin/getty 38400 /dev/console' >
/home/nifty/etc/inittab
tar cf - /usr/share/zoneinfo | (cd /home/nifty; tar xvpf -)
systemd-nspawn -bD /home/nifty
LJ251-March2015.indd 85
2/19/15 9:23 AM
mkdir -p /var/log/lastlog
mkdir /home
mkdir /var/run
passwd -a x luser
mkdir /tmp
mkdir /var/tmp
halt
LJ251-March2015.indd 86
2/19/15 9:23 AM
LJ251-March2015.indd 87
2/19/15 9:23 AM
LJ251-March2015.indd 88
2/19/15 9:23 AM
#Restart=always
#User=root
#Group=root
[Install]
WantedBy=multi-user.target' >
/etc/systemd/system/inetd.service
3927 /home/nifty/bin/inetd -f
28s ago
4077 -bash
LJ251-March2015.indd 89
2/19/15 9:23 AM
thus, safer.
You can learn more about the
KillMode option with the man
5 systemd.kill command.
Note also that the systemctl
status output included the word
disabled. This indicates that
the service will not be started at
boot. Pass the enable keyword to
systemctl for the service to set it
to launch at boot (the disable
keyword will undo this).
Make some note of the
commented options above. You
may set environment variables for
your service (here suggesting a
COMPRESSION QUALITY SPECIFY A NON
ROOT
user/group and commands to be
executed before the service starts or
after it is halted. These capabilities
are beyond the direct features
offered by the classical inittab.
Of course, systemd is capable of
spawning telnet servers directly,
allowing you to dispense with inetd
altogether. Run the following as root
on the host to configure systemd for
BusyBox telnetd:
systemctl stop inetd.service
echo '[Unit]
Description=mytelnet
[Socket]
LJ251-March2015.indd 90
2/19/15 9:23 AM
ListenStream=12323
Accept=yes
[Install]
WantedBy=sockets.target' >
/etc/systemd/system/mytelnet.socket
echo '[Unit]
Description=mytelnet
[Service]
ExecStart=-/home/nifty/bin/telnetd telnetd -i -l
/home/nifty/bin/login
StandardInput=socket' >
/etc/systemd/system/[email protected]
LJ251-March2015.indd 91
2/19/15 9:23 AM
data
bss
dec
hex
942326
29772
19440
991538
f2132
filename
/home/busybox-x86_64
mkdir /home/cbin
mv /home/nifty/bin/busybox-x86_64 /home/cbin
mv /home/nifty/bin/dropbearmulti-x86_64 /home/cbin
(console is /dev/pts/4).
cd /
ln -s home/cbin cbin
cd /home/nifty/bin
for x in *; do if [ -h "$x" ]; then rm -f "$x"; fi; done
LJ251-March2015.indd 92
2/19/15 9:23 AM
[Service]
ExecStart=/usr/bin/systemd-nspawn -bD /home/nifty
--bind-ro=/home/cbin:/cbin --bind-ro=/usr/share/zoneinfo
KillMode=process' > /etc/systemd/system/nifty.service
systemctl daemon-reload
Infinite BusyBox
It might interesting to launch tens,
hundreds, or even thousands of
containers at once. You could launch
the clones by making copies of the
/home/nifty directory, then adjusting
the systemd service file. To simplify,
you will place your new containers
in /home/nifty1, /home/nifty2,
/home/nifty3 ... using integer suffixes
on the directories to differentiate them.
Please make sure that you have
disabled kernel auditing to remove
the five-second delay when launching
containers. At the very least, press
e at the grub menu at boot time,
and add the audit=0 to your kernel
command line for a one-time boot.
Im going to return to the subject of
systemd instantiated services that I
touched upon with the telnetd service
FILE THAT REPLACED INETD 4HIS TECHNIQUE
will allow you to use one service
file to launch all of your containers.
Such a service has an @ character
in the filename that is used to refer
to a particular, differentiated instance
of a service, and it allows the use
of the %i placeholder within the
WWW.LINUXJOURNAL.COM / MARCH 2015 / 93
LJ251-March2015.indd 93
2/19/15 9:23 AM
echo '[Unit]
mkdir "nifty${x}"
Description=nifty container # %i
[Service]
ExecStart=/usr/bin/systemd-nspawn -bD /home/nifty%i
--bind-ro=/home/cbin:/cbin --bind-ro=/usr/share/zoneinfo
nifty${x}/etc/inittab
systemctl start nifty@${x}.service
done
cd /home
mkdir niftyslick
(cd nifty; tar cf - .) | (cd niftyslick; tar xpf -)
sed "s/2200/2100/" < nifty/etc/inittab > niftyslick/etc/inittab
~ $ cat /proc/self/cgroup
10:hugetlb:/
9:perf_event:/
LJ251-March2015.indd 94
2/19/15 9:23 AM
8:blkio:/
7:net_cls:/
6:freezer:/
5:devices:/
4:memory:/
3:cpuacct,cpu:/
2:cpuset:/
1:name=systemd:/machine.slice/machine-nifty999.scope
Container nifty1
machine-nifty10.scope
Container nifty10
machine-nifty100.scope
Container nifty100
machine-nifty101.scope
Container nifty101
machine-nifty102.scope
Container nifty102
...
Container Security
A number of concerns are raised with
these features:
1) Since BusyBox and Dropbear
were not installed with the RPM host
package tools, updates to them will
have to be loaded manually. It will
be important to check from time to
time if new versions are available
and if any security flaws have been
discovered. If it is necessary to load
new versions, the binaries should
be copied to all containers that are
potentially used, which should then
be restarted (especially if a security
WWW.LINUXJOURNAL.COM / MARCH 2015 / 95
LJ251-March2015.indd 95
2/19/15 9:23 AM
issue is involved).
2) Control of the root user in the
container cannot be passed to an
individual that you do not trust.
For a particular example, if the
LIBCBINZONEINFO BIND MOUNTS
above are used, the container root
user can issue the command:
mount -o remount,rw /usr/lib64
LJ251-March2015.indd 96
2/19/15 9:23 AM
LJ251-March2015.indd 97
2/19/15 9:23 AM
KNOWLEDGE HUB
WEBCASTS
Learn the 5 Critical Success Factors to Accelerate
IT Service Delivery in a Cloud-Enabled Data Center
Today's organizations face an unparalleled rate of change. Cloud-enabled data centers are increasingly seen as a way to accelerate
IT service delivery and increase utilization of resources while reducing operating expenses. Building a cloud starts with virtualizing
your IT environment, but an end-to-end cloud orchestration solution is key to optimizing the cloud to drive real productivity gains.
> http://lnxjr.nl/IBM5factors
WHITE PAPERS
White Paper: JBoss Enterprise Application
Platform for OpenShift Enterprise
Sponsor: DLT Solutions
2ED (ATS *"OSS %NTERPRISE !PPLICATION 0LATFORM FOR /PEN3HIFT %NTERPRISE OFFERING PROVIDES )4 ORGANIZATIONS WITH A SIMPLE AND
STRAIGHTFORWARD WAY TO DEPLOY AND MANAGE *AVA APPLICATIONS 4HIS OPTIONAL /PEN3HIFT %NTERPRISE COMPONENT FURTHER EXTENDS
THE DEVELOPER AND MANAGEABILITY BENEFITS INHERENT IN *"OSS %NTERPRISE !PPLICATION 0LATFORM FOR ON
PREMISE CLOUD ENVIRONMENTS
5NLIKE OTHER MULTI
PRODUCT OFFERINGS THIS IS NOT A BUNDLING OF TWO SEPARATE PRODUCTS *"OSS %NTERPRISE -IDDLEWARE HAS BEEN
HOSTED ON THE /PEN3HIFT PUBLIC OFFERING FOR MORE THAN MONTHS !ND MANY CAPABILITIES AND FEATURES OF *"OSS %NTERPRISE
Application Platform 6 and JBoss Developer Studio 5 (which is also included in this offering) are based upon that experience.
This real-world understanding of how application servers operate and function in cloud environments is now available in this
SINGLE ON
PREMISE OFFERING *"OSS %NTERPRISE !PPLICATION 0LATFORM FOR /PEN3HIFT %NTERPRISE FOR ENTERPRISES LOOKING FOR CLOUD
benefits within their own datacenters.
> http://lnxjr.nl/jbossapp
LJ251-March2015.indd 98
2/19/15 9:23 AM
KNOWLEDGE HUB
WHITE PAPERS
Linux Management with Red Hat Satellite:
Measuring Business Impact and ROI
Sponsor: Red Hat | Topic: Linux Management
Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT
organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility
workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows
IN IMPORTANCE IN TERMS OF VALUE TO THE BUSINESS MANAGING ,INUX ENVIRONMENTS TO HIGH STANDARDS OF SERVICE QUALITY
AVAILABILITY SECURITY AND PERFORMANCE BECOMES AN ESSENTIAL REQUIREMENT FOR BUSINESS SUCCESS
> http://lnxjr.nl/RHS-ROI
LJ251-March2015.indd 99
2/19/15 9:23 AM
EOF
Resurrecting
the Armadillo
DOC SEARLS
LJ251-March2015.indd 100
2/19/15 9:23 AM
EOF
LJ251-March2015.indd 101
2/19/15 9:23 AM
EOF
weaponized anyway?
Q Marketing still makes it harder to talk.
Q Kumbiyah sounds surprisingly good
in an echo chamber.
Q The Gitmo of the Net.
Q Gravitys great until it sucks us all
no purpose.
LJ251-March2015.indd 102
2/19/15 9:23 AM
EOF
LJ251-March2015.indd 103
2/19/15 9:23 AM
EOF
https://www.facebook.com/
login.php?next=https%3A%2F%2F
www.facebook.com%2Fgroups%
2Fnewclues%2F.
Our only common design element
between Cluetrain and New Clues
is an armadillo. On Cluetrains index
page is the image shown in Figure 1
of a flattened armadillo in the
middle of a road, painted over with
yellow divider lines. The provenance
of the photo is unknown to us.
Chris Locke found it somewhere,
and nobody has ever stepped
forward to claim it.
The one for New Clues is shown in
Figure 2. It was posted by e. res on
Flickr and made useful by a Creative
Commons Attribution 2.0 Generic
(CC BY 2.0) license. (The shot was
taken at Alki Beach in Seattle, the
town where Linux Journal was born.)
For New Clues, we cropped the shot
and made it black and white. For his
LJ251-March2015.indd 104
2/19/15 9:23 AM
Advertiser
Index
Thank you as always for supporting our
advertisers by buying their products!
ADVERTISER
URL
PAGE #
Drupalize.me
http://drupalize.me
%MBEDDED ,INUX
Conference
HTTPEVENTSLINUXFOUNDATIONORG
events/embedded-linux-conference
%MPEROR,INUX
HTTPWWWEMPERORLINUXCOM
HPC Wallstreet
http://www.flaggmgmt.com/linux
31
https://libreplanet.org/2015/
21
LinuxFest Northwest
http://linuxfestnorthwest.org/2015
65
Netgate
http://www.netgate.com
/g2EILLY 3OFTWARE
Architecture Conference
HTTPOREILLY#BB+)
Peer 1 Hosting
http://go.peer1.com/linux
79
Silicon Mechanics
http://www.siliconmechanics.com
32%CON
HTTPSWWWUSENIXORGCONFERENCE
srecon15
6AULT
HTTPEVENTSLINUXFOUNDATIONORG
events/vault
108
ATTENTION ADVERTISERS
The Linux Journal brands following has
grown to a monthly readership nearly
one million strong. Encompassing the
magazine, Web site, newsletters and
much more, Linux Journal offers the
ideal content environment to help you
reach your marketing objectives. For
more information, please visit
http://www.linuxjournal.com/advertising.
LJ251-March2015.indd 105
2/19/15 9:23 AM
EOF
LJ251-March2015.indd 106
2/19/15 9:23 AM
EOF
Resources
Dot-Com Bubble: http://en.wikipedia.org/wiki/Dot-com_bubble
Chris Locke: http://rageboy.com
Rick Levine: https://twitter.com/ricklevine
David Weinberger: http://www.hyperorg.com/blogger
The Cluetrain Manifesto: http://cluetrain.com
The entire original text of The Cluetrain Manifesto: http://cluetrain.com/book
What The Cluetrain Manifesto Teaches Us On Social Media...11 Years Later:
http://visionarymarketing.com/en/blog/2010/02/what-the-cluetrain-manifesto-teaches-uson-social-media-11-years-later
The Cluetrain Legacy and Social Media: http://www.chrisg.com/cluetrain-social-media
Invasion of the Body Snatchers: http://en.wikipedia.org/wiki/Invasion_of_the_Body_Snatchers
CC0 1.0 Universal (CC0 1.0) Public Domain Dedication:
http://creativecommons.org/publicdomain/zero/1.0
e. res on Flickr: https://www.flickr.com/photos/iamtheloop
Creative Commons Attribution 2.0 Generic License: https://creativecommons.org/licenses/by/2.0
Backchannel: New Clues:
https://medium.com/backchannel/internet-under-fire-gets-new-manifests-207a922b459e
Steven Levy: http://www.stevenlevy.com
John Johnston: http://johnjohnston.info
German Translation: http://conceptbakery.de/blog/2015/01/11/new-clues-deutscheuebersetzung-die-neuen-thesen-von-den-verfassern-des-cluetrain-manifest
Italian Translation 1:
https://medium.com/bee-free-the-social-bee/cluetrain-15-anni-dopo-9d6b4def4d57
Italian Translation 2: https://medium.com/@nuovetesi/nuove-tesi-4a1def360351
Catalan Translation: https://ca.wikisource.org/wiki/New_clues
New Clues: Calling on everyone to be Dutiful Individuals by JP Rangaswami:
http://confusedofcalcutta.com/2015/01/11/new-clues-calling-on-everyone-to-be-dutiful-individuals
Gillmor Gang: Kind of Clue: http://techcrunch.com/2015/01/10/gillmor-gang-kind-of-clue
Facebook Discussion Page: https://www.facebook.com/login.
php?next=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.facebook.com%2Fgroups%2Fnewclues%2F
Disrupt Conference: http://techcrunch.com/event-type/disrupt
Clayton Christensen: http://www.claytonchristensen.com
Disruptive Innovation: http://www.claytonchristensen.com/key-concepts
Snow on the Water: http://blogs.law.harvard.edu/doc/2014/08/03/snow-on-the-water
The World Live Web by Doc Searls in the October 2005 issue of LJ:
http://www.linuxjournal.com/article/8549
LJ251-March2015.indd 107
2/19/15 9:23 AM
LJ251-March2015.indd 108
2/19/15 9:23 AM