mkvob

Creates and registers a versioned object base (VOB)

APPLICABILITY

ClearCase (cleartool subcommand), Attache (command)

SYNOPSIS

mkvob -tag vob-tag [ -ucmproject ]

[ -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 local-pname -gpa·th global-pname ]
vob-storage-dir-pname

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 vob reference page for details.

mkvob creates exactly one VOB-tag for the newly created VOB. This tag applies to the local host's network region. 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.

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.

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 ClearCase 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 login time. That is, each time a user logs in, the dynamic-views drive (by default, M:) is empty until VOBs and views are reactivated. (You can change this behavior on the MVFS tab in the ClearCase Control Panel.)

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.

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.

Private-to-Public 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.

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.

A VOB need not be mounted to be accessible from a snapshot view. Furthermore, from a snapshot view you can access private VOBs, regardless of who owns them.

AUTOMATICALLY CREATED DIRECTORY ELEMENTS

mkvob creates the following directory elements in a new VOB:

See the vob reference page for more information on these directories.

DEFAULT STORAGE POOLS

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

sdft

default source storage pool

cdft

default cleartext storage pool

ddft

default derived object storage pool

See the vob reference page for details.

ACCESS PERMISSIONS

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

When you create a VOB, your operating system-level user name and the clearcase group name are assigned to the VOB storage directory and the default storage pools. All users can read and search the storage pools, but only the VOB owner and ClearCase server processes can modify them.

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

ClearCase-Level Access Permissions

ClearCase implements its own access scheme that goes beyond the standard operating system facilities. When you create a VOB, you become its VOB owner (in effect, the superuser for the VOB), 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.

See also the protect reference page (this command affects access to individual elements and shared derived objects) and Administering ClearCase.

TEXT MODES FOR VOBS

After you create a VOB, you may want to use the ccase-home-dir\etc\utils\msdostext_mode utility to place the VOB in MSDOS-enabled text mode. In this mode, the VOB database tracks the number of text lines in each version of each text file.

When accessed through a view created with the -tmode msdos option, such text files contain lines terminated with a <CR><LF> sequence. This may be required by some users in heterogeneous networks.

For more information, see Administering ClearCase.

PERMISSIONS AND LOCKS

Permissions Checking: No special permissions required. Locks: No locks apply.

OPTIONS AND ARGUMENTS

SPECIFYING THE VOB-TAG.  Default: None.

-tag vob-tag

A single-component pathname of the form \dirname. The backslash (\) is required. The VOB-tag is entered in the network's vob_tag registry file (ccase-home-dir\var\rgy\vob_tag). Note that the cleartool mount command, which activates VOBs, operates on VOB-tags.
This VOB-tag applies only to the local host's network region. If your network has multiple regions, use the mktag command to create an additional VOB-tag for each region.

CREATING A UCM PROJECT VOB.  Default: Creates a standard VOB.

-ucmproject

Creates a UCM project VOB for storing UCM-related objects including activities, baselines, components, folders, projects, and streams.

EVENT RECORDS AND COMMENTS. Default: Creates one or more event records, with commenting controlled by your .clearcase_profile file (default: -cqe). See CUSTOMIZING COMMENT HANDLING in 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 registry_ccase reference page 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 in 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

(You must be a member of the ClearCase group to use this option.) Specifies mount options to be invoked when the VOB is activated through this VOB-tag. See mount for details.

PUBLIC VS. PRIVATE VOB.  Default: Creates a private VOB.

-pub·lic

Creates a public VOB. See PUBLIC AND PRIVATE VOBS.
-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. See the registry_ccase reference page. 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.  Default: None. You must specify a location for the new VOB storage directory. The host on which this directory physically resides is the VOB host. Using the vob-storage-dir-pname argument, mkvob heuristically derives the host name, local access path, and global access path information for the VOB; it stores this information in the network's VOB registry.

vob-storage-dir-pname

The location at which a new VOB storage directory is to be created; this must be a UNC name. (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 viewroot directory (by default, M:\).
  • vob-storage-dir-pname must specify a location on a host where ClearCase has been installed. The VOB database (located in subdirectory db of the VOB storage directory) must physically reside on a ClearCase host, where it is accessed by ClearCase server programs (vob_server, db_server, and vobrpc_server) running locally.

CAUTION: After you create a VOB, do not move the VOB database directory (db) to another host. The VOB database directory must be on the host where the VOB storage directory physically resides. Moving the VOB database directory can negatively affect both VOB performance and ClearCase's ability to ensure the integrity of the VOB database by recovering from interrupted transactions.

-hos·t hostname
-hpa·th local-pname
-gpa·th global-pname

These options must appear as a set. Use them only when required to explicitly set a VOB's registry information. You can use these options when creating a new VOB, or to update the registry information for an existing VOB. You must specify the location of the VOB storage directory in two ways:

  • Host-local pathname - The name of a host (-host), along with a standard full pathname (-hpath) to the desired storage location that is valid on that host. Together, these constitute a host-local pathname. NOTE: -hpath cannot be a UNC name.
  • Global pathname - A standard full pathname (-gpath) to the desired storage location. This pathname must be valid on all hosts in the region on which the VOB will be accessed, including the host where the VOB storage directory resides.

EXAMPLES 

Examples including 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 command interpreter prompt. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.

cmd-context mkvob -tag \project3 -c "main development sources" ^
\\venus\users\vbstore\project3.vbs
Created versioned object base.
Host: venus
Local path: C:\users\vbstore\project3.vbs
Global path: \\venus\users\vbstore\project3.vbs
VOB ownership:
owner anne
group dev
cmd-context mount \project3 (mount VOB as file system of type MVFS)
cmd-context mkvob -tag \src1 -public -password tagPword \\saturn\vbstore\src1.vbs
Created versioned object base.
Host: saturn
Local path: C:\vbstore\src1.vbs
Global path: \\saturn\vbstore\src1.vbs
.
.
.
cmd-context mkvob -tag \r1 -public -options ro,noauto \\pluto\vbs\r1.vbs

Vob tag registry password: <xxx>

(password matches contents of ccase-home-dir\var\rgy\vob_tag.sec)

Created versioned object base.
.
.
.

SEE ALSO

chpool, lsvob, mkpool, mount, protectvob, registry_ccase, rgy_passwd, rmvob, uncheckout, umount, vob



Feedback on the documentation in this site? We welcome any comments!
Copyright © 1999 by Rational Software Corporation. All rights reserved.