BSD Jails, a Better Virtual Server?
gManZboy writes "Poul-Henning Kamp, a FreeBSD committer, has an article up about BSD Jails as part of Queue's special report on virtual machines. He describes BSD's interesting 'semi-permeable' approach to VMs, and the importance of security in VM architectures. The article is co-written by Robert Watson, a DARPA principal investigator in the Host Intrusion Protection (HIP) Research Group at McAfee Research."
In what way does this differ from a linux VM, what are the up's and downs?
fp!
DEAD!
Just think of the virtual servers that could be created with per-process namespaces.
I'll let myself out.
clifgriffin > blog
Want to securely partition VMs? One option is to put 'em in Jail.
History
The history of computing has been characterized by continuous transformation resulting from the dramatic increases in performance and drops in price described by Moore's law. Computing "power" has migrated from centralized mainframes/servers to distributed systems and the commodity desktop. Despite these changes, system sharing remains an important tool for computing. From the multitasking, file-sharing, and virtual machines of the desktop environment to the large-scale sharing of server-class ISP hardware in collocation centers, safely sharing hardware between mutually untrusting parties requires addressing critical concerns of accidental and malicious damage.
There has been a strong continuing interest in access control and separation technologies to support safe yet efficient sharing of computing systems. Although the degree of sharing taking place has increased because of similarly dramatic changes in networking, there has not been a marked change in the nature of security concerns. Costs of adapting software, identifying policy goals, and minimizing administrative complexity remain a balancing act. The fundamental security primitives for separation have not changed, but our experience in attempting to apply them is substantially greater.
In this discussion, we will review existing systems that provide strong separation via access control, virtualization, namespace management, and partitioning. We will then explore the FreeBSD Jail system, implemented by us, which adopts a hybrid approach to applying security primitives. We will pay particular attention to the implementation and administrative costs of modifying an existing system. We will also make recommendations for the design of new systems to facilitate the future introduction of security and separation features. These recommendations will reach the somewhat unsurprising conclusion that the path to security turns out to also be the path of improved and intentional software design and abstraction.
Why share systems?
The sharing of systems refers to the use of a system to serve simultaneous functions with differing security properties. Sharing systems offers the following benefits:
In environments with inadequate computing resources, especially early computing environments and modern clusters, sharing allows for a more efficient use of valuable hardware resources, as well as for a joint investment in hardware resources.
The development of ubiquitous local-area and wide-area networking has facilitated large-scale inter-system communication, permitting computers to become meeting points between individuals and organizations.
Although the terms of sharing have changed, the requirements remain largely the same: tasks and data representing the interests of multiple users coexisting on the same hardware platform.
The means to share common hardware resources has been a fertile area for research and development for decades. From the days of early time sharing, operating systems have been used as platforms for sharing by scheduling jobs, providing resource mediation and virtualization, and later providing access control. As data communication spread, the desire to connect and share data became a strong driver for sharing systems, placing focus on safe sharing.
Shared systems introduce inefficiencies such as slower performance; they also create serious security concerns. Security cannot simply be a question of retaining control of the system in a technical sense, but must also address moral and legal requirements for separation and privacy.
How to share systems
In this section we will discuss a number of existing systems generally representative of broad classes of similar systems allowing for resource sharing, as well as techniques that accomplish separation. We will first discuss a classic control-free environment and then consider the Unix process model, Unix discretionary access control, full virtual
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. asdf
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. asdfasdf
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. fe2asdf3e
...it's just in jail!
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING.
BRING OUT YOUR DEAD! deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. deadness filter encountered. Post aborted! Reason: Don't use so many *BSD. It's like DYING. asdfasdfasdfasdff
- UDP Kernel bug that breaks SNMP (eg: mrtg) inside a jail
- ICMP inside jail needs to be split out better to prevent ugly hacks/kernel patches being required
- PostgreSQL needs sysvipc
I've managed to work around these various issues (running mrtg from the "jail-side" host, making it chroot to my directories to run. Enabling the required sysctls, including my own kernel patch to let ping/traceroute work..It lets me and others share a single host that is very beefy (2x2.8G Xeon, 4g ram, 315g raid-5 ultra-320 disk, etc..) on a fast link. The FreeBSD-5 jail subsystem is a bit more refined than that in FreeBSD-4... I'm pondering upgrading the system, but haven't done so yet.. You can also put a small bit of effort into the system and use rsync to keep various (important) system binaries (eg: sshd, sendmail) in-sync across all the systems so they're bug-free if an advisory comes out.. but that's basic sysadmin/patching stuff, not anything jail specific.. but if their jail is r00ted, i don't need to worry about my own files being compromised, unless they get at the 'host' system.. (which runs no services to speak of)...
GAPING HOLES
*_g_o_a_t_s_e_x_*_g_o_a_t_s_e_x_*_g_o_a_t_s_e_x_*
g_______________________________________________g
o_/_____\_____________\____________/____\_______o
a|_______|_____________\__________|______|______a
t|_______`._____________|_________|_______:_____t
s`________|_____________|________\|_______|_____s
e_\_______|_/_______/__\\\___--___\\_______:____e
x__\______\/____--~~__________~--__|_\_____|____x
*___\______\_-~____________________~-_\____|____*
g____\______\_________.--------.______\|___|____g
o______\_____\______//_________(_(__>__\___|____o
a_______\___.__C____)_________(_(____>__|__/____a
t_______/\_|___C_____)/______\_(_____>__|_/_____t
s______/_/\|___C_____)__*BSD_|__(___>___/__\____s
e_____|___(____C_____)\______/__//__/_/_____\___e
x_____|____\__|_____\\_________//_(__/_______|__x
*____|_\____\____)___`----___--'_____________|__*
g____|__\______________\_______/____________/_|_g
o___|______________/____|_____|__\____________|_o
a___|_____________|____/_______\__\___________|_a
t___|__________/_/____|_________|__\___________|t
s___|_________/_/______\__/\___/____|__________|s
e__|_________/_/________|____|_______|_________|e
x__|__________|_________|____|_______|_________|x
*_g_o_a_t_s_e_x_*_g_o_a_t_s_e_x_*_g_o_a_t_s_e_x_*
Important Stuff: Please try to keep posts on topic. Try to reply to other people's comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) If you want replies to your comments sent to you, consider logging in or creating an account.
Important Stuff: Please try to keep posts on topic. Try to reply to other people's comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) If you want replies to your comments sent to you, consider logging in or creating an account.
Important Stuff: Please try to keep posts on topic. Try to reply to other people's comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) If you want replies to your comments sent to you, consider logging in or creating an account.
Poul-Henning Kamp, a FreeBSD committer, has an article up about BSD Jails as part of Queue's special report on virtual machines.
As long as he's cowriting articles, he doesn't have to maintain code he's written. Way to go!
If he keeps going, maybe he can help divert some talented developers to projects with better outlooks than FreeBSD 5.
Comment removed based on user account deletion
...Host Intrusion Protection (HIP) Research Group...
Research is not supposed to be "hip". It is a very somber and serious process. I think it's shameful how these researchers would rather run the streets with their "rad crew" than commit to serious discovery. For shame.
-Dizzle
"I most likely AM so interested in myself."
Doesn't Linux 2.6.* have similar and better functionality now that SecureSomething patch has been merged into it?
Is that they're apparently limited to a single ip address.
One more crippling bombshell hit the already beleaguered *BSD community when IDC confirmed that *BSD market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Netcraft survey which plainly states that *BSD has lost more market share, this news serves to reinforce what we've known all along. *BSD is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be a Kreskin to predict *BSD's future. The hand writing is on the wall: *BSD faces a bleak future. In fact there won't be any future at all for *BSD because *BSD is dying. Things are looking very bad for *BSD. As many of us are already aware, *BSD continues to lose market share. Red ink flows like a river of blood.
FreeBSD is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time FreeBSD developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: FreeBSD is dying.
Let's keep to the facts and look at the numbers.
OpenBSD leader Theo states that there are 7000 users of OpenBSD. How many users of NetBSD are there? Let's see. The number of OpenBSD versus NetBSD posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 NetBSD users. BSD/OS posts on Usenet are about half of the volume of NetBSD posts. Therefore there are about 700 users of BSD/OS. A recent article put FreeBSD at about 80 percent of the *BSD market. Therefore there are (7000+1400+700)*4 = 36400 FreeBSD users. This is consistent with the number of FreeBSD Usenet posts.
Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.
All major surveys show that *BSD has steadily declined in market share. *BSD is very sick and its long term survival prospects are very dim. If *BSD is to survive at all it will be among OS dilettante dabblers. *BSD continues to decay. Nothing short of a miracle could save *BSD at this point in time. For all practical purposes, *BSD is dead.
Fact: *BSD is dying
Solaris 10 zones are based on the same idea.
distributed security is one thing I would like to see improved.. Currently I doubt any Unix OS has any system to secure over network, like distributed policies or something.. policies for openmosix or something similar.. I wonder how well jail systems would work over openmosix..
What We Can Learn From BSD
By Chinese Karma Whore, Version 1.0
Everyone knows about BSD's failure and imminent demise. As we pore over the history of BSD, we'll uncover a story of fatal mistakes, poor priorities, and personal rivalry, and we'll learn what mistakes to avoid so as to save Linux from a similarly grisly fate.
Let's not be overly morbid and give BSD credit for its early successes. In the 1970s, Ken Thompson and Bill Joy both made significant contributions to the computing world on the BSD platform. In the 80s, DARPA saw BSD as the premiere open platform, and, after initial successes with the 4.1BSD product, gave the BSD company a 2 year contract.
These early triumphs would soon be forgotten in a series of internal conflicts that would mar BSD's progress. In 1992, AT&T filed suit against Berkeley Software, claiming that proprietary code agreements had been haphazardly violated. In the same year, BSD filed countersuit, reciprocating bad intentions and fueling internal rivalry. While AT&T and Berkeley Software lawyers battled in court, lead developers of various BSD distributions quarreled on Usenet. In 1995, Theo de Raadt, one of the founders of the NetBSD project, formed his own rival distribution, OpenBSD, as the result of a quarrel that he documents on his website. Mr. de Raadt's stubborn arrogance was later seen in his clash with Darren Reed, which resulted in the expulsion of IPF from the OpenBSD distribution.
As personal rivalries took precedence over a quality product, BSD's codebase became worse and worse. As we all know, incompatibilities between each BSD distribution make code sharing an arduous task. Research conducted at MIT found BSD's filesystem implementation to be "very poorly performing." Even BSD's acclaimed TCP/IP stack has lagged behind, according to this study.
Problems with BSD's codebase were compounded by fundamental flaws in the BSD design approach. As argued by Eric Raymond in his watershed essay, The Cathedral and the Bazaar, rapid, decentralized development models are inherently superior to slow, centralized ones in software development. BSD developers never heeded Mr. Raymond's lesson and insisted that centralized models lead to 'cleaner code.' Don't believe their hype - BSD's development model has significantly impaired its progress. Any achievements that BSD managed to make were nullified by the BSD license, which allows corporations and coders alike to reap profits without reciprocating the goodwill of open-source. Fortunately, Linux is not prone to this exploitation, as it is licensed under the GPL.
The failure of BSD culminated in the resignation of Jordan Hubbard and Michael Smith from the FreeBSD core team. They both believed that FreeBSD had long lost its earlier vitality. Like an empire in decline, BSD had become bureaucratic and stagnant. As Linux gains market share and as BSD sinks deeper into the mire of decay, their parting addresses will resound as fitting eulogies to BSD's demise.
The article is co-written by Robert Watson, a DARPA principal investigator in the Host Intrusion Protection (HIP) Research Group at McAfee Research ... and three-term FreeBSD core team member, guy mostly responsible for FreeBSD network stack locking right now, president of the FreeBSD Foundation, and otherwise generally cool guy.
Tarsnap: Online backups for the truly paranoid
The jail paper.
Are those the places that BSDs are sent to before they're given the death penalty?
Any recommendations for freebsd Jailed "virtual server providers"? I was thinking about going the linux route, but I'd prefer BSD... I'm hoping for something in the $20 range. Thanks!
there is no thing
what else could you want?
[ed. note: in the following text, former FreeBSD developer Mike Smith gives his reasons for abandoning FreeBSD]
When I stood for election to the FreeBSD core team nearly two years ago, many of you will recall that it was after a long series of debates during which I maintained that too much organisation, too many rules and too much formality would be a bad thing for the project.
Today, as I read the latest discussions on the future of the FreeBSD project, I see the same problem; a few new faces and many of the old going over the same tired arguments and suggesting variations on the same worthless schemes. Frankly I'm sick of it.
FreeBSD used to be fun. It used to be about doing things the right way. It used to be something that you could sink your teeth into when the mundane chores of programming for a living got you down. It was something cool and exciting; a way to spend your spare time on an endeavour you loved that was at the same time wholesome and worthwhile.
It's not anymore. It's about bylaws and committees and reports and milestones, telling others what to do and doing what you're told. It's about who can rant the longest or shout the loudest or mislead the most people into a bloc in order to legitimise doing what they think is best. Individuals notwithstanding, the project as a whole has lost track of where it's going, and has instead become obsessed with process and mechanics.
So I'm leaving core. I don't want to feel like I should be "doing something" about a project that has lost interest in having something done for it. I don't have the energy to fight what has clearly become a losing battle; I have a life to live and a job to keep, and I won't achieve any of the goals I personally consider worthwhile if I remain obligated to care for the project.
Discussion
I'm sure that I've offended some people already; I'm sure that by the time I'm done here, I'll have offended more. If you feel a need to play to the crowd in your replies rather than make a sincere effort to address the problems I'm discussing here, please do us the courtesy of playing your politics openly.
From a technical perspective, the project faces a set of challenges that significantly outstrips our ability to deliver. Some of the resources that we need to address these challenges are tied up in the fruitless metadiscussions that have raged since we made the mistake of electing officers. Others have left in disgust, or been driven out by the culture of abuse and distraction that has grown up since then. More may well remain available to recruitment, but while the project is busy infighting our chances for successful outreach are sorely diminished.
There's no simple solution to this. For the project to move forward, one or the other of the warring philosophies must win out; either the project returns to its laid-back roots and gets on with the work, or it transforms into a super-organised engineering project and executes a brilliant plan to deliver what, ultimately, we all know we want.
Whatever path is chosen, whatever balance is struck, the choosing and the striking are the important parts. The current indecision and endless conflict are incompatible with any sort of progress.
Trying to dissect the above is far beyond the scope of any parting shot, no matter how distended. All I can really ask of you all is to let go of the minutiae for a moment and take a look at the big picture. What is the ultimate goal here? How can we get there with as little overhead as possible? How would you like to be treated by your fellow travellers?
Shouts
To the Slashdot "BSD is dying" crowd - big deal. Death is part of the cycle; take a look at your soft, pallid bodies and consider that right this very moment, parts of you are dying. See? It's not so bad.
To the bulk of the FreeBSD committerbase and the developer community at large - keep your eyes on the real goals. It's when
Cool Stuff For Your House
Cool Stuff For Your House
Cool Stuff For Your House
Cool Stuff For Your House
Cool Stuff For Your House