|
|
Subscribe / Log in / New account

Development

FreeNAS 0.7: powerful and not dead

December 17, 2009

This article was contributed by Koen Vervloesem

Recently, the FreeNAS developers have released version 0.7 of their FreeBSD-based operating system for network-attached storage (NAS). This is a major release, which introduces support for the ZFS file system among other things. Around the same time, fears were expressed about the future of FreeNAS as a BSD-based NAS but, in the end, a solution has been found.

FreeNAS 0.7 is based on FreeBSD 7.2 and includes a lot of file sharing protocols. This way it can talk to all major operating systems: GNU/Linux, the BSDs, Windows, and Mac OS X. FreeNAS also supports several types of media streaming protocols and can act like an iTunes server. In addition, it supports iSCSI and different levels of software RAID. All of this can be managed from the web interface so users don't have to know the FreeBSD commands under the hood.

One of the advantages of FreeNAS is that it has very low system requirements, as it needs only 128 MB of RAM. This makes it attractive to blow the dust off an old Pentium 2 or 3 PC, put a couple of hard drives in it and make it a NAS. Of course, for high performance the machine still needs enough RAM and CPU horsepower. All of this makes FreeNAS a popular operating system for central storage and media streaming at home.

Installation

FreeNAS has downloads for 32-bit and 64-bit hardware, in a live version and an installable version. The installable version is for installation on a USB stick, hard drive, or Compact Flash card, while the live version doesn't touch the hard drive of the system but can save its configuration to a USB stick or floppy disk.

After the installer has booted, it shows the user a simple menu in the console to set up the basics. The user can assign network interfaces, set IP addresses, reset the password for the web interface or reset all settings to the factory defaults, open a shell, reboot or shutdown the system, and install or upgrade FreeNAS to a hard drive or USB stick. Most of that is just for troubleshooting, because the bulk of the settings are available in the web interface.

Configuration

[FreeNAS web interface]

Once FreeNAS has been assigned an IP address, the user can surf to the web interface in a browser and log in with the default user name and password. The first thing FreeNAS displays is some system information, such as the CPU and memory usage, the load averages and the disk space usage. The latter will show "No disk configured" first, but available disks can be added easily in the "Disks -> Management" menu by clicking on the plus icon, choosing the disk, and entering some optional settings. After this, don't forget to click on "Apply changes" on the disk management page. The next steps are formatting and choosing a mount point.

When choosing a file system for a hard drive in the "Disks -> Format" menu, FreeNAS recommends the BSD file system UFS. Other supported file systems are FAT32, NTFS, Ext2, or Ext3, but the web interface expressly warns that they can result in unpredictable results. While the web interface doesn't warn against using ZFS (which has its own menu item, because it is not only a file system but also a logical volume manager), users have to keep in mind that FreeNAS 0.7 is still based on FreeBSD 7.2 which calls ZFS support "experimental".

The goal of a NAS if of course sharing the data with users, and FreeNAS has a lot of services at its disposal to do this: FTP, TFTP, NFS, Samba, AFP (for Mac OS X users), HTTP, rsync (ideal for making backups on the NAS) and Unison (for file synchronization). It can also share a disk as an iSCSI target to another computer in the local network. But FreeNAS can also act as a streaming media server for clients that are compatible with UPnP (Universal Plug and Play) or iTunes, or it can run BitTorrent to download torrents directly on the NAS.

[FreeNAS traffic display]

In general, the web interface is intuitive enough to do a lot of things without having to look up the documentation. At the same time, it is really powerful, with even the possibility to edit arbitrary files, run arbitrary commands, tune some FreeBSD kernel parameters with sysctl or add variables to rc.conf. It also shows a lot of status information. Unfortunately, documentation such as the FreeNAS Setup and User Guide is still lagging behind.

Death of a FreeBSD descendant?

During the last few months, the future of the FreeNAS project seemed in peril. The project's core developer Volker Theile announced in September that he would stop developing FreeNAS and switch his work to a new project, called CoreNAS, which would be based on Debian GNU/Linux. Some reasons he listed for this switch are:

  • The Debian installer is more customizable than the hand-written FreeNAS install scripts.
  • Wake-on-LAN for waking up the NAS automatically works in Linux.
  • Linux has a working sensor framework to check the temperature and fan speeds.
  • The system can be updated with the Debian package manager.
  • Linux has better driver support.

