mkvob

Creates and registers a versioned object base (VOB)

APPLICABILITY


Product

Command Type

ClearCase


cleartool subcommand


ClearCase LT


cleartool subcommand


Attache


command


Platform

UNIX


Windows

SYNOPSIS

mkvob -tag vob-tag [ -ucm·project ]

[ -c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment ]
[ -tco·mment tag-comment ] [ -reg·ion network-region ]
[ -opt·ions mount-options ] [ -nca·exported ]
[ -pub·lic ] [ -pas·sword tag-registry-password ]
{ [ -hos·t hostname -hpa·th host-storage-pname -gpa·th global-storage-pname ]
vob-storage-pname | -stgloc { vob-stgloc-name | -auto } }
mkvob -tag vob-tag [ -ucm·project ]

[ -c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment ]
[ -tco·mment tag-comment ] [ -reg·ion network-region ]
[ -opt·ions mount-options ] [ -pub·lic ] [ -pas·sword tag-registry-password ]
{ [ -hos·t hostname -hpa·th host-storage-pname -gpa·th global-storage-pname ]
vob-storage-pname | -stgloc { vob-stgloc-name | -auto } }
mkvob -tag vob-tag [ -ucm·project ]

[ -c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment ]
[ -tco·mment tag-comment ] [ -stg·loc vob-stgloc-name ]

NOTE: In ClearCase LT, you can run this command only on the ClearCase LT server host.

DESCRIPTION

The mkvob command creates a new versioned object base, or VOB, as follows:

A VOB storage directory is the root of a directory tree whose principal contents are a VOB database and a set of storage pools. See the mkstgloc reference page for details.

VOB DIRECTORY ELEMENTS

mkvob creates the following directory elements in a VOB:

DEFAULT STORAGE POOLS

Each VOB storage directory is created with default storage pool subdirectories:

sdft

Default source storage pool

cdft

Default cleartext storage pool

ddft

Default derived object storage pool (ClearCase and Attache dynamic views)

ACCESS PERMISSIONS

In considering access permissions, it is important to distinguish these two top-level directories:

ClearCase, ClearCase LT, and Attache implement their own access scheme that goes beyond the standard operating system facilities. These settings control access to many operations involving the VOB; they can be changed with the protectvob command.

WARNING: Do not use operating system permission-setting utilities on a VOB storage directory. This creates inconsistencies and causes confusion.

See also the protect reference page (this command affects access to individual elements and shared derived objects) and the Administrator's Guide.

UNIX VOBs

When you create a VOB on a UNIX system, you become its VOB owner and your groups become its group list. These settings control access to many operations involving the VOB; they can be changed with the protectvob command.

Your operating system-level UID and GID are assigned to the VOB storage and the default storage pools. The mode of the VOB storage directory is set according to your current umask setting. This affects which users, and which views, can access the VOB. The modes of storage pool directories are set to 755, regardless of your current umask setting.

The mode of the VOB root directory, by contrast, is derived from your current umask setting. The mode can changed subsequently with the protect command. Note that the w permission on this directory (as on any directory element) affects only the creation of view-private objects; changes to the VOB itself are controlled by ClearCase or ClearCase LT permissions, not those at the operating system level.

Windows VOBS

When you create a VOB on a Windows system, you become its VOB owner and your primary group becomes the VOB's assigned group. These settings control access to many operations involving the VOB; they can be changed with the protectvob command.

Your operating system-level user name and the name of the ClearCase administrators group are assigned to the VOB storage and the default storage pools. All users can read and search the storage pools, but only the VOB owner and ClearCase or ClearCase LT server processes can modify them.

INTEROP TEXT MODE SUPPORT

By default, VOBs are created with interop text mode support enabled. In this mode, the VOB database keeps track of the number of lines in all versions of each text file. This mode is required to support access to the VOB by interop text mode views (see the mkview reference page). To change the state of a VOB's interop text mode support, use the msdostext_mode utility. For more information, see the Administrator's Guide.

CLEARCASE AND ATTACHE-REGIONAL TAGS

