*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> mkcdsl (8)              
Title
Content
Arch
Section
 

mkcdsl(8)

Contents


NAME    [Toc]    [Back]

       mkcdsl - Make a context-dependent symbolic link (CDSL)

SYNOPSIS    [Toc]    [Back]

       /usr/sbin/mkcdsl  [-bfnqv]  [-i   | -c  | -a] [sourcename]
       [targetname]

OPTIONS    [Toc]    [Back]

       All members. Copy the existing file or directory to a member-specific
  area  on  all members.  Boot partition. In a
       cluster, the CDSL is placed on the boot  partition.  On  a
       standalone system, an entry in added to the CDSL inventory
       file, and the CDSL will be created on the  boot  partition
       when  the  system  is  converted  to  a cluster by running
       clu_create.  Copy the existing file or directory to a member-specific
  area  on  this member only.  Force the overwriting
 of the existing CDSL or  member-specific  file  or
       directory.   When  the  force  option  is used with a copy
       option, mkcdsl will overwrite an existing  member-specific
       file  or directory.  Without the force (-f) option, mkcdsl
       issues an error or message whenever the physical  path  of
       the  target  differs  from  the  specified targetname (for
       example, when targetname resolution traverses  a  symbolic
       link), or when the source for a specified copy option cannot
 be found.  Unless the -f option is  specified,  mkcdsl
       will exit when it encounters a situation that would generate
 an error message.  The mkcdsl command issues a warning
       message  if the specified sourcename differs from the calculated
 sourcename. However, you do not need the -f option
       to stop mkcdsl from exiting when it encounters a situation
       that generates a warning message.  Inventory  only.  Check
       the  files  and  update  the inventory: If targetname is a
       CDSL, add a new entry or  update  the  existing  entry  in
       /var/adm/cdsl_admin.inv.   If  targetname is not a CDSL or
       does    not    exist,    remove     its     entry     from
       /var/adm/cdsl_admin.inv.   No  execute  mode. Display what
       would be done  but  do  not  create  or  change  anything.
       Quiet.  Stdout  and  stderr  are  redirected to /dev/null.
       Verbose.  The pathname of the member-specific file  to  be
       linked.   By  default,  each  CDSL created by mkcdsl has a
       sourcename that points to the default member-specific area
       in  the  file  system  where  the targetname resolves. For
       example, /usr/cluster/members/{memb}/ is the default  member-specific
  area  for  the /usr file system. When issued
       without an explicit sourcename, mkcdsl creates  a  sourcename
  that  points  to  this  default member-specific area
       using a relative pathname.  In most  cases,  this  default
       behavior  is satisfactory. It creates a relative link that
       resolves properly regardless of where the file  system  is
       mounted.   If  you  specify a sourcename, mkcdsl uses this
       value as the  pathname  to  the  member-specific  file  or
       directory.  The sourcename must include the member-context
       path component {memb}.  The pathname of the new CDSL entry
       to  be  created.   If  targetname exists, the -f, -c or -a
       options are required. If the resolution of the  targetname
       traverses  any symbolic links or file system mount points,
       the default value of sourcename is adjusted such that  the
       member-specific  files  are placed in the same file system
       to which targetname resolves.


DESCRIPTION    [Toc]    [Back]

       A context-dependent symbolic link (CDSL) is a special form
       of a symbolic link, described in ln(1), whose target pathname
 includes a variable ({memb}). The value of {memb}  is
       determined  during pathname resolution, making it possible
       to maintain member-specific configuration and  data  files
       within the clusterwide namespace.

       The  mkcdsl command creates a CDSL, effectively making the
       specified targetname file  or  directory  member-specific.
       The command simplifies the creation of a CDSL by automatically
 calculating a default sourcename, which resolves  to
       the  default member-specific area in the file system where
       the CDSL is created.

       When mkcdsl creates a CDSL, it adds an inventory entry  to
       a       clusterwide       CDSL       inventory       file,
       /var/adm/cdsl_admin.inv. This entry makes it possible  for
       the  cdslinvchk  command to check CDSLs created by mkcdsl.
       The mkcdsl -i option updates the inventory file to reflect
       the  current  state  of  the CDSL by adding, modifying, or
       removing entries from the CDSL inventory file.

       In a cluster, when directed to put a file in a member-specific
 directory (-c or -a), mkcdsl populates both the member-specific
 directory  or  directories  and  the  member0
       directory.

       Although  you  can  run  mkcdsl from the command line, the
       mkcdsl command is designed to be non-interactive;  it  can
       be  called  from  scripts  without requiring user input to
       complete a task.