According to Volker, the current architecture of FreeNAS is not flexible enough to add the new features users have been asking him for:

Some months ago I started to upgrade FreeNAS to FBSD8.0. I also thought about how to remove all these limitations of the previous versions to make it more enhanceable. The more I thought about it the more I came to the conclusion that it will be necessary to reimplement everything to get rid of these limitations.

His eye fell quickly on the Debian infrastructure, which seemed to reduce the work to get a new FreeNAS to a minimum. A big plus of Linux is that it supports more new hardware than FreeBSD.

But of course this left FreeNAS users with a problem: what about the ZFS support that has been added in FreeNAS 0.7? A lot of the new users were attracted solely by this feature, which didn't seem to have a future in CoreNAS. Would they have to migrate their freshly installed data to another file system in the next release? Volker wrote that his FreeNAS successor would maybe have ZFS over FUSE, but the performance would of course not be the same. So the only real option users of ZFS on FreeNAS seemed to have was to migrate to an OpenSolaris-based NAS operating system such as EON or Nexenta Core Platform. However, these don't have the intuitive web interface that FreeNAS has (NexentaStor, the commercial and proprietary variant of Nexenta Core Platform, has one, and a 4 TB developer license is free as in beer).

Rumors of FreeNAS' death greatly exaggerated

But then in the beginning of December, FreeNAS founder Olivier Cochard-Labbé appeared deus ex machina. He agreed with Volker that a full rewrite of the FreeNAS base is needed, and he clarified that this will happen along two different paths. On the one hand, Volker will develop his Linux-based CoreNAS idea in a new project, OpenMediaVault (the website is empty at the moment). On the other hand, the company iXsystems will take on FreeNAS development and rewrite it. As part of this, Olivier will work on upgrading it to the FreeBSD 8.0 code base, which will introduce production-ready ZFS support.

Matt Olander, the Chief Technology Officer at iXsystems and also a member of the FreeBSD and PC-BSD projects, officially joined the FreeNAS project with some explanation on the forum:

We have been using FreeNAS at iX for quite some time and we're really happy with it! We just had a developer meeting with our FreeBSD development team and everyone can't wait to get started digging into the next version! We are very interested in improving the embedded platform with continued development of FreeNAS and ZFS. We're considering package management and GUI enhancements so that the product only shows the functionality desired and needed while allowing the user to extend as necessary both through the UI and via the backend.

Matt added that iXsystems will start digging through the forums and search some low hanging fruit to implement in the first future release of FreeNAS, an upgrade to FreeBSD 8.

So, in the end, a crisis has been averted and, with luck, everyone will be happy. The users that have been attracted to FreeNAS because of ZFS can keep using it and will get an update. In addition, they get commercial backing by iXsystems. The users that have been asking for features such as Wake-on-LAN, a sensor framework, and more hardware support get their rewrite to Linux, done by Volker in his spare time. Let's hope that FreeNAS and OpenMediaVault keep working together to share their efforts.

Comments (14 posted)

The Free Firewire Audio Drivers reach version 2.0

By Forrest Cook
December 22, 2009

The FFADO (Free FireWire Audio Drivers) project supports the connection of FireWire-based audio devices to Linux systems:

The FFADO project aims to provide a generic, open-source solution for the support of FireWire based audio devices for the Linux platform. It is the successor of the FreeBoB project. FFADO is a volunteer-based community effort, trying to provide Linux with at least the same level of functionality that is present on the other operating systems.

[FFADO]

The About FFADO document describes the wide goals of the project:

We try to support any FireWire device available out there. The FFADO codebase is a framework that has been built with this in mind. This however doesn't mean that all FireWire devices work with FFADO. In order to support a device, we need cooperation from manufacturers, or somebody that want's to reverse engineer the protocol. Luckily we have support from the manufacturers of the three major platforms vendors build their devices around (BridgeCo, TC Applied Technologies and ECHO). The exact devices supported (or not supported) can be found on our device list.