mkvob creates exactly one VOB-tag for the newly created VOB. This tag applies to the local host's network region by default. To make additional VOB-tags for other regions, use the mktag command. In general, the VOB-tags for a given VOB should all be public or all private.

CLEARCASE AND ATTACHE DYNAMIC VIEWS-PUBLIC AND PRIVATE VOBS

Some VOBs are to be shared, and others are to be used primarily by their creators. Accordingly, there are two kinds of VOB-tags: public and private.

UNIX-Public VOB Tags

A public VOB-tag specifies a location at which any dynamic-view user can mount the VOB. Furthermore, after a public VOB is mounted on a host, any user on that host can access it (subject to the standard access permissions).

Typically, all public VOBs are mounted at startup time with the command cleartool mount -all. (To create a public VOB that is not mounted automatically, specify -options noauto in the mkvob command.)

When creating a public VOB-tag with mkvob or mktag, you must supply the network's VOB-tag password; if you don't use the -password option, you are prompted to provide one.

You need not create a public VOB's mount-over directory; the cleartool mount command creates it, if necessary.

UNIX-Private VOB Tags

A private VOB-tag specifies a mount point at which only the VOB's owner (usually, its creator) can mount the VOB using cleartool. For example:

cleartool mount /vobs/myPrivateVob

root can use the cleartool mount vob-tag command to bypass the "owner only" mount restriction. The command cleartool mount -all does not mount private VOBs.

After a private VOB is mounted, any user can access it (subject to the standard access permissions). You must explicitly create the mount-over directory for a private VOB; the cleartool mount command does not create it automatically.

Windows-Public VOB Tags

A public VOB can be activated with the following command:

cmd-context mount -all

Usually, the system administrator automates this command for users in either of two ways:

This technique is particularly useful because, in its role as a network provider, the MVFS deactivates all VOBs and views on the local host at user logon time. That is, each time a user logs on, the dynamic-views drive (by default drive M) is empty until VOBs and views are reactivated.

See the mount reference page for information on persistent VOB mounting.

When creating a public VOB-tag with mkvob or mktag, you must supply the network's VOB-tag password; if you don't use the -password option, you are prompted to type one. See rgy_passwd for information on how to create or change the VOB registry password.

Windows-Private VOB Tags

Any user can mount any VOB, public or private. The private designation means only that a VOB must be mounted separately, by name.

UNIX and Windows-Private-to-Public VOB Conversion

To convert a private VOB to a public VOB, use a command like this:

cmd-context mktag -vob -tag \vob3.p -replace -public \\saturn\users\vbstore\private3.vbs

This replaces the VOB's private VOB-tag with a public one. mktag prompts you to enter the VOB-tag password.

CLEARCASE, CLEARCASE LT, AND ATTACHE SNAPSHOT VIEWS-ACCESSING PUBLIC AND PRIVATE VOBS

For an explanation of public and private VOBs, see CLEARCASE AND ATTACHE DYNAMIC VIEWS-ACTIVATING THE VOB.

CLEARCASE AND ATTACHE DYNAMIC VIEWS-ACTIVATING THE VOB

A VOB cannot be used for development work in a dynamic view until it is activated with the cleartool or Attache mount command. This causes the VOB's storage directory to be mounted on the host at the VOB-tag location, as a file system of type MVFS. See the mount reference page for details.

CLEARCASE ON UNIX-MARKING A VOB FOR EXPORT

A VOB to be used by some view for NFS access must be marked for export. Each export VOB is assigned an export ID, which ensures that NFS-exported view/VOB combinations have stable NFS file handles across server reboots or shutdown and restart of ClearCase.

If the VOB is registered in multiple regions, the export marking must appear on all of that VOB's tags in all the regions in which it is registered. To mark a VOB for export, use the -ncaexported option. To mark an existing VOB for export, use mktag -replace -ncaexported.

The VOB export ID is stored in the mount options field in the VOB-tag registry. If you use the -ncaexported option and specify additional mount options in the mktag or mkvob command, the mount options field includes an appropriate export ID mount option.

