Skip Headers
Oracle Hierarchical Storage Manager and QFS Software Command Reference
Section 3: Introduction to Library Functions
Release 6.1.1
E70305-03

NAME

sam_exarchive - Exchanges archive copies of a file or directory

SYNOPSIS

cc [ flag … ] file … -L∕opt∕SUNWsamfs∕lib -lsam [ library … ]

#include "∕opt∕SUNWsamfs∕include∕lib.h"

int sam_exarchive(const char * path , int num_opts , …);

DESCRIPTION

sam_exarchive() lets you exchange archive copies of a file or a directory using an Oracle HSM system call. path is the file whose specified archive copies are to be exchanged, followed by a sequence of num_opts input characters or options. Individual options are described below.

OPTIONS

copy_m | copy_n

Specifies the copies to be exchanged. The copy_m is exchanged with copy_n. Exactly two \f|'c' options must be specified. The first copy (copy_m) must have a valid archive entry.

M

Exarchives metadata only. This includes directories, the segment index, and removable media files. Regular files are not exarchived. If you are exarchiving a directory, you must specify the "M" option.

RETURN VALUES

Upon successful completion a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.

ERRORS

sam_exarchive() fails if one or more of the following are true:

EINVAL

An invalid option was specified, or the file is neither a regular file nor a directory.

EPERM

Not the owner or super-user.

EFAULT

Argument points to an illegal address.

EINTR

A signal was caught during the sam_exarchive() function.

ELOOP

Too many symbolic links were encountered in translating path.

ENAMETOOLONG

The length of the path argument exceeds {PATH_MAX}, or the length of a path component exceeds {NAME_MAX} while {_POSIX_NO_TRUNC} is in effect.

ENOENT

The named file does not exist or is the null pathname.

ENOLINK

path points to a remote machine and the link to that machine is no longer active.

ENOTDIR

A component of the path prefix is not a directory.

SEE ALSO

exarchive (1m), mcf (4)