1.\" Copyright (c) 2007 The DragonFly Project. All rights reserved. 2.\" 3.\" This code is derived from software contributed to The DragonFly Project 4.\" by Matthew Dillon <dillon@backplane.com> 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in 14.\" the documentation and/or other materials provided with the 15.\" distribution. 16.\" 3. Neither the name of The DragonFly Project nor the names of its 17.\" contributors may be used to endorse or promote products derived 18.\" from this software without specific, prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 23.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 24.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 25.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 26.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 27.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 28.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 29.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 30.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31.\" SUCH DAMAGE. 32.\" 33.\" $DragonFly: src/sbin/newfs_hammer/newfs_hammer.8,v 1.10 2008/07/27 16:47:19 thomas Exp $ 34.Dd July 24, 2008 35.Dt NEWFS_HAMMER 8 36.Os 37.Sh NAME 38.Nm newfs_hammer 39.Nd construct a new HAMMER file system 40.Sh SYNOPSIS 41.Nm 42.Fl L Ar label 43.Op Fl b Ar bootsize 44.Op Fl f 45.Op Fl m Ar savesize 46.Op Fl u Ar undosize 47.Op Fl V Ar version 48.Ar special ... 49.Sh DESCRIPTION 50The 51.Nm 52utility creates a 53.Nm HAMMER 54file system on device 55.Ar special . 56If multiple devices are specified a single 57.Nm HAMMER 58file system is created 59which spans all of them. 60Each 61.Ar special 62will constitute a volume which the 63.Nm HAMMER 64file system is built on. 65.Nm HAMMER 66file systems are sector-size agnostic, however the 67.Dx 68implementation requires the sector size to be no larger than 16K. 69.Nm HAMMER 70file systems start at a relative offset of 0 and may only be created 71under out-of-band disk labels 72.Po 73.Xr disklabel64 5 74or 75.Xr gpt 8 76labels 77.Pc , 78or in 79.Xr disklabel 5 80partitions which do not overlap the label area (have a starting sector 81greater then 16). 82.Pp 83.Nm HAMMER 84filesystems are designed for large storage systems, up to 1 Exabyte, and 85will not operate efficiently on small storage systems. 86The minimum recommended filesystem size is 50GB. 87.Nm HAMMER 88must reserve 500MB to 1GB of its storage for reblocking and UNDO. 89In addition, HAMMER filesystems operating normally, with full history 90retention and daily snapshots, do not immediately reclaim space when 91files are deleted. 92A regular system maintenance cron job runs once a day to handle reclamation. 93.Pp 94.Nm HAMMER 95works best when the machine's normal workload would not otherwise fill 96the filesystem up in the course of 60 days of operation. 97.Pp 98The options are as follows: 99.Bl -tag -width indent 100.It Fl L Ar label 101All 102.Nm HAMMER 103file systems must be named and names should be unique on a 104per-machine basis. 105.It Fl b Ar bootsize 106Specify a fixed area in which a boot related kernel and data can be stored. 107The 108.Ar bootsize 109is specified in bytes. 110By default a boot area of approximately 4MB will be created. 111.It Fl f 112Force the creation of a 113.Nm HAMMER 114file system with less than 100M UNDO FIFO. 115This should not be used under normal circumstances. 116.It Fl m Ar savesize 117Specify a fixed area which 118.Nm HAMMER 119may use as a memory log. 120This area is currently unused. 121The 122.Ar savesize 123is specified in bytes. 124.It Fl u Ar undosize 125Specify the size of the fixed UNDO FIFO. 126The 127.Ar undosize 128is specified in bytes. 129By default 0.1% of the root 130volume's size is used, with a reasonable minimum and a reasonable cap. 131The UNDO FIFO is used to sequence meta-data out to the media for instant 132crash recovery. 133.It Fl V Ar version 134Specify the HAMMER filesystem version to format. 135By default 136.Nm 137formats the filesystem using the highest production version number 138supported by the HAMMER VFS by checking the vfs.hammer.supported_version 139sysctl. 140If you need to maintain compatibility with an older version of HAMMER 141you may specify the version with this option. 142.El 143.Pp 144The 145.Ar bootsize , 146.Ar savesize 147and 148.Ar undosize 149can be given with a suffix of 150.Cm K , M , G 151or 152.Cm T 153meaning kilo, mega, giga and tera. 154Lower case can also be used for suffix. 155.Sh EXAMPLES 156.Bd -literal -offset indent 157newfs_hammer -L Home /dev/ad0s1d 158.Ed 159.Pp 160Create a file system named 161.Sq Home 162on 163.Pa /dev/ad0s1d . 164.Sh DIAGNOSTICS 165Exit status is 0 on success and 1 on error. 166.Sh SEE ALSO 167.Xr disklabel 5 , 168.Xr disklabel64 5 , 169.Xr HAMMER 5 , 170.Xr fdisk 8 , 171.Xr gpt 8 , 172.Xr newfs 8 173.Sh HISTORY 174The 175.Nm 176utility first appeared in 177.Dx 1.11 . 178.Sh AUTHORS 179.An Matthew Dillon Aq dillon@backplane.com 180