<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-13694219</id><updated>2012-02-16T04:43:53.001-05:00</updated><category term='urban living'/><category term='zfs'/><category term='leopard'/><category term='unix'/><category term='apple'/><category term='fibre channel'/><category term='cycling'/><category term='os x'/><category term='living by choice'/><category term='opensolaris'/><category term='solaris'/><category term='raid'/><category term='ntp'/><category term='svcs'/><category term='svcadm'/><category term='xen'/><title type='text'>ok boot</title><subtitle type='html'>Hire me if you like: &lt;a href="mailto:blake.irvin@gmail.com"&gt;blake.irvin@gmail.com&lt;/a&gt;</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.okboot.org/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.okboot.org/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>66</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-13694219.post-1178973579077295942</id><published>2011-07-18T23:10:00.003-04:00</published><updated>2011-07-18T23:15:01.247-04:00</updated><title type='text'></title><content type='html'>&lt;br /&gt;I've been having trouble getting to the ZFS Tuning Guide, so I've grabbed the Google cache of the page and am reposting it here:&lt;br /&gt;&lt;br /&gt;ZFS Best Practices Guide&lt;br /&gt;&lt;br /&gt;From Siwiki&lt;br /&gt;&lt;br /&gt;ZFS Administration Considerations&lt;br /&gt;ZFS Storage Pools Recommendations&lt;br /&gt;&lt;br /&gt;This section describes general recommendations for setting up ZFS storage pools.&lt;br /&gt;System/Memory/Swap Space&lt;br /&gt;&lt;br /&gt;Run ZFS on a system that runs a 64-bit kernel&lt;br /&gt;One GB or more of memory is recommended.&lt;br /&gt;Approximately 64 KB of memory is consumed per mounted ZFS file system. On systems with 1,000s of ZFS file systems, provision 1 GB of extra memory for every 10,000 mounted file systems including snapshots. Be prepared for longer boot times on these systems as well.&lt;br /&gt;Because ZFS caches data in kernel addressable memory, the kernel sizes will likely be larger than with other file systems. You might configure additional disk-based swap areas to account for this difference on systems with limited RAM. You can use the size physical memory size as an upper bound for the extra amount of swap space that might be required. In any case, monitor swap space usage to determine if swapping occurs.&lt;br /&gt;For additional memory considerations, see Memory and Dynamic Reconfiguration Recommendations&lt;br /&gt;Storage Pools&lt;br /&gt;&lt;br /&gt;Set up one storage pool using whole disks per system, if possible.&lt;br /&gt;Keep vdevs belonging to one zpool of similar sizes; Otherwise, as the pool fills up, new allocations will be forced to favor larger vdevs over smaller ones and this will cause subsequent reads to come from a subset of underlying devices leading to lower performance.&lt;br /&gt;For production systems, use whole disks rather than slices for storage pools for the following reasons:&lt;br /&gt;Allows ZFS to enable the disk's write cache for those disks that have write caches. If you are using a RAID array with a non-volatile write cache, then this is less of an issue and slices as vdevs should still gain the benefit of the array's write cache.&lt;br /&gt;For JBOD attached storage, having an enabled disk cache, allows some synchronous writes to be issued as multiple disk writes followed by a single cache flush allowing the disk controller to optimize I/O scheduling. Separately, for systems that lacks proper support for SATA NCQ or SCSI TCQ, having an enabled write cache allows the host to issue single I/O operation asynchronously from physical I/O.&lt;br /&gt;The recovery process of replacing a failed disk is more complex when disks contain both ZFS and UFS file systems on slices.&lt;br /&gt;ZFS pools (and underlying disks) that also contain UFS file systems on slices cannot be easily migrated to other systems by using zpool import and export features.&lt;br /&gt;In general, maintaining slices increases administration time and cost. Lower your administration costs by simplifying your storage pool configuration model.&lt;br /&gt;Note: See the Additional Cautions section below prior to Nevada, build 117 bug id 6844090.&lt;br /&gt;If you must use slices for ZFS storage pools, review the following:&lt;br /&gt;Consider migrating the pools to whole disks after a transition period.&lt;br /&gt;Use slices on small systems, such as laptops, where experts need access to both UFS and ZFS file systems.&lt;br /&gt;However, take great care when reinstalling OSes in different slices so you don't accidentally clobber your ZFS pools.&lt;br /&gt;Managing data on slices is more complex than managing data on whole disks.&lt;br /&gt;For production environments, configure ZFS so that it can repair data inconsistencies. Use ZFS redundancy, such as RAIDZ, RAIDZ-2, RAIDZ-3, mirror, regardless of the RAID level implemented on the underlying storage device. With such redundancy, faults in the underlying storage device or its connections to the host can be discovered and repaired by ZFS.&lt;br /&gt;Avoid creating a RAIDZ, RAIDZ-2, RAIDZ-3, or a mirrored configuration with one logical device of 40+ devices. See the sections below for examples of redundant configurations.&lt;br /&gt;In a replicated pool configuration, leverage multiple controllers to reduce hardware failures and to improve performance. For example:&lt;br /&gt;# zpool create tank mirror c1t0d0 c2t0d0&lt;br /&gt;Set up hot spares to speed up healing in the face of hardware failures. Spares are critical for high mean time to data loss (MTTDL) environments. One or two spares for a 40-disk pool is a commonly used configuration. For example:&lt;br /&gt;# zpool create tank mirror c1t0d0 c2t0d0 [mirror cxtydz ...] spare c1t1d0 c2t1d0&lt;br /&gt;Run zpool scrub on a regular basis to identify data integrity problems. If you have consumer-quality drives, consider a weekly scrubbing schedule. If you have datacenter-quality drives, consider a monthly scrubbing schedule. You should also run a scrub prior to replacing devices or temporarily reducing a pool's redundancy to ensure that all devices are currently operational.&lt;br /&gt;ZFS works well with the following devices:&lt;br /&gt;Solid-state storage devices that emulate disk drives (SSDs). You might wish to enable compression on storage pools that contain such devices because of their relatively high cost per byte.&lt;br /&gt;iSCSI devices. For more information, see the ZFS Administration Guide and the following blog: x4500_solaris_zfs_iscsi_perfect&lt;br /&gt;Storage based protected LUNs (RAID-5 or mirrored LUNs from intelligent storage arrays). However, ZFS cannot heal corrupted blocks that are detected by ZFS checksums.&lt;br /&gt;Hybrid Storage Pools (or Pools with SSDs)&lt;br /&gt;&lt;br /&gt;There are two possible ways to accelerate your ZFS pool through hybrid storage. By using "cache" devices, you may accelerate read operations. By using "log" devices, you may accelerate synchronous write operations.&lt;br /&gt;For more information about cache devices, please see #Separate_Cache_Devices&lt;br /&gt;For more information about log devices, please see #Separate_Log_Devices&lt;br /&gt;Using Storage Arrays in Pools&lt;br /&gt;&lt;br /&gt;With MPxIO&lt;br /&gt;Running the Solaris 10 5/09 release is recommended.&lt;br /&gt;Enable MPxIO by using the stmsboot command. The paths will change (under /scsi_vhci), but ZFS can handle this change.&lt;br /&gt;ZFS and Array Replication Interactions Template:Draft&lt;br /&gt;ZFS does not support the ability for a Solaris host to have both the the ZFS storage pool contained on the Master Volume and a controller-based (or host-based) snapshot of said ZFS storage pool accessible on the Shadow Volume. This Shadow Volume can be accessed on another Solaris host, if the storage array supports multiple hosts, or the snapshot Shadow Volume is used as the source of remote replication, where ZFS storage pool can then be accessed on the secondary node.&lt;br /&gt;If the SNDR unit of replication is a ZFS storage pool (replicated as an SNDR I/O consistency group), all ZFS storage pool and file system properties, such as compression, are replicated too.&lt;br /&gt;The TrueCopy snapshot feature does not retain write-order consistency across all volumes in a single ZFS storage pool. To address this issue, within TrueCopy, you must create a single I/O consistency group for all volumes in a "named" ZFS storage pool. The other solution is to do the following:&lt;br /&gt;# zpool export ZFS storage pool&amp;gt;&lt;br /&gt;# TrueCopy snapshot&lt;br /&gt;# zpool import ZFS storage pool&amp;gt;&lt;br /&gt;Additional Cautions for Storage Pools&lt;br /&gt;&lt;br /&gt;Review the following cautions before building your ZFS storage pool:&lt;br /&gt;Do not create a storage pool that contains components from another storage pool. Deadlocks can occur in this unsupported configuration.&lt;br /&gt;A pool created with a single slice or single disk has no redundancy and is at risk for data loss. A pool created with multiple slices but no redundancy is also at risk for data loss. A pool created with multiple slices across disks is harder to manage than a pool created with whole disks.&lt;br /&gt;A pool that is not created with ZFS redundancy (RAIDZ or mirror) can only report data inconsistencies. It cannot repair data inconsistencies. A pool created without ZFS redundancy is harder to manage because you cannot replace or detach disks in a non-redundant ZFS configuration.&lt;br /&gt;Although a pool that is created with ZFS redundancy can help reduce down time due to hardware failures, it is not immune to hardware failures, power failures, or disconnected cables. Make sure you backup your data on a regular basis. Performing routine backups of pool data on non-enterprise grade hardware is important.&lt;br /&gt;A pool cannot be shared across systems. ZFS is not a cluster file system.&lt;br /&gt;The size of the replacements vdev, measured by usable sectors, must be the same or greater than the vdev being replaced. This can be confusing when whole disks are used because different models of disks may provide a different number of usable sectors. For example, if a pool was created with a "500 GB" drive and you need to replace it with another "500 GB" drive, then you may not be able to do so if the drives are not of the same make, model, and firmware revision. Consider planning ahead and reserving some space by creating a slice which is smaller than the whole disk instead of the whole disk. In Nevada, build 117, it might be possible to replace or attach a disk that is slight smaller than the other disks in a pool. This is CR 6844090.&lt;br /&gt;Today, vdevs cannot shrink in size. If your plans include replacing vdevs with smaller vdevs, then you will also need to plan to grow the file system as additional capacity is needed or implement a plan to copy the data out of the file system before shrinking. CR 4852783 addresses the ability to shrink vdevs.&lt;br /&gt;A disk that is part of a pool cannot be relabeled or repartitioned.&lt;br /&gt;Consider that a BIOS or firmware upgrade might inadvertently relabel a disk so carefully review the upgrade changes that might impact the disks of your pool before the upgrade.&lt;br /&gt;Other hardware upgrades or changes might change the device paths of the devices in your pool. In general, a ZFS storage pool on Sun hardware can handle these changes, but review your hardware manual to see if the pool should be imported or possibly other preparatory steps taken, before upgrading the hardware.&lt;br /&gt;Simple or Striped Storage Pool Limitations&lt;br /&gt;&lt;br /&gt;Simple or striped storage pools have limitations that should be considered. Expansion of space is possible by two methods:&lt;br /&gt;Adding another disk to expand the stripe. This method should also increase the performance of the storage pool because more devices can be utilized concurrently. Be aware that for current ZFS implementations, once vdevs are added, they cannot be removed.&lt;br /&gt;&amp;nbsp;# zpool add tank c2t2d0&lt;br /&gt;Replacing an existing vdev with a larger vdev. For example:&lt;br /&gt;&amp;nbsp;# zpool replace tank c0t2d0 c2t2d0&lt;br /&gt;ZFS can tolerate many types of device failures.&lt;br /&gt;For simple storage pools, metadata is dual redundant, but data is not redundant.&lt;br /&gt;You can set the redundancy level for data using the ZFS copies property.&lt;br /&gt;If a block cannot be properly read and there is no redundancy, ZFS will tell you which files are affected.&lt;br /&gt;Replacing a failing disk for a simple storage pool requires access to both the old and new device in order to put the old data onto the new device.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;# zpool replace tank c0t2d0 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ### wrong: cannot recreate data because there is no redundancy&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;# zpool replace tank c0t2d0 c2t2d0 &amp;nbsp;### ok&lt;br /&gt;Multiple Storage Pools on the Same System&lt;br /&gt;&lt;br /&gt;The pooling of resources into one ZFS storage pool allows different file systems to get the benefit from all resources at different times. This strategy can greatly increase the performance seen by any one file system.&lt;br /&gt;If some workloads require more predictable performance characteristics, then you might consider separating workloads into different pools.&lt;br /&gt;For instance, Oracle log writer performance is critically dependent on I/O latency and we expect best performance to be achieved by keeping that load on a separate small pool that has the lowest possible latency.&lt;br /&gt;ZFS Root Pool Considerations&lt;br /&gt;&lt;br /&gt;A root pool must be created with disk slices rather than whole disks. Allocate the entire disk capacity for the root pool to slice 0, for example, rather than partition the disk that is used for booting for many different uses. A root pool must be labeled with a VTOC (SMI) label rather than an EFI label.&lt;br /&gt;A disk that contains the root pool or any pool cannot be repartitioned while the pool is active. If the entire disk's capacity is allocated to the root pool, then it is less likely to need more disk space.&lt;br /&gt;Consider keeping the root pool separate from pool(s) that are used for data. Several reasons exist for this strategy:&lt;br /&gt;Only mirrored pools and pools with one disk are supported. No RAIDZ or unreplicated pools with more than one disk are supported.&lt;br /&gt;You cannot add additional disks to create multiple mirrored vdevs but you can expand a mirrored vdev by using the zpool attach command.&lt;br /&gt;Data pools can be architecture-neutral. It might make sense to move a data pool between SPARC and Intel. Root pools are pretty much tied to a particular architecture.&lt;br /&gt;In general, it's a good idea to separate the "personality" of a system from its data. Then, you can change one without having to change the other.&lt;br /&gt;A root pool cannot be exported on the local system. For recovery purposes, you can import a root pool when booted from the network or alternate media.&lt;br /&gt;Consider using descendent datasets in the root pool for non-system related data because you cannot rename or destroy the top-level pool dataset. Using the top-level pool dataset as a container for descendent datasets provide more flexibility if you need to snapshot, clone, or promote datasets in the root pool or a top-level dataset.&lt;br /&gt;Keep all root pool components, such as the /usr and /var directories, in the root pool.&lt;br /&gt;Create a mirrored root pool to reduce downtime due to hardware failures.&lt;br /&gt;For more information about setting up a ZFS root pool, see ZFS Root Pool Recommendations.&lt;br /&gt;For more information about migrating to a ZFS root file system, see Migrating to a ZFS Root File System.&lt;br /&gt;ZFS Mirrored Root Pool Disk Replacement&lt;br /&gt;&lt;br /&gt;If a disk in a mirrored root pool fails, you can either replace the disk or attach a replacement disk and then detach the failed disk. The basic steps are like this:&lt;br /&gt;Identify the disk to be replaced by using the zpool status command.&lt;br /&gt;You can do a live disk replacement if the system supports hot-plugging. On some systems, you might need to offline and unconfigure the failed disk first. For example:&lt;br /&gt;# zpool offline rpool c1t0d0s0&lt;br /&gt;# cfgadm -c unconfigure c1::dsk/c1t0d0&lt;br /&gt;Physically replace the disk.&lt;br /&gt;Reconfigure the disk. This step might not be necessary on some systems.&lt;br /&gt;# cfgadm -c configure c1::dsk/c1t0d0&lt;br /&gt;Confirm that the replacement disk has an SMI label and a slice 0 to match the existing root pool configuration.&lt;br /&gt;Let ZFS know that the disk is replaced.&lt;br /&gt;# zpool replace rpool c1t0d0s0&lt;br /&gt;Bring the disk online.&lt;br /&gt;# zpool online rpool c1t0d0s0&lt;br /&gt;Install the bootblocks after the disk is resilvered.&lt;br /&gt;Confirm that the replacement disk is bootable by booting the system from the replacement disk.&lt;br /&gt;For information about formatting a disk that is intended for the root pool and installing boot blocks, see [[1]]&lt;br /&gt;Storage Pool Performance Considerations&lt;br /&gt;&lt;br /&gt;General Storage Pool Performance Considerations&lt;br /&gt;&lt;br /&gt;For better performance, use individual disks or at least LUNs made up of just a few disks. By providing ZFS with more visibility into the LUNs setup,ZFS is able to make better I/O scheduling decisions.&lt;br /&gt;Depending on workloads, the current ZFS implementation can, at times, cause much more I/O to be requested than other page-based file systems. If the throughput flowing toward the storage, as observed by iostat, nears the capacity of the channel linking the storage and the host, tuning down the zfsrecordsize should improve performance. This tuning is dynamic, but only impacts new file creations. Existing files keep their old recordsize.&lt;br /&gt;Tuning recordsize does not help sequential type loads. Tuning recordsize is aimed at improving workloads that intensively manage large files using small random reads and writes.&lt;br /&gt;Keep pool space under 80% utilization to maintain pool performance. Currently, pool performance can degrade when a pool is very full and file systems are updated frequently, such as on a busy mail server. Full pools might cause a performance penalty, but no other issues. If the primary workload is immutable files (write once, never remove), then you can keep a pool in the 95-96% utilization range. Keep in mind that even with mostly static content in the 95-96% range, write, read, and resilvering performance might suffer.&lt;br /&gt;For better performance, do not build UFS components on top of ZFS components. For ZFS performance testing, make sure you are not running UFS on top of ZFS components.&lt;br /&gt;See also ZFS for Databases.&lt;br /&gt;Separate Log Devices&lt;br /&gt;&lt;br /&gt;The ZFS intent log (ZIL) is provided to satisfy POSIX requirements for synchronous writes. By default, the ZIL is allocated from blocks within the main storage pool. Better performance might be possible by using dedicated nonvolatile log devices such as NVRAM, SSD drives, or even a dedicated spindle disk.&lt;br /&gt;If your server hosts a database, virtual machines, iSCSI targets, acts as a NFS server with the clients mounting in "sync" mode, or in any way has heavy synchronous write requests, then you may benefit by using a dedicated log device for ZIL.&lt;br /&gt;The benefit of a dedicated ZIL depends on your usage. If you always do async writes, it won't matter at all, because the log device can only accelerate sync writes to be more similar to async writes. If you do many small sync writes, you will benefit a lot. If you do large continuous sync writes, you may see some benefit, but it's not clear exactly how significant.&lt;br /&gt;If you add a log device to your storage pool, it cannot be removed, prior to zpool version 19. You can find out your pool version by running the "zpool upgrade" command. The Solaris 10 9/10 release includes pool version 22, which allows you to remove a log device.&lt;br /&gt;With two or more nonvolatile storage devices, you can create a mirrored set of log devices.&lt;br /&gt;# zpool add tank log mirror c0t4d0 c0t6d0&lt;br /&gt;In a mirrored log configuration, you can always detach (unmirror) devices, but as mentioned above, you cannot remove your last unmirrored log device prior to pool version 19.&lt;br /&gt;Log devices can be unreplicated or mirrored, but RAIDZ is not supported for log devices.&lt;br /&gt;Mirroring the log device is recommended. Prior to pool version 19, if you have an unmirrored log device that fails, your whole pool might be lost or you might lose several seconds of unplayed writes, depending on the failure scenario.&lt;br /&gt;In current releases, if an unmirrored log device fails during operation, the system reverts to the default behavior, using blocks from the main storage pool for the ZIL, just as if the log device had been gracefully removed via the "zpool remove" command.&lt;br /&gt;The minimum size of a log device is the same as the minimum size of device in pool, which is 64 MB. The amount of in-play data that might be stored on a log device is relatively small. Log blocks are freed when the log transaction (system call) is committed.&lt;br /&gt;The maximum size of a log device should be approximately 1/2 the size of physical memory because that is the maximum amount of potential in-play data that can be stored. For example, if a system has 16 GB of physical memory, consider a maximum log device size of 8 GB.&lt;br /&gt;For a target throughput of X MB/sec and given that ZFS pushes transaction groups every 5 seconds (and have 2 outstanding), we also expect the ZIL to not grow beyond X MB/sec * 10 sec. So to service 100MB/sec of synchronous writes, 1 GB of log device should be sufficient.&lt;br /&gt;Memory and Dynamic Reconfiguration Recommendations&lt;br /&gt;&lt;br /&gt;The ZFS adaptive replacement cache (ARC) tries to use most of a system's available memory to cache file system data. The default is to use all of physical memory except 1 GB. As memory pressure increases, the ARC relinquishes memory.&lt;br /&gt;Consider limiting the maximum ARC memory footprint in the following situations:&lt;br /&gt;When a known amount of memory is always required by an application. Databases often fall into this category.&lt;br /&gt;On platforms that support dynamic reconfiguration of memory boards, to prevent ZFS from growing the kernel cage onto all boards.&lt;br /&gt;A system that requires large memory pages might also benefit from limiting the ZFS cache, which tends to breakdown large pages into base pages.&lt;br /&gt;Finally, if the system is running another non-ZFS file system, in addition to ZFS, it is advisable to leave some free memory to host that other file system's caches.&lt;br /&gt;The trade off is to consider that limiting this memory footprint means that the ARC is unable to cache as much file system data, and this limit could impact performance.&lt;br /&gt;In general, limiting the ARC is wasteful if the memory that now goes unused by ZFS is also unused by other system components. Note that non-ZFS file systems typically manage to cache data in what is nevertheless reported as free memory by the system.&lt;br /&gt;For information about tuning the ARC, see the following section:&lt;br /&gt;http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide#Limiting_the_ARC_Cache&lt;br /&gt;Separate Cache Devices&lt;br /&gt;&lt;br /&gt;In addition to the in-memory ARC cache, ZFS employs a second level, L2ARC on-disk cache. In a typical configuration, there would be large pool of spindle disks, and a smaller number of SSD's or other high performance devices dedicated to cache. Using L2ARC cache devices may accelerate read operations, especially when some data is read repeatedly, and cannot fit in the system memory ARC cache. This is particularly likely when active processes are consuming the system memory, and in high performance machines which may already be maxed out for RAM. For example, if a machine maxes out at 128G ram, and requires 120G of ram for active processes, and frequently needs to read some data files from disk, then performance could likely be increased by adding a few hundred G of SSD cache devices.&lt;br /&gt;You can add cache devices with the "zpool add" command.&lt;br /&gt;zpool add tank cache c0t5d0 c0t6d0&lt;br /&gt;It is not possible to mirror or use raidz on cache devices, nor is it necessary. If a cache device fails, the data will simply be read from the main pool storage devices instead.&lt;br /&gt;RAIDZ Configuration Requirements and Recommendations&lt;br /&gt;&lt;br /&gt;A RAIDZ configuration with N disks of size X with P parity disks can hold approximately (N-P)*X bytes and can withstand P device(s) failing before data integrity is compromised.&lt;br /&gt;Start a single-parity RAIDZ (raidz) configuration at 3 disks (2+1)&lt;br /&gt;Start a double-parity RAIDZ (raidz2) configuration at 5 disks (3+2)&lt;br /&gt;Start a triple-parity RAIDZ (raidz3) configuration at 8 disks (5+3)&lt;br /&gt;(N+P) with P = 1 (raidz), 2 (raidz2), or 3 (raidz3) and N equals 2, 4, or 8&lt;br /&gt;The recommended number of disks per group is between 3 and 9. If you have more disks, use multiple groups.&lt;br /&gt;For a RAIDZ configuration example, see x4500 with RAID-Z2 and Recipe for a ZFS RAID-Z Storage Pool on Sun Fire X4540.&lt;br /&gt;Mirrored Configuration Recommendations&lt;br /&gt;&lt;br /&gt;No currently reachable limits exist on the number of devices&lt;br /&gt;On a Sun Fire X4500 server, do not create a single mirror with 48 devices. Consider creating 24 2-device mirrors. This configuration reduces the disk capacity by 1/2, but up to 24 disks or 1 disk in each mirror could be lost without a failure.&lt;br /&gt;If you need better data protection, a 3-way mirror has a significantly greater MTTDL than a 2-way mirror. Going to a 4-way (or greater) mirror may offer only marginal improvements in data protection. Concentrate on other methods of data protection if a 3-way mirror is insufficient.&lt;br /&gt;For a mirrored ZFS configuration examples, see x4500 with mirror and x4200 with mirror.&lt;br /&gt;Should I Configure a RAIDZ, RAIDZ-2, RAIDZ-3, or a Mirrored Storage Pool?&lt;br /&gt;&lt;br /&gt;A general consideration is whether your goal is to maximum disk space or maximum performance.&lt;br /&gt;A RAIDZ configuration maximizes disk space and generally performs well when data is written and read in large chunks (128K or more).&lt;br /&gt;A RAIDZ-2 configuration offers better data availability, and performs similarly to RAIDZ. RAIDZ-2 has significantly better mean time to data loss (MTTDL) than either RAIDZ or 2-way mirrors.&lt;br /&gt;A RAIDZ-3 configuration maximizes disk space and offers excellent availability because it can withstand 3 disk failures.&lt;br /&gt;A mirrored configuration consumes more disk space but generally performs better with small random reads.&lt;br /&gt;If your I/Os are large, sequential, or write-mostly, then ZFS's I/O scheduler aggregates them in such a way that you'll get very efficient use of the disks regardless of the data replication model.&lt;br /&gt;For better performance, a mirrored configuration is strongly favored over a RAIDZ configuration particularly for large, uncacheable, random read loads.&lt;br /&gt;For more information about RAIDZ considerations, see When to (and not to) use RAID-Z.&lt;br /&gt;RAIDZ Configuration Examples&lt;br /&gt;&lt;br /&gt;For RAIDZ configuration on a Thumper, mirror c3t0 and c3t4 (disks 0 and 1) as your root pool, with the remaining 46 disks available for user data. The following RAIDZ-2 configurations illustrate how to set up the remaining 46 disks.&lt;br /&gt;&amp;nbsp;&amp;nbsp;* 5x(7+2), 1 hot spare, 17.5 TB&lt;br /&gt;&amp;nbsp;&amp;nbsp;* 4x(9+2), 2 hot spares, 18.0 TB&lt;br /&gt;&amp;nbsp;&amp;nbsp;* 6x(5+2), 4 hot spares, 15.0 TB&lt;br /&gt;ZFS Migration Strategies&lt;br /&gt;&lt;br /&gt;Migrating to a ZFS Root File System&lt;br /&gt;&lt;br /&gt;In the SXCE (Nevada) build 90 release or in the Solaris 10 10/08 release, you can migrate your UFS root file system to a ZFS root file system by upgrading to build 90 or the Solaris 10 10/08 release and then using the Solaris Live Upgrade feature to migrate to a ZFS root file system. You can create a mirrored ZFSroot pool either during an initial installation or a JumpStart installation. Or, by using the zpool attach command to create a mirrored ZFS root pool after installation.&lt;br /&gt;For information about installing a ZFS root file system or migrating a UFS root file system to a ZFS root file system, see the Installing and Booting a ZFS Root File System&lt;br /&gt;Migrating a UFS Root File System With Zones to a ZFS Root File System&lt;br /&gt;&lt;br /&gt;Keep the following points in mind when using ZFS datasets on a Solaris system with zones installed:&lt;br /&gt;In the Solaris 10 10/08 release, you can create a zone root path on a ZFS file system. However, supported configurations are limited when migrating a system with zones to a ZFS root file system by using the Solaris Live Upgrade feature. Review the following supported configurations before you begin migrating a system with zones.&lt;br /&gt;Migrate System With UFS with Zones to ZFS Root&lt;br /&gt;Configure ZFS Root With Zone Roots on ZFS&lt;br /&gt;Upgrade or Patch ZFS Root with Zone Roots on ZFS&lt;br /&gt;You can use ZFS as a zone root path in the Solaris Express releases, but keep in mind that patching or upgrading these zones is not supported.&lt;br /&gt;You cannot associate ZFS snapshots with zones at this time.&lt;br /&gt;For more information about using ZFS with zones, see the Zones FAQ.&lt;br /&gt;Manually Migrating Non-System Data to a ZFS File System&lt;br /&gt;&lt;br /&gt;Consider the following practices when migrating non-system-related data from UFS file systems to ZFS file systems:&lt;br /&gt;Unshare the existing UFS file systems&lt;br /&gt;Unmount the existing UFS file systems from the previous mount points&lt;br /&gt;Mount the UFS file systems to temporary unshared mount points&lt;br /&gt;Migrate the UFS data with parallel instances of rsync running to the new ZFS file systems&lt;br /&gt;Set the mount points and the sharenfs properties on the new ZFS file systems&lt;br /&gt;ZFS Interactions With Other Volume Management Products&lt;br /&gt;&lt;br /&gt;ZFS works best without any additional volume management software.&lt;br /&gt;If you must use ZFS with SVM because you need an extra level of volume management, ZFS expects that 1 to 4 MB of consecutive logical block map to consecutive physical blocks. Keeping to this rule allows ZFS to drive the volume with efficiency.&lt;br /&gt;You can construct logical devices for ZFS by using volumes presented by software-based volume managers, such as SolarisTM Volume Manager (SVM) or Veritas Volume Manager (VxVM). However, these configurations are not recommended. While ZFS functions properly on such devices, less-than-optimal performance might be the result.&lt;br /&gt;General ZFS Administration Information&lt;br /&gt;&lt;br /&gt;ZFS administration is performed while the data is online.&lt;br /&gt;For information about setting up pools, see [ZFS Storage Pools Recommendations].&lt;br /&gt;ZFS file systems are mounted automatically when created.&lt;br /&gt;ZFS file systems do not have to be mounted by modifying the /etc/vfstab file.&lt;br /&gt;Currently, ZFS doesn't provide a comprehensive backup/restore utility like ufsdump and ufsrestore commands. However, you can use the zfs send and zfsreceive commands to capture ZFS data streams. You can also use the ufsrestore command to restore UFS data into a ZFS file system.&lt;br /&gt;For most ZFS administration tasks, see the following references:&lt;br /&gt;zfs.1m and zpool.1m, provide basic syntax and examples&lt;br /&gt;ZFS Administration Guide, provides more detailed syntax and examples&lt;br /&gt;zfs-discuss, join this OpenSolaris discussion list to ask ZFS questions&lt;br /&gt;You can use "iostat -En" to display error information about devices that are part of a ZFS storage pool.&lt;br /&gt;A dataset is a generic term for a ZFS component, such as file system, snapshot, clone, or volume.&lt;br /&gt;When you create a ZFS storage pool, a ZFS file system is automatically created. For example, the following syntax created a pool named tank and top-level dataset named tank that is mounted at /tank.&lt;br /&gt;# zpool create tank mirror c1t0d0 c2t0d0&lt;br /&gt;# zfs list tank&lt;br /&gt;NAME &amp;nbsp; USED &amp;nbsp;AVAIL &amp;nbsp;REFER &amp;nbsp;MOUNTPOINT&lt;br /&gt;tank &amp;nbsp; &amp;nbsp;72K &amp;nbsp;8.24G &amp;nbsp; &amp;nbsp;21K &amp;nbsp;/tank&lt;br /&gt;Consider using the top-level dataset as a container for other file systems. The top-level dataset cannot be destroyed or renamed. You can export and import the pool with a new name to change the name of the top-level dataset, but this operation would also change the name of the pool. If you want to snapshot, clone, or promote file system data then create separate file systems in your pool. File systems provide points of administration that allow you to manage different sets of data within the same pool.&lt;br /&gt;OpenSolaris/ZFS Considerations&lt;br /&gt;&lt;br /&gt;Most of the general pool and storage recommendations apply to using ZFS in the OpenSolaris release.&lt;br /&gt;OpenSolaris/ZFS/Virtual Box Recommendations&lt;br /&gt;&lt;br /&gt;Template:Draft&lt;br /&gt;By default, Virtual Box is configured to ignore cache flush commands from the underlying storage. This means that in the event of a system crash or a hardware failure, data could be lost.&lt;br /&gt;To enable cache flushing on Virtual Box, issue the following command:&lt;br /&gt;VBoxManage setextradata &amp;nbsp;"VBoxInternal/Devices//0/LUN#/Config/IgnoreFlush" 0&lt;br /&gt;where:&lt;br /&gt;is the name of the virtual machine  &lt;br /&gt;is the controller type, either piix3ide (if you're using the normal IDE virtual controller) or ahci (if you're using a SATA controller)&lt;br /&gt;   is the disk number.  &lt;br /&gt;For IDE disks, primary master is 0, primary slave is 1, secondary  master is 2, secondary slave is 3.  &lt;br /&gt;For SATA disks, it's simply the SATA disk number.&lt;br /&gt;Additional notes:&lt;br /&gt;This setting can only be enabled for (virtual) SATA/IDE disks. It cannot be enabled for CD/DVD drives. iSCSI behavior is unknown at this time.&lt;br /&gt;You can only enable this setting for disks that are attached to the particular virtual machine. If you enable it for any other disks (LUN#), it will fail to boot with a rather cryptic error message. This means if you detach the disk, you have to disable this setting.&lt;br /&gt;Using ZFS for Application Servers Considerations&lt;br /&gt;&lt;br /&gt;ZFS NFS Server Practices&lt;br /&gt;&lt;br /&gt;Consider the following lessons learned from a UFS to ZFS migration experience:&lt;br /&gt;Existing user home directories were renamed but they were not unmounted. NFS continued to serve the older home directories when the new home directories were also shared.&lt;br /&gt;Do not mix UFS directories and ZFS file systems in the same file system hierarchy because this model is confusing to administer and maintain.&lt;br /&gt;Do not mix NFS legacy shared ZFS file systems and ZFS NFS shared file systems because this model is difficult to maintain. Go with ZFS NFS shared file systems.&lt;br /&gt;ZFS file systems are shared with the sharenfs file system property and zfs share command. For example:&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;# zfs set sharenfs=on export/home&lt;br /&gt;This syntax shares the file system automatically. If ZFS file systems need to be shared, use the zfs share command. For example:&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;# zfs share export/home&lt;br /&gt;For information about ZFS-over-NFS performance, see ZFS and NFS Server Performance.&lt;br /&gt;ZFS NFS Server Benefits&lt;br /&gt;&lt;br /&gt;NFSv4-style ACLs are available with ZFS file systems and ACL information is automatically available over NFS.&lt;br /&gt;ZFS snapshots are available over NFSv4 so NFS mounted-home directories can access their .snapshot directories.&lt;br /&gt;ZFS file service for SMB (CIFS) or SAMBA&lt;br /&gt;&lt;br /&gt;Many of the best practices for NFS also apply to CIFS or SAMBA servers.&lt;br /&gt;ZFS file systems can be shared using the SMB service, for those OS releases which support it.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;# zfs set sharesmb=on export/home&lt;br /&gt;If native SMB support is not available, then SAMBA offers a reasonable solution.&lt;br /&gt;ZFS Home Directory Server Practices&lt;br /&gt;&lt;br /&gt;Consider the following practices when planning your ZFS home directories:&lt;br /&gt;Set up one file system per user&lt;br /&gt;Use quotas and reservations to manage user disk space&lt;br /&gt;Use snapshots to back up users' home directories&lt;br /&gt;Beware that mounting 1000s of file systems, will impact your boot time&lt;br /&gt;Consider the following practices when migrating data from UFS file systems to ZFS file systems:&lt;br /&gt;Unshare the existing UFS file systems&lt;br /&gt;Unmount the existing UFS file systems from the previous mount points&lt;br /&gt;Mount the UFS file systems to temporary unshared mount points&lt;br /&gt;Migrate the UFS data with parallel instances of rsync running to the new ZFS file systems&lt;br /&gt;Set the mount points and the sharenfs properties on the new ZFS file systems&lt;br /&gt;See the ZFS/NFS Server Practices section for additional tips on sharing ZFS home directories over NFS.&lt;br /&gt;ZFS Home Directory Server Benefits&lt;br /&gt;&lt;br /&gt;ZFS can handle many small files and many users because of its high capacity architecture.&lt;br /&gt;Additional space for user home directories is easily expanded by adding more devices to the storage pool.&lt;br /&gt;ZFS quotas are an easy way to manage home directory space.&lt;br /&gt;Use ZFS property inheritance to apply properties to many file systems.&lt;br /&gt;Recommendations for Saving ZFS Data&lt;br /&gt;&lt;br /&gt;Using ZFS Snapshots&lt;br /&gt;&lt;br /&gt;Using ZFS snapshots is a quick and easy way to protect files against accidental changes and deletion. In nearly all cases, availability of snapshots allows users to restore their own files, without administrator assistance, and without the need to access removable storage, such as tapes. For example:&lt;br /&gt;$ rm reallyimportantfile /* D'oh!&lt;br /&gt;$ cd .zfs/snapshot&lt;br /&gt;$ cd .auto...&lt;br /&gt;$ cp reallyimportantfile $HOME&lt;br /&gt;$ ls $HOME/reallyimportantfile&lt;br /&gt;/home/cindys/reallyimportantfile&lt;br /&gt;The following syntax creates recursive snapshots of all home directories in the tank/home file system. Then, you can use the zfs send -R command to create a recursive stream of the recursive home directory snapshot, which also includes the individual file system property settings.&lt;br /&gt;# zfs snapshot -r tank/home@monday&lt;br /&gt;# zfs send -R tank/home/@monday | ssh remote-system zfs receive -dvu pool&lt;br /&gt;You can create rolling snapshots and zfs-auto-snapshots to help manage snapshot copies. For more information, see the Rolling Snapshots Made Easyblog or the ZFS Automatic Snapshot blog by Tim Foster.&lt;br /&gt;ZFS snapshots are accessible in the .zfs directories of the file system that was snapshot. Configure your backup product to skip these directories.&lt;br /&gt;Storing ZFS Snapshot Streams (zfs send/receive)&lt;br /&gt;&lt;br /&gt;You can use the zfs send and zfs receive commands to archive a snapshot stream but saving ZFS send streams is different from traditional backups, for the following reasons:&lt;br /&gt;You cannot select individual files or directories to receive because the zfs receive operation is an all-or-nothing event. You can get all of a file system snapshot or none of it.&lt;br /&gt;If you store ZFS send stream on a file or on tape, and that file becomes corrupted, then it will not be possible to receive it, and none of the data will be recoverable. However, Nevada, build 125 adds the zstreamdump(1m) command to verify a ZFS snapshot send stream. See also, RFE 6736794.&lt;br /&gt;You cannot restore individual files or directories from a ZFS send stream, although you can copy files or directories from a snapshot. This limitation means enterprise backup solutions and other archive tools, such as cp, tar, rsync, pax, cpio, are more appropriate for tape backup/restore because you can restore individual files or directories.&lt;br /&gt;You cannot exclude directories or files from a ZFS send stream.&lt;br /&gt;You can create an incremental snapshot stream (see "zfs send -i" syntax). This is generally much faster than incremental backups performed by file-level tools, such as tar and rsync, because ZFS already knows which blocks have changed on disk, and it can simply read those blocks as large sequential disk read operations, to the extent physically possible. Archive tools, such as tar and rsync, must walk the file system, checking every file and directory for modifications, in order to choose which files have changed and need to be included in the incremental backup.&lt;br /&gt;Another advantage of using a ZFS send stream over a file-based backup tool is that you can send and receive a file system's property settings.&lt;br /&gt;If you have random access storage (not tape) to receive onto, and you don't need to exclude anything, then zfs send and receive can be used to store data, provided that you pipe the zfs send command directly into the zfs receive command.&lt;br /&gt;Using ZFS With AVS&lt;br /&gt;&lt;br /&gt;The Sun StorageTek Availability Suite (AVS), Remote Mirror Copy and Point-in-Time Copy services, previously known as SNDR (Sun Network Data Replicator) and II (Instant Image), are similiar to the Veritas VVR (volume replicator) and Flashsnap (point-in-time copy) products, is currently available in the Solaris Express release.&lt;br /&gt;SNDR differs from the ZFS send and recv features, which are time-fixed replication features. For example, you can take a point-in-time snapshot, replicate it, or replicate it based on a differential of a prior snapshot. The combination of AVS II and SNDR features, also allows you to perform time-fixed replication. The other modes of the AVS SNDR replication feature allows you to obtain CDP (continuous data replication). ZFS doesn't currently have this feature.&lt;br /&gt;For more information about AVS, see the OpenSolaris AVS Project. View the AVS/ZFS Demos here.&lt;br /&gt;Using ZFS With Enterprise Backup Solutions&lt;br /&gt;&lt;br /&gt;The robustness of ZFS does not protect you from all failures. You should maintain copies of your ZFS data either by taking regular ZFS snapshots, and saving them to tape or other offline storage. Or, consider using an enterprise backup solution.&lt;br /&gt;Sun StorEdge Enterprise Backup Software (Legato Networker 7.3.2) product can fully back up and restore ZFS files including ACLs.&lt;br /&gt;Symantec's Netbackup 6.5 product can fully back up and restore ZFS files including ACLs. Release 6.5.2A offers some fixes which make backup ofZFS file systems easier.&lt;br /&gt;IBM's TSM product can be used to back up ZFS files. However supportability is not absolutely clear. Based on TSM documentation on IBM website,ZFS with ACLs is supported with TSM client 5.3. It has been verified (internally to Sun) to correctly work with 5.4.1.2.&lt;br /&gt;&amp;nbsp;&amp;nbsp;tsm&amp;gt; q file /opt/SUNWexplo/output&lt;br /&gt;&amp;nbsp;&amp;nbsp;# &amp;nbsp; &amp;nbsp; Last Incr Date &amp;nbsp; &amp;nbsp; &amp;nbsp;Type &amp;nbsp; &amp;nbsp;File Space Name&lt;br /&gt;&amp;nbsp;&amp;nbsp;--- &amp;nbsp; &amp;nbsp; -------------- &amp;nbsp; &amp;nbsp; &amp;nbsp;---- &amp;nbsp; &amp;nbsp;---------------&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1 &amp;nbsp; 08/13/07 &amp;nbsp; 09:18:03 &amp;nbsp; ZFS &amp;nbsp; &amp;nbsp; /opt/SUNWexplo/output&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;^&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;|__correct filesystem type&lt;br /&gt;For the latest information about enterprise-backup solution issues with ZFS, see the ZFS FAQ.&lt;br /&gt;Using ZFS With Open Source Backup Solutions&lt;br /&gt;&lt;br /&gt;ZFS snapshots are accessible in the .zfs directories of the file system that was snapshot. Configure your backup product to skip these directories.&lt;br /&gt;Amanda - Joe Little blogs about how he backs up ZFS file systems to Amazon's S3 using Amanda. Integration of ZFS snapshots with MySQL and Amanda Enterprise 2.6 Software can also take advantage of ZFS snapshot capabilities.&lt;br /&gt;Bacula - Tips for backing up ZFS data are as follows:&lt;br /&gt;Make sure you create multiple jobs per host to allow multiple backups to occur in parallel rather than just one job per host. If you have several file systems and/or pools, running multiple jobs speeds up the backup process.&lt;br /&gt;Create a non-global zone to do backups. Having multiple zones for backups means that you can delegate control of a backup server to a customer so they can perform restores on their own and only have access to their own data.&lt;br /&gt;Use a large RAIDZ pool (20 TB), instead of tapes, to store all the backups, and which allows quick backup and restores.&lt;br /&gt;Use opencsw (from opencsw.org) and/or blastwave (from blastwave.org) for packages, which makes it very easy to install and maintain. If using opencsw, run "pkg-get -i bacula" and it installs all the prerequisites. If using blastwave, run "pkgutil -i bacula" and it installs all the prerequisites. On the clients, install opencsw and bacula_client on the global zones, and backup the local zones from the global zone.&lt;br /&gt;On the server, the "director" configuration file, /opt/csw/etc/bacula/bacula-dir.conf, contains the information you need about what clients are backed up. You can split configurations into sections, such as "core" for the base system, "raid" for my local larger pools, and "zones" for my zones. If you have several zones, break up "zones" to a per-zone job, which is easy to do.&lt;br /&gt;For more information, see Bacula Configuration Example.&lt;br /&gt;The OpenSolaris ndmp service project is proposed to take advantage of ZFS features, such as snapshots, to improve the backup and restore process. With this addition, an enterprise backup solution could take advantage of snapshots to improve data protection for large storage repositories. For more information, see ndmp service.&lt;br /&gt;ZFS and Database Recommendations&lt;br /&gt;&lt;br /&gt;The information in this section has been consolidated into a separate ZFS for Databases section.&lt;br /&gt;ZFS and Complex Storage Considerations&lt;br /&gt;&lt;br /&gt;Certain storage subsystems stage data through persistent memory devices, such as NVRAM on a storage array, allowing them to respond to writes with very low latency. These memory devices are commonly considered as stable storage, in the sense that they are likely to survive a power outage and other types of breakdown. At critical times, ZFS is unaware of the persistent nature of storage memory, and asks for that memory to be flushed to disk. If indeed the memory devices are considered stable, the storage system should be configured to ignore those requests from ZFS.&lt;br /&gt;For potential tuning considerations, see: ZFS Evil Tuning Guide, Cache_Flushes&lt;br /&gt;Virtualization Considerations&lt;br /&gt;&lt;br /&gt;ZFS and Virtual Tape Libraries (VTLs)&lt;br /&gt;&lt;br /&gt;VTL solutions are hardware and software combinations that are used to emulate tapes, tape drives, and tape libraries. VTLs are used in backup/archive systems with a focus on reducing hardware and software costs.&lt;br /&gt;VTLs are big disk space eaters and we believe ZFS will allow them to more efficiently and securely manage the massive, online disk space.&lt;br /&gt;OpenSolaris - the COMSTAR project delivers both tape and disk targets, so a ZFS volume can look like a tape drive.&lt;br /&gt;Falconstor VTL - has been tested on Thumper running ZFS. For more information, see: Sun Puts Thumper To Work&lt;br /&gt;NetVault from BakBone - This backup solution includes a VTL feature that has been tested on Thumper running ZFS.&lt;br /&gt;ZFS Performance Considerations&lt;br /&gt;&lt;br /&gt;See the following sections for basic system, memory, pool, and replication recommendations:&lt;br /&gt;ZFS Storage Pools Recommendations&lt;br /&gt;Should I Configure a RAIDZ, RAIDZ-2, RAIDZ-3, or a Mirrored Storage_Pool&lt;br /&gt;ZFS and Application Considerations&lt;br /&gt;&lt;br /&gt;ZFS and NFS Server Performance&lt;br /&gt;&lt;br /&gt;ZFS is deployed over NFS in many different places with no reports of obvious deficiency. Many have reported disappointing performance, but those scenarios more typically relate to comparing ZFS-over-NFS performance with local file system performance. It is well known that serving NFS leads to significant slowdown compared to local or directly-attached file systems, especially for workloads that have low thread parallelism. A dangerous way to create better ZFS-over-NFS performance at the expense of data integrity is to set the kernel variable, zil_disable. Setting this parameter is not recommended.&lt;br /&gt;Later versions of ZFS have implemented a separate ZIL log device option which improves NFS synchronous write operations. This is a better option than disabling the ZIL. Anecdotal evidence suggests good NFS performance improvement even if the log device does not have nonvolatile RAM. To see if your zpool can support separate log devices use zpool upgrade -v and look for version 7. For more information, see separate intent log.&lt;br /&gt;See also ZFS for Databases.&lt;br /&gt;For more detailed information about ZFS-over-NFS performance, see ZFS and NFS, a fine combination.&lt;br /&gt;ZFS Overhead Considerations&lt;br /&gt;&lt;br /&gt;Checksum and RAIDZ parity computations occur in concurrent threads in recent Solaris releases.&lt;br /&gt;Compression is no longer single-threaded due to integration of CR 6460622.&lt;br /&gt;Data Reconstruction&lt;br /&gt;&lt;br /&gt;Traditional RAID systems, where the context of the data is not known and data is reconstructed (also known as resilvering), blindly reconstruct the data blocks in block order. ZFS only needs to reconstruct data, so ZFS can be more efficient than traditional RAID systems when the storage pool is not full. ZFSreconstruction occurs top-down in a priority-based manner. Jeff Bonwick describes this in more detail in his Smokin' Mirrors blog post.&lt;br /&gt;Since ZFS reconstruction occurs on the host, some concern exists over the performance impact and availability trade-offs. Two competing RFEs address this subject:&lt;br /&gt;CR 6670933, resilver code should prefetch&lt;br /&gt;CR 6494473, ZFS needs a way to slow down resilvering&lt;br /&gt;Retrieved from "http://www.solarisinternals.com/wiki/index.php/ZFS_Best_Practices_Guide"&lt;br /&gt;Category:ZFS&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1178973579077295942?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1178973579077295942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1178973579077295942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1178973579077295942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1178973579077295942'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2011/07/ive-been-having-trouble-getting-to-zfs.html' title=''/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-6382189448162623055</id><published>2010-09-16T16:54:00.000-04:00</published><updated>2010-09-16T16:54:00.974-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>OpenIndiana: The New OpenSolaris</title><content type='html'>Since Oracle has mothballed OpenSolaris, a team of developers are now working on a distribution based on Illumos instead of ON. &amp;nbsp;That distro is OpenIndiana:&lt;br /&gt;&lt;a href="http://dlc.openindiana.org/isos/"&gt;http://dlc.openindiana.org/isos/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-6382189448162623055?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/6382189448162623055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=6382189448162623055' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6382189448162623055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6382189448162623055'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2010/09/openindiana-new-opensolaris.html' title='OpenIndiana: The New OpenSolaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-6580042603367368180</id><published>2010-09-03T13:17:00.001-04:00</published><updated>2010-09-03T13:24:20.785-04:00</updated><title type='text'>OpenSolaris as a Vagrant Guest</title><content type='html'>&lt;b&gt;Overview&lt;/b&gt;&lt;br /&gt;Vagrant lets you quickly bring up local development or testing environments that parallel our production systems. Since we use RHEL right now for our production systems, we are using a CentOS 5.4 Vagrant box to bring up local dev environments.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Installation&lt;/b&gt;&lt;br /&gt;Install &lt;a href="http://www.virtualbox.org/wiki/Downloads"&gt;VirtualBox 3.2.8&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Install the Vagrant gem (you need a local install of Ruby):&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;gem install vagrant&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;echo "export PATH=$PATH:~/.gem/ruby/1.8/bin:./" &amp;gt;&amp;gt; ~/.bash_profile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Add my OpenSolaris Vagrant box&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;vagrant box add opensolaris http://dl.dropbox.com/u/1321337/vagrant_boxes/opensolaris.box&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Starting a Vagrant Project&lt;/b&gt;&lt;br /&gt;Let's start a new project with Vagrant.  We need to make a working directory for the project first:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;export PROJ=[project_name]&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir ~/$PROJ&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;cd ~/$PROJ&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;vagrant init centos5.4&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;vagrant up; vagrant ssh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can work in this isolated environment when testing.  Keep in mind that your project directory is shared with the Vagrant host at /vagrant in the virtual environment's filesystem.&lt;br /&gt;&lt;br /&gt;For deeper delving in the Vagrant mine, visit the Vagrant &lt;a href="http://vagrantup.com/docs/getting-started/index.html"&gt;Getting Started&lt;/a&gt; page.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Troubleshooting&lt;/b&gt;&lt;br /&gt;In case something goes wrong, it's useful to connect to the Vagrant box's virtual console.  You can do this by making a Remote Desktop (RDP) connection to localhost:3389, with the username 'vagrant' and the password 'vagrant'.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-6580042603367368180?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/6580042603367368180/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=6580042603367368180' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6580042603367368180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6580042603367368180'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2010/09/opensolaris-as-vagrant-guest.html' title='OpenSolaris as a Vagrant Guest'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4276885898836900492</id><published>2010-04-14T10:37:00.000-04:00</published><updated>2010-04-14T10:37:12.968-04:00</updated><title type='text'>Using Flags and Arguments in Bash</title><content type='html'>Here's a simple example script, showing how to deal with different inputs depending on the flag preceding them:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;USAGE="Usage: Enter a noun after either -p (polite) or -i (insulting)."&lt;br /&gt;&lt;br /&gt;while getopts ":p:i:" OPTIONS; do&lt;br /&gt;  case $OPTIONS in&lt;br /&gt;    p ) polite=$OPTARG;;&lt;br /&gt;    i ) insulting=$OPTARG;;&lt;br /&gt;    h ) echo $USAGE;;&lt;br /&gt;    \? ) echo $USAGE&lt;br /&gt;         exit 1;;&lt;br /&gt;    * ) echo $usage&lt;br /&gt;          exit 1;;&lt;br /&gt;  esac&lt;br /&gt;&lt;br /&gt;if [ $polite ]&lt;br /&gt;    then&lt;br /&gt;        echo "Your $polite smells good."&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;if [ $insulting ]&lt;br /&gt;    then&lt;br /&gt;        echo "Your $insulting smells bad."&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;done&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4276885898836900492?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4276885898836900492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4276885898836900492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4276885898836900492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4276885898836900492'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2010/04/using-flags-and-arguments-in-bash.html' title='Using Flags and Arguments in Bash'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2416692209466329035</id><published>2010-02-16T11:11:00.002-05:00</published><updated>2010-02-16T12:16:59.622-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='svcs'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='svcadm'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Automatically Reporting Service Failures in OpenSolaris</title><content type='html'>Slap this in a cronjob and fill in the email addresses as you see fit:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;##&lt;br /&gt;## Written by Blake Irvin - bcirvin@opensolaris.org&lt;br /&gt;##&lt;br /&gt;&lt;br /&gt;PATH=/usr/gnu/bin:/usr/bin:/usr/X11/bin:/usr/sbin:/sbin/&lt;br /&gt;&lt;br /&gt;SERVICEISSUES=`svcs -H | grep -v "online\|legacy_run" | wc -l`&lt;br /&gt;MAILTO=user@domain.com&lt;br /&gt;RETURNADDRESS=user@domain.com&lt;br /&gt;&lt;br /&gt;if [ $SERVICEISSUES != 0 ]&lt;br /&gt;   then&lt;br /&gt;      svcs -xv | mailx -r $RETURNADDRESS -s "$SERVICEISSUES services issues on $HOSTNAME" $MAILTO&lt;br /&gt;else&lt;br /&gt;   exit 0&lt;br /&gt;fi&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2416692209466329035?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2416692209466329035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2416692209466329035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2416692209466329035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2416692209466329035'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2010/02/automatically-reporting-service.html' title='Automatically Reporting Service Failures in OpenSolaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-9366778416400398</id><published>2010-01-05T00:16:00.002-05:00</published><updated>2010-01-05T00:19:59.061-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='opensolaris'/><category scheme='http://www.blogger.com/atom/ns#' term='leopard'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Broadcasting the OpenSolaris CIFS/SMB Service Automagically</title><content type='html'>First, make your config file:&lt;br /&gt;&lt;code&gt;vi /etc/avahi/services/smb.service&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Add this XML:&lt;br /&gt;&lt;code&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone='no'?&amp;gt;&amp;lt;!--*-nxml-*--&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE service-group SYSTEM &amp;quot;avahi-service.dtd&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;service-group&amp;gt;&lt;br /&gt;&amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;%h&amp;lt;/name&amp;gt;&lt;br /&gt;&amp;lt;service&amp;gt;&lt;br /&gt;&amp;lt;type&amp;gt;_smb._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;&amp;lt;port&amp;gt;445&amp;lt;/port&amp;gt;&lt;br /&gt;&amp;lt;/service&amp;gt;&lt;br /&gt;&amp;lt;/service-group&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Then, restart the avahi MDNS broadcast service:&lt;br /&gt;&lt;code&gt;svcadm restart svc:/system/avahi-bridge-dsd:default&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-9366778416400398?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/9366778416400398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=9366778416400398' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/9366778416400398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/9366778416400398'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2010/01/broadcasting-opensolaris-cifssmb.html' title='Broadcasting the OpenSolaris CIFS/SMB Service Automagically'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2436804546007127680</id><published>2009-08-13T14:10:00.002-04:00</published><updated>2009-08-14T14:50:06.439-04:00</updated><title type='text'>Seeing Where Big ZFS Snapshots Are</title><content type='html'>Here's a handy command to find out how much data is used by snapshots in your zfs filesystems:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;zfs get -r usedbysnapshots [dataset] | grep -v @&lt;/pre&gt;&lt;br /&gt;A command that gives a higher-level overview is:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;zfs list -r -o space [dataset]&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2436804546007127680?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2436804546007127680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2436804546007127680' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2436804546007127680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2436804546007127680'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/08/seeing-where-big-zfs-snapshots-are.html' title='Seeing Where Big ZFS Snapshots Are'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8166787427777750900</id><published>2009-08-03T17:29:00.001-04:00</published><updated>2009-08-03T17:30:39.925-04:00</updated><title type='text'>Windows Rsync with CopSSH and CWrsync</title><content type='html'>Install CopSSH&lt;br /&gt;(&lt;a href="http://www.itefix.no/i2/copssh"&gt;http://www.itefix.no/i2/copssh&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Install CWrsync&lt;br /&gt;(&lt;a href="http://www.itefix.no/i2/cwrsync"&gt;http://www.itefix.no/i2/cwrsync&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Navigate to My Computer &amp;gt; Properties &amp;gt; Advanced &amp;gt; Environment Variables &amp;gt; Path&lt;br /&gt;and append the install path for CWrsync:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;;C:\cwrsync&lt;/pre&gt;&lt;br /&gt;Delete &lt;pre&gt;C:\cwrsync\cygwin1.dll&lt;/pre&gt;&lt;br /&gt;Navigate to Start &amp;gt; Programs &amp;gt; CopSSH &amp;gt; Activate A User&lt;br /&gt;and active the appropriate user (for ssh login).&lt;br /&gt;&lt;br /&gt;Do &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;net stop copsshd&lt;/pre&gt;&lt;br /&gt;then&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;net start copsshd&lt;/pre&gt;&lt;br /&gt;Append a preshared ssh key to&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;C:\Program/ Files\copssh\home\[username]\.ssh\authorized_keys&lt;/pre&gt;&lt;br /&gt;if needed&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8166787427777750900?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8166787427777750900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8166787427777750900' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8166787427777750900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8166787427777750900'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/08/windows-rsync-with-copssh-and-cwrsync.html' title='Windows Rsync with CopSSH and CWrsync'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-6571826414692097633</id><published>2009-04-30T21:57:00.001-04:00</published><updated>2009-04-30T21:58:51.985-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zfs'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='opensolaris'/><category scheme='http://www.blogger.com/atom/ns#' term='xen'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Linux (CentOS) DomU Guest in Solaris-hosted Xen</title><content type='html'>Your paths will likely be different:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;root@it:~# lofiadm -a /net/filer.vivisimo.com/data/it/software/centos/CentOS-5.2-x86_64-bin-DVD.iso &lt;br /&gt;/dev/lofi/1&lt;br /&gt;root@it:~# mount -o ro -F hsfs /dev/lofi/1 /mnt&lt;br /&gt;root@it:~# virt-install -n centos0 -p -r 512 --nographics -f /dev/zvol/dsk/rpool/zvols/centos0 -l /mnt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Starting install...&lt;br /&gt;Creating domain...                                                 0 B 00:00 &lt;br /&gt;Bootdata ok (command line is  )&lt;br /&gt;Linux version 2.6.18-92.el5xen (mockbuild@builder10.centos.org) (gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)) #1 SMP Tue Jun 10 19:20:18 EDT 2008&lt;br /&gt;BIOS-provided physical RAM map:&lt;br /&gt; Xen: 0000000000000000 - 0000000020800000 (usable)&lt;br /&gt;No mptable found.&lt;br /&gt;Built 1 zonelists.  Total pages: 133120&lt;br /&gt;Kernel command line:  &lt;br /&gt;Initializing CPU#0&lt;br /&gt;PID hash table entries: 4096 (order: 12, 32768 bytes)&lt;br /&gt;Xen reported: 2000.074 MHz processor.&lt;br /&gt;Console: colour dummy device 80x25&lt;br /&gt;Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)&lt;br /&gt;Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)&lt;br /&gt;Software IO TLB disabled&lt;br /&gt;Memory: 499968k/532480k available (2414k kernel code, 23744k reserved, 1349k data, 176k init)&lt;br /&gt;Calibrating delay using timer specific routine.. 5005.63 BogoMIPS (lpj=10011266)&lt;br /&gt;Security Framework v1.0.0 initialized&lt;br /&gt;SELinux:  Initializing.&lt;br /&gt;selinux_register_security:  Registering secondary module capability&lt;br /&gt;Capability LSM initialized as secondary&lt;br /&gt;Mount-cache hash table entries: 256&lt;br /&gt;CPU: L1 I cache: 32K, L1 D cache: 32K&lt;br /&gt;CPU: L2 cache: 6144K&lt;br /&gt;CPU: Physical Processor ID: 1&lt;br /&gt;CPU: Processor Core ID: 3&lt;br /&gt;(SMP-)alternatives turned off&lt;br /&gt;Brought up 1 CPUs&lt;br /&gt;checking if image is initramfs... it is&lt;br /&gt;Grant table initialized&lt;br /&gt;NET: Registered protocol family 16&lt;br /&gt;ACPI Exception (utmutex-0262): AE_BAD_PARAMETER, Thread 1E7A0 could not acquire Mutex [2] [20060707]&lt;br /&gt;No dock devices found.&lt;br /&gt;ACPI Exception (utmutex-0262): AE_BAD_PARAMETER, Thread 1E7A0 could not acquire Mutex [2] [20060707]&lt;br /&gt;Brought up 1 CPUs&lt;br /&gt;PCI: Fatal: No PCI config space access function found&lt;br /&gt;PCI: setting up Xen PCI frontend stub&lt;br /&gt;ACPI: Interpreter disabled.&lt;br /&gt;Linux Plug and Play Support v0.97 (c) Adam Belay&lt;br /&gt;pnp: PnP ACPI: disabled&lt;br /&gt;xen_mem: Initialising balloon driver.&lt;br /&gt;usbcore: registered new driver usbfs&lt;br /&gt;usbcore: registered new driver hub&lt;br /&gt;PCI: System does not support PCI&lt;br /&gt;PCI: System does not support PCI&lt;br /&gt;NetLabel: Initializing&lt;br /&gt;NetLabel:  domain hash size = 128&lt;br /&gt;NetLabel:  protocols = UNLABELED CIPSOv4&lt;br /&gt;NetLabel:  unlabeled traffic allowed by default&lt;br /&gt;NET: Registered protocol family 2&lt;br /&gt;IP route cache hash table entries: 32768 (order: 6, 262144 bytes)&lt;br /&gt;TCP established hash table entries: 131072 (order: 9, 2097152 bytes)&lt;br /&gt;TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)&lt;br /&gt;TCP: Hash tables configured (established 131072 bind 65536)&lt;br /&gt;TCP reno registered&lt;br /&gt;audit: initializing netlink socket (disabled)&lt;br /&gt;audit(1241138505.052:1): initialized&lt;br /&gt;VFS: Disk quotas dquot_6.5.1&lt;br /&gt;Dquot-cache hash table entries: 512 (order 0, 4096 bytes)&lt;br /&gt;Initializing Cryptographic API&lt;br /&gt;ksign: Installing public key data&lt;br /&gt;Loading keyring&lt;br /&gt;- Added public key 52394A11B61A91&lt;br /&gt;- User ID: CentOS (Kernel Module GPG key)&lt;br /&gt;io scheduler noop registered&lt;br /&gt;io scheduler anticipatory registered&lt;br /&gt;io scheduler deadline registered&lt;br /&gt;io scheduler cfq registered (default)&lt;br /&gt;pci_hotplug: PCI Hot Plug PCI Core version: 0.5&lt;br /&gt;rtc: IRQ 8 is not free.&lt;br /&gt;Non-volatile memory driver v1.2&lt;br /&gt;Linux agpgart interface v0.101 (c) Dave Jones&lt;br /&gt;RAMDISK driver initialized: 16 RAM disks of 16384K size 4096 blocksize&lt;br /&gt;Xen virtual console successfully installed as xvc0&lt;br /&gt;Bootdata ok (command line is  )&lt;br /&gt;Linux version 2.6.18-92.el5xen (mockbuild@builder10.centos.org) (gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)) #1 SMP Tue Jun 10 19:20:18 EDT 2008&lt;br /&gt;BIOS-provided physical RAM map:&lt;br /&gt; Xen: 0000000000000000 - 0000000020800000 (usable)&lt;br /&gt;No mptable found.&lt;br /&gt;Built 1 zonelists.  Total pages: 133120&lt;br /&gt;Kernel command line:  &lt;br /&gt;Initializing CPU#0&lt;br /&gt;PID hash table entries: 4096 (order: 12, 32768 bytes)&lt;br /&gt;Xen reported: 2000.074 MHz processor.&lt;br /&gt;Console: colour dummy device 80x25&lt;br /&gt;Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)&lt;br /&gt;Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)&lt;br /&gt;Software IO TLB disabled&lt;br /&gt;Memory: 499968k/532480k available (2414k kernel code, 23744k reserved, 1349k data, 176k init)&lt;br /&gt;Calibrating delay using timer specific routine.. 5005.63 BogoMIPS (lpj=10011266)&lt;br /&gt;Security Framework v1.0.0 initialized&lt;br /&gt;SELinux:  Initializing.&lt;br /&gt;selinux_register_security:  Registering secondary module capability&lt;br /&gt;Capability LSM initialized as secondary&lt;br /&gt;Mount-cache hash table entries: 256&lt;br /&gt;CPU: L1 I cache: 32K, L1 D cache: 32K&lt;br /&gt;CPU: L2 cache: 6144K&lt;br /&gt;CPU: Physical Processor ID: 1&lt;br /&gt;CPU: Processor Core ID: 3&lt;br /&gt;(SMP-)alternatives turned off&lt;br /&gt;Brought up 1 CPUs&lt;br /&gt;checking if image is initramfs... it is&lt;br /&gt;Grant table initialized&lt;br /&gt;NET: Registered protocol family 16&lt;br /&gt;ACPI Exception (utmutex-0262): AE_BAD_PARAMETER, Thread 1E7A0 could not acquire Mutex [2] [20060707]&lt;br /&gt;No dock devices found.&lt;br /&gt;ACPI Exception (utmutex-0262): AE_BAD_PARAMETER, Thread 1E7A0 could not acquire Mutex [2] [20060707]&lt;br /&gt;Brought up 1 CPUs&lt;br /&gt;PCI: Fatal: No PCI config space access function found&lt;br /&gt;PCI: setting up Xen PCI frontend stub&lt;br /&gt;ACPI: Interpreter disabled.&lt;br /&gt;Linux Plug and Play Support v0.97 (c) Adam Belay&lt;br /&gt;pnp: PnP ACPI: disabled&lt;br /&gt;xen_mem: Initialising balloon driver.&lt;br /&gt;usbcore: registered new driver usbfs&lt;br /&gt;usbcore: registered new driver hub&lt;br /&gt;PCI: System does not support PCI&lt;br /&gt;PCI: System does not support PCI&lt;br /&gt;NetLabel: Initializing&lt;br /&gt;NetLabel:  domain hash size = 128&lt;br /&gt;NetLabel:  protocols = UNLABELED CIPSOv4&lt;br /&gt;NetLabel:  unlabeled traffic allowed by default&lt;br /&gt;NET: Registered protocol family 2&lt;br /&gt;IP route cache hash table entries: 32768 (order: 6, 262144 bytes)&lt;br /&gt;TCP established hash table entries: 131072 (order: 9, 2097152 bytes)&lt;br /&gt;TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)&lt;br /&gt;TCP: Hash tables configured (established 131072 bind 65536)&lt;br /&gt;TCP reno registered&lt;br /&gt;audit: initializing netlink socket (disabled)&lt;br /&gt;audit(1241138505.052:1): initialized&lt;br /&gt;VFS: Disk quotas dquot_6.5.1&lt;br /&gt;Dquot-cache hash table entries: 512 (order 0, 4096 bytes)&lt;br /&gt;Initializing Cryptographic API&lt;br /&gt;ksign: Installing public key data&lt;br /&gt;Loading keyring&lt;br /&gt;- Added public key 52394A11B61A91&lt;br /&gt;- User ID: CentOS (Kernel Module GPG key)&lt;br /&gt;io scheduler noop registered&lt;br /&gt;io scheduler anticipatory registered&lt;br /&gt;io scheduler deadline registered&lt;br /&gt;io scheduler cfq registered (default)&lt;br /&gt;pci_hotplug: PCI Hot Plug PCI Core version: 0.5&lt;br /&gt;rtc: IRQ 8 is not free.&lt;br /&gt;Non-volatile memory driver v1.2&lt;br /&gt;Linux agpgart interface v0.101 (c) Dave Jones&lt;br /&gt;RAMDISK driver initialized: 16 RAM disks of 16384K size 4096 blocksize&lt;br /&gt;Xen virtual console successfully installed as xvc0&lt;br /&gt;Event-channel device installed.&lt;br /&gt;Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2&lt;br /&gt;ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx&lt;br /&gt;ide-floppy driver 0.99.newide&lt;br /&gt;usbcore: registered new driver hiddev&lt;br /&gt;usbcore: registered new driver usbhid&lt;br /&gt;drivers/usb/input/hid-core.c: v2.6:USB HID core driver&lt;br /&gt;PNP: No PS/2 controller found. Probing ports directly.&lt;br /&gt;i8042.c: No controller found.&lt;br /&gt;Welcome to CentOS                                                                                                                              &lt;br /&gt;                                                                                                                                                               &lt;br /&gt;                                                                                &lt;br /&gt;* install happens here *                                                                                &lt;br /&gt;                                                                                                                                                              &lt;br /&gt;                                                                                &lt;br /&gt;sending termination signals...done                                             &lt;br /&gt;sending kill signals...done&lt;br /&gt;disabling swap...&lt;br /&gt; /dev/mapper/VolGroup00-LogVol01&lt;br /&gt;unmounting filesystems...&lt;br /&gt; /mnt/runtime done&lt;br /&gt; disabling /dev/loop0&lt;br /&gt; /proc done&lt;br /&gt; /dev/pts done&lt;br /&gt; /sys done&lt;br /&gt; /tmp/ramfs done&lt;br /&gt; /mnt/source done&lt;br /&gt; /selinux done&lt;br /&gt; /mnt/sysimage/boot done&lt;br /&gt; /mnt/sysimage/sys done&lt;br /&gt; /mnt/sysimage/proc done&lt;br /&gt; /mnt/sysimage/selinux done&lt;br /&gt; /mnt/sysimage/dev done&lt;br /&gt; /mnt/sysimage done&lt;br /&gt;rebooting system&lt;br /&gt;Restarting system.&lt;br /&gt;libvir: Xen Daemon error : GET operation failed: &lt;br /&gt;libvir: error : invalid argument in virDomainLookupByUUIDString&lt;br /&gt;&lt;br /&gt;Guest installation complete... restarting guest.&lt;br /&gt;PCI: Fatal: No PCI config space access function found&lt;br /&gt;rtc: IRQ 8 is not free.&lt;br /&gt;PCI: Fatal: No PCI config space access function found&lt;br /&gt;rtc: IRQ 8 is not free.&lt;br /&gt;i8042.c: No controller found.&lt;br /&gt;Red Hat nash version 5.1.19.6 starting&lt;br /&gt;  Reading all physical volumes.  This may take a while...&lt;br /&gt;  Found volume group "VolGroup00" using metadata type lvm2&lt;br /&gt;  2 logical volume(s) in volume group "VolGroup00" now active&lt;br /&gt;  Welcome to  CentOS release 5.2 (Final)&lt;br /&gt;  Press 'I' to enter interactive startup.&lt;br /&gt;Cannot access the Hardware Clock via any known method.&lt;br /&gt;Use the --debug option to see the details of our search for an access method.&lt;br /&gt;Setting clock  (utc): Thu Apr 30 20:54:26 EDT 2009 [  OK  ]&lt;br /&gt;Starting udev: [  OK  ]&lt;br /&gt;Setting hostname centos0:  [  OK  ]&lt;br /&gt;Setting up Logical Volume Management:   2 logical volume(s) in volume group "VolGroup00" now active&lt;br /&gt;[  OK  ]&lt;br /&gt;Checking filesystems&lt;br /&gt;Checking all file systems.&lt;br /&gt;[/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/VolGroup00/LogVol00 &lt;br /&gt;/dev/VolGroup00/LogVol00: clean, 55231/2319712 files, 448905/2318336 blocks&lt;br /&gt;[/sbin/fsck.ext3 (1) -- /boot] fsck.ext3 -a /dev/xvda1 &lt;br /&gt;/boot: clean, 36/26104 files, 16618/104388 blocks&lt;br /&gt;[  OK  ]&lt;br /&gt;Remounting root filesystem in read-write mode:  [  OK  ]&lt;br /&gt;Mounting local filesystems:  [  OK  ]&lt;br /&gt;Enabling local filesystem quotas:  [  OK  ]&lt;br /&gt;Enabling /etc/fstab swaps:  [  OK  ]&lt;br /&gt;INIT: Entering runlevel: 3&lt;br /&gt;Entering non-interactive startup&lt;br /&gt;Applying Intel CPU microcode update: [FAILED]&lt;br /&gt;Starting monitoring for VG VolGroup00:   2 logical volume(s) in volume group "VolGroup00" monitored&lt;br /&gt;[  OK  ]&lt;br /&gt;Starting background readahead: [  OK  ]&lt;br /&gt;Checking for hardware changes [  OK  ]&lt;br /&gt;Applying ip6tables firewall rules: [  OK  ]&lt;br /&gt;Applying iptables firewall rules: [  OK  ]&lt;br /&gt;Loading additional iptables modules: ip_conntrack_netbios_ns [  OK  ]&lt;br /&gt;Bringing up loopback interface:  [  OK  ]&lt;br /&gt;Bringing up interface eth0:  &lt;br /&gt;Determining IP information for eth0... done.&lt;br /&gt;[  OK  ]&lt;br /&gt;Starting auditd: [  OK  ]&lt;br /&gt;Starting restorecond: [  OK  ]&lt;br /&gt;Starting system logger: [  OK  ]&lt;br /&gt;Starting kernel logger: [  OK  ]&lt;br /&gt;Starting irqbalance: [  OK  ]&lt;br /&gt;Starting mcstransd: [  OK  ]&lt;br /&gt;Starting portmap: [  OK  ]&lt;br /&gt;Starting NFS statd: [  OK  ]&lt;br /&gt;Starting RPC idmapd: [  OK  ]&lt;br /&gt;Starting system message bus: [  OK  ]&lt;br /&gt;system-config-date - (C) 2003 Red Hat, Inc.                                     &lt;br /&gt;                                                                                &lt;br /&gt;authconfig-tui - (c) 1999-2005 Red Hat, Inc.                                    &lt;br /&gt;Starting smartd: [  OK  ]&lt;br /&gt;&lt;br /&gt;CentOS release 5.2 (Final)&lt;br /&gt;Kernel 2.6.18-92.el5xen on an x86_64&lt;br /&gt;&lt;br /&gt;centos0 login: &lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-6571826414692097633?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/6571826414692097633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=6571826414692097633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6571826414692097633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6571826414692097633'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/04/linux-centos-domu-guest-in-solaris.html' title='Linux (CentOS) DomU Guest in Solaris-hosted Xen'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-183238571918091632</id><published>2009-04-22T16:08:00.001-04:00</published><updated>2009-04-22T16:10:04.880-04:00</updated><title type='text'>Unibody Macbook and SPARC Enterprise T5140</title><content type='html'>Got our testing rig today - a T5140 from &lt;span class="Apple-style-span" style="text-decoration: line-through;"&gt;Sun's&lt;/span&gt; Oracle's(?) Try and Buy program.  Like any good server, this one comes sans video card.  My unibody Macbook doesn't have a serial port, but Sun ships an adapter that allows you to connect to the serial interface with an RJ45 cable - you only need your own serial device, in my case, a Keyspan USA-19HS.&lt;br /&gt;&lt;br /&gt;Install the driver, then connect to the server's RJ45 serial port with the Keyspan and Sun adapters, followed by firing up 'screen' in your terminal:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;screen /dev/tty.KeySerial1 9600&lt;/pre&gt;&lt;br /&gt;You can exit the serial console prompt with '#."&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; FF 55 AA T2 T3 T4&lt;br /&gt;POST memory PASSED&lt;br /&gt;FLASH: 32 MB&lt;br /&gt;In:    serial&lt;br /&gt;Out:   serial&lt;br /&gt;Err:   serial&lt;br /&gt;Net:   FEC ETHERNET&lt;br /&gt;POST i2c  c  d 18 20 23 2a 2b 2d 2e 30 40 42 43 44 45 46 51 53 54 56 68 6a 6b 70 71 72 73 PASSED&lt;br /&gt;POST cpu PASSED&lt;br /&gt;POST ethernet PASSED&lt;br /&gt;Booting linux in 5 seconds...&lt;br /&gt;## Booting image at fe080000 ...&lt;br /&gt;   Image Name:   Linux-2.4.22&lt;br /&gt;   Image Type:   PowerPC Linux Kernel Image (gzip compressed)&lt;br /&gt;   Data Size:    814981 Bytes = 795.9 kB&lt;br /&gt;   Load Address: 00000000&lt;br /&gt;   Entry Point:  00000000&lt;br /&gt;   Verifying Checksum ... OK&lt;br /&gt;   Uncompressing Kernel Image ... OK&lt;br /&gt;do_bootm_linux():&lt;br /&gt;  argv[0]=bootm&lt;br /&gt;  argv[1]=0xfe080000&lt;br /&gt;## Current stack ends at 0x07D38B70 =&gt; set upper limit to 0x00800000&lt;br /&gt;No initrd&lt;br /&gt;## cmdline at 0x007FFF00 ... 0x007FFF80&lt;br /&gt;memstart    = 0x00000000&lt;br /&gt;memsize     = 0x08000000&lt;br /&gt;flashstart  = 0xFE000000&lt;br /&gt;flashsize   = 0x02000000&lt;br /&gt;flashoffset = 0x0004C000&lt;br /&gt;sramstart   = 0x00000000&lt;br /&gt;sramsize    = 0x00000000&lt;br /&gt;EnvAddr     = 0x561DF79D&lt;br /&gt;EnvSize     = 0xADBE78CF&lt;br /&gt;sectorsize  = 0x00020000&lt;br /&gt;sectorcount = 0x00000100&lt;br /&gt;booted      = 0xFE080000&lt;br /&gt;boottype    = 0x00000000&lt;br /&gt;primary     = 0xFFFFFFFF&lt;br /&gt;pritype     = 0x00000000&lt;br /&gt;secondary   = 0xFFFFFFFF&lt;br /&gt;sectype     = 0x00000000&lt;br /&gt;image0      = 0xFE000000&lt;br /&gt;image1      = 0xFF000000&lt;br /&gt;maximage    = 0x01000000&lt;br /&gt;immr_base   = 0xF0000000&lt;br /&gt;bootflags   = 0x00000001&lt;br /&gt;intfreq     =    133 MHz&lt;br /&gt;busfreq     = 66.500 MHz&lt;br /&gt;ethaddr     = 00:21:28:34:E3:B3&lt;br /&gt;IP addr     = 0.0.0.0&lt;br /&gt;baudrate    =   9600 bps&lt;br /&gt;## Transferring control to Linux (at address 00000000) ...&lt;br /&gt;## parameters(007ffe90,00000000,00000000,007fff00,007fff80)&lt;br /&gt;Linux version 2.4.22 (cb75630@sanpen-rh5-1) (gcc version 3.3.4) #6 Thu Jan 22 19:01:04 PST 2009 r41472&lt;br /&gt;On node 0 totalpages: 32768&lt;br /&gt;zone(0): 32768 pages.&lt;br /&gt;zone(1): 0 pages.&lt;br /&gt;zone(2): 0 pages.&lt;br /&gt;Kernel command line: root=/dev/mtdblock4 rootfstype=squashfs ro mtdparts=phys:384K(u1),128k(e1),1536K(k1),14M(r1),384K(u2),128K(e2),1536K(k2),14M(r2)&lt;br /&gt;Decrementer Frequency = 498750000/60&lt;br /&gt;m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1)&lt;br /&gt;m8xx_wdt: keep-alive trigger installed (PITC: 0x1000)&lt;br /&gt;Calibrating delay loop... 132.71 BogoMIPS&lt;br /&gt;Memory: 127592k available (1416k kernel code, 444k data, 68k init, 0k highmem)&lt;br /&gt;Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)&lt;br /&gt;Inode cache hash table entries: 8192 (order: 4, 65536 bytes)&lt;br /&gt;Mount cache hash table entries: 512 (order: 0, 4096 bytes)&lt;br /&gt;Buffer cache hash table entries: 8192 (order: 3, 32768 bytes)&lt;br /&gt;Page-cache hash table entries: 32768 (order: 5, 131072 bytes)&lt;br /&gt;POSIX conformance testing by UNIFIX&lt;br /&gt;Linux NET4.0 for Linux 2.4&lt;br /&gt;Based upon Swansea University Computer Society NET3.039&lt;br /&gt;Initializing RT netlink socket&lt;br /&gt;Starting kswapd&lt;br /&gt;Journalled Block Device driver loaded&lt;br /&gt;JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.&lt;br /&gt;squashfs: version 3.0 (2006/03/15) Phillip Lougher&lt;br /&gt;CPM UART driver version 0.03&lt;br /&gt;ttyS00 at 0x0100 is apty: 256 Unix98 ptys configured&lt;br /&gt;Generic RTC Driver v1.07&lt;br /&gt;eth0: FEC ENET Version 0.2, FEC irq 3, MII irq 6, addr 00:21:28:34:e3:b3&lt;br /&gt;RAMDISK driver initialized: 16 RAM disks of 18432K size 1024 blocksize&lt;br /&gt;eth0: Phy @ 0x0, type DM9161 (0x0181b881)&lt;br /&gt;loop: loaded (max 8 devices)&lt;br /&gt;physmap flash device: 2000000 at fe000000&lt;br /&gt; Amd/Fujitsu Extended Query Table v1.3 at 0x0040&lt;br /&gt;number of CFI chips: 1&lt;br /&gt;Using command line partition definition&lt;br /&gt;Creating 8 MTD partitions on "Physically mapped flash":&lt;br /&gt;mtdblock1: 0x00000000-0x00060000 : "u1"&lt;br /&gt;mtdblock2: 0x00060000-0x00080000 : "e1"&lt;br /&gt;mtdblock3: 0x00080000-0x00200000 : "k1"&lt;br /&gt;mtdblock4: 0x00200000-0x01000000 : "r1"&lt;br /&gt;mtdblock5: 0x01000000-0x01060000 : "u2"&lt;br /&gt;mtdblock6: 0x01060000-0x01080000 : "e2"&lt;br /&gt;mtdblock7: 0x01080000-0x01200000 : "k2"&lt;br /&gt;mtdblock8: 0x01200000-0x02000000 : "r2"&lt;br /&gt;i2c-core.o: i2c core module version 2.6.1 (20010830)&lt;br /&gt;i2c-dev.o: i2c /dev entries driver module version 2.6.1 (20010830)&lt;br /&gt;i2c-rpx.o: i2c MPC8xx module version 2.6.1 (20010830)&lt;br /&gt;NET4: Linux TCP/IP 1.0 for NET4.0&lt;br /&gt;IP Protocols: ICMP, UDP, TCP, IGMP&lt;br /&gt;IP: routing cache hash table of 1024 buckets, 8Kbytes&lt;br /&gt;TCP: Hash tables configured (established 8192 bind 16384)&lt;br /&gt;ip_conntrack version 2.1 (1024 buckets, 8192 max) - 292 bytes per conntrack&lt;br /&gt;ip_tables: (C) 2000-2002 Netfilter core team&lt;br /&gt;ipt_recent v0.3.1: Stephen Frost &lt;sfrost@snowman.net&gt;.  http://snowman.net/projects/ipt_recent/&lt;br /&gt;arp_tables: (C) 2002 David S. Miller&lt;br /&gt;NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.&lt;br /&gt;802.1Q VLAN Support v1.8 Ben Greear &lt;greearb@candelatech.com&gt;&lt;br /&gt;All bugs added by David S. Miller &lt;davem@redhat.com&gt;&lt;br /&gt;VFS: Mounted root (squashfs filesystem) readonly.&lt;br /&gt;Freeing unused kernel memory: 68k init&lt;br /&gt;modprobe: modprobe: Can't open dependencies file /lib/modules/2.4.22/modules.dep (No such file or directory)&lt;br /&gt;Creating /var tmpfsCreating directories in /var ...done.&lt;br /&gt;Creating /var/log tmpfsdone.&lt;br /&gt;Activating swap.&lt;br /&gt;Calculating module dependencies... done.&lt;br /&gt;Loading modules: fpga Warning: loading /lib/modules/2.4.22/misc/fpga/fpga.o will taint the kernel: non-GPL license - Proprietary&lt;br /&gt;  See http://www.tux.org/lkml/#export-tainted for information about tainted modules&lt;br /&gt;Platform ID      : 2&lt;br /&gt;Minor revision   : 4&lt;br /&gt;Major revision   : 5&lt;br /&gt;FPGA power status : 0xd20008: 80 0xd20009: f4&lt;br /&gt;  (SYS_POK_EN  !DC_POK  !POK_VMEM_CPU1  !POK_VMEM_CPU0  !POK_CORE_CPU1  !POK_CORE_CPU0  !POK_PSU1  !POK_PSU0  POK_VMEMWING_CPU1  !VMEMWING_CPU1_PRESENT  POK_VMEMWING_CPU0  !VMEMWING_CPU0_PRESENT  !POK_OIO )&lt;br /&gt;BR2: 0xf2000000/0x1000000/0xf2000401/0xff0001fc&lt;br /&gt;FPGA init OK: base f2000000, size 1000000 (major 120)&lt;br /&gt;Module fpga loaded, with warnings&lt;br /&gt;fpga_flash Warning: loading /lib/modules/2.4.22/misc/fpga_flash/fpga_flash.o will taint the kernel: no license&lt;br /&gt;  See http://www.tux.org/lkml/#export-tainted for information about tainted modules&lt;br /&gt;Module fpga_flash loaded, with warnings&lt;br /&gt;immap Warning: loading /lib/modules/2.4.22/misc/immap/immap.o will taint the kernel: no license&lt;br /&gt;  See http://www.tux.org/lkml/#export-tainted for information about tainted modules&lt;br /&gt;Module immap loaded, with warnings&lt;br /&gt;&lt;br /&gt;Checking all file systems...&lt;br /&gt;fsck 1.37 (21-Mar-2005)&lt;br /&gt;Setting kernel variables ...&lt;br /&gt;kernel.core_pattern = /coredump/%h.%e.core&lt;br /&gt;kernel.core_uses_pid = 1&lt;br /&gt;net.ipv4.ip_local_port_range = 3100 7075&lt;br /&gt;... done.&lt;br /&gt;Mounting local filesystems...&lt;br /&gt;Cleaning /tmp /var/run /var/lock.&lt;br /&gt;Identifying DOC Device Type(G3/G4/H3) ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Using /lib/modules/2.4.22/misc/tffs/tffs_h3.o&lt;br /&gt;tffs: TrueFFS driver 7100.76&lt;br /&gt;tffs: will not use IRQ&lt;br /&gt;tffs: Looking for G4/P4 MDOC Devices while assuming IF_CFG=16.&lt;br /&gt;tffs: Looking for G4/P4 MDOC Devices while assuming IF_CFG=8.&lt;br /&gt;tffs: Flow: G4_docWindowBaseAddress Exit (NOT FOUND).&lt;br /&gt;tffs: Looking for G3/P3 MDOC Devices while assuming IF_CFG=16.&lt;br /&gt;tffs: Looking for G3/P3 MDOC Devices while assuming IF_CFG=8.&lt;br /&gt;tffs: Looking for H1 DOC at address 0xcd159000 &lt;br /&gt;tffs: DOCH found&lt;br /&gt;tffs: Socket 0 in addr 0xf4000000&lt;br /&gt;tffs: Device 0x0: size 0xed80000 HW sector 0x200 (recommended 0x1000)&lt;br /&gt;tffs: use major device number 100&lt;br /&gt;Partition check:&lt;br /&gt; tffsa: tffsa1 tffsa2 tffsa3&lt;br /&gt;tffs:     disk partition: dev_number=0x6401, 65534 sectors, start_sector=1&lt;br /&gt;tffs:     disk partition: dev_number=0x6402, 65536 sectors, start_sector=65535&lt;br /&gt;tffs:     disk partition: dev_number=0x6403, 112000 sectors, start_sector=131071&lt;br /&gt;Loaded TFFS kernel module /lib/modules/2.4.22/misc/tffs/tffs_h3.o&lt;br /&gt;kjournald starting.  Commit interval 5 seconds&lt;br /&gt;EXT3 FS 2.4-0.9.19, 19 August 2002 on tffs(100,1), internal journal&lt;br /&gt;EXT3-fs: recovery complete.&lt;br /&gt;EXT3-fs: mounted filesystem with ordered data mode.&lt;br /&gt;kjournald starting.  Commit interval 5 seconds&lt;br /&gt;EXT3 FS 2.4-0.9.19, 19 August 2002 on loop(7,0), internal journal&lt;br /&gt;EXT3-fs: recovery complete.&lt;br /&gt;EXT3-fs: mounted filesystem with ordered data mode.&lt;br /&gt;kjournald starting.  Commit interval 5 seconds&lt;br /&gt;EXT3 FS 2.4-0.9.19, 19 August 2002 on loop(7,1), internal journal&lt;br /&gt;EXT3-fs: recovery complete.&lt;br /&gt;EXT3-fs: mounted filesystem with ordered data mode.&lt;br /&gt;kjournald starting.  Commit interval 5 seconds&lt;br /&gt;EXT3 FS 2.4-0.9.19, 19 August 2002 on loop(7,2), internal journal&lt;br /&gt;EXT3-fs: mounted filesystem with ordered data mode.&lt;br /&gt;kjournald starting.  Commit interval 5 seconds&lt;br /&gt;EXT3 FS 2.4-0.9.19, 19 August 2002 on tffs(100,3), internal journal&lt;br /&gt;EXT3-fs: recovery complete.&lt;br /&gt;EXT3-fs: mounted filesystem with ordered data mode.&lt;br /&gt;Checking DOC size...&lt;br /&gt;Mounted all disk partitions.&lt;br /&gt;&lt;br /&gt;Setting the System Clock using the Hardware Clock as reference...&lt;br /&gt;System Clock set. Local time: Wed Apr 22 19:19:26 GMT 2009&lt;br /&gt;&lt;br /&gt;Setting up networking...done.&lt;br /&gt;Running ldconfig...done&lt;br /&gt;Setting up IP spoofing protection: rp_filter.&lt;br /&gt;Configuring network interfaces...Internet Systems Consortium DHCP Client V3.0.1&lt;br /&gt;Copyright 2004 Internet Systems Consortium.&lt;br /&gt;All rights reserved.&lt;br /&gt;For info, please visit http://www.isc.org/products/DHCP&lt;br /&gt;&lt;br /&gt;eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.&lt;br /&gt;Listening on LPF/eth0/00:21:28:34:e3:b3&lt;br /&gt;Sending on   LPF/eth0/00:21:28:34:e3:b3&lt;br /&gt;Sending on   Socket/fallback&lt;br /&gt;DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5&lt;br /&gt;eth0: status: link up.&lt;br /&gt;eth0: status: link up, 100 Mbps Full Duplex, auto-negotiation complete.&lt;br /&gt;DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 9&lt;br /&gt;DHCPOFFER from 192.168.0.1&lt;br /&gt;DHCPREQUEST on eth0 to 255.255.255.255 port 67&lt;br /&gt;DHCPACK from 192.168.0.1&lt;br /&gt;bound to 192.168.0.111 -- renewal in 1618 seconds.&lt;br /&gt;done.&lt;br /&gt;Hostname: SUNSP00212834E3B3.&lt;br /&gt;Starting portmap daemon: portmap.&lt;br /&gt;Initializing random number generator...done.&lt;br /&gt;INIT: Entering runlevel: 3&lt;br /&gt;Starting system log daemon: syslogd and klogd.&lt;br /&gt;Starting periodic command scheduler: cron.&lt;br /&gt;Starting IPMI Stack...... Done.&lt;br /&gt;Starting portmap daemon: portmap.&lt;br /&gt;Starting OpenBSD Secure Shell server: sshd.&lt;br /&gt;Starting Servicetags discoverer: stdiscoverer.&lt;br /&gt;Starting Servicetags listener: stlistener.&lt;br /&gt;&lt;br /&gt;SUNSP00212834E3B3 login: root&lt;br /&gt;Password: &lt;br /&gt;Waiting for daemons to initialize...&lt;br /&gt;&lt;br /&gt;Daemons ready&lt;br /&gt;&lt;br /&gt;Sun(TM) Integrated Lights Out Manager&lt;br /&gt;&lt;br /&gt;Version 2.0.4.27.f&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright 2008 Sun Microsystems, Inc. All rights reserved.&lt;br /&gt;Use is subject to license terms.&lt;br /&gt;Third-party software, including font technology, is copyrighted and licensed&lt;br /&gt;from Sun suppliers.&lt;br /&gt;Portions may be derived from Berkeley BSD systems, licensed from U. of CA.&lt;br /&gt;Sun, Sun Microsystems, and the Sun Logo are trademarks or registered trademarks&lt;br /&gt;of Sun Microsystems, Inc. in the U.S. and other countries.&lt;br /&gt;&lt;br /&gt;Federal Acquisitions: Commercial Software -- Government Users Subject to&lt;br /&gt;Standard License Terms and Conditions.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright 2008 Sun Microsystems, Inc. Tous droits réservés.&lt;br /&gt;Distribué par des licences qui en restreignent l'utilisation.&lt;br /&gt;Le logiciel détenu par des tiers, et qui comprend la technologie relative&lt;br /&gt;aux polices de caractères, est protégé par un copyright et licencié par&lt;br /&gt;des fournisseurs de Sun.&lt;br /&gt;Des parties de ce produit pourront être dérivées des systèmes Berkeley BSD&lt;br /&gt;licenciés par l'Université de Californie.&lt;br /&gt;Sun, Sun Microsystems, et le logo Sun sont des marques de fabrique ou des&lt;br /&gt;marques déposées de Sun Microsystems, Inc. aux Etats-Unis et dans d'autres pays.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-&gt; start /SYS&lt;br /&gt;Are you sure you want to start /SYS (y/n)? y&lt;br /&gt;Starting /SYS&lt;br /&gt;&lt;br /&gt;-&gt; start /SP/console&lt;br /&gt;Are you sure you want to start /SP/console (y/n)? y&lt;br /&gt;&lt;br /&gt;Serial console started.  To stop, type #.                                      Done&lt;br /&gt;0:0:0&gt;Master CPU Tests Basic....Done&lt;br /&gt;0:0:0&gt;Init MMU.....&lt;br /&gt;0:0:0&gt;L2 Tests....Done&lt;br /&gt;0:0:0&gt;Extended CPU Tests....Done&lt;br /&gt;0:0:0&gt;Scrub Memory....Done&lt;br /&gt;0:0:0&gt;Functional CPU Tests....Done&lt;br /&gt;0:0:0&gt;Extended Memory Tests....Done&lt;br /&gt;0:0:0&gt;SPU CWQ Tests...Done&lt;br /&gt;0:0:0&gt;MAU Tests...Done&lt;br /&gt;0:0:0&gt;NCU Setup and PIU link train....Done&lt;br /&gt;0:0:0&gt;NEPTUNE Network Interface Unit Tests....Done&lt;br /&gt;2009-04-22 19:43:11.575 0:0:0&gt;INFO:&lt;br /&gt;2009-04-22 19:43:11.579 0:0:0&gt;  POST Passed all devices.&lt;br /&gt;2009-04-22 19:43:11.591 0:0:0&gt;POST:     Return to VBSC.&lt;br /&gt;2009-04-22 19:43:11.597 0:0:0&gt;Master set ACK for vbsc runpost command and spin...&lt;br /&gt;|&lt;br /&gt;&lt;br /&gt;T5140, No Keyboard&lt;br /&gt;Copyright 2008 Sun Microsystems, Inc.  All rights reserved.&lt;br /&gt;OpenBoot 4.29.1, 7968 MB memory available, Serial #87352234.&lt;br /&gt;Ethernet address 0:21:28:34:e3:aa, Host ID: 8534e3aa.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Boot device: disk  File and args: &lt;br /&gt;SunOS Release 5.10 Version Generic_138888-03 64-bit&lt;br /&gt;Copyright 1983-2008 Sun Microsystems, Inc.  All rights reserved.&lt;br /&gt;Use is subject to license terms.&lt;br /&gt;Hostname: unknown&lt;br /&gt;Configuring devices.&lt;br /&gt;Loading smf(5) service descriptions: 1/1&lt;br /&gt;Reading ZFS config: done.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Select a Language&lt;br /&gt;&lt;br /&gt;   0. English&lt;br /&gt;   1. French&lt;br /&gt;   2. German&lt;br /&gt;   3. Italian&lt;br /&gt;   4. Japanese&lt;br /&gt;   5. Korean&lt;br /&gt;   6. Simplified Chinese&lt;br /&gt;   7. Spanish&lt;br /&gt;   8. Swedish&lt;br /&gt;   9. Traditional Chinese&lt;br /&gt;&lt;br /&gt;Please make a choice (0 - 9), or press h or ? for help: 0&lt;br /&gt;&lt;br /&gt;Select a Locale&lt;br /&gt;&lt;br /&gt;   0. English (C - 7-bit ASCII)&lt;br /&gt;   1. Albania (ISO8859-2)&lt;br /&gt;   2. Albania (UTF-8)&lt;br /&gt;   3. Australia (ISO8859-1)&lt;br /&gt;   4. Belgium-Flemish (ISO8859-1)&lt;br /&gt;   5. Belgium-Flemish (ISO8859-15 - Euro)&lt;br /&gt;   6. Belgium-Flemish (UTF-8)&lt;br /&gt;   7. Bokmal, Norway (UTF-8)&lt;br /&gt;   8. Bosnia (ISO8859-2)&lt;br /&gt;   9. Bosnia and Herzegovina (UTF-8)&lt;br /&gt;  10. Brazil (ISO8859-1)&lt;br /&gt;  11. Brazil (UTF-8)&lt;br /&gt;  12. Bulgaria (ISO8859-5)&lt;br /&gt;  13. Bulgaria (UTF-8)&lt;br /&gt;  14. Canada (English) (UTF-8)&lt;br /&gt;  15. Canada-English (ISO8859-1)&lt;br /&gt;  16. Catalan, Spain (ISO8859-1)&lt;br /&gt;  17. Catalan, Spain (ISO8859-15 - Euro)&lt;br /&gt;  18. Croatia (ISO8859-2)&lt;br /&gt;&lt;br /&gt;Press Return to show more choices.&lt;br /&gt;Please make a choice (0 - 91), or press h or ? for help: 0&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-183238571918091632?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/183238571918091632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=183238571918091632' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/183238571918091632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/183238571918091632'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/04/unibody-macbook-and-sparc-enterprise.html' title='Unibody Macbook and SPARC Enterprise T5140'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8628897153432024356</id><published>2009-04-06T17:28:00.001-04:00</published><updated>2009-04-06T17:28:26.546-04:00</updated><title type='text'></title><content type='html'>You can now text to your Blogger page :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8628897153432024356?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8628897153432024356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8628897153432024356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8628897153432024356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8628897153432024356'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/04/you-can-now-text-to-your-blogger-page-d.html' title=''/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1475698572252379950</id><published>2009-04-06T17:24:00.004-04:00</published><updated>2009-04-06T17:25:17.801-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='leopard'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Applescript to Save Video Files as Quicktime-encapsulated Movies</title><content type='html'>&lt;pre&gt;&lt;br /&gt;on open theFileList&lt;br /&gt; repeat with theFile in theFileList&lt;br /&gt;  with timeout of 7200 seconds&lt;br /&gt;   tell application "QuickTime Player"&lt;br /&gt;    open theFile&lt;br /&gt;    save self contained document 1 in (theFile as string) &amp; ".mov"&lt;br /&gt;    close document 1&lt;br /&gt;   end tell&lt;br /&gt;  end timeout&lt;br /&gt; end repeat&lt;br /&gt;end open&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1475698572252379950?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1475698572252379950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1475698572252379950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1475698572252379950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1475698572252379950'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/04/applescript-to-save-video-files-as.html' title='Applescript to Save Video Files as Quicktime-encapsulated Movies'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1771100670585603097</id><published>2009-03-12T11:24:00.003-04:00</published><updated>2009-04-10T14:35:58.082-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>SSH Keygen - Adding an Authorized Key to a Remote Host</title><content type='html'>&lt;pre&gt;cat .ssh/id_dsa.pub | ssh user@host 'cat &gt;&gt; .ssh/authorized_keys'&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1771100670585603097?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1771100670585603097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1771100670585603097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1771100670585603097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1771100670585603097'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/03/ssh-keygen-adding-authorized-key-to.html' title='SSH Keygen - Adding an Authorized Key to a Remote Host'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2534863618745783678</id><published>2009-03-06T17:35:00.001-05:00</published><updated>2009-03-06T17:42:41.200-05:00</updated><title type='text'>Mailing cronjob Output</title><content type='html'>I use something like this in my crontab:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;35 17 * * * (/path/to/command) 2&gt;&amp;1 | mailx -s 'echo test' -r `hostname` user@domain.com&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2534863618745783678?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2534863618745783678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2534863618745783678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2534863618745783678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2534863618745783678'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/03/mailing-cronjob-output.html' title='Mailing cronjob Output'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-834424931559609543</id><published>2009-03-02T16:11:00.002-05:00</published><updated>2009-03-02T16:19:52.501-05:00</updated><title type='text'>Fixing the Automatic Snapshot Service in OpenSolaris</title><content type='html'>Automatic snapshots in OpenSolaris are awesome.  They're what makes &lt;a href="http://channelsun.sun.com/video/open-source/open+solaris/1632695464/opensolaris+demo:+time+slider+in+opensolaris+2008.11/2972356001"&gt;Time Slider&lt;/a&gt; possible.&lt;br /&gt;&lt;br /&gt;However, as of OpenSolaris 2008.11, they break when you add a new boot environment with 'beadm' or the package manager.&lt;br /&gt;&lt;br /&gt;The workaround for this bug (the bug is filed, but not fixed yet) is to mount and unmount the new boot environment.  So, as root, do:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;beadm mount [bename] /mnt&lt;br /&gt;&lt;br /&gt;beadm unmount [bename]&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Repeat this process until you've covered all not-active boot environments.&lt;br /&gt;&lt;br /&gt;Then do:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;svcadm clear auto-snapshot:frequent&lt;br /&gt;svcadm clear auto-snapshot:daily&lt;br /&gt;svcadm clear auto-snapshot:hourly&lt;br /&gt;svcadm clear auto-snapshot:weekly&lt;br /&gt;svcadm clear auto-snapshot:monthly&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;If Time Slider was disabled because of the snapshot services being offline, it will automatically online itself (&lt;a href="http://www.sun.com/bigadmin/content/selfheal/smf-quickstart.jsp"&gt;SMF&lt;/a&gt; is also awesome.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-834424931559609543?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/834424931559609543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=834424931559609543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/834424931559609543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/834424931559609543'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/03/fixing-automatic-snapshot-service-in.html' title='Fixing the Automatic Snapshot Service in OpenSolaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8058673076829614860</id><published>2009-02-26T16:34:00.002-05:00</published><updated>2009-02-26T16:40:28.799-05:00</updated><title type='text'>Making an OpenSolaris Client a DHCP Client with Multiple Interfaces</title><content type='html'>You can use nwam if you only have one interface, but if you have more...or an aggregate interface:&lt;br /&gt;&lt;br /&gt;add 'dns' after 'files' in /etc/nsswitch.conf, in the section for host resolution&lt;br /&gt;&lt;br /&gt;make sure you set up '/etc/resolv.conf'&lt;br /&gt;&lt;br /&gt;add&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;/etc/hostname.[interface0]&lt;br /&gt;/etc/hostname.[aggregate0]&lt;br /&gt;/etc/dhcp.[interface0]&lt;br /&gt;/etc/dhcp.[aggregate0]&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;then, do&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;svcadm disable network/physical:nwam; svcadm enable network/physical:default&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;make sure you do both commands at once, since this will temporarily break a remote connection&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8058673076829614860?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8058673076829614860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8058673076829614860' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8058673076829614860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8058673076829614860'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/02/making-opensolaris-client-dhcp-client.html' title='Making an OpenSolaris Client a DHCP Client with Multiple Interfaces'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1166388736135306306</id><published>2009-02-26T15:10:00.002-05:00</published><updated>2009-02-26T15:15:35.803-05:00</updated><title type='text'>Scheduling a One-time Job with 'at'</title><content type='html'>This is a bit of old-school Unix.  We tell the 'at' command to execute a job at 8pm in this case - 20:00 hours:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;root@host:~# at 2000&lt;br /&gt;at&gt; [command] [arguments]&lt;br /&gt;at&gt; &lt;EOT&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;(Above, we press 'return' after entering our command string, then ctrl-D to exit)&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;root@host:/var/spool/cron/atjobs# less 1235696400.a &lt;br /&gt;: at job&lt;br /&gt;: jobname: stdin&lt;br /&gt;: notify by mail: no&lt;br /&gt;: project: 1&lt;br /&gt;export MANPATH; MANPATH='/usr/gnu/share/man:/usr/share/man:/usr/X11/share/man'&lt;br /&gt;export HZ; HZ=''&lt;br /&gt;export SHELL; SHELL='/usr/bin/bash'&lt;br /&gt;export TERM; TERM='vt100'&lt;br /&gt;export PAGER; PAGER='/usr/bin/less -ins'&lt;br /&gt;export MAIL; MAIL='/var/mail/root'&lt;br /&gt;export PATH; PATH='/usr/gnu/bin:/usr/bin:/usr/X11/bin:/usr/sbin:/sbin'&lt;br /&gt;export PWD; PWD='/root'&lt;br /&gt;export LANG; LANG='en_US.UTF-8'&lt;br /&gt;export TZ; TZ='US/Eastern'&lt;br /&gt;export SHLVL; SHLVL='1'&lt;br /&gt;export HOME; HOME='/root'&lt;br /&gt;export LOGNAME; LOGNAME='root'&lt;br /&gt;export _; _='/usr/bin/at'&lt;br /&gt;$SHELL &lt;&lt; '...the rest of this file is shell input'&lt;br /&gt;#&lt;br /&gt;# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.&lt;br /&gt;# Use is subject to license terms.&lt;br /&gt;#&lt;br /&gt;# CDDL HEADER START&lt;br /&gt;#&lt;br /&gt;# The contents of this file are subject to the terms of the&lt;br /&gt;# Common Development and Distribution License, Version 1.0 only&lt;br /&gt;# (the "License").  You may not use this file except in compliance&lt;br /&gt;# with the License.&lt;br /&gt;#&lt;br /&gt;# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE&lt;br /&gt;# or http://www.opensolaris.org/os/licensing.&lt;br /&gt;# See the License for the specific language governing permissions&lt;br /&gt;# and limitations under the License.&lt;br /&gt;#&lt;br /&gt;# When distributing Covered Code, include this CDDL HEADER in each&lt;br /&gt;# file and include the License file at usr/src/OPENSOLARIS.LICENSE.&lt;br /&gt;# If applicable, add the following below this CDDL HEADER, with the&lt;br /&gt;# fields enclosed by brackets "[]" replaced with your own identifying&lt;br /&gt;# information: Portions Copyright [yyyy] [name of copyright owner]&lt;br /&gt;#&lt;br /&gt;# CDDL HEADER END&lt;br /&gt;#&lt;br /&gt;#ident  "%Z%%M% %I%     %E% SMI"        /* SVr4.0 1.2   */&lt;br /&gt;cd /root&lt;br /&gt;umask 22&lt;br /&gt;[command] [arguments]&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1166388736135306306?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1166388736135306306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1166388736135306306' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1166388736135306306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1166388736135306306'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/02/scheduling-one-time-job-with-at.html' title='Scheduling a One-time Job with &apos;at&apos;'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-9193725735833789143</id><published>2009-01-21T14:37:00.002-05:00</published><updated>2009-01-21T14:41:09.977-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ntp'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='opensolaris'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Setting up Network Time Sync on OpenSolaris</title><content type='html'>echo "server pool.ntp.org" &gt; /etc/inet/ntp.conf&lt;br /&gt;&lt;br /&gt;svcadm enable ntp&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-9193725735833789143?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/9193725735833789143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=9193725735833789143' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/9193725735833789143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/9193725735833789143'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/01/setting-up-network-time-sync-on.html' title='Setting up Network Time Sync on OpenSolaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-6125390656327183638</id><published>2009-01-09T12:14:00.003-05:00</published><updated>2009-01-09T12:28:08.019-05:00</updated><title type='text'>Adding Memtest86+ to the OpenSolaris GRUB Menu</title><content type='html'>Here's what I did (thanks to &lt;a href="http://solarisdesktop.blogspot.com/2007/10/fun-with-grub-memtest.html"&gt;francois&lt;/a&gt; for this):&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[root@host downloads]# wget http://www.memtest.org/download/2.11/memtest86+-2.11.bin.gz&lt;br /&gt;--12:20:12--  http://www.memtest.org/download/2.11/memtest86+-2.11.bin.gz&lt;br /&gt;           =&gt; `memtest86+-2.11.bin.gz'&lt;br /&gt;Resolving www.memtest.org... 217.70.182.162&lt;br /&gt;Connecting to www.memtest.org|217.70.182.162|:80... connected.&lt;br /&gt;HTTP request sent, awaiting response... 200 OK&lt;br /&gt;Length: 48,655 (48K) [application/x-gzip]&lt;br /&gt;&lt;br /&gt;100%[=============================================&gt;] 48,655        96.69K/s             &lt;br /&gt;&lt;br /&gt;12:20:13 (96.58 KB/s) - `memtest86+-2.11.bin.gz' saved [48655/48655]&lt;br /&gt;&lt;br /&gt;[root@host downloads]# gunzip memtest86+-2.11.bin.gz&lt;br /&gt;&lt;br /&gt;[root@host downloads]# ls&lt;br /&gt;memtest86+-2.11.bin&lt;br /&gt;&lt;br /&gt;[root@host downloads]# cp memtest86+-2.11.bin /platform/i86pc/kernel/memtest&lt;br /&gt;&lt;br /&gt;[root@host downloads]# vi /rpool/boot/grub/menu.lst&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;At the end of the file I added:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;title Solaris 10 memtest86+&lt;br /&gt;kernel /platform/i86pc/kernel/memtest&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This ought to work, with appropriate modifications, for any GRUB-booted system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-6125390656327183638?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/6125390656327183638/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=6125390656327183638' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6125390656327183638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/6125390656327183638'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/01/adding-memtest86-to-opensolaris-grub.html' title='Adding Memtest86+ to the OpenSolaris GRUB Menu'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-3896595489253640796</id><published>2009-01-07T15:16:00.004-05:00</published><updated>2009-01-09T12:30:06.070-05:00</updated><title type='text'>Upgrading Solaris 10 to ZFS Boot</title><content type='html'>(A great short version of this process is here: &lt;a href="http://gdamore.blogspot.com/2007/12/live-upgrade-rocks.html"&gt;http://gdamore.blogspot.com/2007/12/live-upgrade-rocks.html&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;I started by moving the contents of /export/home to /home (the mountpoint for the 'users' zpool)&lt;br /&gt;&lt;br /&gt;Then I used the partition/slice that was for export/home as my alternate boot slice.&lt;br /&gt;&lt;br /&gt;I changed /etc/vfstab so that the slice that was for export/home had the same config as '/' and changed the mountpoint to 'alternate'&lt;br /&gt;&lt;br /&gt;It turned out that that was a mistake - LiveUpgrade just wants a raw partition - easily fixed by commenting out '/alternate' and doing a umount.&lt;br /&gt;&lt;br /&gt;Key commands are in bold&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Transcript:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[root@filer1 ~]# umount /export/home&lt;br /&gt;&lt;br /&gt;umount: /export/home busy&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# shutdown.real -i6 -g0 -y&lt;br /&gt;&lt;br /&gt;Shutdown started.    Sat Nov 15 01:58:00 EST 2008&lt;br /&gt;&lt;br /&gt;Changing to init state 6 - please wait&lt;br /&gt;Broadcast Message from root (pts/4) on filer1 Sat Nov 15 01:58:00...&lt;br /&gt;THE SYSTEM filer1 IS BEING SHUT DOWN NOW ! ! !&lt;br /&gt;Log off now or risk your files being damaged&lt;br /&gt;&lt;br /&gt;updating /platform/i86pc/boot_archive&lt;br /&gt;propagating updated GRUB menu&lt;br /&gt;File &lt;/boot/grub/menu.lst&gt; propagation successful&lt;br /&gt;&lt;br /&gt;-bash-3.00$ df -F ufs&lt;br /&gt;/                  (/dev/dsk/c4t0d0s0 ):174915944 blocks 11949784 files&lt;br /&gt;/alternate         (/dev/dsk/c4t0d0s7 ):262557554 blocks 15806333 files&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# vi /etc/vfstab&lt;br /&gt;&lt;br /&gt;"/etc/vfstab" 14 lines, 536 characters &lt;br /&gt;#device         device          mount           FS      fsck    mount   mount&lt;br /&gt;#to mount       to fsck         point           type    pass    at boot options&lt;br /&gt;#&lt;br /&gt;fd      -       /dev/fd fd      -       no      -&lt;br /&gt;/proc   -       /proc   proc    -       no      -&lt;br /&gt;/dev/dsk/c4t0d0s1       -       -       swap    -       no      -&lt;br /&gt;/dev/dsk/c4t0d0s0       /dev/rdsk/c4t0d0s0      /       ufs     1       no      -&lt;br /&gt;#/dev/dsk/c4t0d0s7      /dev/rdsk/c4t0d0s7      /alternate      ufs     2       yes     -&lt;br /&gt;/devices        -       /devices        devfs   -       no      -&lt;br /&gt;ctfs    -       /system/contract        ctfs    -       no      -&lt;br /&gt;objfs   -       /system/object  objfs   -       no      -&lt;br /&gt;swap    -       /tmp    tmpfs   -       yes     -&lt;br /&gt;192.168.0.112:/data/nfshomes    -       /pit/nfshomes   nfs     -       yes     rw,soft,vers=3&lt;br /&gt;sharefs         -       /etc/dfs/sharetab       sharefs -       no      -&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# umount /alternate&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;(below, '-n' is the Boot Environment (BE) name flag, '-m' is the flag for setting the mountpoint of the target slice)&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[root@filer1 ~]# lucreate -n Solaris10Update6 -m /:/dev/dsk/c4t0d0s7:ufs&lt;br /&gt;&lt;br /&gt;Discovering physical storage devices&lt;br /&gt;Discovering logical storage devices&lt;br /&gt;Cross referencing storage devices with boot environment configurations&lt;br /&gt;Determining types of file systems supported&lt;br /&gt;Validating file system requests&lt;br /&gt;Preparing logical storage devices&lt;br /&gt;Preparing physical storage devices&lt;br /&gt;Configuring physical storage devices&lt;br /&gt;Configuring logical storage devices&lt;br /&gt;Checking GRUB menu...&lt;br /&gt;System has findroot enabled GRUB&lt;br /&gt;Analyzing system configuration.&lt;br /&gt;Comparing source boot environment &lt;c4t0d0s0&gt; file systems with the file &lt;br /&gt;system(s) you specified for the new boot environment. Determining which &lt;br /&gt;file systems should be in the new boot environment.&lt;br /&gt;Updating boot environment description database on all BEs.&lt;br /&gt;Searching /dev for possible boot environment filesystem devices&lt;br /&gt;                             &lt;br /&gt;Updating system configuration files.&lt;br /&gt;The device &lt;/dev/dsk/c4t0d0s7&gt; is not a root device for any boot environment; cannot get BE ID.&lt;br /&gt;Creating configuration for boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Source boot environment is &lt;c4t0d0s0&gt;.&lt;br /&gt;Creating boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Creating file systems on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Creating &lt;ufs&gt; file system for &lt;/&gt; in zone &lt;global&gt; on &lt;/dev/dsk/c4t0d0s7&gt;.&lt;br /&gt;Mounting file systems for boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Calculating required sizes of file systems              for boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Populating file systems on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Checking selection integrity.&lt;br /&gt;Integrity check OK.&lt;br /&gt;Populating contents of mount point &lt;/&gt;.&lt;br /&gt;Copying.&lt;br /&gt;Creating shared file system mount points.&lt;br /&gt;Copying root of zone &lt;dsee&gt;.&lt;br /&gt;zoneadm: zone 'dsee': illegal UUID value specified&lt;br /&gt;WARNING: The file &lt;/tmp/lucopy.errors.5082&gt; contains a list of &lt;1&gt; &lt;br /&gt;potential problems (issues) that were encountered while populating boot &lt;br /&gt;environment &lt;Solaris10Update6&gt;.&lt;br /&gt;INFORMATION: You must review the issues listed in &lt;br /&gt;&lt;/tmp/lucopy.errors.5082&gt; and determine if any must be resolved. In &lt;br /&gt;general, you can ignore warnings about files that were skipped because &lt;br /&gt;they did not exist or could not be opened. You cannot ignore errors such &lt;br /&gt;as directories or files that could not be created, or file systems running &lt;br /&gt;out of disk space. You must manually resolve any such problems before you &lt;br /&gt;activate boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Creating compare databases for boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Creating compare database for file system &lt;/&gt;.&lt;br /&gt;Updating compare databases on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Making boot environment &lt;Solaris10Update6&gt; bootable.&lt;br /&gt;Updating bootenv.rc on ABE &lt;Solaris10Update6&gt;.&lt;br /&gt;File &lt;/boot/grub/menu.lst&gt; propagation successful&lt;br /&gt;Copied GRUB menu from PBE to ABE&lt;br /&gt;No entry for BE &lt;Solaris10Update6&gt; in GRUB menu&lt;br /&gt;Population of boot environment &lt;Solaris10Update6&gt; successful.&lt;br /&gt;Creation of boot environment &lt;Solaris10Update6&gt; successful.&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# lustatus&lt;br /&gt;&lt;br /&gt;Boot Environment           Is       Active Active    Can    Copy      &lt;br /&gt;Name                       Complete Now    On Reboot Delete Status    &lt;br /&gt;-------------------------- -------- ------ --------- ------ ----------&lt;br /&gt;c4t0d0s0                   yes      yes    yes       no     -         &lt;br /&gt;Solaris10Update6           yes      no     no        yes    -&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# lofiadm -a /data/it/software/sun/solaris_10/sol-10-u6-ga1-x86-dvd.iso  /dev/lofi/1&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# mkdir /isoimage&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# mount -F hsfs /dev/lofi/1 /isoimage&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# luupgrade -u -n Solaris10Update6 -s /isoimage &lt;br /&gt;&lt;br /&gt;System has findroot enabled GRUB&lt;br /&gt;No entry for BE &lt;Solaris10Update6&gt; in GRUB menu&lt;br /&gt;Copying failsafe kernel from media.&lt;br /&gt;Uncompressing miniroot&lt;br /&gt;Creating miniroot device&lt;br /&gt;miniroot filesystem is &lt;ufs&gt;&lt;br /&gt;Mounting miniroot at &lt;/isoimage/Solaris_10/Tools/Boot&gt;&lt;br /&gt;Validating the contents of the media &lt;/isoimage&gt;.&lt;br /&gt;The media is a standard Solaris media.&lt;br /&gt;The media contains an operating system upgrade image.&lt;br /&gt;The media contains &lt;Solaris&gt; version &lt;10&gt;.&lt;br /&gt;Constructing upgrade profile to use.&lt;br /&gt;Locating the operating system upgrade program.&lt;br /&gt;Checking for existence of previously scheduled Live Upgrade requests.&lt;br /&gt;Creating upgrade profile for BE &lt;Solaris10Update6&gt;.&lt;br /&gt;Checking for GRUB menu on ABE &lt;Solaris10Update6&gt;.&lt;br /&gt;Saving GRUB menu on ABE &lt;Solaris10Update6&gt;.&lt;br /&gt;Checking for x86 boot partition on ABE.&lt;br /&gt;Determining packages to install or upgrade for BE &lt;Solaris10Update6&gt;.&lt;br /&gt;Performing the operating system upgrade of the BE &lt;Solaris10Update6&gt;.&lt;br /&gt;CAUTION: Interrupting this process may leave the boot environment unstable &lt;br /&gt;or unbootable.&lt;br /&gt;Upgrading Solaris: 100% completed&lt;br /&gt;Installation of the packages from this media is complete.&lt;br /&gt;Restoring GRUB menu on ABE &lt;Solaris10Update6&gt;.&lt;br /&gt;Updating package information on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Package information successfully updated on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;Adding operating system patches to the BE &lt;Solaris10Update6&gt;.&lt;br /&gt;The operating system patch installation is complete.&lt;br /&gt;ABE boot partition backing deleted.&lt;br /&gt;PBE GRUB has no capability information.&lt;br /&gt;PBE GRUB has no versioning information.&lt;br /&gt;ABE GRUB is newer than PBE GRUB. Updating GRUB.&lt;br /&gt;GRUB update was successfull.&lt;br /&gt;Configuring failsafe for system.&lt;br /&gt;Failsafe configuration is complete.&lt;br /&gt;INFORMATION: The file &lt;/var/sadm/system/logs/upgrade_log&gt; on boot &lt;br /&gt;environment &lt;Solaris10Update6&gt; contains a log of the upgrade operation.&lt;br /&gt;INFORMATION: The file &lt;/var/sadm/system/data/upgrade_cleanup&gt; on boot &lt;br /&gt;environment &lt;Solaris10Update6&gt; contains a log of cleanup operations &lt;br /&gt;required.&lt;br /&gt;WARNING: &lt;1&gt; packages failed to install properly on boot environment &lt;Solaris10Update6&gt;.&lt;br /&gt;INFORMATION: The file &lt;/var/sadm/system/data/upgrade_failed_pkgadds&gt; on &lt;br /&gt;boot environment &lt;Solaris10Update6&gt; contains a list of packages that &lt;br /&gt;failed to upgrade or install properly.&lt;br /&gt;INFORMATION: Review the files listed above. Remember that all of the files &lt;br /&gt;are located on boot environment &lt;Solaris10Update6&gt;. Before you activate &lt;br /&gt;boot environment &lt;Solaris10Update6&gt;, determine if any additional system &lt;br /&gt;maintenance is required or if additional media of the software &lt;br /&gt;distribution must be installed.&lt;br /&gt;The Solaris upgrade of the boot environment &lt;Solaris10Update6&gt; is partially complete.&lt;br /&gt;Installing failsafe&lt;br /&gt;Failsafe install is complete.&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# shudown.real -i6 -g0 -y&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;(below is the way I added the 250gb drive I scrounged up - used to be in my IBM desktop - '-e' flag is 'expert mode'.&lt;br /&gt;  I wanted to have the zpool on slice 0 for simplicity's sake - the boot slice has to stay (just like md/lvm boot disks) - &lt;br /&gt;the 'backup' slice is a special slice for ufs installs, put there by default, but not needed for zfs boot, so I remove it)&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[root@filer1 ~]# format -e c3t3d0&lt;br /&gt;&lt;br /&gt;format&gt; partition&lt;br /&gt;&lt;br /&gt;partition&gt; print&lt;br /&gt;Current partition table (original):&lt;br /&gt;Total disk cylinders available: 30398 + 2 (reserved cylinders)&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders         Size            Blocks&lt;br /&gt;  0 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  1 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  2     backup    wu       0 - 30397      232.86GB    (30398/0/0) 488343870&lt;br /&gt;  3 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  4 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  5 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  6 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  7 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  8       boot    wu       0 -     0        7.84MB    (1/0/0)         16065&lt;br /&gt;  9 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;&lt;br /&gt;partition&gt; 2&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders         Size            Blocks&lt;br /&gt;  2     backup    wu       0 - 30397      232.86GB    (30398/0/0) 488343870&lt;br /&gt;&lt;br /&gt;Enter partition id tag[backup]: unassigned&lt;br /&gt;&lt;br /&gt;Enter partition permission flags[wu]: wm&lt;br /&gt;&lt;br /&gt;Enter new starting cyl[0]: 0&lt;br /&gt;&lt;br /&gt;Enter partition size[488343870b, 30398c, 30397e, 238449.16mb, 232.86gb]: 0&lt;br /&gt;&lt;br /&gt;partition&gt; print&lt;br /&gt;Current partition table (unnamed):&lt;br /&gt;Total disk cylinders available: 30398 + 2 (reserved cylinders)&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders     Size            Blocks&lt;br /&gt;  0 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  1 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  2 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  3 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  4 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  5 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  6 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  7 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;  8       boot    wu       0 - 0        7.84MB    (1/0/0) 16065&lt;br /&gt;  9 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;&lt;br /&gt;partition&gt; 0&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders     Size            Blocks&lt;br /&gt;  0 unassigned    wm       0            0         (0/0/0)     0&lt;br /&gt;&lt;br /&gt;Enter partition id tag[unassigned]: root&lt;br /&gt;&lt;br /&gt;Enter partition permission flags[wm]: wm&lt;br /&gt;&lt;br /&gt;Enter new starting cyl[1]: &lt;br /&gt;&lt;br /&gt;Enter partition size[0b, 0c, 1e, 0.00mb, 0.00gb]: 230.00gb&lt;br /&gt;&lt;br /&gt;partition&gt; print&lt;br /&gt;Current partition table (unnamed):&lt;br /&gt;Total disk cylinders available: 30398 + 2 (reserved cylinders)&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders         Size            Blocks&lt;br /&gt;  0       root    wm       1 - 30025      230.00GB    (30025/0/0) 482351625&lt;br /&gt;  1 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  2 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  3 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  4 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  5 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  6 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  7 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  8       boot    wu       0 -     0        7.84MB    (1/0/0)         16065&lt;br /&gt;  9 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;&lt;br /&gt;partition&gt; label  #&lt;/pre&gt; ***This part is KEY - it applies the partition scheme to the disk***&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[0] SMI Label&lt;br /&gt;[1] EFI Label&lt;br /&gt;&lt;br /&gt;Specify Label type[0]: 0  #  You need to use an SMI label to allow booting&lt;br /&gt;&lt;br /&gt;Ready to label disk, continue? y&lt;br /&gt;&lt;br /&gt;partition&gt; print&lt;br /&gt;Current partition table (unnamed):&lt;br /&gt;Total disk cylinders available: 30398 + 2 (reserved cylinders)&lt;br /&gt;&lt;br /&gt;Part      Tag    Flag     Cylinders         Size            Blocks&lt;br /&gt;  0       root    wm       1 - 30025      230.00GB    (30025/0/0) 482351625  # 'wm' means 'writable,mountable'&lt;br /&gt;  1 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  2 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  3 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  4 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  5 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  6 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  7 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;  8       boot    wu       0 -     0        7.84MB    (1/0/0)         16065&lt;br /&gt;  9 unassigned    wm       0                0         (0/0/0)             0&lt;br /&gt;&lt;br /&gt;partition&gt; quit&lt;br /&gt;&lt;br /&gt;format&gt; quit&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# zpool create rpool c3t3d0s0&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# lucreate -n Sol10U6ZFS -p rpool&lt;br /&gt;&lt;br /&gt;Checking GRUB menu...&lt;br /&gt;System has findroot enabled GRUB&lt;br /&gt;Analyzing system configuration.&lt;br /&gt;Comparing source boot environment &lt;Solaris10Update6&gt; file systems with the &lt;br /&gt;file system(s) you specified for the new boot environment. Determining &lt;br /&gt;which file systems should be in the new boot environment.&lt;br /&gt;Updating boot environment description database on all BEs.&lt;br /&gt;Updating system configuration files.&lt;br /&gt;The device &lt;/dev/dsk/c3t3d0s0&gt; is not a root device for any boot environment; cannot get BE ID.&lt;br /&gt;Creating configuration for boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Source boot environment is &lt;Solaris10Update6&gt;.&lt;br /&gt;Creating boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Creating file systems on boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Creating &lt;zfs&gt; file system for &lt;/&gt; in zone &lt;global&gt; on &lt;rpool/ROOT/Sol10U6ZFS&gt;.&lt;br /&gt;Populating file systems on boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Checking selection integrity.&lt;br /&gt;Integrity check OK.&lt;br /&gt;Populating contents of mount point &lt;/&gt;.&lt;br /&gt;Copying.&lt;br /&gt;Creating shared file system mount points.&lt;br /&gt;Copying root of zone &lt;dsee&gt;.&lt;br /&gt;zoneadm: zone 'dsee': illegal UUID value specified&lt;br /&gt;Creating compare databases for boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Creating compare database for file system &lt;/rpool/ROOT&gt;.&lt;br /&gt;Creating compare database for file system &lt;/&gt;.&lt;br /&gt;Updating compare databases on boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;Updating compare databases on boot environment &lt;c4t0d0s0&gt;.&lt;br /&gt;Making boot environment &lt;Sol10U6ZFS&gt; bootable.&lt;br /&gt;Updating bootenv.rc on ABE &lt;Sol10U6ZFS&gt;.&lt;br /&gt;File &lt;/boot/grub/menu.lst&gt; propagation successful&lt;br /&gt;Copied GRUB menu from PBE to ABE&lt;br /&gt;No entry for BE &lt;Sol10U6ZFS&gt; in GRUB menu&lt;br /&gt;Population of boot environment &lt;Sol10U6ZFS&gt; successful.&lt;br /&gt;Creation of boot environment &lt;Sol10U6ZFS&gt; successful.&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# lustatus &lt;br /&gt;&lt;br /&gt;Boot Environment           Is       Active Active    Can    Copy      &lt;br /&gt;Name                       Complete Now    On Reboot Delete Status    &lt;br /&gt;-------------------------- -------- ------ --------- ------ ----------&lt;br /&gt;c4t0d0s0                   yes      no     no        yes    -         &lt;br /&gt;Solaris10Update6           yes      yes    yes       no     -         &lt;br /&gt;Sol10U6ZFS                 yes      no     no        yes    -     &lt;br /&gt;    &lt;br /&gt;[root@filer1 ~]# luactivate Sol10U6ZFS&lt;br /&gt;&lt;br /&gt;System has findroot enabled GRUB&lt;br /&gt;Generating boot-sign, partition and slice information for PBE &lt;Solaris10Update6&gt;&lt;br /&gt;A Live Upgrade Sync operation will be performed on startup of boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;WARNING: &lt;1&gt; packages failed to install properly on boot environment &lt;Sol10U6ZFS&gt;.&lt;br /&gt;INFORMATION: &lt;/var/sadm/system/data/upgrade_failed_pkgadds&gt; on boot &lt;br /&gt;environment &lt;Sol10U6ZFS&gt; contains a list of packages that failed to &lt;br /&gt;upgrade or install properly. Review the file before you reboot the system &lt;br /&gt;to determine if any additional system maintenance is required.&lt;br /&gt;&lt;br /&gt;Setting failsafe console to &lt;screen&gt;.&lt;br /&gt;Generating boot-sign for ABE &lt;Sol10U6ZFS&gt;&lt;br /&gt;NOTE: File &lt;/etc/bootsign&gt; not found in top level dataset for BE &lt;Sol10U6ZFS&gt;&lt;br /&gt;Generating partition and slice information for ABE &lt;Sol10U6ZFS&gt;&lt;br /&gt;Boot menu exists.&lt;br /&gt;Generating multiboot menu entries for PBE.&lt;br /&gt;Generating multiboot menu entries for ABE.&lt;br /&gt;Disabling splashimage&lt;br /&gt;No more bootadm entries. Deletion of bootadm entries is complete.&lt;br /&gt;GRUB menu default setting is unaffected&lt;br /&gt;Done eliding bootadm entries.&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;&lt;br /&gt;The target boot environment has been activated. It will be used when you &lt;br /&gt;reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You &lt;br /&gt;MUST USE either the init or the shutdown command when you reboot. If you &lt;br /&gt;do not use either init or shutdown, the system will not boot using the &lt;br /&gt;target BE.&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;&lt;br /&gt;In case of a failure while booting to the target BE, the following process &lt;br /&gt;needs to be followed to fallback to the currently working boot environment:&lt;br /&gt;&lt;br /&gt;1. Boot from the Solaris failsafe or boot in Single User mode from Solaris &lt;br /&gt;Install CD or Network.&lt;br /&gt;&lt;br /&gt;2. Mount the Parent boot environment root slice to some directory (like &lt;br /&gt;/mnt). You can use the following command to mount:&lt;br /&gt;&lt;br /&gt;     mount -Fufs /dev/dsk/c4t0d0s7 /mnt&lt;br /&gt;&lt;br /&gt;3. Run &lt;luactivate&gt; utility with out any arguments from the Parent boot &lt;br /&gt;environment root slice, as shown below:&lt;br /&gt;&lt;br /&gt;     /mnt/sbin/luactivate&lt;br /&gt;&lt;br /&gt;4. luactivate, activates the previous working boot environment and &lt;br /&gt;indicates the result.&lt;br /&gt;&lt;br /&gt;5. Exit Single User mode and reboot the machine.&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;&lt;br /&gt;Modifying boot archive service&lt;br /&gt;Propagating findroot GRUB for menu conversion.&lt;br /&gt;File &lt;/etc/lu/installgrub.findroot&gt; propagation successful&lt;br /&gt;File &lt;/etc/lu/stage1.findroot&gt; propagation successful&lt;br /&gt;File &lt;/etc/lu/stage2.findroot&gt; propagation successful&lt;br /&gt;File &lt;/etc/lu/GRUB_capability&gt; propagation successful&lt;br /&gt;Deleting stale GRUB loader from all BEs.&lt;br /&gt;File &lt;/etc/lu/installgrub.latest&gt; deletion successful&lt;br /&gt;File &lt;/etc/lu/stage1.latest&gt; deletion successful&lt;br /&gt;File &lt;/etc/lu/stage2.latest&gt; deletion successful&lt;br /&gt;Activation of boot environment &lt;Sol10U6ZFS&gt; successful.&lt;br /&gt;&lt;br /&gt;[root@filer1 ~]# lustatus &lt;br /&gt;&lt;br /&gt;Boot Environment           Is       Active Active    Can    Copy      &lt;br /&gt;Name                       Complete Now    On Reboot Delete Status    &lt;br /&gt;-------------------------- -------- ------ --------- ------ ----------&lt;br /&gt;c4t0d0s0                   yes      no     no        yes    -         &lt;br /&gt;Solaris10Update6           yes      yes    yes       no     -         &lt;br /&gt;Sol10U6ZFS                 yes      no     yes        yes    - &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Now I can add another disk as soon as we get one with 'zpool add mirror c3t3d0s0 cXtXd0s0'&lt;br /&gt;&lt;br /&gt;:oD&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-3896595489253640796?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/3896595489253640796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=3896595489253640796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3896595489253640796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3896595489253640796'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2009/01/upgrading-solaris-10-to-zfs-boot.html' title='Upgrading Solaris 10 to ZFS Boot'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8429578460557891362</id><published>2008-12-03T21:16:00.005-05:00</published><updated>2008-12-03T21:32:11.475-05:00</updated><title type='text'>Forcing a Core Dump in Solaris</title><content type='html'>Thanks to Max of Bruning Systems for this info.&lt;br /&gt;&lt;br /&gt;Before a system is hung, load kmdb with this command:&lt;br /&gt;&lt;pre&gt;# mdb -K -F&lt;/pre&gt;Type carefully:&lt;br /&gt;&lt;pre&gt;:c&lt;/pre&gt;Be sure to end with a carriage return.  This will get your your prompt back.&lt;br /&gt;&lt;br /&gt;When a system is hung, type:&lt;br /&gt;&lt;pre&gt;F1-a&lt;/pre&gt;Then:&lt;br /&gt;&lt;pre&gt;$&amp;lt;systemdump&lt;/pre&gt;This should give you a panic dump, followed by a reboot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8429578460557891362?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8429578460557891362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8429578460557891362' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8429578460557891362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8429578460557891362'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/12/forcing-core-dump-in-solaris.html' title='Forcing a Core Dump in Solaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-979214872489223690</id><published>2008-11-20T22:55:00.002-05:00</published><updated>2008-12-03T21:32:42.862-05:00</updated><title type='text'>Mail Yourself a List of Large Unix Directories</title><content type='html'>&lt;pre&gt;find / -type d -exec du {} \; | sort -nru  | mailx user@domain.xxx&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-979214872489223690?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/979214872489223690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=979214872489223690' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/979214872489223690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/979214872489223690'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/11/mail-yourself-list-of-large-unix.html' title='Mail Yourself a List of Large Unix Directories'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-5624294910502954910</id><published>2008-11-03T18:01:00.001-05:00</published><updated>2008-11-03T18:03:20.636-05:00</updated><title type='text'>Painting the Fate of the World</title><content type='html'>&lt;object width="400" height="225"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2035927&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=2035927&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-5624294910502954910?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/5624294910502954910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=5624294910502954910' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5624294910502954910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5624294910502954910'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/11/painting-fate-of-world.html' title='Painting the Fate of the World'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-5507475001090341775</id><published>2008-08-13T11:12:00.001-04:00</published><updated>2008-08-13T11:12:57.191-04:00</updated><title type='text'>Better than lsof on Solaris: pfiles!</title><content type='html'>pfiles /proc/*&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-5507475001090341775?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/5507475001090341775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=5507475001090341775' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5507475001090341775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5507475001090341775'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/08/better-than-lsof-on-solaris-pfiles.html' title='Better than lsof on Solaris: pfiles!'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4096839493074496948</id><published>2008-08-07T18:32:00.001-04:00</published><updated>2008-08-07T18:33:18.947-04:00</updated><title type='text'>Mounting Fat32 LBA drives in Solaris 10</title><content type='html'>mount -F pcfs /dev/dsk/[device_id]:[logical_drive_number] /[mountpoint]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4096839493074496948?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4096839493074496948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4096839493074496948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4096839493074496948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4096839493074496948'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/08/mounting-fat32-lba-drives-in-solaris-10.html' title='Mounting Fat32 LBA drives in Solaris 10'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4042897310506635195</id><published>2008-08-07T16:47:00.001-04:00</published><updated>2008-08-07T16:47:41.672-04:00</updated><title type='text'>Find, format and mount a USB drive in Solaris 10</title><content type='html'>disable vold (old stuff used for floppies)&lt;br /&gt;&lt;br /&gt;# svcadm disable volfs&lt;br /&gt;&lt;br /&gt;find the device name&lt;br /&gt;&lt;br /&gt;# rmformat -l&lt;br /&gt;&lt;br /&gt;set the default solaris partition up (pick the default prompt here)&lt;br /&gt;&lt;br /&gt;# fdisk /dev/rdsk/[device_name]&lt;br /&gt;&lt;br /&gt;get the number of sectors in the disk (look for the 'Sector Count' column)&lt;br /&gt;&lt;br /&gt;# prtvtoc /dev/rdsk/[device_name]&lt;br /&gt;&lt;br /&gt;make a ufs filesystem on the device&lt;br /&gt;&lt;br /&gt;# newfs -v -s [sector_count] /dev/rdsk/[device_name]&lt;br /&gt;&lt;br /&gt;make a mountpoint&lt;br /&gt;&lt;br /&gt;# mkdir /usbdrive&lt;br /&gt;&lt;br /&gt;mount the formatted disk (note that we no longer use the raw disk here (rdisk))&lt;br /&gt;&lt;br /&gt;# mount /dev/dsk/[device_name] /usbdrive&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4042897310506635195?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4042897310506635195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4042897310506635195' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4042897310506635195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4042897310506635195'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/08/find-format-and-mount-usb-drive-in.html' title='Find, format and mount a USB drive in Solaris 10'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4438926972923586138</id><published>2008-06-19T13:57:00.002-04:00</published><updated>2008-06-19T13:59:33.067-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zfs'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Moving Directories to ZFS Filesystems</title><content type='html'>for f in `ls /source/directory`; do zfs create targetpool/targetfs/$f; cp -pr /source/directory/$f/* /targetpool/targetfs/$f; done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4438926972923586138?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4438926972923586138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4438926972923586138' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4438926972923586138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4438926972923586138'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/06/moving-directories-to-zfs-filesystems.html' title='Moving Directories to ZFS Filesystems'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1121161473486014114</id><published>2008-03-25T14:06:00.001-04:00</published><updated>2008-03-25T14:06:19.363-04:00</updated><title type='text'>Awareness</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Ahg6qcgoay4&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Ahg6qcgoay4&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1121161473486014114?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1121161473486014114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1121161473486014114' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1121161473486014114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1121161473486014114'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/03/awareness.html' title='Awareness'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-7070098566751840223</id><published>2008-03-10T15:16:00.005-04:00</published><updated>2008-06-09T11:47:30.225-04:00</updated><title type='text'>Remove Old ZFS Snapshots</title><content type='html'>I used this command recently to cull old zfs snapshots (I was changing the naming convention used by &lt;a href="http://blogs.sun.com/timf/entry/zfs_automatic_snapshots_0_10"&gt;timf's&lt;/a&gt; auto-snapshot service to use _'s instead of :'s as a separator, since samba doesn't like :'s).  The command should be on one line, backslashes are used to show that line breaks are not returns.  'grep -v' is used to avoid deleting certain snapshot types (-v is the reverse-matching flag).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;for snapshot in `zfs list -H -t snapshot \&lt;br /&gt;| grep -v daily | grep -v weekly \&lt;br /&gt;| grep -v monthly | awk '{print $1}'`; \&lt;br /&gt;do zfs destroy $snapshot; done&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-7070098566751840223?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/7070098566751840223/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=7070098566751840223' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7070098566751840223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7070098566751840223'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/03/remove-old-zfs-snapshots.html' title='Remove Old ZFS Snapshots'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4457221459005293101</id><published>2008-02-25T22:41:00.001-05:00</published><updated>2008-02-25T22:43:30.281-05:00</updated><title type='text'>Stop Being Comfortable</title><content type='html'>&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="Musicane" type="application/x-shockwave-flash" height="440" width="342"&gt;&lt;param name="movie" value="https://www.musicane.com/fla/newplayer/2/SaulWilliams.swf?rsid=7bce77e2-9ca5-4d45-a1bb-1f0e0dce2ab9&amp;sid=5B8D220D-0D60-431D-BB53-BED89BA6EA6B&amp;uid="&gt;&lt;param name="quality" value="high"&gt;&lt;embed src="https://www.musicane.com/fla/newplayer/2/SaulWilliams.swf?rsid=f23d72cf-9f5e-4de3-88df-81100e790b66&amp;sid=5B8D220D-0D60-431D-BB53-BED89BA6EA6B&amp;uid=" quality="high" name="Musicane" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" height="440" width="342"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4457221459005293101?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4457221459005293101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4457221459005293101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4457221459005293101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4457221459005293101'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/02/blog-post.html' title='Stop Being Comfortable'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1383389102592233517</id><published>2008-02-22T14:48:00.003-05:00</published><updated>2008-02-22T14:58:16.027-05:00</updated><title type='text'>Limiting RAM Used by ZFS (Limiting the ARC)</title><content type='html'>The principle is fairly simple.  We add a tunable to /etc/system that looks like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;set zfs:zfs_arc_max = 0x[hex value for the RAM usage limit we specify]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;So, to limit ARC usage to 512mb, we multiply by 1024 to get 524288kb, then multiply this by 1024 to get 536870912 bytes.  Converting this number to hex with a scientific calculator or hex converter (doing it on paper is tedious) gives us 20000000.  We prepend '0x' to the number to make sure that ZFS/Solaris knows that we are talking about hex, not binary, decimal, or octal numbers.  Our final value looks like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;set zfs:zfs_arc_max = 0x20000000&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: georgia;"&gt;You might ask why we need to do this.  The answer is that in some situations, when you know that a program will use a large amount of RAM, and will want it very quickly, waiting for the ARC to self-shrink can hinder performance.  Desktop installs of Solaris are good examples - running a fat GUI app together with AGP graphics can rapidly suck up RAM that ARC seems reluctant to let go of.  ZFS performance will suffer a little if we limit ARC, but the tradeoff is appropriate in this case.&lt;br /&gt;&lt;br /&gt;(Thanks to http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide#ARCSIZE for the technicals on this - they just didn't cover the hex conversion bits)&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1383389102592233517?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1383389102592233517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1383389102592233517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1383389102592233517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1383389102592233517'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/02/limiting-ram-used-by-zfs-limiting-arc.html' title='Limiting RAM Used by ZFS (Limiting the ARC)'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2715328397882306874</id><published>2008-02-08T18:13:00.001-05:00</published><updated>2008-02-22T14:48:34.067-05:00</updated><title type='text'>Part 1 - Binding Solaris 10 to LDAP</title><content type='html'>&lt;span style="font-family:courier new;"&gt;&lt;span style="font-family:georgia;"&gt;This was done on Solaris Nevada snv_74.  The LDAP master was RedHat Linux (yes, backwards).  This is just the first step in configuring - it's not enough to get LDAP logins yet...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ldapclient -v manual -a credentialLevel=proxy -a authenticationMethod=simple -a defaultSearchBase=dc=domain,dc=com -a defaultSearchScope=sub -a domainName=domain.com -a proxyDN=cn=root,ou=people,dc=domain,dc=com -a proxyPassword=******* 192.168.0.15&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2715328397882306874?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2715328397882306874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2715328397882306874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2715328397882306874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2715328397882306874'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/02/part-1-binding-solaris-10-to-ldap.html' title='Part 1 - Binding Solaris 10 to LDAP'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2854878051762815026</id><published>2008-02-04T14:19:00.000-05:00</published><updated>2008-02-04T14:22:10.966-05:00</updated><title type='text'>Better 'du' for Solaris</title><content type='html'>This is the quick and dirty method I used to get better 'du' behavior easily when I use Solaris 10/Nevada.  The script, which I placed in /usr/sbin as 'dueach' simply does a 'du -sh' on each child directory of the current working directory.  Here's the script:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;for u in `ls -l | awk '{print $9}'`; do&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        du -sh $u&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;done&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2854878051762815026?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2854878051762815026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2854878051762815026' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2854878051762815026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2854878051762815026'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2008/02/better-du-for-solaris.html' title='Better &apos;du&apos; for Solaris'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8762187323348293895</id><published>2007-12-28T17:47:00.000-05:00</published><updated>2007-12-28T17:51:37.316-05:00</updated><title type='text'>Mass IMAP Sync</title><content type='html'>This script requires 2 IMAP servers and the 'imapsync' tool.  Note that the 'for' loop below should be all on one line.  We are moving from Cyrus to Zimbra IMAP in this example.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;USERLIST=/root/users_to_sync&lt;br /&gt;PASSFILE=/root/new_server_default_password&lt;br /&gt;&lt;br /&gt;for u in `cat $USERLIST`; do nice -n 10 imapsync --host1 cyrus.domain.com --authuser1 root --passfile1 cyrus --user1 $u --host2 zimbra.domain.com --user2 $u@domain.com --passfile2 $PASSFILE --noauthmd5  --ssl1 --authmech1 PLAIN --ssl2 --syncinternaldates --split1 100 --split2 100 --exclude 'shared.*' --exclude 'Junk*'; done&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8762187323348293895?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8762187323348293895/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8762187323348293895' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8762187323348293895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8762187323348293895'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/12/mass-imap-sync.html' title='Mass IMAP Sync'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2867126012073832642</id><published>2007-12-18T16:41:00.000-05:00</published><updated>2007-12-18T16:42:28.572-05:00</updated><title type='text'>tough</title><content type='html'>&lt;object width="400" height="249"&gt;&lt;param name="movie" value="http://media.imeem.com/v/fnpQl94s0f/aus=false/pv=2"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://media.imeem.com/v/fnpQl94s0f/aus=false/pv=2" type="application/x-shockwave-flash" width="400" height="249" allowFullScreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2867126012073832642?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2867126012073832642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2867126012073832642' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2867126012073832642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2867126012073832642'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/12/tough.html' title='tough'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-3904963602650403301</id><published>2007-10-09T16:01:00.000-04:00</published><updated>2007-10-22T15:56:59.384-04:00</updated><title type='text'>Connecting Linux (CentOS 5) to Solaris ZFS with iSCSI</title><content type='html'>Here's the command sequence I used (Note: I got kernel panics in CentOS talking to Solaris Nevada build 74.  Solaris 10U4 worked properly).&lt;br /&gt;&lt;br /&gt;On Solaris first:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;root# zfs create shareiscsi=on [poolname]/[fsname]&lt;br /&gt;&lt;br /&gt;root# iscsitadm list target&lt;br /&gt;&lt;br /&gt;root# Target: [poolname]/[fsname]&lt;br /&gt;iSCSI Name: iqn.1986-03.com.sun:02:af641712-82f5-665b-e537-cc6a07186f62&lt;br /&gt;Connections: 0&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;So now I know the iqn of my iSCSI target.&lt;br /&gt;&lt;br /&gt;I install &lt;code&gt;iscsi-initiator-utils&lt;/code&gt; with this command on my CentOS client (initiator):&lt;br /&gt;&lt;br /&gt;&lt;code&gt;root# yum install iscsi-initiator-utils&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;and start iSCSI services&lt;br /&gt;&lt;br /&gt;&lt;code&gt;root# /etc/init.d/iscsi start&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I then discover the Solaris/ZFS iSCSI target with these commands and start a session to it:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;root# iscsiadm -m discovery -t st -p 192.168.0.86&lt;br /&gt;root# iscsiadm -m node -T iqn.1986-03.com.sun:02:af641712-82f5-665b-e537-cc6a07186f62 -p 192.168.0.86:3260 --login&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Note that the iqn will be different depending on the system you set up the target on.  '&lt;code&gt;-m&lt;/code&gt;' means 'mode', '&lt;code&gt;-T&lt;/code&gt;' means 'targetname', '&lt;code&gt;-t st&lt;/code&gt;' means 'type sendtarget', '&lt;code&gt;-p&lt;/code&gt;' means 'portal, and '&lt;code&gt;--login&lt;/code&gt;' is the actual command to connect to the iSCSI target.&lt;br /&gt;&lt;br /&gt;I then check the output of &lt;code&gt;dmesg&lt;/code&gt; on the CentOS box to see the device path of the new iSCSI device:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;scsi1 : iSCSI Initiator over TCP/IP&lt;br /&gt;Vendor: SUN       Model: SOLARIS           Rev: 1&lt;br /&gt;Type:   Direct-Access                      ANSI SCSI revision: 05&lt;br /&gt;SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)&lt;br /&gt;sdb: Write Protect is off&lt;br /&gt;sdb: Mode Sense: 67 00 00 08&lt;br /&gt;SCSI device sdb: drive cache: write through&lt;br /&gt;SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)&lt;br /&gt;sdb: Write Protect is off&lt;br /&gt;sdb: Mode Sense: 67 00 00 08&lt;br /&gt;SCSI device sdb: drive cache: write through&lt;br /&gt;sdb: unknown partition table&lt;br /&gt;sd 1:0:0:0: Attached scsi disk sdb&lt;br /&gt;sd 1:0:0:0: Attached scsi generic sg1 type 0&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I can now use whatever disk formatting tool I like to format the iSCIS device (in this case &lt;code&gt;/dev/sdb&lt;/code&gt; and partition it. I can then mount it and begin using it for storage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-3904963602650403301?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/3904963602650403301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=3904963602650403301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3904963602650403301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3904963602650403301'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/10/connecting-linux-centos-5-to-solaris.html' title='Connecting Linux (CentOS 5) to Solaris ZFS with iSCSI'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8591793980996226165</id><published>2007-09-19T14:39:00.001-04:00</published><updated>2007-09-19T14:39:16.580-04:00</updated><title type='text'>Riding in Earnest</title><content type='html'>&lt;a href="http://polish.slavic.pitt.edu/pmvc/A%20Trip%20to%20the%20Sea.html"&gt;http://polish.slavic.pitt.edu/pmvc/A%20Trip%20to%20the%20Sea.html&lt;/a&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8591793980996226165?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8591793980996226165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8591793980996226165' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8591793980996226165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8591793980996226165'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/09/riding-in-earnest.html' title='Riding in Earnest'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-3918355670988327694</id><published>2007-09-13T23:32:00.002-04:00</published><updated>2009-03-03T18:39:18.328-05:00</updated><title type='text'>Interactive Shell Script for Verifying MD5 Checksums</title><content type='html'>&lt;pre&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;echo "Give the path to the file you wish to checksum"&lt;br /&gt;&lt;br /&gt;read FILE_TO_CHECK&lt;br /&gt;&lt;br /&gt;echo "Give the checksum value you expect for this file"&lt;br /&gt;&lt;br /&gt;read EXPECTED_CHECKSUM&lt;br /&gt;&lt;br /&gt;echo "$FILE_TO_CHECK should yield checksum $EXPECTED_CHECKSUM" &amp;gt; /tmp/$EXPECTED_CHECKSUM.chksm &lt;br /&gt;&lt;br /&gt;GENERATED_CHECKSUM=`md5 $FILE_TO_CHECK | awk '{print $4}'`&lt;br /&gt;CHECKSUM_MATCH=`grep "$GENERATED_CHECKSUM" /tmp/$EXPECTED_CHECKSUM.chksm | wc -l`&lt;br /&gt;&lt;br /&gt; if [ $CHECKSUM_MATCH -eq 0 ]; then&lt;br /&gt;  echo "$FILE_TO_CHECK did not pass checksum verification" &lt;br /&gt; elif [ $CHECKSUM_MATCH -eq 1 ]; then&lt;br /&gt;  echo "$FILE_TO_CHECK passed checksum verification"&lt;br /&gt; fi&lt;br /&gt;&lt;br /&gt;rm /tmp/$EXPECTED_CHECKSUM.chksm&lt;br /&gt;&lt;br /&gt;exit 0&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-3918355670988327694?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/3918355670988327694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=3918355670988327694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3918355670988327694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3918355670988327694'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/09/interactive-shell-script-for-verifying.html' title='Interactive Shell Script for Verifying MD5 Checksums'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-4483531923383190092</id><published>2007-09-13T19:51:00.000-04:00</published><updated>2007-09-13T19:54:06.318-04:00</updated><title type='text'>Video games ARE a social activity</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm2.static.flickr.com/1136/1349215328_1366dccc66.jpg?v=0"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px;" src="http://farm2.static.flickr.com/1136/1349215328_1366dccc66.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-4483531923383190092?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/4483531923383190092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=4483531923383190092' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4483531923383190092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/4483531923383190092'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/09/video-games-are-social-activity.html' title='Video games ARE a social activity'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1511411688906153101</id><published>2007-09-04T10:34:00.001-04:00</published><updated>2007-09-04T11:09:43.741-04:00</updated><title type='text'>Le Tour de Yinz: Route and Standings</title><content type='html'>Here is the area we raced through - click the link at the bottom to see the route I took:&lt;br /&gt;&lt;br /&gt;&lt;iframe width="640" height="480" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=d&amp;amp;hl=en&amp;amp;geocode=&amp;amp;saddr=Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;amp;daddr=Unknown+road+%4040.470530,+-79.947580+to:PA-8+%4040.487480,+-79.918530+to:Reservoir+Dr+%4040.479800,+-79.912600+to:Parkview+Ave+%4040.433250,+-79.952440+to:2nd+Ave+%4040.435530,+-79.977320+to:S+10th+St%2FS+10th+St+Bridge+%4040.431820,+-79.988980+to:S+10th+St+%4040.428740,+-79.988570+to:E+Carson+St%2FPA-837+%4040.428760,+-79.980540+to:Arlington+Ave+%4040.417850,+-79.979600+to:Arlington+Ave+%4040.421850,+-79.992320+to:E+Carson+St%2FPA-837+%4040.432160,+-80.003980+to:6th+St+Bridge%2FRoberto+Clemente+Bridge+%4040.447070,+-80.003870+to:N+Shore+Dr+%4040.446790,+-80.017470+to:N+Franklin+St+%4040.454880,+-80.032260+to:Doerr+St+%4040.468960,+-80.041770+to:Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;amp;mrcr=15&amp;amp;mra=pi&amp;amp;dirflg=h&amp;amp;sll=40.472547,-80.038319&amp;amp;sspn=0.056805,0.138702&amp;amp;ie=UTF8&amp;amp;om=0&amp;amp;s=AARTsJoj1uc_-2ADzCebLzYY8dhZglXUCQ&amp;amp;ll=40.456091,-79.988022&amp;amp;spn=0.125393,0.219727&amp;amp;z=12&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps?f=d&amp;amp;hl=en&amp;amp;geocode=&amp;amp;saddr=Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;amp;daddr=Unknown+road+%4040.470530,+-79.947580+to:PA-8+%4040.487480,+-79.918530+to:Reservoir+Dr+%4040.479800,+-79.912600+to:Parkview+Ave+%4040.433250,+-79.952440+to:2nd+Ave+%4040.435530,+-79.977320+to:S+10th+St%2FS+10th+St+Bridge+%4040.431820,+-79.988980+to:S+10th+St+%4040.428740,+-79.988570+to:E+Carson+St%2FPA-837+%4040.428760,+-79.980540+to:Arlington+Ave+%4040.417850,+-79.979600+to:Arlington+Ave+%4040.421850,+-79.992320+to:E+Carson+St%2FPA-837+%4040.432160,+-80.003980+to:6th+St+Bridge%2FRoberto+Clemente+Bridge+%4040.447070,+-80.003870+to:N+Shore+Dr+%4040.446790,+-80.017470+to:N+Franklin+St+%4040.454880,+-80.032260+to:Doerr+St+%4040.468960,+-80.041770+to:Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;amp;mrcr=15&amp;amp;mra=pi&amp;amp;dirflg=h&amp;amp;sll=40.472547,-80.038319&amp;amp;sspn=0.056805,0.138702&amp;amp;ie=UTF8&amp;amp;om=0&amp;amp;ll=40.456091,-79.988022&amp;amp;spn=0.125393,0.219727&amp;amp;z=12&amp;amp;source=embed" style="color:#0000FF;text-align:left"&gt;View Course Route&lt;/a&gt;&lt;/small&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps?f=d&amp;amp;hl=en&amp;geocode=&amp;amp;saddr=Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;daddr=Unknown+road+%4040.470530,+-79.947580+to:PA-8+%4040.487480,+-79.918530+to:Reservoir+Dr+%4040.479800,+-79.912600+to:Parkview+Ave+%4040.433250,+-79.952440+to:2nd+Ave+%4040.435530,+-79.977320+to:S+10th+St%2FS+10th+St+Bridge+%4040.431820,+-79.988980+to:S+10th+St+%4040.428740,+-79.988570+to:E+Carson+St%2FPA-837+%4040.428760,+-79.980540+to:Arlington+Ave+%4040.417850,+-79.979600+to:Arlington+Ave+%4040.421850,+-79.992320+to:E+Carson+St%2FPA-837+%4040.432160,+-80.003980+to:6th+St+Bridge%2FRoberto+Clemente+Bridge+%4040.447070,+-80.003870+to:N+Shore+Dr+%4040.446790,+-80.017470+to:N+Franklin+St+%4040.454880,+-80.032260+to:Doerr+St+%4040.468960,+-80.041770+to:Friendship+Park,+Friendship+Ave,+Pittsburgh,+PA&amp;amp;amp;amp;amp;amp;mrcr=15&amp;mra=pi&amp;amp;dirflg=h&amp;sll=40.472547,-80.038319&amp;amp;sspn=0.056805,0.138702&amp;amp;ie=UTF8&amp;ll=40.453565,-79.977125&amp;amp;spn=0.07201,0.12929&amp;om=0&amp;amp;source=embed" style="color: rgb(0, 0, 255); text-align: left;"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/small&gt;&lt;strong&gt;Results:&lt;/strong&gt;&lt;br /&gt;1. Ted K. 1:41.55&lt;br /&gt;2. John L. 1:45.21 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;3. Rob L. 1:45.37 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;4. Steve K. 1:50.36 &lt;strong&gt;S&lt;/strong&gt;&lt;br /&gt;5. Corey L. 1:52.42 &lt;strong&gt;M&lt;/strong&gt;&lt;br /&gt;6. Jason B. 1:54.49&lt;br /&gt;7. Mike C. 2:01.34&lt;br /&gt;8. Blake I. 2:18.43 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;9. Paulie4 2:19.40&lt;br /&gt;10. Matt K. 2:20.13 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;11. Aaron S. 2:23.00&lt;br /&gt;12. Jordan 2:23.18&lt;br /&gt;13. Rob W. 2:23.19 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;14. Devon H. 2:23.49&lt;br /&gt;15. Loren S. 2:41.43 &lt;strong&gt;TT W&lt;/strong&gt;&lt;br /&gt;16. Ben G. 2:45.33 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;17. Greg R. 2:49.52&lt;br /&gt;18. Jim I. 2:58.16 &lt;strong&gt;TT&lt;/strong&gt;&lt;br /&gt;19. Dave L. 3:07.34&lt;br /&gt;&lt;small&gt;&lt;br /&gt;&lt;br /&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1511411688906153101?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1511411688906153101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1511411688906153101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1511411688906153101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1511411688906153101'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/09/le-tour-de-yinz-route-and-standings.html' title='Le Tour de Yinz: Route and Standings'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-573859894704462978</id><published>2007-08-24T18:48:00.000-04:00</published><updated>2008-12-13T02:50:44.866-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cycling'/><title type='text'>Time Trial Results</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_0j7fzDlpfqU/Rs9h3FEQ_7I/AAAAAAAAAHE/yLR5X0BsMp0/s1600-h/blake_finish_web.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_0j7fzDlpfqU/Rs9h3FEQ_7I/AAAAAAAAAHE/yLR5X0BsMp0/s200/blake_finish_web.jpg" alt="" id="BLOGGER_PHOTO_ID_5102404501714829234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Prologue, 2007 Tour de Yinz&lt;br /&gt;(5.5 mile flat course, out-and-double-back)&lt;br /&gt;&lt;br /&gt;1. Dave Gingrich 13.39 F&lt;br /&gt;2. John Lomax (aka Toodles) 13.52 F&lt;br /&gt;3. Jimmy - 51 14.10 F&lt;br /&gt;4. Rob Lochner 14.23 G&lt;br /&gt;5. Blake Irvin 14.44 F&lt;br /&gt;6. Rob Wolfe 14.52 F&lt;br /&gt;7. Matt Kurpiewski 15.08 G&lt;br /&gt;8. Jim Isler 15.13 G&lt;br /&gt;9. Loren Sloan 15.17 G&lt;br /&gt;10. Mike Bennett 15.50 F&lt;br /&gt;11. Ben Grocholsky 16.14 G&lt;br /&gt;12. Caleb Morgan 16.31 G&lt;br /&gt;13. Chris Young 17.10&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-573859894704462978?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/573859894704462978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=573859894704462978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/573859894704462978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/573859894704462978'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/08/time-trial-results.html' title='Time Trial Results'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_0j7fzDlpfqU/Rs9h3FEQ_7I/AAAAAAAAAHE/yLR5X0BsMp0/s72-c/blake_finish_web.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-8257534667228631702</id><published>2007-08-20T12:53:00.000-04:00</published><updated>2007-08-20T12:54:20.444-04:00</updated><title type='text'>BikeBike Alleycat Route</title><content type='html'>The route I picked is &lt;a href="http://maps.google.com/maps?f=d&amp;hl=en&amp;amp;geocode=&amp;saddr=477+melwood+ave,+pittsburgh,+pa&amp;amp;daddr=Beechwood+Blvd+%26+English+Ln,+Pittsburgh,+PA+15217+to:Forward+Ave+%4040.429190,+-79.921110+to:Pocusset+St+%4040.430620,+-79.932140+to:S+Bouquet+St+%4040.441950,+-79.956420+to:Bates+St%2FPA-885+%4040.431180,+-79.959260+to:2nd+Ave+%4040.435480,+-79.969340+to:2nd+Ave+%4040.434490,+-79.989850+to:S+10th+St%2FS+10th+St+Bridge+%4040.433920,+-79.989640+to:Grandview+Ave+%4040.432320,+-80.008080+to:Wyoming+St+%4040.430570,+-80.006470+to:Smithfield+St+%4040.437230,+-80.000580+to:heinz+field,+pittsburgh,+pa+to:5003+penn+ave,+pittsburgh,+pa+to:1+Wild+Pl%2FHill+Rd%2FThe+Hill+Rd+%4040.487300,+-79.917740+to:Washington+Blvd,+Pittsburgh,+PA+15206+to:40.454589,-79.910259+to:N+Lexington+St+%4040.450340,+-79.898620&amp;mrcr=15,16&amp;amp;mrsp=16&amp;sz=14&amp;amp;mra=dpe&amp;dirflg=h&amp;amp;sll=40.460597,-79.903221&amp;sspn=0.033567,0.075274&amp;amp;ie=UTF8&amp;ll=40.462621,-79.908371&amp;amp;spn=0.134262,0.301094&amp;z=12&amp;amp;om=0"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-8257534667228631702?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/8257534667228631702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=8257534667228631702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8257534667228631702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/8257534667228631702'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/08/bikebike-alleycat-route.html' title='BikeBike Alleycat Route'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1857829104271580502</id><published>2007-08-09T21:50:00.001-04:00</published><updated>2008-12-13T02:50:45.199-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='raid'/><category scheme='http://www.blogger.com/atom/ns#' term='zfs'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Solaris 10 Hangs with Multiple SATA Drives on a PCI SATA Controller</title><content type='html'>(note: this bug has been fixed in build 72 of Solaris Nevada - snv_72)&lt;br /&gt;&lt;br /&gt;It seems there is an unpatched bug in the generic ATA driver for Solaris 10/Open Solaris.  The bug manifests itself only on older x86 systems that have fewer interrupt lines - boards which use typically a pair of Programmable Interrupt Controllers like the 8259, which is capable of only 8 interrupt lines.  Newer boards (such as those supporting x64 architectures) are more likely to use a controller like the APIC (Advanced Programmable Interrupt Controller) which can theoretically provide 255 physical hardware IRQ lines, though most systems don't employ more than 24.&lt;br /&gt;&lt;br /&gt;The symptom of the bug is that the machine hangs when trying to probe the SATA controller, if the controller has more than 1 device attached.  The hang occurs because Solaris (originally designed to run on machines not limited by such a small number of interrupts as older x86 hardware) doesn't yet have an interrupt handler loaded when the SATA device starts sending interrupt requests - not having a way to deal with interrupt requests, the system hangs.&lt;br /&gt;&lt;br /&gt;The bug itself is filed &lt;a href="http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6414472"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Open Solaris developer &lt;span class="ppt" id="_user_jk@tools.de"&gt;Jürgen&lt;/span&gt; Keil has provided an unoffical patch that I was able to use successfully on snv_65 running on 32-bit x86 .  I outline the procedure for applying this patch below.  (Please note that this patch can render your system unbootable.  I have not tested this patch on versions of Solaris other than snv_65, nor on architectures other than 32-bit x86.  I recommend backing up your system beforehand with '&lt;span style="font-family:courier new;"&gt;flarcreate&lt;/span&gt;'.)&lt;br /&gt;&lt;br /&gt;PROCEDURE:&lt;br /&gt;&lt;br /&gt;Boot your machine&lt;br /&gt;&lt;br /&gt;At the GRUB boot options screen, use the 'e' key to edit your primary boot option.&lt;br /&gt;&lt;br /&gt;At the GRUB edit screen for your boot command, append '&lt;span style="font-family:courier new;"&gt;-kd&lt;/span&gt;'.  Your new boot command should look something like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;kernel$ /platform/i86pc/kernel/$ISADIR/unix -kd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Press the 'enter/return' key to temporarily apply your edit to the boot command.  Then press the 'b' key to boot the system using the edited GRUB boot command.&lt;br /&gt;&lt;br /&gt;Solaris will begin to boot, but will halt at the kernel debugger prompt, which looks like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Loading kmdb...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Welcome to kmdb&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Loaded modules: [ unix krtld genunix ]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;[0]&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;At this point you will enter some commands for the kernel debugger to act on.  You are not yet making any permanent changes, simply temporarily modifying the kernel module for ATA support at load time.  Your changes will not remain through a reboot.  Use the following commands, pressing 'enter/return' after each command:&lt;br /&gt;&lt;br /&gt;&lt;span class="q"&gt;&lt;span style="font-family:courier new;"&gt;::bp ata`ata_id_common&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;:c&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;::delete 1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ata_id_common+0x3c?w a6a&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;:c&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here is a screen capture &lt;/span&gt;&lt;span class="ppt" id="_user_jk@tools.de"&gt;Jürgen&lt;/span&gt;&lt;span class="q"&gt; supplied:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_0j7fzDlpfqU/RrvIs2bR1RI/AAAAAAAAAFw/kH7LRdujWV4/s1600-h/ata_cr6414472_5.gif"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_0j7fzDlpfqU/RrvIs2bR1RI/AAAAAAAAAFw/kH7LRdujWV4/s400/ata_cr6414472_5.gif" alt="" id="BLOGGER_PHOTO_ID_5096888076149576978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="q"&gt;&lt;br /&gt;This procedure boots Solaris, applying changes directly to the ATA driver as it is loaded into memory.  The driver in question is located at &lt;span style="font-family:courier new;"&gt;/kernel/drv/ata&lt;/span&gt; on your boot disk.&lt;br /&gt;&lt;br /&gt;If the system boots properly and functions as expected, you can proceed to make the change permanent with the '&lt;span style="font-family:courier new;"&gt;adb&lt;/span&gt;' tool.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(&lt;span style="font-weight: bold;"&gt;STOP&lt;/span&gt;.  Before proceeding, back up the generic Solaris ATA driver.  In my case, this meant these commands:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;# mkdir -p /backups_directory/kernel&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;# cp -pr /kernel/drv/ata /backups_directory/kernel/ata&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In case something goes wrong, the backup '&lt;span style="font-family:courier new;"&gt;ata&lt;/span&gt;' file can be copied back to the &lt;span style="font-family:courier new;"&gt;/kernel/drv&lt;/span&gt; directory from single-user mode boot.)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="q"&gt;To apply the patch directly to the ATA driver file, use this sequence of commands (comments are marked with &lt;span style="font-family:georgia;"&gt;&lt;/span&gt;&lt;/span&gt;##&lt;span class="q"&gt;&lt;span style="font-family:georgia;"&gt;&lt;/span&gt;):&lt;/span&gt;&lt;br /&gt;&lt;span class="q"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;# adb -w /kernel/drv/ata&lt;/span&gt;    ## The 'adb -w' command allows editing of the 'ata' driver file - this is followed by the path to the driver.&lt;br /&gt;&lt;br /&gt;Press 'enter/return'&lt;br /&gt;&lt;br /&gt;&lt;div style="direction: ltr;"&gt;&lt;span class="q"&gt;&lt;span style="font-family:courier new;"&gt;ata_id_common+0x3c?w a6a&lt;/span&gt;    ## &lt;/span&gt;This line is the actual edit command that makes changes to hex values in the driver binary.&lt;br /&gt;&lt;br /&gt;Press 'enter/return'&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family:courier new;"&gt;$q&lt;/span&gt;    ## The '$q' command exits the adb tool after the change has been made.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Reboot your machine and test using multiple SATA devices on a single PCI SATA controller that uses the generic ATA driver.  In my case, these were cards using a variety of Silicon Image chipsets (SiI 3112 and 3114).&lt;br /&gt;&lt;br /&gt;All technical credit for this fix goes to &lt;span class="ppt" id="_user_jk@tools.de"&gt;Jürgen&lt;/span&gt; Keil.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_0j7fzDlpfqU/RrvO3mbR1SI/AAAAAAAAAF4/OU5-0KPmR3A/s1600-h/2725.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 61px; height: 61px;" src="http://1.bp.blogspot.com/_0j7fzDlpfqU/RrvO3mbR1SI/AAAAAAAAAF4/OU5-0KPmR3A/s200/2725.jpg" alt="" id="BLOGGER_PHOTO_ID_5096894857902937378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;If he was in the U.S. instead of Germany, I would buy him a lot of beer........................&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1857829104271580502?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1857829104271580502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1857829104271580502' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1857829104271580502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1857829104271580502'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/08/solaris-10-hangs-with-multiple-sata.html' title='Solaris 10 Hangs with Multiple SATA Drives on a PCI SATA Controller'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_0j7fzDlpfqU/RrvIs2bR1RI/AAAAAAAAAFw/kH7LRdujWV4/s72-c/ata_cr6414472_5.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2671387600911936539</id><published>2007-08-09T20:58:00.001-04:00</published><updated>2007-08-09T22:17:16.924-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><title type='text'>Useful 'flar' Options and Flags (taken from the Solaris 10 'flar' manpage)</title><content type='html'>-a author          author is used to provide an author  name&lt;br /&gt;                        for the archive identification section of&lt;br /&gt;                        the new flash  archive.  If  you  do  not&lt;br /&gt;                        specify -a, no author name is included in&lt;br /&gt;                        the identification section.&lt;br /&gt;&lt;br /&gt;     -c                 Compress the archive using compress(1)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     -x exclude ...     Exclude the  file  or  directory  exclude&lt;br /&gt;                        from  the  archive. Note that the exclude&lt;br /&gt;                        file or directory is assumed to be  rela-&lt;br /&gt;                        tive  to  the  alternate  root  specified&lt;br /&gt;                        using -R. If the parent directory of  the&lt;br /&gt;                        file  exclude  is  included  with  the -y&lt;br /&gt;                        option (see -y include),  then  only  the&lt;br /&gt;                        specific  file  or directory specified by&lt;br /&gt;                        exclude is excluded. Conversely,  if  the&lt;br /&gt;                        parent  directory  of an included file is&lt;br /&gt;                        specified for exclusion,  then  only  the&lt;br /&gt;                        file include is included. For example, if&lt;br /&gt;                        you specify:&lt;br /&gt;&lt;br /&gt;                        -x /a -y /a/b&lt;br /&gt;&lt;br /&gt;                        all of /a except for /a/b is excluded. If&lt;br /&gt;                        you specify:&lt;br /&gt;&lt;br /&gt;                        -y /a -x /a/b&lt;br /&gt;&lt;br /&gt;                        all of /a except for /a/b is included.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     -y include ...     Include the file or directory include  in&lt;br /&gt;                        the  archive.  Note that the exclude file&lt;br /&gt;                        or directory is assumed to be relative to&lt;br /&gt;                        the  alternate  root  specified using -R.&lt;br /&gt;                        See the description  of  the  -x  option,&lt;br /&gt;                        above,  for a description of the interac-&lt;br /&gt;                        tion of the -x and -y options.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2671387600911936539?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2671387600911936539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2671387600911936539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2671387600911936539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2671387600911936539'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/08/useful-flar-options-and-flags-taken.html' title='Useful &apos;flar&apos; Options and Flags (taken from the Solaris 10 &apos;flar&apos; manpage)'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-5331367550408381996</id><published>2007-07-29T22:06:00.001-04:00</published><updated>2007-08-09T22:38:25.481-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='living by choice'/><category scheme='http://www.blogger.com/atom/ns#' term='cycling'/><category scheme='http://www.blogger.com/atom/ns#' term='urban living'/><title type='text'>Watch 'Contested Streets'</title><content type='html'>&lt;a style="left: 0px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab visible" href="http://video.google.com/googleplayer.swf?docId=-9067416427722807670&amp;hl=en"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab visible" href="http://video.google.com/googleplayer.swf?docId=-9067416427722807670&amp;hl=en"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab visible" href="http://video.google.com/googleplayer.swf?docId=-9067416427722807670&amp;hl=en"&gt;&lt;/a&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-9067416427722807670&amp;amp;hl=en" flashvars=""&gt;&lt;/embed&gt; &lt;p&gt;&lt;/p&gt;&lt;p&gt;This film totally shaped the way I think about urban transportation and my own bicycling habit/habitat.  It's really good (and positive! - yes, I'm talking to you, Michael Moore).  Also see &lt;a href="http://www.sightline.org/research/sust_toolkit/solutions/bicycle/"&gt;this&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-5331367550408381996?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/5331367550408381996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=5331367550408381996' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5331367550408381996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5331367550408381996'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/07/watch-streets.html' title='Watch &amp;#39;Contested Streets&amp;#39;'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-957233459537662265</id><published>2007-07-17T12:36:00.001-04:00</published><updated>2007-07-17T12:36:07.472-04:00</updated><title type='text'>Father and Daughter</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;p&gt;&lt;object height='350' width='425'&gt;&lt;param value='http://youtube.com/v/RvmTsH4iHBo' name='movie'/&gt;&lt;embed height='350' width='425' type='application/x-shockwave-flash' src='http://youtube.com/v/RvmTsH4iHBo'/&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;A good friend sent this to me.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-957233459537662265?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/957233459537662265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=957233459537662265' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/957233459537662265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/957233459537662265'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/07/father-and-daughter.html' title='Father and Daughter'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-7046985833095339787</id><published>2007-07-07T22:59:00.001-04:00</published><updated>2007-07-07T23:00:04.477-04:00</updated><title type='text'>Practical use of 'mail' in BASH</title><content type='html'>This applies specifically to OS X Server 10.4.8 - changes might be&lt;br /&gt;needed for other systems.&lt;p&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;#!/bin/bash&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;HOST=`hostname`&lt;br /&gt;OS_VERS=`sw_vers | grep ProductVersion`&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;ROOT_CAPACITY=`df -h / | grep "/" | awk '{print $5}'`&lt;br /&gt;DISK_CAPACITIES=`df -hl | grep "/" | awk '{print $5"    "$6}'`&lt;br /&gt;AFP_STATUS=`serveradmin status afp`&lt;br /&gt;SMB_STATUS=`serveradmin status smb`&lt;br /&gt;OD_STATUS=`serveradmin status dirserv`&lt;br /&gt;HTTP_STATUS=`serveradmin status web`&lt;br /&gt;SWUPDATE_STATUS=`serveradmin status swupdate`&lt;br /&gt;NFS_STATUS=`serveradmin status nfs`&lt;br /&gt;SENDMAIL_STATUS=`serveradmin status mail`&lt;br /&gt;UNIX_SNAPSHOT=`w`&lt;br /&gt;RECENT_AUTH_FAILURES=`tail /var/log/secure.log | grep ailed`&lt;br /&gt;RECENT_REBOOTS=`grep reboot /var/log/system.log`&lt;br /&gt;SMART_ERRORS=`system_profiler | grep "S.M.A.R.T." | grep -v&lt;br /&gt;"S.M.A.R.T. status: Verified" | wc -l`&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;echo "&lt;br /&gt;Host Info&lt;br /&gt;$HOST - $OS_VERS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Drive Space&lt;br /&gt;$DISK_CAPACITIES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;AFP&lt;br /&gt;$AFP_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;SMB&lt;br /&gt;$SMB_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Open Directory&lt;br /&gt;$OD_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Web Service&lt;br /&gt;$HTTP_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Software Update Service&lt;br /&gt;$SWUPDATE_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;NFS&lt;br /&gt;$NFS_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Mail (Sendmail only)&lt;br /&gt;$SENDMAIL_STATUS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;--- Additional Details Below ---&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Recent Activity:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;$UNIX_SNAPSHOT&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;Recent Authentication Failures:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;$RECENT_AUTH_FAILURES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;Recent Reboots:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;$RECENT_REBOOTS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;S.M.A.R.T Errors&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;$SMART_ERRORS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;end transmision..." | mail -s "Status report for $HOST" "user@domain.com"&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-7046985833095339787?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/7046985833095339787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=7046985833095339787' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7046985833095339787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7046985833095339787'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/07/practical-use-of-mail-in-bash.html' title='Practical use of &apos;mail&apos; in BASH'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-5216955291104583175</id><published>2007-07-07T21:56:00.001-04:00</published><updated>2007-07-07T21:57:21.933-04:00</updated><title type='text'>Mail From BASH - One Liner</title><content type='html'>&lt;span style="font-family: courier new;"&gt;echo "This is a test." | mail -s "Test" "user@domain.com"&lt;/span&gt;&lt;p&gt;This assumes that you have sendmail or some such running on your box.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-5216955291104583175?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/5216955291104583175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=5216955291104583175' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5216955291104583175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/5216955291104583175'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/07/mail-from-bash-one-liner.html' title='Mail From BASH - One Liner'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-3853345447987514883</id><published>2007-05-14T11:38:00.001-04:00</published><updated>2007-05-14T11:41:15.579-04:00</updated><title type='text'>Fun with ZFS (replacing a raidz pool disk with a larger disk)</title><content type='html'>&lt;span style="font-family: courier new;"&gt;-bash-3.00# mkfile 128m /vdevs/disk1; mkfile 128m /vdevs/disk2; mkfile&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;128m /vdevs/disk3&lt;/span&gt;&lt;p style="font-family: courier new;"&gt;-bash-3.00# zpool create pool1 raidz /vdevs/disk1 /vdevs/disk2 /vdevs/disk3&lt;br /&gt;-bash-3.00# zpool status&lt;br /&gt; pool: pool1&lt;br /&gt;state: ONLINE&lt;br /&gt;scrub: none requested&lt;br /&gt;config:&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;        NAME              STATE     READ WRITE CKSUM&lt;br /&gt;       pool1             ONLINE       0     0     0&lt;br /&gt;         raidz1          ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk1  ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk2  ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk3  ONLINE       0     0     0&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;errors: No known data errors&lt;br /&gt;-bash-3.00# zfs create pool1/fs1&lt;br /&gt;-bash-3.00# zfs list&lt;br /&gt;NAME                   USED  AVAIL  REFER  MOUNTPOINT&lt;br /&gt;pool1                  128K   214M  32.6K  /pool1&lt;br /&gt;pool1/fs1             32.6K   214M  32.6K  /pool1/fs1&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;-bash-3.00# mkfile 512m /vdevs/bigdisk1; mkfile 512m /vdevs/bigdisk2;&lt;br /&gt;mkfile 512m /vdevs/bigdisk3&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;-bash-3.00# zpool replace pool1 /vdevs/disk1 /vdevs/bigdisk1&lt;br /&gt;-bash-3.00# zpool status&lt;br /&gt; pool: pool1&lt;br /&gt;state: ONLINE&lt;br /&gt;scrub: resilver completed with 0 errors on Mon May 14 11:01:46 2007&lt;br /&gt;config:&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;        NAME                   STATE     READ WRITE CKSUM&lt;br /&gt;       pool1                  ONLINE       0     0     0&lt;br /&gt;         raidz1               ONLINE       0     0     0&lt;br /&gt;           replacing          ONLINE       0     0     0&lt;br /&gt;             /vdevs/disk1     ONLINE       0     0     0&lt;br /&gt;             /vdevs/bigdisk1  ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk2       ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk3       ONLINE       0     0     0&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;errors: No known data errors&lt;br /&gt;-bash-3.00# zpool status&lt;br /&gt; pool: pool1&lt;br /&gt;state: ONLINE&lt;br /&gt;scrub: resilver completed with 0 errors on Mon May 14 11:01:46 2007&lt;br /&gt;config:&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;        NAME                 STATE     READ WRITE CKSUM&lt;br /&gt;       pool1                ONLINE       0     0     0&lt;br /&gt;         raidz1             ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk1  ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk2     ONLINE       0     0     0&lt;br /&gt;           /vdevs/disk3     ONLINE       0     0     0&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;errors: No known data errors&lt;br /&gt;-bash-3.00# df -h&lt;br /&gt;Filesystem             size   used  avail capacity  Mounted on&lt;br /&gt;/dev/dsk/c1d1s0        9.6G   3.5G   6.0G    37%    /&lt;br /&gt;/devices                 0K     0K     0K     0%    /devices&lt;br /&gt;ctfs                     0K     0K     0K     0%    /system/contract&lt;br /&gt;proc                     0K     0K     0K     0%    /proc&lt;br /&gt;mnttab                   0K     0K     0K     0%    /etc/mnttab&lt;br /&gt;swap                   825M   692K   825M     1%    /etc/svc/volatile&lt;br /&gt;objfs                    0K     0K     0K     0%    /system/object&lt;br /&gt;/usr/lib/libc/libc_hwcap1.so.1&lt;br /&gt;                      9.6G   3.5G   6.0G    37%    /lib/libc.so.1&lt;br /&gt;fd                       0K     0K     0K     0%    /dev/fd&lt;br /&gt;swap                   825M     4K   825M     1%    /tmp&lt;br /&gt;swap                   825M    24K   825M     1%    /var/run&lt;br /&gt;/dev/dsk/c1d1s7         63G   960M    62G     2%    /export/home&lt;br /&gt;pool1                  214M    34K   214M     1%    /pool1&lt;br /&gt;pool1/fs1              214M    32K   214M     1%    /pool1/fs1&lt;br /&gt;-bash-3.00# mkfile 512m /vdevs/bigdisk2&lt;br /&gt;-bash-3.00# mkfile 512m /vdevs/bigdisk3&lt;br /&gt;-bash-3.00# zpool replace pool1 /vdevs/disk2 /vdevs/bigdisk2&lt;br /&gt;-bash-3.00# zpool replace pool1 /vdevs/disk3 /vdevs/bigdisk3&lt;br /&gt;-bash-3.00# zpool status&lt;br /&gt; pool: pool1&lt;br /&gt;state: ONLINE&lt;br /&gt;scrub: resilver completed with 0 errors on Mon May 14 11:03:19 2007&lt;br /&gt;config:&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;        NAME                   STATE     READ WRITE CKSUM&lt;br /&gt;       pool1                  ONLINE       0     0     0&lt;br /&gt;         raidz1               ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk1    ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk2    ONLINE       0     0     0&lt;br /&gt;           replacing          ONLINE       0     0     0&lt;br /&gt;             /vdevs/disk3     ONLINE       0     0     0&lt;br /&gt;             /vdevs/bigdisk3  ONLINE       0     0     0&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;errors: No known data errors&lt;br /&gt;-bash-3.00# zpool status&lt;br /&gt; pool: pool1&lt;br /&gt;state: ONLINE&lt;br /&gt;scrub: resilver completed with 0 errors on Mon May 14 11:03:19 2007&lt;br /&gt;config:&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;        NAME                 STATE     READ WRITE CKSUM&lt;br /&gt;       pool1                ONLINE       0     0     0&lt;br /&gt;         raidz1             ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk1  ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk2  ONLINE       0     0     0&lt;br /&gt;           /vdevs/bigdisk3  ONLINE       0     0     0&lt;/p&gt;&lt;p style="font-family: courier new;"&gt;errors: No known data errors&lt;br /&gt;-bash-3.00# df -h&lt;br /&gt;Filesystem             size   used  avail capacity  Mounted on&lt;br /&gt;/dev/dsk/c1d1s0        9.6G   3.5G   6.0G    37%    /&lt;br /&gt;/devices                 0K     0K     0K     0%    /devices&lt;br /&gt;ctfs                     0K     0K     0K     0%    /system/contract&lt;br /&gt;proc                     0K     0K     0K     0%    /proc&lt;br /&gt;mnttab                   0K     0K     0K     0%    /etc/mnttab&lt;br /&gt;swap                   823M   692K   822M     1%    /etc/svc/volatile&lt;br /&gt;objfs                    0K     0K     0K     0%    /system/object&lt;br /&gt;/usr/lib/libc/libc_hwcap1.so.1&lt;br /&gt;                      9.6G   3.5G   6.0G    37%    /lib/libc.so.1&lt;br /&gt;fd                       0K     0K     0K     0%    /dev/fd&lt;br /&gt;swap                   822M     4K   822M     1%    /tmp&lt;br /&gt;swap                   822M    24K   822M     1%    /var/run&lt;br /&gt;/dev/dsk/c1d1s7         63G   1.9G    61G     4%    /export/home&lt;br /&gt;pool1                  982M    34K   982M     1%    /pool1&lt;br /&gt;pool1/fs1              982M    32K   982M     1%    /pool1/fs1&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-3853345447987514883?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/3853345447987514883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=3853345447987514883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3853345447987514883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/3853345447987514883'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/05/fun-with-zfs-replacing-raidz-pool-disk.html' title='Fun with ZFS (replacing a raidz pool disk with a larger disk)'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-61863536264711427</id><published>2007-04-19T03:09:00.001-04:00</published><updated>2007-04-19T03:27:53.694-04:00</updated><title type='text'>Quickly Sharing a ZFS filesystem with Samba on Solaris 10</title><content type='html'>Just the commands here, assuming you have a recent distro of Solaris 10 (I was using Solaris Nevada build 55b):&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;su root&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;format&lt;/span&gt;&lt;span style="font-family: times new roman;"&gt;&lt;br /&gt;&lt;br /&gt;this gets us a list of raw devices to group in our zfs pool &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;zpool create raidz [name_of_pool] [device1] [device2] [device3]&lt;span style="font-family: times new roman;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;zfs create [name_of_pool]/[name_of_filesystem]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;path to filesystem will be &lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;/[name_of_pool]/[name_of_filesystem]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;svcadm enable samba&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;svcs -a | grep samba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;this double-checks to make sure samba is up and running properly&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;svcadm enable swat&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;svcs -a | grep swat&lt;/span&gt;&lt;span style="font-family: times new roman;"&gt;&lt;br /&gt;&lt;br /&gt;double-checking again - if any of these services fails or goes to maintenance status, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-family: times new roman;"&gt;we can check it's log in&lt;/span&gt; /var/svc/log/[full_service_title].log&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;firefox&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;(or mozilla or any other modern browser installed on the solaris box - firefox comes installed by default now)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We can now navigate to &lt;a href="http://127.0.0.1:901/"&gt;http://127.0.0.1:901&lt;/a&gt; in the browser and configure our Samba shares.  Log in as root and don't forget to add new users to the Samba config under the Password heading (unless you need to tie Samba authentication to an NT or Active Directory domain or LDAP).&lt;br /&gt;&lt;br /&gt;Create a share with the default User level access, but change the path from the default (&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;/tmp&lt;/span&gt;&lt;/span&gt;) to &lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;/[name_of_pool]/[name_of_filesystem]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;From a client machine, navigate to &lt;span style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;\\[ipaddress]\[sharename]&lt;/span&gt; &lt;/span&gt;(PC) or &lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;smb://[ipaddress]/[sharename]&lt;/span&gt;&lt;/span&gt; (Mac), authenticate and enjoy!&lt;br /&gt;&lt;br /&gt;(Astute readers will not that the web-based SWAT administration tool for Samba is for sissies.  However, I wanted to write a tutorial that fairly inexperienced users could follow easily.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-61863536264711427?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/61863536264711427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/61863536264711427'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/04/quickly-sharing-zfs-filesystem-with.html' title='Quickly Sharing a ZFS filesystem with Samba on Solaris 10'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-2406761689463001359</id><published>2007-03-07T13:19:00.001-05:00</published><updated>2007-03-07T13:19:52.117-05:00</updated><title type='text'>Example script for pushing application updates to OS X clients with ARD</title><content type='html'>In this case I was pushing out a Lotus Notes DST patch.&lt;p&gt;--------------------------&lt;p&gt;&lt;br&gt;#!/bin/bash&lt;p&gt;# space our downloads out over random intervals if we push this out with&lt;br&gt;# ARD&lt;p&gt;echo &amp;quot;preparing&amp;quot;&lt;br&gt;sleep `jot -r 1`&lt;p&gt;# we are grabbing the DST hotfix files in a disk image from our server&lt;p&gt;echo &amp;quot;getting hotfix disk image&amp;quot;&lt;br&gt;curl &lt;a href="http://server.domain.com:8080/DSThotfix_654.dmg"&gt;http://server.domain.com:8080/DSThotfix_654.dmg&lt;/a&gt; -o /tmp/DSThotfix_654.dmg&lt;p&gt;# we are attaching the disk image to our system&lt;p&gt;echo &amp;quot;mounting hotfix disk image&amp;quot;&lt;br&gt;hdiutil attach /tmp/DSThotfix_654.dmg&lt;p&gt;# we are backing up the appropriate files in the Lotus Notes template folder&lt;p&gt;echo &amp;quot;backing up Lotus Notes application template prior to changes -&lt;br&gt;backup files&lt;br&gt;will be stored in /Users/Shared/NotesDSTBackup&amp;quot;&lt;br&gt;ditto /System/Library/User\ Template/English.lproj/Lotus\ Notes/Notes&lt;br&gt;/Users/Shared/NotesDSTBackup/&lt;br&gt;ditto /System/Library/User\ Template/English.lproj/Lotus\ Notes/ndgts&lt;br&gt;/Users//Shared/NotesDSTBackup/&lt;br&gt;ditto /System/Library/User\ Template/English.lproj/Lotus\&lt;br&gt;Notes/NotesLib /Users/Shared/NotesDSTBackup/&lt;p&gt;# we are putting the updated DST hotfix files into the Lotus Notes&lt;br&gt;template folder&lt;p&gt;echo &amp;quot;updating Lotus Notes application template with DST hotfix files&amp;quot;&lt;br&gt;ditto /Volumes/DSThotfix_654/* /System/Library/User\&lt;br&gt;Template/English.lproj/Lotus\ Notes/&lt;p&gt;# we are getting the name of each user folder as [dname] and copying&lt;br&gt;DST hotfix files to the&lt;br&gt;# appropriate subdirectories of each user folder&lt;p&gt;echo &amp;quot;updating each local user profile&amp;#39;s Lotus Notes application files&lt;br&gt;with DST hotfix&amp;quot;&lt;br&gt;for dname in `ls /Users`&lt;br&gt;do ditto /Volumes/DSThotfix_654/* /Users/$dname/Lotus\ Notes/; done&lt;p&gt;# we are making sure that each user&amp;#39;s Lotus Notes directory and&lt;br&gt;contents are owned by that user&lt;br&gt;# we are also setting the group bit to &amp;#39;staff&amp;#39;&lt;p&gt;echo &amp;quot;cleaning up ownership for each local user profile&amp;#39;s Lotus Notes directory&amp;quot;&lt;br&gt;for dname in `ls /Users`&lt;br&gt;do chown -R $dname:staff /Users/$dname/Lotus\ Notes/; done&lt;p&gt;# we are making sure that only the owner of the Lotus Notes directory&lt;br&gt;can access that directory&lt;p&gt;echo &amp;quot;cleaning up ownership for each local user profile&amp;#39;s Lotus Notes directory&amp;quot;&lt;br&gt;for dname in `ls /Users`&lt;br&gt;do chmod -R 700 /Users/$dname/Lotus\ Notes; done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-2406761689463001359?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/2406761689463001359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=2406761689463001359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2406761689463001359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/2406761689463001359'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/03/example-script-for-pushing-application.html' title='Example script for pushing application updates to OS X clients with ARD'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-7656741370359431234</id><published>2007-03-06T17:56:00.001-05:00</published><updated>2007-03-06T17:56:37.302-05:00</updated><title type='text'>A simple 'cp' loop to copy to mutiple directories</title><content type='html'>#!/bin/bash&lt;p&gt;for object in `ls`&lt;br&gt;do cp /path/file1 $object/subdir; done&lt;p&gt;&lt;br&gt;This works when running the script from the parent directory of the&lt;br&gt;dirs you want to copy to.  That is, it will copy the named file to the&lt;br&gt;dirs/dir trees listed when you do an &amp;#39;ls&amp;#39; command in the script&amp;#39;s&lt;br&gt;working directory.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-7656741370359431234?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/7656741370359431234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=7656741370359431234' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7656741370359431234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/7656741370359431234'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/03/simple-cp-loop-to-copy-to-mutiple.html' title='A simple &apos;cp&apos; loop to copy to mutiple directories'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-1763691580492825857</id><published>2007-03-05T15:16:00.001-05:00</published><updated>2007-03-05T15:16:39.975-05:00</updated><title type='text'>'Good News Day'</title><content type='html'>This is not new news (haha) but it&amp;#39;s one of the most amazing things I&amp;#39;ve read in a good while:&lt;br&gt;&lt;br&gt;&lt;a href="http://dilbertblog.typepad.com/the_dilbert_blog/2006/10/good_news_day.html"&gt;http://dilbertblog.typepad.com/the_dilbert_blog/2006/10/good_news_day.html &lt;/a&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-1763691580492825857?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/1763691580492825857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=1763691580492825857' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1763691580492825857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/1763691580492825857'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/03/good-news-day.html' title='&apos;Good News Day&apos;'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-580040614891047681</id><published>2007-02-15T22:12:00.000-05:00</published><updated>2007-02-15T22:52:56.831-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='raid'/><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><category scheme='http://www.blogger.com/atom/ns#' term='zfs'/><category scheme='http://www.blogger.com/atom/ns#' term='leopard'/><category scheme='http://www.blogger.com/atom/ns#' term='fibre channel'/><category scheme='http://www.blogger.com/atom/ns#' term='solaris'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>ZFS and OS X</title><content type='html'>&lt;a href="http://themachackers.com/2006/12/19/zfs-on-mac-os-x-105-a-closer-look/"&gt;This&lt;/a&gt; (probably NDA-oblivious) post details some pretty cool possible updates to the forthcoming 'Leopard' OS from Apple, Inc.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.sun.com/2004-0914/feature/"&gt;heavy lifting&lt;/a&gt; has already been done by Sun Microsystems engineers.  It's worth digging in to the documentation on ZFS to see how flexible the filesystem is and how nice it is to manage.&lt;br /&gt;&lt;br /&gt;Right now I'm battling with an old Ultra 5 SPARC workstation to get it to see 4 IDE drives so that I can do some ZFS RAID-Z2 goodness across a few disks.  I'll update when it's accomplished.&lt;br /&gt;&lt;br /&gt;It would seem fair to guess we might see ZFS pushed as solution for scalable storage on Leopard Server when it's released.  The new x86-based &lt;a href="http://www.apple.com/xserve/"&gt;Xserve&lt;/a&gt; from Apple doesn't appear to offer a hardware raid controller option, but with 4 cores and ZFS, I suppose you could argue that a dedicated raid controller isn't needed (and then fill up your PCI-X slots with &lt;a href="http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/wa/RSLID?mco=6C04E0B8&amp;nplm=MA462G%2FA"&gt;dual&lt;/a&gt; or &lt;a href="http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/wa/RSLID?mco=6C04E0D7&amp;amp;nplm=MA465G%2FA"&gt;quad&lt;/a&gt;-channel 4Gb fibre-channel cards).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-580040614891047681?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/580040614891047681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=580040614891047681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/580040614891047681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/580040614891047681'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2007/02/zfs-and-os-x.html' title='ZFS and OS X'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-115464765269843108</id><published>2006-08-03T19:18:00.000-04:00</published><updated>2006-08-03T19:29:00.790-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>Migrate User Homes in OS X</title><content type='html'>Get the sample script &lt;a href=http://blake.irvin.googlepages.com/MigrateFilestoADAccount.command&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This script was specifically written to be run interactively during the migration of generic to Directory-originated user accounts.  It could easily be modified to perform other functions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-115464765269843108?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/115464765269843108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=115464765269843108' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/115464765269843108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/115464765269843108'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/08/migrate-user-homes-in-os-x.html' title='Migrate User Homes in OS X'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-115385727678061468</id><published>2006-07-25T15:52:00.000-04:00</published><updated>2006-07-25T15:54:36.790-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>Control Mac OS X NetInstall with VNC</title><content type='html'>Just got this to work!  Very handy for those in the enterprise that need to maintain machines in remote locations.&lt;br /&gt;&lt;br /&gt;A  hidden bonus is that one can use Disk Utility to format/zero/repair a disk while in the NetInstall session.  I hope to roll a .pkg file for this soon (that can be applied to an existing NetInstall image).&lt;br /&gt;&lt;br /&gt;More to come...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-115385727678061468?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/115385727678061468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=115385727678061468' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/115385727678061468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/115385727678061468'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/07/control-mac-os-x-netinstall-with-vnc.html' title='Control Mac OS X NetInstall with VNC'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114961990659795495</id><published>2006-06-06T14:51:00.000-04:00</published><updated>2006-06-06T14:51:46.636-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>Setting NTP Time by Hand in OS X</title><content type='html'>&lt;span class="q"&gt;The simple fix:&lt;br&gt;&lt;br&gt;sudo ntpdate -u host.server.domain &lt;br&gt;(where host.server.domain is the time server)&lt;/span&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114961990659795495?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114961990659795495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114961990659795495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114961990659795495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114961990659795495'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/06/setting-ntp-time-by-hand-in-os-x.html' title='Setting NTP Time by Hand in OS X'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114909921141577167</id><published>2006-05-31T14:13:00.000-04:00</published><updated>2006-05-31T14:13:31.423-04:00</updated><title type='text'>Malware?  Nuke your computer.</title><content type='html'>I really like this company's attitude.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.baselinemag.com/article2/0,1540,1946013,00.asp"&gt;Microsoft Says Recovery from Malware Becoming Impossible&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114909921141577167?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114909921141577167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114909921141577167' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114909921141577167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114909921141577167'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/malware-nuke-your-computer.html' title='Malware?  Nuke your computer.'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114800056661602741</id><published>2006-05-18T20:58:00.000-04:00</published><updated>2006-05-18T21:02:46.630-04:00</updated><title type='text'>Windows Vista: What are You Standing On?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/2930/1214/1600/Picture%201.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/2930/1214/320/Picture%201.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Here you can see a pretty background picture from the Microsoft's 'get ready for Vista' website.  It looks a bit like a person standing on top of a mountain of manure.  Is this some kind of subtle hint?  (Oh, Vista requires 40gb of free space - here I was thinking 4gb for my OS X install at home was excessive.  A mountain indeed.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114800056661602741?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114800056661602741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114800056661602741' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114800056661602741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114800056661602741'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/windows-vista-what-are-you-standing-on.html' title='Windows Vista: What are You Standing On?'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114773699162385079</id><published>2006-05-15T19:49:00.000-04:00</published><updated>2006-05-15T19:49:51.673-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>Script to Install OS X Security Updates</title><content type='html'>This script can be run from remote (ssh) login or via cron or launchd jobs. It notifies the user of what's about to happen via System Events:&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;#!/bin/bash&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;INSTALLSTRING=`softwareupdate -l -r | grep -B 1 Security | grep ! | awk '{print $1 $2}' | tr -d '\n' | tr '!' ' '`&amp;nbsp; &lt;br&gt;UPDATESNEEDED=`softwareupdate -l -r | grep Security | wc -l`&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;if [ &amp;quot;$UPDATESNEEDED&amp;quot; -ge &amp;quot;1&amp;quot; ]&amp;nbsp;&lt;br&gt;	&amp;nbsp;&lt;br&gt;	then&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt; osascript -e 'tell app &amp;quot;System Events&amp;quot; to display dialog &amp;quot;Critical security updates are being added to your machine. Your applications may run a bit slowly during this process. You will be notified when the updates are complete.&amp;quot; buttons &amp;quot;OK&amp;quot; default button 1 with icon caution giving up after 60'&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;	softwareupdate -i $INSTALLSTRING&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt; osascript -e 'tell app &amp;quot;System Events&amp;quot; to display dialog &amp;quot;Critical security updates have been installed. Please restart your computer as soon as possible.&amp;quot; buttons &amp;quot;OK&amp;quot; default button 1 with icon stop'&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;elif [ &amp;quot;$UPDATESNEEDED&amp;quot; -lt &amp;quot;1&amp;quot; ]&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;	then&amp;nbsp;&lt;br&gt;	exit&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;fi &lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114773699162385079?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114773699162385079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114773699162385079' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114773699162385079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114773699162385079'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/script-to-install-os-x-security.html' title='Script to Install OS X Security Updates'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114748579006783386</id><published>2006-05-12T22:03:00.000-04:00</published><updated>2006-05-12T22:05:40.403-04:00</updated><title type='text'>Nexenta</title><content type='html'>&lt;p class="mobile-post"&gt;After playing around with Ubuntu for a good while, I was discussing&lt;br /&gt;that distro's merits with one of my friends.  He pointed out that&lt;br /&gt;there was rumored to be a similar distro of GNU/OpenSolaris&lt;br /&gt;hybrid-ness floating about.&lt;/p&gt;&lt;p class="mobile-post"&gt;Well, he was correct - about 6 hours later I'm typing this post from&lt;br /&gt;an old ThinkCentre running &lt;a href="http://www.nexenta.com"&gt;Nexenta&lt;/a&gt;.  It's pretty cool.  I think&lt;br /&gt;I might use it for some real work in the future, though at the moment&lt;br /&gt;it's still just an Alpha build.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114748579006783386?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114748579006783386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114748579006783386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114748579006783386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114748579006783386'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/nexenta.html' title='Nexenta'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114744527142174573</id><published>2006-05-12T10:47:00.000-04:00</published><updated>2006-05-12T10:53:56.046-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>NeoOffice 2 Alpha</title><content type='html'>&lt;p class="mobile-post"&gt;This may be an alpha version, but I'm seriously impressed so far.&lt;br /&gt;Check it out &lt;a href="http://www.neooffice.org"&gt;here&lt;/a&gt;.  Certainly worth the $10.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114744527142174573?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114744527142174573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114744527142174573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114744527142174573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114744527142174573'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/neooffice-2-alpha.html' title='NeoOffice 2 Alpha'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114740723033687885</id><published>2006-05-12T00:08:00.000-04:00</published><updated>2006-05-31T14:17:14.326-04:00</updated><title type='text'>Nice Fan Art from WoW (World of Warcraft)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/2930/1214/1600/ss363.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/2930/1214/320/ss363.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114740723033687885?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114740723033687885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114740723033687885' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114740723033687885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114740723033687885'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/nice-fan-art-from-wow-world-of.html' title='Nice Fan Art from WoW (World of Warcraft)'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-114740610457443354</id><published>2006-05-11T23:55:00.000-04:00</published><updated>2006-05-11T23:55:04.580-04:00</updated><title type='text'>This is a test of the blog-by-mail system</title><content type='html'>&lt;p class="mobile-post"&gt;Just a test.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-114740610457443354?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/114740610457443354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=114740610457443354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114740610457443354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/114740610457443354'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2006/05/this-is-test-of-blog-by-mail-system.html' title='This is a test of the blog-by-mail system'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-111886313205156430</id><published>2005-06-15T15:10:00.000-04:00</published><updated>2005-06-15T15:18:52.053-04:00</updated><title type='text'>Deprecation of June 13th</title><content type='html'>&lt;img src="http://photos16.flickr.com/19556647_4589994ccb.jpg?v=0"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-111886313205156430?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/111886313205156430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=111886313205156430' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/111886313205156430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/111886313205156430'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2005/06/deprecation-of-june-13th.html' title='Deprecation of June 13th'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13694219.post-111884696243967028</id><published>2005-06-15T10:48:00.000-04:00</published><updated>2005-06-15T10:49:22.443-04:00</updated><title type='text'>Toe Dipping</title><content type='html'>I have just dipped a toe in the emerging world of the hypertext weblog.  I can't tell yet if the water is cold or hot (or if it's even water).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13694219-111884696243967028?l=www.okboot.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.okboot.org/feeds/111884696243967028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13694219&amp;postID=111884696243967028' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/111884696243967028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13694219/posts/default/111884696243967028'/><link rel='alternate' type='text/html' href='http://www.okboot.org/2005/06/toe-dipping.html' title='Toe Dipping'/><author><name>blake</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_0j7fzDlpfqU/TIExo94QlCI/AAAAAAAAAt0/uFiILTjo2_c/S220/IMG_0298.jpg'/></author><thr:total>0</thr:total></entry></feed>
