Working with Shares > Shares in the BUI
The
Shares UI is accessed from Shares > Shares. The default view shows shares across all
projects on the system.
List of Shares
The default view is a list of all shares on the system. This list allows you to rename shares,
move shares between projects, and edit individual shares. The shares are divided into two lists,
"Filesystems" and "LUNs," that can be selected by switching tabs on this view. The following fields
are displayed for each share:
Table 12-2 BUI Shares List
|
|
Name
|
Name of the share. If looking at all projects, this will include the project name as well. The
share name is an editable text field. Clicking on the name will allow you to enter a new name.
Hitting return or moving focus from the name will commit the change. You will be asked to confirm
the action, as renaming shares requires disconnecting active clients.
|
Size
|
For filesystems, this is the total size of the filesystem. For LUNs it is the size of the
volume, which may or may not be thinly provisioned. See the Usage Statistics for more information.
|
Mountpoint
|
Mountpoint of the filesystem. This is the path available over NFS, and the relative path for
FTP and HTTP. Filesystems exported over SMB only use their resource name, though each still need a
unique mountpoint somewhere on the system.
|
GUID
|
|
|
The following tools are available for each share:
Table 12-3 BUI Shares > Shares Icons
|
|
|
Move a share to a different project. If the project panel is not expanded, this will
automatically expand the panel until the share is dropped onto a project.
|
|
Edit an individual share (also accessible by double-clicking the row).
|
|
Destroy the share. You will be prompted to confirm this action, as it will destroy all data in
the share and cannot be undone.
|
|
Editing a Share
To edit a share, click on the pencil icon or double-click the row in the share list. This will
select the share, and give several different tabs to choose from for editing properties of the
share. The complete set of functionality can be found in the section for each tab:
The name of the share is presented in the upper left corner to the right of the project panel.
The first component of the name is the containing project, and clicking on the project name will
navigate to the [[
Shares:Projects|project details]]. The name of the share can also be changed by clicking
on the share name and entering new text into the input. You will be asked to confirm this action, as
it will require disconnecting active clients of the share.
Usage Statistics
On the left side of the view (beneath the project panel when expanded) is a table explaining
the current space usage statistics. These statistics are either for a particular share (when editing
a share) or for the pool as a whole (when looking at the list of shares). If any properties are
zero, then they are excluded from the table. The following usage statistics are shown:
-
Available space - This statistic is implicitly shown as the capacity in terms of capacity
percentage in the title. The available space reflects any quotas on the share or project, or the
absolute capacity of the pool. The number shown here is the sum of the total space used and the
amount of available space.
-
Referenced Data - The amount of data referenced by the data. This includes all filesystem data
or LUN blocks, in addition to requisite metadata. With compression, this value may be much less than
the logical size of the data contained within the share. If the share is a clone of a snapshot, this
value may be less than the physical storage it could theoretically include, and may be zero.
-
Snapshot Data - The amount of space used by all snapshots of the share, including any project
snapshots. This size is not equal to the sum of unique space consumed by all snapshots. Blocks that
are referenced by multiple snapshots are not included in the per-snapshot usage statistics, but will
show up in the share's snapshot data total.
-
Unused Reservation - If a filesystem has a reservation set, this value indicates the amount of
remaining space that is reserved for the filesystem. This value is not set for LUNs. The ZFSSA
prevents other shares from consuming this space, guaranteeing the filesystem enough space. If the
reservation does not include snapshots, then there must be enough space when taking a snapshot for
the entire snapshot to be overwritten. For more information on reservations, see the general properties section.
-
Total Space - The sum of referenced data, snapshot data, and unused reservation.
Static Properties
The left side of the shares view also shows static (create time) properties when editing a
particular share. These properties are set at creation time, and cannot be modified once they are
set. The following static properties are shown:
-
Compression Ratio - If compression is enabled, this shows the compressions ratio currently
achieved for the share. This is expressed as a multiplier. For example, a compression of 2x means
that the data is consuming half as much space as the uncompressed contents. For more information on
compression and the available algorithms, see the general properties section.
-
Case Sensitivity - Controls whether directory lookups are case-sensitive or case-insensitive.
It supports the following options:
|
|
|
Mixed
|
mixed
|
Case sensitivity depends on the protocol being used. For NFS, FTP, and HTTP, lookups are
case-sensitive. For SMB, lookups are case-insensitive. This is default, and prioritizes conformance
of the various protocols over cross-protocol consistency. When using this mode, it's possible to
create files that are distinct over case-sensitive protocols, but clash when accessed over SMB. In
this situation, the SMB server will create a "mangled" version of the conflicts that uniquely
identify the filename.
|
Insensitive
|
insensitive
|
All lookups are case-insensitive, even over protocols (such as NFS) that are traditionally
case-sensitive. This can cause confusion for clients of these protocols, but prevents clients from
creating name conflicts that would cause mangled names to be used over SMB. This setting should only
be used where SMB is the primary protocol and alternative protocols are considered second-class,
where conformance to expected standards is not an issue.
|
Sensitive
|
sensitive
|
All lookups are case-sensitive, even over SMB where lookups are traditionally
case-insensitive. In general, this setting should not be used because the SMB server can deal with
name conflicts via mangled names, and may cause Windows applications to behave strangely.
|
|
-
Reject non UTF-8 - This setting enforces UTF-8 encoding for all files and directories. When
set, attempts to create a file or directory with an invalid UTF-8 encoding will fail. This only
affects NFSv3, where the encoding is not defined by the standard. NFSv4 always uses UTF-8, and SMB
negotiates the appropriate encoding. This setting should normally be "on", or else SMB (which must
know the encoding in order to do case sensitive comparisons, among other things) will be unable to
decode filenames that are created with and invalid UTF-8 encoding. This setting should only be set
to "off" in pre-existing NFSv3 deployments where clients are configured to use different encodings.
Enabling SMB or NFSv4 when this property is set to "off" can yield undefined results if a NFSv3
client creates a file or directory that is not a valid UTF-8 encoding. This property must be set to
"on" if the normalization property is set to anything other than "none".
-
Normalization - This setting controls what unicode normalization, if any, is performed on
filesystems and directories. Unicode supports the ability to have the same logical name represented
by different encodings. Without normalization, the on-disk name stored will be different, and
lookups using one of the alternative forms will fail depending on how the file was created and how
it is accessed. If this property is set to anything other than "none" (the default), the "Reject non
UTF-8" property must also be set to "on". For more information on how normalization works, and how
the different forms work, see the Wikipedia entry on unicode normalization.
|
|
|
None
|
none
|
No normalization is done.
|
Form C
|
formC
|
Normalization Form Canonical Composition (NFC) - Characters are
decomposed and then recomposed by canonical equivalence.
|
Form D
|
formD
|
Normalization Form Canonical Decomposition (NFD) - Characters are
decomposed by canonical equivalence.
|
Form KC
|
formKC
|
Normalization Form Compatibility Composition (NFKC) - Characters are
decomposed by compatability equivalence, then recomposed by canonical equivalence.
|
Form KD
|
formKD
|
Normalization Form Compatibility Decomposition (NFKD) - Characters are
decomposed by compatibility equivalence.
|
|
-
Volume Block Size - The native block size for LUNs. This can be any power of 2 from 512 bytes
to 1M, and the default is 8K.
-
Origin - If this is a clone, this is the name of the snapshot from which it was cloned.
-
Data Migration Source - If set, then this filesystem is actively shadowing an existing
filesystem, either locally or over NFS. For more information about data migration, see the section
on Chapter 14, Shadow Migration.
Shares Project Panel
In the BUI, the set of available projects is always available via the project panel at the
left side of the view. To expand or collapse the project panel, click the triangle by the "Projects"
title bar.
Table 12-4 Project Panel Icons
|
|
|
Expand project panel
|
|
Collapse project panel
|
|
Selecting a project from the panel will navigate to the Projects view for the selected project. This project panel will also expand automatically
when the move tool is clicked on a row within the share list. You can then drag and drop the share
to move it between projects. The project panel also allows a shortcut for creating new projects, and
reverting to the list of shares across all projects. Clicking the "All" text is equivalent to
selecting the "
Shares" item in the navigation bar.
The project panel is a convenience for systems with a relatively small number of projects. It
is not designed to be the primary interface for managing a large number of projects. For this task,
see the Projects view.
Creating a Share
-
To view shares in a project or across all projects, go to Shares > Shares.
-
Select Filesystems or LUNs.
-
Click the plus icon next to Filesystems or Luns.
The Create Filesystem or Create LUN dialog box appears.
-
In the Create Filesystem or Create LUN dialog box, select or type the properties you want to
use.
The properties for each type of shares are defined in the following locations:
For Filesystems:
For LUNs: