[OpenIndiana-discuss] OI rpool on USB flash in N40L?

andy thomas andy at time-domain.co.uk
Sun Jan 27 15:58:43 UTC 2013


On Sun, 27 Jan 2013, Reginald Beardsley wrote:

> Several people have suggested FreeBSD for the OS for my N40L based ZFS server and using the internal USB socket w/ a flash drive for the OS  However, after trying FreeBSD 9.0 installed to an HDD, I'm not enthused about having to relearn FreeBSD admin. And I'm not GUI admin inclined.  I'd prefer to stick w/ what I'm most familiar with.
>
> However, the idea has considerable attraction.  Has anyone done such a thing w/ OI?  A bunch of stuff would need to move out of rpool so that it was almost R/O, but I don't see any major obstacles.  I assume the LiveCD uses a memory filesystem for these, so I'd expect it to be pretty straight forward.
>
> This still leaves the single point of failure for the root pool, but copies=2+ might give enough warning to avoid a crisis.  Creating a replacement from a disk image using dd would be pretty painless.
>
> Any reports of success or failure?  I've seen rather poor USB flash performance, but that might be hardware specific.

I found some USB drives were slower than others and some (eg a Verbatim 
black "pinstripe" USB stick, for example) would not accept a UFS 
filesystem at all. I'm now using Intenso Rainbow Blue 4 GB flash drives on 
all my FreeBSD 9.0 installs on N40L servers.

USB drives used as system disks will be slow unless you put the /tmp and 
/var filesystems on memory filesystems (MFS). Here's what I do on my 
FBSD servers:

 	1. boot system up normally (with or without the ZFS pool
 	   on the mechanical hard disks, it doesn't matter)

 	2. tar up the existing /var and /tmp filesystems and save them
 	   somewhere on the USB filesystem, eg in /md_backups

 	3. disable the automatic start-up of syslogd and devd daemons
 	   by editing /etc/defaults/rc.conf and making sure it has the
 	   following lines in it:

 		devd_enable="NO"

 	    and

 		syslogd_enable="NO"

 	4. now add this to the /etc/rc.local script:

 		# Create memory filesystems

 		cd /
 		mdmfs -s 500m md0 /tmp
 		tar xzpf /md_backups/tmp.tgz
 		mdmfs -s 500m md1 /var
 		tar xzpf /md_backups/var.tgz

 		# Start syslogd and devd daemons

 		/etc/rc.d/syslogd onestart
 		/etc/rc.d/devd onestart

 		echo '.'
 		exit 0

 	(this creates two 500 MB memory filesystems /dev/md0 and /dev/md1
 	 and mounts them on /var and /tmp and unpacks the preserved /var
 	 and /tmp filesystems frm the tar.gz backups and then starts the
 	 devd and syslod daemons.

 	5. next, to preserve the state of /var and /tmp across reboots
 	   add this to your /etc/rc.shutdown.local script (you might need
 	   to create this if it doesn't exist):

 		# Insert other shutdown procedures here

 		tar czf /md_backups/var.tgz /var
 		tar czf /md_backups/tmp.tgz /tmp

 		echo '.'
 		exit 0

 	6. finally, use the 'noatime' parameter in your /etc/fstab to
 	   prevent commiands like ls, etc from continually re-reading the
 	   contents of / - my /etc/fstab looks like this:

 		# Device        Mountpoint      FStype  Options Dump    Pass#
 		/dev/da0p2      /               ufs     rw,noatime      1       1
 		/dev/da0p3      /var            ufs     rw      2       2
 		/dev/da0p4      /tmp            ufs     rw      2       2

This works a treat - the MFS is really fast and you wouldn't know the 
system disk was a USB drive.

By the way, I'm buying some new N36Ls cheap for my own use so will have a 
crack at getting OI 151a running on a USB drive.

cheers, Andy

> _______________________________________________
> OpenIndiana-discuss mailing list
> OpenIndiana-discuss at openindiana.org
> http://openindiana.org/mailman/listinfo/openindiana-discuss
>




More information about the OpenIndiana-discuss mailing list