» 2010 » December

Article posted on Dec 25

Finnix remastering updates

  • Posted by Ryan Finnie on December 25, 2010, 11:41 am

Finnix is used a lot for remastering for administrators' specific projects, so if you're a remasterer, you're going to both love and hate Finnix 101 -- love because Finnix 101 ultimately makes it a lot easier to remaster in the long run, and hate because a lot of things have changed in incompatible ways, hopefully for the better. This post should help give you a rundown on what's changed.

The following wiki guides have been updated for Finnix 101:

  • Remastering
  • Overlays

CD layout

  • Almost everything with the CD layout has changed. All filenames are now lowercase, and most files have changed locations.
  • md5sums is now on the root of the CD (/md5sums).
  • /isolinux and /boot are still the bootloader-specific directories for x86 and PowerPC, respectively.
  • /{isolinux,boot}/minirt has become /{isolinux,boot}/initrd.gz.
  • /FINNIX/FINNIX has become /finnix/arch/{x86,ppc}/root.img, where "x86" and "ppc" are the userland identifiers for the architecture (that is, you don't have to worry about 64-bit kernels on the 32-bit userland).
  • /finnix/arch.map is a text file that defines a `uname -m` mapping to the userland architecture. The first column is the output of `uname -m`, the second is the primary userland architecture, and the third is the secondary userland architecture. On 64-bit kernels ("amd64" and "ppc64"), the primary userland architecture is "amd64" and "ppc64" respectively, but since Finnix does not distribute 64-bit userlands, it will move on to the secondary columns. Once a root.img is found, that userland architecture is remembered, so overlays will not be checked in the userland architectures that are skipped over. (Short summary: don't use /finnix/arch/{amd64,ppc64}/, it's basically disabled in its current state.)

Build enviroment

  • The default (and recommended) build environment path has changed from /mnt/hda1/knx/ to /finnix/build/. All subdirectories remain the same (source/FINNIX/ for the chroot, initrd/ for the initrd, master/ for the CD layout).
  • The build scripts are now located in the compressed root, and are guaranteed to be the scripts that built the running Finnix version. They are finnix-build-stage1 and finnix-build-stage2. Stage 1 preps the chroot and builds the root.img file, while State 2 builds the initrd and masters the CD. While the build scripts live inside the chroot, they MUST be run from outside the chroot. That is, /finnix/build/source/FINNIX/usr/sbin/finnix-build-stage1 && /finnix/build/source/FINNIX/usr/sbin/finnix-build-stage2.

In the chroot

  • When chrooting in, you should really be doing: export FINNIXDEV=1; chroot /finnix/build/source/FINNIX /bin/bash -l. Setting FINNIXDEV=1 sets some bashrc functionality that makes it easier to work in the chroot, and will temporarily move dummy invoke-rc.d and start-stop-daemon scripts into place so installing/upgrading software within the chroot doesn't try to start daemons, and will automatically mount /proc and /sys when useful.
  • The startup system is now in /etc/finnix/rc*.d/. /etc/rc*.d/ will not be checked at all during Finnix bootup. If you want to start daemons on startup, shell scripts in /etc/finnix/rc2.d/ are the way to go. Additionally, much of the old finnix-autconfig functionality (the mega script that did almost all the heavy lifting) has been split up into components in /etc/finnix/rcS.d/ and /etc/finnix/rc2.d/.

Overlays and local startup scripts

  • On the CD, /FINNIX/overlay.d/ has become /finnix/arch/{x86,ppc,indep}/overlays/. Use x86 and ppc for architecture-specific overlays, and "indep" for architecture-independent overlays.
  • /FINNIX/finnix.sh is gone, in favor of /finnix/arch/{x86,ppc,indep}/rc/. Here you can place multiple local startup scripts. The same architecture rules apply as above.
  • 2 Comments
  • Posted in Development, Finnix

Article posted on Dec 25

Finnix 101 released

  • Posted by Ryan Finnie on December 25, 2010, 12:00 am

Finnix is a small, self-contained, bootable Linux CD distribution for system administrators, based on Debian testing. Today marks the eggnog-induced release of Finnix 101, the seventeenth release of Finnix since its beginnings over ten years ago. Finnix 101 includes major behind-the-scenes architectural changes, the re-introduction of PowerPC support, new features, and minor bug fixes.

  • Home page: http://www.finnix.org/
  • Download: http://www.finnix.org/Download
  • Release notes: http://www.finnix.org/Finnix_101_release_notes
  • Free stickers! http://www.finnix.org/Free_stickers

PowerPC support returns

After a show of public support, Finnix is once again producing PowerPC releases. Finnix is one of the only dedicated Linux LiveCDs with PowerPC support, and we are happy to continue serving the PowerPC community. Note that PowerPC releases are still not considered release goals, but in the future a lack of a PowerPC release will only happen under extraordinary circumstances.

Behind-the-scenes re-engineering

While using Finnix still has its same familiar look, much of the core infrastructure which comprises Finnix has been re-engineered. Many of the changes are intended to make development and re-development (remastering) easier and more powerful, and to help with deployment by Virtual Private Server (VPS) providers. Changes include a new CD filesystem layout, an enclosed remastering environment, a Finnix-specific SysV-compatible RC system, and componentized Finnix RC scripts.

Linux 2.6.36

Due to Debian testing being in deep freeze, the most recent kernel in either "testing" or "unstable" is 2.6.32. Therefore, a set of 2.6.36 kernels have been compiled based on 2.6.36-1~experimental.1 from Debian "experimental". Despite the "experimental" name, these kernels have been tested more heavily than the average Finnix release, and have proven to be very stable.

Hardware Detection Tool (HDT) added

On the X86 CD, Hardware Detection Tool has been added to the boot menu. This allows users to view system information (processor, memory, PCI devices, etc) quickly, without booting into a full operating system.

  • 7 Comments
  • Posted in Announcements, Finnix

Article posted on Dec 20

Finnix 101: What to look forward to

  • Posted by Ryan Finnie on December 20, 2010, 12:21 pm

I'll be honest, Finnix 100 was a rush job. Not a bad rush job per se; I have found no major problems with it and continue to use it on a daily basis. But there's nothing particularly great about it. The entire development cycle was about 2 weeks, to get a release out the door to reverse a one-year hiatus. Just enough to bring the software up to date, compile a new kernel, and run through regression testing.

Finnix 101 will be different. I've been working non-stop since October, and behind the scenes, Finnix has basically been completely re-engineered. To a casual eye, nothing will look different. Same boot menus, same minimalist boot, same quick boot times, same overall look. That's fine -- that's what gives Finnix its appeal. But the underlying architectural changes have been a long time coming, and will be useful for development and re-development (that is to say, remastering).

The current dev changelog is quite long by now, but here are a few highlights:

  • As mentioned in a previous post, PowerPC support is coming back!
  • A new kernel, most likely. Debian testing is still on 2.6.32 due to the freeze, but I've been testing 2.6.36 for awhile and it's been stable.
  • The Finnix CD is now 100% self-building. Before you could remaster Finnix from within Finnix, using a set of downloaded scripts (which sadly, I rarely updated). But now the scripts (finnix-build-stage1 and finnix-build-stage2) are located within Finnix itself, and the build scripts on the CD are guaranteed to be the scripts used to build the official release.
  • The CD ISO layout has been completely changed. All files/directory names on the CD are now lowercase, to guard against accidental renaming when on a USB key, for example. Instead of the main compressed root in /FINNIX/FINNIX, it is now in /finnix/arch/$distarch/root.img, where $distarch is amd64, x86, ppc64 or ppc. Since Finnix is only distributed with 32-bit userlands, the locations will be /finnix/arch/x86/root.img and /finnix/arch/ppc/root.img. But if a 64-bit userland were added, amd64 and ppc64 root.img files could simply be added and Finnix would use them if available and usable. /finnix/arch.map contains a list of `uname -m` to $distarch mappings, so adding completely new architectures would even be easier. The map file allows for 64-bit to 32-bit fallback, which allows you to use a 64-bit kernel, and Finnix will look in, say, /finnix/arch/amd64/ first, then /finnix/arch/x86/ as a fallback.
  • With the above in place, it will now possible to make a hybrid x86/PPC CD. With the new layout, the two CDs can essentially be merged into one, and with some mkisofs magic, the combined CD can be made bootable on both arches. I don't plan on releasing a combined ISO, but I do plan on releasing the script to allow you to create one yourself.
  • A Finnix-specific SysV-compatible RC system has been created for booting the distribution. In the past, Finnix essentially fought against Debian's RC system, removing Debian's symlinks in /etc/rc*.d/ and replacing them with Finnix-specific scripts. With Debian's move toward a concurrent boot system, this has become more difficult, so Finnix will simply be using its own separate system in /etc/finnix/rc*.d/ instead. (Indeed, it is a fork of Debian's sysv-rc.)
  • With a Finnix-specific RC system, it is now much easier to break the Finnix sysinit boot into component scripts. All previous versions of Finnix essentially used one giant boot script, so this will allow sysinit-type tasks (such as scanning the PCI bus) to be placed separately in /etc/finnix/rcS.d/, and traditionally userland tasks (such as starting mouse services or an optional SSH daemon) in /etc/finnix/rc2.d/. The userland tasks have been split out and will be ready for Finnix 101, but the sysinit tasks may not be completely componentized for the release.
  • A new netboot helper script has been added, finnix-netboot-biginit. This allows you to create a netboot initrd that contains the entire Finnix distribution within itself. The benefit is you do not need an NFS server to netboot Finnix, only a TFTP server. The downside is you will need more than twice the memory as the size of the distribution, at least 512MB. (There are several stages during boot where the initrd will need to be stored in memory twice; the initrd system was not exactly designed for 1XXMB initrds to be loaded efficiently. Once the boot is completed though, you will only be storing 1x the distribution size in memory, plus standard OS overhead.)
  • The initrd can now automatically detect whether AUFS and/or UnionFS are available. This will help VPS providers deploy Finnix using their kernels, picking whichever module is more convenient for them to implement.
  • On x86, Hardware Detection Tool has been added to the boot menu, which allows you to view system information quickly, without booting into a full operating system.
  • Many smaller improvements and bugfixes are of course included.