EXAMPLES    [Toc]    [Back]

       To create a  CDSL,  /usr/testfile  that  points  to  cluster/members/{memb}/testfile:
  #  mkcdsl /usr/testfile # ls
       -l /usr/testfile
          ... /usr/testfile -> cluster/members/{memb}/testfile

       In the previous example, /usr/testfile must not exist. The
       CDSL  is  created  in /usr and no files are created in any
       member's /usr/cluster/members/{memb} directory.

       To copy the existing file or directory  /usr/testfile1  to
       this  member's  /usr/cluster/members/membern directory and
       replace  it  with  a  CDSL  that  points  to  cluster/members/{memb}/testfile1:
 # mkcdsl -c /usr/testfile1

       Although the CDSL references all members, only this member
       has a copy of the original /usr/testfile1 file.

       To copy the existing file or directory  /usr/testfile2  to
       all  members'  /usr/cluster/members/{memb} directories and
       replace  it  with  a  CDSL  that  points  to  cluster/members/{memb}/testfile2:
 # mkcdsl -a /usr/testfile2

       All  members  have  a  copy of the original /usr/testfile2
       file.

       To create a CDSL and explicitly specify the sourcename:  #
       mkcdsl /usr/share/cluster/members/{memb}/testfile3 \
         /usr/share/doclib/testfile3

       ***  Warning *** The passed source name, '/usr/share/cluster/members/{memb}/testfile3'
 differs from the  calculated
       source name: cluster/members/{memb}/testfile3 Using passed
       source name: '/usr/share/cluster/members/{memb}/testfile3'

       Because  the  specified  sourcename  differs from mkcdsl's
       calculated default value, the  command  issues  a  warning
       message.  Note that mkcdsl makes the CDSL. The mkcdsl command
 does not exit on a warning message. It will exit  for
       an  ***  Error  *** message unless the -f option is specified.


       To add an inventory record for an  existing  CDSL  to  the
       /var/adm/cdsl_admin.inv file: # mkcdsl -i /etc/testfile4

       To  remove  a  CDSL  and  then  remove  its entry from the
       /var/adm/cdsl_admin.inv file: # rm /etc/testfile4 # mkcdsl
       -i /etc/testfile4

       Note  that removing the CDSL and its entry does not remove
       any files referenced by the CDSL.

EXIT STATUS    [Toc]    [Back]

       The exit values for mkcdsl are: Success.  Failure.

FILES    [Toc]    [Back]

       Specifies the command path.  CDSL administrative inventory
       file. This file will not exist on all systems.

SEE ALSO    [Toc]    [Back]

      
      
       Commands: ln(1), cdslinvchk(8)

       Files: local(4)

       Miscellaneous: hier(5)



                                                        mkcdsl(8)
[ Back ]
 Similar pages
Name OS Title
local Tru64 Symbolic link to CDSL root /cluster/members/{memb}
ln Tru64 Make a hard link or a symbolic link to a file
symlink NetBSD make symbolic link to a file
symlink OpenBSD make symbolic link to a file
symlink HP-UX make symbolic link to a file
symlink IRIX make a symbolic link to a file
symlink Tru64 Make a symbolic link to a file
symlink FreeBSD make symbolic link to a file
symlink HP-UX symbolic link
lstat HP-UX get symbolic link status
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service