The online FFADO Manual and FAQ are somewhat out of date, the documentation recommends visiting the wiki for the most recent information. FFADO's roots can be traced to this paper [PDF] entitled FireWire (Pro-)Audio for Linux which was presented at the 2007 Linux Audio Conference by Pieter Palmers.

Digging through the documentation reveals some of the FFADO features including:

  • Supports FireWire audio interfaces, MIDI devices, control surfaces and more.
  • The Device List and Usage By Device documents show many supported devices.
  • Works together with the JACK audio connection kit and the Ardour multi-track audio workstation.
  • Requires the Linux kernel version 2.6.21 or later.
  • Uses the raw1394 kernel module.
  • Supports up to four devices per IEEE-1394 controller.
FFADO support is relatively new, it showed up in the Ubuntu Studio 9.04 distribution (April, 2009) and first worked with JACK 0.109.0 and QjackCtl 0.3.2.

Version 2.0 of FFADO was announced on December 19, 2009, this version of the software has been in the release candidate state for over a year with FFADO 2.0 release candidate 2 arriving on May 17, 2009 and FFADO 2.0 release candidate 1 arriving on November 23, 2008.

From the release announcement:

As the release candidates have been around for almost one year now without a significant amount of bug reports we feel confident that the current code-base has matured. Around the end of november the 1000-th device was registered as being used with FFADO, which seemed to be a nice number to triggered the release. Furthermore on December 2 the Linux kernel version 2.6.32 has been released. This version fixes the new kernel FireWire drivers such that they are compatible with FFADO. So once the distributions pick up this kernel the old/new kernel stack confusion should be history.

The announcement also hints at what's to come in upcoming FFADO releases:

Looking ahead to the 2.1 release we can announce that we have implemented (basic) support for additional devices from Focusrite, Behringer, Stanton and TC Electronic. We plan to move to beta-testing 2.1 fairly soon as development on it has been ongoing for more than a year now. Additionally, work is being done on the RME devices, but its not yet known when that will be finished. Support for some other vendors is in the pipeline, so stay tuned for more announcements. A second major development is the move of the streaming infrastructure to kernel space. A kernel-space implementation will bring significant improvements with respect to reliability and efficiency. Furthermore it will allow to expose an ALSA interface, meaning that the scope of FireWire audio on Linux is extended significantly.

Through its relatively short history, FFADO seems to be evolving, becoming more generic and including support for an ever-growing list of FireWire devices. FFADO will allow Linux users to tap into a wide range of useful devices, increasing the functionality of Linux-powered audio workstations. Congratulations go out to the developers for their hard work.

Comments (none posted)

System Applications

Audio Projects

ALSA 1.0.22 released

Version 1.0.22 of ALSA has been announced. "The changes are listed in this URL: http://www.alsa-project.org/main/index.php/Changes_v1.0.2..."

Full Story (comments: none)

Rivendell 1.6.0 released

Version 1.6.0 of Rivendell, a radio station automation system, has been announced. "Changes: New RLM Plug-in. A new plug-in for the Liquid Compass Internet encoder has been added. Cart Notes. Added the ability to enter free-form text for each cart in the Library. This text can then be displayed in a 'help bubble' when floating the mouse cursor over the cart's entry in the Library cart list. Bugfixes. See the ChangeLog for details. Database Update.."

Full Story (comments: none)

Database Software

MySQL Community Server 5.0.89 has been released

Version 5.0.89 of MySQL Community Server has been announced. "This Community release shares the version number with its MySQL Enterprise Server counterpart. Please note this is the last release of 5.0 before it exits active maintenance."

Full Story (comments: none)

MySQL 5.5.0-m2 has been released

Version 5.5.0 of the MySQL DBMS has been announced. "The "-m2" suffix tells this is the second milestone according to our "milestone" release model, also called "Betony". You can read more about the release model and the planned milestones at http://forge.mysql.com/wiki/Development_Cycle The new features in this release are of beta quality. As with any other pre-production release, caution should be taken when installing on production level systems or systems with critical data."

Full Story (comments: none)

Hot Standby to be included in PostgreSQL 8.5alpha3