The release is feature complete, and I was hoping for a Christmas launch, but at this point I don't think I can go through the required testing and get the ISOs to the mirrors in time. 3 months since Finnix 100 will be late January, though I hope to have a release before then.

  • 1 Comment
  • Posted in Development, Finnix

Finnix

  • Wiki
  • Blog
  • Snapshots

Finnix on Identi.ca

  • fo0bar: !Finnix 104 released! http://ur1.ca/85rl4
  • fo0bar: !Finnix has become quite popular in China in the last day. About 5000 downloads in the last few hours.
  • fo0bar: This !Finnix release has been unusually quiet. Usually the Internet becomes a release announcement echo chamber in the first 24 hours.
  • fo0bar: !Finnix 102 released! http://blog.finnix.org/2011/07/23/finnix-102-released/
  • finnix: Hello! Please join the !Finnix group on Identica, http://blog.finnix.org/ for blog updates, and http://www.finnix.org/ to download. Thanks!

Categories

  • Announcements (28)
  • Development (34)
  • Finnix (97)
  • Miscellany (24)

Archives

  • February 2012
  • January 2012
  • December 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • March 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • November 2009
  • August 2009
  • January 2009
  • December 2008
  • November 2008
  • June 2008
  • March 2008
  • January 2008
  • October 2007
  • July 2007
  • April 2007
  • January 2007
  • October 2006
  • August 2006
  • July 2006
  • May 2006
  • April 2006
  • March 2006
  • February 2006
  • January 2006
  • November 2005
  • October 2005

Recent Comments

  • Working at Canonical: month I made a post to the Finnix blog, explaining how my employment will affect Finnix...
  • garegin: hey. great job on the ppc support. the x86 is not too shabby etiher. however under efi mode, the finnix...
  • Richardgreat: Hi there, just wondering if you could help me install Finnix in an iBook G3 Clamshell, i’ve tried...
  • dougmencken: Great! Thank you, Finnie!
  • Working at Canonical, and how it relates to Finnix: decision to use Launchpad for Finnix bug tracking was unrelated...

Search

Meta

  • Log in
  • Valid XHTML

Keep 'em coming!

331,864 spam comments
blocked by
Akismet
Powered by WordPress.