For information on exporting VOBs, see the export_mvfs reference page.

NOTE: Marking a VOB for export is not required for NFS export to work, but it is required if you want to avoid stale file handle messages after a server restart.

CLEARCASE AND ATTACHE-LOCATION OF THE VOB DATABASE DIRECTORY

The VOB database directory must be located on the VOB server host or on a supported network attached storage device that has been configured for VOB storage. See the Administrator's Guide for a discussion of network attached storage devices.

CLEARCASE AND ATTACHE-VOB STORAGE DIRECTORY ON A NETWORK ATTACHED STORAGE DEVICE.

You may create a VOB with storage on a supported network attached storage (NAS) device. We recommend using a server storage location for this purpose. See the mkstgloc reference page for information. To use mkvob to create a VOB that resides on a NAS device, you must specify the option set, -host -hpath -gpath. (NAS devices must be specially configured for use with ClearCase. See the Administrator's Guide for details.)

RESTRICTIONS

None.

OPTIONS AND ARGUMENTS

SPECIFYING THE VOB-TAG.  Default: None.

-tag vob-tag
ClearCase, ClearCase LT, and Attache on UNIX-VOB tags are names for VOBs that are entered in the registry and are of either single-component (/vob1) or multicomponent (/vob/src) form. The VOB tag is where the VOB appears under the view root.
ClearCase and Attache dynamic views on UNIX-A pathname-typically multicomponent-that specifies the mount-over directory at which the VOB is mounted as a file system of type MVFS. The VOB-tag is entered in the VOB tag registry. If you are creating a private VOB (no -public option), you must also create the mount-over directory on each host where you will mount the VOB. (The cleartool mount command creates mount-over directories for public VOBs.)
ClearCase LT on UNIX-The VOB tag must be of the single-component form.
ClearCase and Attache-If your network has multiple regions from which the VOB is to be accessed, use mktag to create an additional VOB-tag for each region.
ClearCase, ClearCase LT, and Attache on Windows-VOB tags are names for VOBs of the form \dirname. The backslash is required. The VOB tag is entered in the registry and is where the VOB appears under the view root.

SPECIFYING THE KIND OF VOB.  Default: A standard (that is, nonproject) VOB.

-ucm·project

Creates a UCM project VOB for storing UCM-related objects including activities, baselines, components, folders, projects, and streams. Typically, a single project VOB is shared by multiple source VOBs-those that store versioned source code, documents, and so on.
ClearCase LT-You cannot create more than one project VOB.

EVENT RECORDS AND COMMENTS. Default: Creates one or more event records, with commenting controlled by your .clearcase_profile file (default: -cqe). See the comments reference page. Comments can be edited with chevent.

-c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment

Overrides the default with the option you specify. See the comments reference page.
-tco·mment tag-comment

Adds a comment to the VOB-tag's entry in the vob_tag registry file. Use lsvob -long to display the tag comment.

SPECIFYING A NETWORK REGION.  Default: Creates the VOB-tag in the local host's network region. (Use the hostinfo -long command to display the network region.) See the Administrator's Guide for a discussion of network regions.

-reg·ion network-region

Creates the VOB-tag in the specified network region. An error occurs if the region does not already exist.
CAUTION: The VOB-tag created with mkvob must be for the network region to which the VOB host belongs. Thus, use this option only when you are logged on to a remote host that is in another region. Moreover, a VOB-tag for the VOB's home region must always exist.

SPECIFYING MOUNT OPTIONS.  Default: Mounts each VOB using the -options field in its vob_tag registry file.

-opt·ions mount-options
UNIX-Options to be used in mounting the VOB. The following options are valid: ro, rw, soft, hard, intr, nointr, noac, noauto, nodev, nodnlc, nosuid, suid, retrans, timeo, acdirmin, acdirmax, acregmin, acregmax, actimeo. See the appropriate operating system reference page (for example, mount(1M)) for the meanings of these options. If the mount options list contains white space, enclose it in quotes. By default, a VOB is mounted in nointr mode. This means that operations on MVFS files (for example, open(2)) cannot be interrupted by typing the INTR character (typically, CTRL+C). To enable keyboard interrupts of such operations, use the intr mount option.
Windows-Specifies mount options to be invoked when the VOB is activated through this VOB-tag. See mount for details. (You must be a member of the ClearCase group to use this option.)

MARKING THE VOB FOR EXPORT. Default: The VOB is not marked for export.

-nca·exported

Assigns an export ID to the VOB. See CLEARCASE ON UNIX-MARKING A VOB FOR EXPORT.

PUBLIC VS. PRIVATE VOB.  Default: A private VOB.

-pub·lic

Creates a public VOB. See CLEARCASE AND ATTACHE DYNAMIC VIEWS-ACTIVATING THE VOB.
-pas·sword tag-registry-password

A password is required to create a public tag or to create a private tag when you include suid as an argument to -options.
In these cases, if you do not include the VOB-tag password, mkvob prompts for it. An error occurs if there is no match. Note that the VOB is created, but without a VOB-tag. Use mktag to supply a public or private VOB-tag.
CAUTION: This is a potential security breach, because the password remains visible on the screen.

SPECIFYING THE VOB'S LOCATION AND NETWORK ACCESSIBILITY.  Default for ClearCase and Attache: None. Default for ClearCase LT: The server storage location on the ClearCase LT server host with the most free space.

-hos·t hostname
-hpa·th host-storage-pname
-gpa·th global-storage-pname

See the mkstgloc reference page for information on these options.
To create a VOB that resides on a supported network attached storage (NAS) device, you must specify the option set, -host -hpath -gpath.
vob-storage-pname

The location at which a new VOB storage directory is to be created. (An error occurs if something already exists at this pathname.) You can create a VOB at any location where the operating system allows you to create a subdirectory, with these restrictions:

  • You cannot create a VOB within an existing VOB storage directory.
  • You cannot create a VOB under an existing VOB-tag (VOB mount point).
  • You cannot create a VOB within the view root directory.
  • vob-storage-pname must specify a location on a host where ClearCase has been installed or a location on a supported NAS device. The VOB database (located in subdirectory db of the VOB storage directory) must be located on the VOB server host or on a supported NAS device that has been configured for VOB storage.
UNIX-vob-storage-pname may be a full pathname, relative pathname, or simple subdirectory name.
Windows-vob-storage-pname must be a UNC name.
-stg·loc { vob-stgloc-name | -aut·o }

Specifies a server storage location in which the VOB storage directory is to be created. The server storage location must have been created previously with mkstgloc. You can specify the name of the VOB server storage location explicitly as vob-stgloc-name, or specify -auto to direct mkvob to select one.
If you specify -auto, a server storage location for the VOB is selected as follows:
  1. Server storage locations that have no global path (mkstgloc -ngpath) and that reside on remote hosts are disqualified.

  2. Server storage locations on heterogeneous hosts are disqualified.

  3. Local server storage locations are preferred over remote ones.

  4. Globally accessible server storage locations (mkstgloc -gpath) are preferred over those that are not (mkstgloc -ngpath).

  5. The server storage location with the most free space is selected.

EXAMPLES 

The UNIX examples in this section are written for use in csh. If you use another shell, you may need to use different quoting and escaping conventions.

The Windows examples that include wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.

In cleartool single-command mode, cmd-context represents the UNIX shell or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.

NOTE: In the UNIX examples that follow, arguments and output that show multicomponent VOB tags are not applicable to ClearCase LT, which recognizes only single-component VOB tags. In this manual, a multicomponent VOB tag is by convention a two-component VOB tag of the form /vobs/vob-tag-leaf-for example, /vobs/src. A single-component VOB tag consists of a leaf only-for example, /src. In all other respects, the examples are valid for ClearCase LT.

UNIX Examples
Windows Examples

SEE ALSO

chpool, lsvob, mkpool, mkstgloc, mount, protectvob, rgy_passwd, rmvob, uncheckout, umount, umask(1)