PostgreSQL 8.5alpha3 will gain the Hot Standby capability. "Today, after long last, Simon Riggs has committed Hot Standby to the Postgres CVS repository: http://archives.postgresql.org/pgsql-committers/2009-12/m... Thus, Hot Standby (aka "Allow read only connections during recovery") will be included in the soon-to-come alpha3 release of PostgreSQL-8.5." See the PostgreSQL 8.5alpha3 announcement for more information. (Thanks to Michael Banck).

Comments (none posted)

PostgreSQL Weekly News

The December 20, 2009 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.

Full Story (comments: none)

Networking Tools

libnetfilter_conntrack 0.0.101 released

Version 0.0.101 of libnetfilter_conntrack has been announced. "libnetfilter_conntrack is a userspace library providing a programming interface (API) to the in-kernel connection tracking state table. This library requires a linux kernel >= 2.6.18. This release includes a one fix and several cleanups from Hannes Eder."

Full Story (comments: none)

Virtualization Software

VirtualBox 3.1.2 released

Version 3.1.2 of VirtualBox has been announced. "Today Sun released VirtualBox 3.1.2, a maintenance release of VirtualBox 3.1 which improves stability and fixes regressions."

Full Story (comments: none)

Web Site Development

Midgard2 9.09.1 released

Version 9.09.1 of the Midgard2 web development platform has been announced. "Main changes from 9.09.0 release: * New connection routines (#1475) * New MidgardQueryBuilder signals (#1486, #1487) * Configuration supports remote host's port (#1248) * MgdSchema files compatibility fix (#1503) * Storage related fixes (#1533, #1543) * Fixed crashes when running Midgard with Apache (#1520) * Fixed D-Bus path issue (#1552)".

Full Story (comments: none)

P3D visualization package

The P3D visualization package has been launched. It is: "A Python library that generates processing.js code for 3D rendering and visualization including a pure python algorithm for computing iso- surfaces from VTK files. The generated 3D objects can rotated in the browser. Requires a browser with <canvas> support, jquery and processing.js. This is implemented in modules/p3d.py and works with any python web framework including web2py, Django and Pylons."

Full Story (comments: none)

web2py 1.74.3 released

Version 1.74.3 of the web2py web framework has been announced. "New features: - better support for legacy databases. - easier upgrades - plugins and components system - support for GAE *IN* operator - all fields now have default validators - support for virtual computed fields - distributed transactions support extended to mysql, firebird and postgresql - always backward compatible".

Full Story (comments: none)

Miscellaneous

GZRBOT 0.1 released

Version 0.1 of GZRBOT has been announced. "I want to release GZRBOT to the world. This is a rename of the CMNDBOT bot, since this name matches the one of GOZERBOT the best and thats what this bot is best described .. GOZERBOT on the Google Application Engine."

Full Story (comments: none)

Desktop Applications

Audio Applications

jack_capture V0.9.36 and Ceres V0.48 announced

Version 0.9.36 of jack_capture and version 0.48 of Ceres of have been announced, they include various enhancements. "jack_capture is a program for recording soundfiles with jack. Its default operation is to capture whatever sound is going out to your speakers into a file, but it can do a number of other operations as well."

Full Story (comments: none)

Desktop Environments

GNOME 2.28.2 released

Version 2.28.2 of the GNOME desktop has been announced. "This is the last update to GNOME 2.28. It contains many fixes for important bugs that directly affect our users, documentation updates and also a large number of updated translations. Many thanks to all the contributors who worked hard on delivering those changes in time. We hope it will help people feel better in their daily use of computers!"

Full Story (comments: none)

GNOME Software Announcements

The following new GNOME software has been announced this week: You can find more new GNOME software releases at gnomefiles.org.

Comments (none posted)

Custom Transitioning Backgrounds In KDE3 (Linux Journal)

Linux Journal's Ross Larson presents a tutorial on making a KDE3 background slideshow. "My recent article about transitioning slide show backgrounds in GNOME garnered quite a bit of attention, so here's my first reminder of how to do the same thing in other desktop environments. This one will show you how to create a custom slide show backgrounds in KDE3."

Comments (9 posted)

KDE Software Announcements

The following new KDE software has been announced this week: You can find more new KDE software releases at kde-apps.org.

Comments (none posted)

Xorg Software Announcements

The following new Xorg software has been announced this week: More information can be found on the X.Org Foundation wiki.

Comments (none posted)

Encryption Software

GnuPG 2.0.14 released

Version 2.0.14 of GnuPG has been announced. "We are pleased to announce the availability of a new stable GnuPG-2 release: Version 2.0.14. The GNU Privacy Guard (GnuPG) is GNU's tool for secure communication and data storage. It can be used to encrypt data, create digital signatures, help authenticating using Secure Shell and to provide a framework for public key cryptography."

Full Story (comments: none)

Interoperability

Wine 1.1.35 announced

Version 1.1.35 of Wine has been announced. Changes include: "- Support for OLE transacted storage. - Better certificate checking on secure connections. - More progress on the 16-bit separation. - Left 4 Dead 2 DRM really supported now. - MSI performance improvements. - 64-bit fixes in debugger support. - Various bug fixes."

Comments (none posted)

Mail Clients

Sylpheed 3.0beta4 (development) released

Version 3.0beta4 of the Sylpheed mail client has been announced with the following changes: "# The folder icons were renewed. # The setup dialog on the first run became user-friendly. # 'Last 7 days' was added to the quick search options. # The number of matched messages is displayed at the side of quick search now. # Description is displayed on the quick search entry when it does not have focus. # Always show warning dialog when SSL certificate is expired. # The menu item to request disposition notification was added to the compose window..."

Comments (none posted)

Music Applications

FluidSynth 1.1.1 released

Version 1.1 of FluidSynth, a software synthesizer based on the SoundFont 2 standard, has been announced. "This is primarily a bug fix release to 1.1.0, but also includes a couple new API additions. Upgrade from 1.1.0 is highly recommended, as there were many regressions in that version, especially in regards to QSynth compatibility."

Full Story (comments: none)

MusE 1.0 released

Version 1.0 of MusE, a music sequencer, has been announced. "This is not the beginning, nor the end, but it marks the culmination of 10 years of feature packed and bug ridden development towards the goal of making a good platform for creating music on the Linux platform".

Full Story (comments: none)

Virtual MIDI Piano Keyboard 0.3.1 released

Version 0.3.1 of Virtual MIDI Piano Keyboard has been announced, it adds a number of new capabilities and some new translations. "Virtual MIDI Piano Keyboard is a MIDI events generator and receiver. It doesn't produce any sound by itself, but can be used to drive a MIDI synthesizer (either hardware or software, internal or external). You can use the computer's keyboard to play MIDI notes, and also the mouse. You can use the Virtual MIDI Piano Keyboard to display the played MIDI notes from another instrument or MIDI file player."

Full Story (comments: none)

Office Applications

Roundup release 1.4.11 announced

Version 1.4.11 of the Roundup issue tracker has been announced. "I'm proud to release version 1.4.11 of Roundup which fixes a number bugs and closes a potential security hole. ALL tracker maintainers MUST read the upgrading documentation to make sure the hole is fixed in their tracker."

Full Story (comments: none)

Office Suites

OpenOffice.org announces "end-of-life" for version 2.x

Version 2.x of the OpenOffice.org productivity suite has reached the "end-of-life" status, version 3.2 is soon to arrive. "With each new release, users are strongly encouraged to upgrade, to benefit from new features, bug fixes and security improvements. After a new major release, the community supports legacy releases for a period of time to help users with upgrading and migrating. With version 3.x being available for more than 15 months now, the Community has decided it is time to cease maintaining the 2.x software. As a consequence, OpenOffice.org 2.4.3 will be the last release of the legacy 2.x series and no subsequent bugfix or security releases will be made available."

Full Story (comments: none)

Digital Photography

digiKam 1.0.0 is released

Version 1.0.0 of the digiKam photo management application has been released. Many new features including a new "First Run Assistant", a batch queue manager, and better multi-language support have been added. Lots of bugs have been squished as well. We recently reviewed one of the digiKam 1.0 betas.

Full Story (comments: none)

Video Applications

Moonlight 2 released with a new patent covenant

Miguel de Icaza has announced the availability of Moonlight 2, which is said to be a feature superset of Microsoft's Silverlight 2. There is also an expanded patent covenant (text seemingly unavailable at this time): "The new patent covenant ensures that other third party distributions can distribute Moonlight without their users fearing of getting sued over patent infringement by Microsoft. There is one important difference between the version of Moonlight that will be available from Novell and the version that you will get from your distribution: the version obtained from Novell will have access to licensed media codecs." From this LinuxPlanet article, it seems that this covenant does not cover Mono. (Thanks to Paul Wise).

Comments (29 posted)

Languages and Tools

Caml

Caml Weekly News

The December 22, 2009 edition of the Caml Weekly News is out with new articles about the Caml language.

Full Story (comments: none)

Perl

Parrot 1.9.0 released

Version 1.9.0 of Parrot has been announced. "On behalf of the Parrot team, I'm proud to announce Parrot 1.9.0 "Blue-fronted Amazon". Parrot, http://parrot.org/, is a virtual machine aimed at running dynamic languages."

Full Story (comments: none)

Perl 5.11.3 now available

Version 5.11.3 of Perl has been announced. "This is the fourth DEVELOPMENT release in the 5.11.x series leading to a stable release of Perl 5.12.0. You can find a list of high-profile changes in this release in the file "perl5113delta.pod" inside the distribution. Perl 5.11.3 is, hopefully, the last release of Perl 5.11.x before code freeze for Perl 5.12.0. At that point, we will only make changes which fix regressions from previous released versions of Perl or which resolve issues we believe would make a stable release of Perl 5.12.0 inadvisable."

Full Story (comments: none)

Rakudo Perl 6 Development Release #24 announced

Development Release #24 of Rakudo Perl 6, an implementation of Perl 6 on the Parrot Virtual Machine, has been announced. "Due to the continued rapid pace of Rakudo development and the frequent addition of new Perl 6 features and bugfixes, we recommend building Rakudo from the latest source, available from the main repository at github."

Full Story (comments: none)

PHP

PHP 5.2.12 released

Version 5.2.12 of PHP has been announced. "The PHP development team would like to announce the immediate availability of PHP 5.2.12. This release focuses on improving the stability of the PHP 5.2.x branch with over 60 bug fixes, some of which are security related. All users of PHP 5.2 are encouraged to upgrade to this release."

Comments (none posted)

Python

PyBindGen 0.13 released

Version 0.13 of PyBindGen has been announced. "PyBindGen is a Python module that is geared to generating C/C++ code that binds a C/C++ library for Python. It does so without extensive use of either C++ templates or C pre-processor macros. It has modular handling of C/C++ types, and can be easily extended with Python plugins. The generated code is almost as clean as what a human programmer would write."

Full Story (comments: none)

pylint 0.19 / astng 0.19.2 released

Versions 0.19 of pylint and 0.19.2 of astng have been announced. "This is a "community" release, including the work we've done during the pylint bug day and patches mostly from James Lingard and Vincent Ferotin. Many thanks to James Lingard which provided two long waited features: * check of function call arguments * check string interpolation consistency".

Full Story (comments: none)

Debuggers

GDB 7.0.1 released

Version 7.0.1 of GDB, the GNU Debugger, has been announced. "GDB 7.0.1 is a minor corrective release."

Full Story (comments: none)

Version Control

Bazaar 2.0.3 and 2.1.0b4 released

Version 2.0.3 and 2.1.0b4 of the bzr version control system have been announced. "The third release of Bazaar 2.0 (2.0.3) has a small handful of bugfixes. As expected, this has no internal or external compatibility changes versus 2.0.2 (or 2.0.0). The fourth beta release in the 2.1 series brings with it a significant number of bugfixes (~20)."

Full Story (comments: none)

Git 1.6.5.7 released

Version 1.6.5.7 of the Git distributed version control system has been announced. "Nothing spectacular to see here, but as I was tagging 1.6.6-rc3 today, I wanted to push out fixes accumulated on the maintenance branch in a tagged release. Everything in this release is also in 1.6.6-rc3."

Full Story (comments: none)

Miscellaneous

Checker 1.0 released

Version 1.0 of Checker has been announced. "I'm pleased to announce the first release of Checker. This is a cross-platform, pluggable tool for comparing the configuration of a machine with a known configuration stored in text files in a source control system all written in Python."

Full Story (comments: none)

Page editor: Forrest Cook
Next page: Announcements>>


Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds