NAME HPSS.conf - Generic HPSS Configuration File LOCATION The search path for the HPSS.conf file uses the following algorithm: 1) The path specified by the HPSS_PATH_ETC environment variable 2) The path: /usr/local/etc 3) The path: /var/hpss/etc PURPOSE The HPSS.conf file provides a structured file containing configuration Information for assorted HPSS servers and clients in particular: the HPSS PFTP Client, the HPSS PFTP Daemon, the auth_krb5gss Authentication Manager, the HPSS Multinode Daemon, and the HPSS movers. SYNTAX The syntax of entries in the HPSS.conf file areas follows: Level 0 Entries (Stanzas) - One or more of: Flags: A string with No "=" sign Simple Stanzas: A string with a string value after an "=" sign. Compound Stanzas: A string with multiple values (SubStanzas) bracketed by an Equal sign and an opening brace ("= {") then terminated by a closing brace ("}"). Level 1 Entries (SubStanzas) - One or more of: Flags: A string with No "=" sign Simple SubStanzas: A string with a string value after an "=" sign. Compound SubStanzas: A string with multiple values (Sections) bracketed by an Equal sign and an opening brace ("= {") then terminated by a closing brace ("}"). Level 2 Entries (Sections) - One or more of: Flags: A string with No "=" sign Simple Sections: A string with a string value after an "=" sign. Compound Sections: A string with multiple values (SubSections) bracketed by an Equal sign and an opening brace, "= {", then terminated by a closing brace, "}". Level 3 Entries (SubSections) - One or more of: Flags: A string with No) - One or more "=" sign Simple SubSections: A string with a string value after an "=" sign. EXAMPLE ; A Comment - First character is a ";" or "#" This is a Stanza Flag, It has NO Value This is a Simple Stanza = This is its string value. Now for a Compound Stanza = { A SubStanza Flag with NO Value A Simple SubStanza = Some String Value Now for a Compound SubStanza = { A Section Flag with NO Value A Simple Section = Some String Value Now for a Compound Section = { A Subsection Flag with NO Value A Simple Subsection = Some String Value } } } LIMITATIONS No Line May contain more than 128 characters. Only four (4) levels are allowed. All Compound Structures MUST be terminated by a closing bracket. Only one thread may have the HPSS.conf configuration file open at any time. DESCRIPTION Applications may specify their own configuration parameters and link with the support routines in hpss_CfgParser.c. Applications MUST also include the hpss_CfgParser.h header file. Memory allocation/deallocation is the responsibility of the calling application. HPSS RESERVED Level 0 Entries (Stanzas) "PFTP Client" "PFTP Client Interfaces" "Multinode Table" "Network Options" "Realms to DCE Cell Mappings" "PFTP Daemon" "Pipe File" (Not Implemented but reserved for Future) "Local File Path" (Not Implemented but reserved for Future) "PSI" (Not Implemented but reserved for Future) DETAILED Specifications of RESERVED Stanzas (NOTE: many of these parameters are inter-related and are here as examples!) Consult the man pages for: pftp_client, multinoded, pftpd, etc. for more details. # Options read by the PFTP Client PFTP Client = { # Specifies the Default COS for PFTP # Beware: This will affect ALL PFTP sessions! ; Default COS = 200 # Values = PDATA_AND_MOVER (Default), PDATA_ONLY or PDATA_PUSH Protocol = PDATA_AND_MOVER # Files smaller than Specified size will NOT use pput (Efficiency) # Even if auto parallel is in effect. Auto Parallel Size = 4MB # Useful if Client is used to cross Network Filters PortRange = ncadg_ip_udp[10100-12100]:ncacn_ip_tcp[10100-12100] # PDATA Options Parallel Block Size = 1MB Transfer Buffer Size = 16MB Socket Buffer Size = 16MB # PFTP sets a Maximum of 250GB ! MAX Ptran Size = 10GB # Specify the SYSLOG facility to use for all syslog messages # Values: LOG_DAEMON (Default), LOCAL<0-7> SYSLOG Facility = LOCAL0 } (NOTE: A '*' may be used as a wildcard in either an interface or a hostname. When used in an interface, all interfaces matching the pattern will be used. However, for daemon/client names, only the first matching (substaza/section) is used. This provides a mechanism for specifiying exceptions to wildcard rules. Suppose there are numerous daemons with names jan01, jan02, ... and one unique daemon named jane. The following shows how to specify interfaces for jane as an exception to the general jan* rule.) PFTP Client Interfaces = { # Hostname(s) of the Client Machine myhostname myhostname.my.domain = { # The Section Name refers to the Hostname of the Daemon # This allows Multiple Clients in the Same File # Name of system running the PFTP Daemon george george.of.the.jungle = { 132.175.26.3 192.168.3.1 192.168.2.1 192.168.1.1 } # A different PFTP Daemon jane jane.of.tarzan.fame = { 132.175.29.3 192.168.* } # Several different PFTP Daemons jan* = { 132.175.* } # "Default" if specified is a reserved value # Interface(s) to use if the destination is NOT found. Default = { # Interfaces MUST be specified in dot notation! 134.253.14.15 } } } Multinode Table = { # Delay for xx seconds to allow dbx attach to the Multinode Daemon. ; Sleep for Debugger = 5 myhostname myhostname.my.realm.org = { # If the Data Node is different than the Control Node # Enter the Data Node after the "=" otherwise the # Control and Data are the same. # Control and/or Data may be dot notation OR string hostnames. hishostname.his.domain herhostname.her_domain = heralthostname.her.domain 134.253.14.14 = 134.253.4.14 134.253.14.15 } Default = { # If the Data Node is different than the Control Node # Enter the Data Node after the "=" otherwise the # Control and Data are the same. # Control and/or Data may be dot notation OR string hostnames. 134.253.14.14 = 134.253.4.14 134.253.14.15 } } # Options read by netoptions.c used by the PFTP Client, # the Multinode Daemon, and any applications calling # netopt_FindEntry() Network Options = { Default Receive Size = 512KB Default Send Size = 512KB Default Write Size = 4MB # Level 1 specifiers (SubStanzas) are local hostnames - "Default" is used # ONLY if it exists AND the local hostname is NOT found in the Table. # Level 2 specifiers (Sections) are the destination and MUST be in # DOT Notation except for the case of "Default" which is 0.0.0.0 # For Convenience: # Two or more local hostnames may appear in the Level 1 specifiers # (SubStanzas) (separated by a whitespace). # Don't know if DNS is in use so provide both names george.sandia.gov george = { 132.175.2.0 = { NetMask = 255.255.255.0 RFC1323 = 1 SendSpace = 1MB RecvSpace = 1MB WriteSize = 1MB TcpNoDelay = 1 } 132.175.108.0 = { NetMask = 255.255.255.0 RFC1323 = 1 SendSpace = 1048576 RecvSpace = 1048576 WriteSize = 1048576 TcpNoDelay = 1 } } # Also don't know which interface is associated with hostname # so try two more george-atm.sandia.gov george-atm = { 132.175.2.0 = { NetMask = 255.255.255.0 RFC1323 = 1 SendSpace = 1MB RecvSpace = 1MB WriteSize = 1MB TcpNoDelay = 1 } 132.175.108.0 = { NetMask = 255.255.255.0 RFC1323 = 1 SendSpace = 1048576 RecvSpace = 1048576 WriteSize = 1048576 TcpNoDelay = 1 } Default = { NetMask = 255.255.255.255 RFC1323 = 1 SendSpace = 524288 RecvSpace = 524288 WriteSize = 524288 TcpNoDelay = 1 } } # SubStanzas are local hostnames - Default (Reserved) # is used ONLY if it exists AND the local hostname is NOT found # in the Network Options Table. Default = { 132.175.108.0 = { NetMask = 255.255.255.0 RFC1323 = 1 SendSpace = 524288 RecvSpace = 524288 WriteSize = 524288 TcpNoDelay = 1 } # This is for the Default destination Interface # for all hosts NOT specified in the Table. # If Default/Default component is NOT specified # then the system defaults or the Default Write Size # Default Receive Size, or Default Send Size parameters # will be used. Default = { NetMask = 255.255.255.255 RFC1323 = 1 SendSpace = 512KB RecvSpace = 128KB WriteSize = 1MB TcpNoDelay = 1 } } } Realms to DCE Cell Mappings = { ; Kerberos Realm = DCE Cell Name dce.sandia.gov = /.../dce.sandia.gov } # Options read by the Non-HPSS & HPSS PFTP Daemon # Effective with HPSS 5.1 HPSS PFTP Daemon options MUST be specified here - # They will no longer be read from inetd.conf. The only option read from # /etc/inetd.conf is the -cCfgFileName (if an alternate Config File is desired) PFTP Daemon = { # If using an Authentication Manager specify it here (HPSS Only) # Replaces -G option and"hpss_option AMGR string" in ftpaccess Authentication Manager = /opt/hpss/bin/auth_krb5gss # Specify if the DCE Registry is to be used as opposed to the # ftppasswd file. Redundant if "Authentication Manager = ..." or # "Use Extended Registry Attributes" are specified # Replaces -S option Use the DCE Registry # Specify the Base Directory for PFTP Files # Replaces -Dstring option. Default = /var/hpss/ftp FTP Base Directory = /var/hpss/ftp # Specify the name of the ftpaccess file # This becomes {BaseDir}/etc/{ftpaccess} based on the FTP Base Directory # Replaces -Fstring option. Default = ftpaccess FTP Access File = ftpaccess # Specify the SYSLOG facility to use for all syslog messages # except Authentication Messages. # Values: DAEMON (LOG_DAEMON), LOCAL<0-7> # Replaces -sstring option. Default = LOG_DAEMON SYSLOG Facility = DAEMON # Do NOT allow / to be Home Directory (HPSS Only) # Replaces -Z option Disable Slash Home Directory # Terminate session if Home Directory does NOT Exist (HPSS Only) # Replaces -H option Disable Access if no Home Directory # Disable the Sending of Hints to the Core Server (HPSS Only) # Replaces "hpss_option HINTS off" in ftpaccess Disable Hints # Permit use of the Trusted Hosts File (HPSS Only) # Replaces -I option Allow Trusted Hosts Authentication # What Principal to use for HPSS FTP (HPSS Only) # Replaces -P option and "hpss_option PRINC name" in ftpaccess # Default = hpss_ftp HPSS FTP Principal = hpss_ftp # Specify the Keytab containing the FTP principal # Was hard coded. Default = /krb5/hpss.keytabs FTP Principal Keytab File = /krb5/hpss.keytabs # Allow both Active and Passive Connections (HPSS Only) # Replaces -A option Allow Passive Connections # Delay for xx seconds to allow dbx connection to the Daemon. # Replaces -z option ; Sleep for Debugger = 5 # For Credentials-based PFTP, Deny username/password authentication # Replaces -a option Must Have Credentials # Set the IO Buffer Size for the HPSS PFTP Daemon # Replaces -b option and "hpss_option BUFSZ size" in ftpaccess PFTP IO Buffer Size = 1MB # Specify the Level of Debugging Desired (0 - 3) (HPSS Only) # Replaces -d option(s). Higher numbers imply more information. # Default = 0 Debug Value = 0 # For non-Parallel Transfers, specify the Interface (by Name) # to use between the PFTP Daemon and the Movers (HPSS Only) # Replaces -h option and "hpss_option HOST name" in ftpaccess Non-Parallel HostName = aixrahe.sandia.gov # Specify the Port to be used for Manual PFTP Daemon Startup # Replaces -pport option PFTP Debug Port = 6666 # Specification in seconds for the Default Timeout # Replaces -t option and "hpss_option DTO time" in ftpaccess Default Time Out = 1500 # Specify (in octal) the Default umask # Replaces -u option and "hpss_option UMASK octal" in ftpaccess Default Umask = 077 # Specification of the Level of HPSS Client API logging to use ( 0 - 3 ) # (HPSS Only) Replaces -v option(s) Default = 0 # Larger number implies more detail. Client API Verbose Value = 3 # Do NOT allow the user to specify Classes of Service (HPSS Only) # Replaces -C option Disallow User Setting of COS # Name the Kerberos Keytab file for "Kerberized" PFTP Daemon (HPSS Only) # Replaces -K option and "hpss_option KTAB string" in ftpaccess # Default uses "default_keytab_name" specifier in /etc/krb5.conf. # or default for Kerberos. Keytab File Name = /etc/v5srvtab # Name of the Location Server RPC Group (Mandatory) (HPSS Only) # Replaces -L option and "hpss_option LS string" in ftpaccess Location Server RPC Group = /.:/hpss/ls/group # Name of the Cell associated with the PFTP Daemon (HPSS Only) # Replaces -N option and "hpss_option SITE string" in ftpaccess HPSS CellName = /.../dce.sandia.gov # Specify to make the Client API use the port range specified # by the appropriate environment variables # Replaces -R option Use Port Range # Specification in seconds for the Maximum Timeout # Replaces -T option and "hpss_option MTO time" in ftpaccess Maximum Time Out = 86400 # Disallow the use of TCP (RPC_SUPPORTED_PROTSEQS=ncadg_ip_udp) # (HPSS Only) Replaces -U option Use UDP ONLY # Use the Extended Registry Attributes if they Exist (HPSS.conf) # Replaces -X option Use Extended Registry Attributes # Print additional Performance Numbers (non-HPSS PFTP Daemon Only) Print Performance Data # Specify the Maximum Stripe Width Allowed (non-HPSS PFTP Daemon Only) Number of Ports = 16 # Port to be used for the PDATA_PUSH Protocol. (HPSS Only) IOR Listen Port = 19199 # The Port Range to be used for the non-HPSS Parallel FTP Daemon # which is necessary for Parallel Transfers (non-HPSS PFTP Daemon Only) PortRange = ncadg_ip_udp[10100-12100]:ncacn_ip_tcp[10100-12100] # The Socket Buffer Size (non-HPSS PFTP Daemon Only) Socket Buffer Size = 1MB # Uncomment next line to use the COS from the FileSize Options # The default is to ignore the COS specification in the Table. Set COS Based on Filesize # Specify Blocksizes, StripeWidths, and COSs to use based on file size # # COS has no meaning to the Non-HPSS PFTP Daemon # COS = 0 means allow the Core Server to determine the optimal COS # # BlockSize has no meaning to the HPSS PFTP Daemon Only # StripeWidth = 0 means use the Core Server Value (HPSS PFTP Daemon) # or use the default (Non-HPSS PFTP Daemon) FileSize Options = { # Files greater than or equal to this value and less than # any other value in the table use these Settings # e.g., 2MB <= filesize < 10MB 1MB = { BlockSize = 512KB StripeWidth = 0 COS = 2 } 2MB = { BlockSize = 2MB StripeWidth = 4 COS = 0 } 10MB = { BlockSize = 2MB StripeWidth= 0 COS = 0 } 100MB = { BlockSize = 4MB StripeWidth= 0 COS = 0 } 1GB = { BlockSize = 8MB StripeWidth= 0 COS = 0 } } # Keytab Hostname Mapping Section # Syntax: # machinename Service Name = canonicalname # "machinename" is the name returned by a call to gethostname() # in the PFTP Daemon. # "canonicalname" is the machine name associated with the Kerberos # service - usually the fully qualified name as generated by the # PFTP Client # Specify "{machinename} Service Name" to set the service name to be used # for the PFTP Daemon machine when acquiring creds. This is needed # when the servername; e.g., host/machinename@realm is different # between the keytab file and the host/machinename obtained where # the machinename is obtained by gethostname() (Non-HPSS PFTP Daemon) # Specify nultiple "machinename Service Name" entries if this # file is common to multiple PFTP Daemon servers. aixrahe.sandia.gov Service Name = aixrahe.sandia.gov sunrahe Service Name = sunrahe.sandia.gov } # #################################################### # The following Options have NOT been implemented # But should NOT be used by sites - reserved for FUTURE use by HPSS # Local Options read by the PFTP Client Pipe File = { # Hostname tesla tesla.sandia.gov = { # Directory and Size ( MAX = 2GB - 1 ) /scratch1/.pftp_pipes = 100MB } # This MAY cause problems with Filenames if two separate machines # are using this directory and filename simultaneously # The Client pid gets appended; but, there is some chance! Default = { # Directory and Size ( MAX = 2GB - 1 ) /nfs_dir/.pftp_pipes = 500MB } } Local File Path = { # Client Machine water water.clearlake.ibm.com = { /local_file_system1 /local_file_system2 } } PSI = { # List of hosts and associated ports discovery = 4021 } FLAGS None FILES hpss_CfgParser.h, hpss_CfgParser.c, support.c, support.h, hpss_u64conv.h, hpss_u64conv.c RELATED INFORMATION pftp_client(7), multinoded(7), pftpd(7). SCCS static char SccsId[] = " @(#)69 1.4 man/HPSS.conf.7, gen, 5.1 10/30/03 09:38:25"; NAME archivecmp - Checked for archived fileset inconsistencies. SYNTAX archivecmp DESCRIPTION archivecmp will compare sorted output from the utilities archivedump and archivelist and attempt to find any inconsistencies between DFS/XFS and HPSS archived filesets. In general, this utility will be used in conjunction with the utilities archivedump and archivelist to check for archive fileset consistency between DFS/XFS and HPSS. The output from archivecmp will describe any inconsistencies and will make suggestions on how best to repair the inconsistencies. See the HPSS Management Guide for more details. PARAMETERS Sorted archivedump output - Output from the utility archivedump that has been sorted by the UNIX "sort" command to order the output by HPSS file name. Sorted archivelist output - Output from the utility archivelist that has been sorted by the UNIX "sort" command to order the output by HPSS file name. EXAMPLE The following command will compare output from archivelist and archivedump, where the output from each utility has been sorted and placed in the files "archdump.sort.out" and "archlist.sort.out". % archivecmp archdump.sort.out archlist.sort.out FILES SEE ALSO archivedump(7), archivelist(7), setdmattr(7), getdmattr(7) SCCS man/archivecmp.7, gen, 5.1 5/30/02 12:06:34 NAME archivedel - Delete old files from an HPSS archive fileset SYNTAX archivedel [Fileset Name] [Access age in days] DESCRIPTION archivedel must be used periodically to remove old unused files from an HPSS archived fileset that is using the archive/rename option. HPSS files in filesets of this type are not automatically removed when files when the DFS and XFS files are deleted; the files are simply renamed with a "DEL." prefix. This allows for recovery of these files in case of DFS fileset or XFS filesystem loss. Since files are renamed, it may become necessary to periodically remove old "DEL." files to free up HPSS resources. Only "DEL." files that are older than the last full backup should be removed, or it may be impossible to recover from a DFS or XFS disk failure. See the HPSS Management Guide for more details. PARAMETERS Fileset Name - The HPSS name of the archived fileset. Access age in days - Remove any "DEL." files from the archived fileset that have not been accessed for this many days. EXAMPLE The following command will remove all "DEL." files from the archived fileset test.fileset that have not been accessed for 10 days. % archivedel test.fileset 10 About to open dir (01) About to open dir (02) About to open dir (03) ... About to open dir (FD) About to open dir (FE) About to open dir (FF) 52 : Total Directory Entries 20 : Total Delete Candidates 20 : Total Deletion Attempts for files beyond age 0 : Total Deletion Attempt Failures FILES SEE ALSO archiverec(7) SCCS man/archivedel.7, gen, 5.1 5/30/02 12:04:14 NAME archivedump - List out all the objects in a DFS archived fileset or an XFS archived file system. SYNTAX archivedump DESCRIPTION archivedump must be run on the machine that holds a DFS archived fileset or XFS archived file system and will dump to stdout a list of files that reside on the fileset. archivedump must be run as root. For each file in the fileset, a line of output will be sent to stdout in the following format: [hpss file name] [file age] [file state] [DFS/XFS path] hpss file name - The name of the file stored in HPSS file age - time since last file access file state - HPSS_BACKED_DATA_VALID, file has been backed into HPSS and the data on HPSS is in sync with the DFS or XFS data. HPSS_BACKED_DATA_INVALID, file stored in HPSS in the past, but file modified on DFS or XFS after being backed into HPSS. This state should change after the next migrate cycle. NOT_YET_MIGRATED, DFS or XFS file never migrated into HPSS. If access time is old then migration may have a problem. This state should change during the next migrate cycle. ERROR_NO_DMATTRS, DFS or XFS file is in a bad state. For DFS systems, the utility "setdmattr" should be used to set the MIGRATE DM attribute for the file to a value of 1. For XFS systems, the stale file recovery procedure should be followed as given in the HPSS Management Guide. DFS/XFS Path - Path to the file relative to the root of the fileset. In general, this utility will be used in conjunction with the utilities archivelist and archivecmp to check for archive fileset consistency between DFS/XFS and HPSS. See the HPSS Mangement Guide for more details. PARAMETERS Fileset ID - Numeric fileset identification. (e.g 0.4, 0.234, etc.) Fileset Name - Character name for the fileset. Fileset Local Mount - Path to where the fileset is mounted on the local UNIX file system. Min Size - Do not generate output for any file less than this size. Since archived filesets now have options that stop the migration of small files into HPSS, these files should not generate any output when using this tool to check archived fileset consistency. Min Size should be the same as MinArchiveMigrationSize in config.dat EXAMPLE The following command will dump output to the file "archdump.out" for fileset 0.4 whose name is test.fileset and which is currently locally mounted at "/var/hpss/hdm/hdm1/aggr/test.aggr/test.fileset". It will only generate output for files whose size is less than 65536. % archivedump 0.4 test.fileset \ /var/hpss/hdm/hdm1/aggr/test.aggr/test.fileset 65536 > archdump.out FILES SEE ALSO archivecmp(7), archivelist(7), setdmattr(7), getdmattr(7) SCCS man/archivedump.7, gen, 5.1 5/30/02 12:06:13 NAME archivelist - List out all the objects in an HPSS archived fileset. SYNTAX archivelist DESCRIPTION archivelist prints out a list to stdout of all the files that reside in an HPSS archived fileset. The tool should be run on a machine that can access the Core Server. The client should dce_login as principal "hpss_dmg". This tool will generally be used in conjunction with other tools (archivedump and archivecmp) to check archived fileset consistency. This tool will generate a line of data for each file in an HPSS archived fileset. If redirecting the output to a file be sure there is enough space for all the output. The amount of space required will depend on the number of entries in the archived fileset. See the HPSS Management Guide for more details. PARAMETERS Fileset Name - The HPSS name of the archived fileset. EXAMPLE The following command will list all the files in the archived fileset "test.fileset" and put the output in the file "arch.out". % archivelist test.fileset > arch.out FILES SEE ALSO archivedump(7), archivecmp(7), setdmattr(7), getdmattr(7) SCCS man/archivelist.7, gen, 5.1 10/30/03 09:39:18 NAME archiverec - Recover any files from an HPSS archive fileset. SYNTAX archiverec DESCRIPTION archiverec must be used to recover any recently deleted files for an HPSS archived fileset that is using the archive/rename option. HPSS files in filesets of this type are not automatically removed when DFS or XFS files are deleted; the files are simply renamed with a "DEL." prefix. This allows for recovery of these files in case of DFS fileset or XFS file system loss. If a DFS fileset or XFS file system has to be restored because of a disk loss, archiverec must be run to rename any recently deleted files so that DFS or XFS can retrieve data from these files. See the HPSS Management Guide for more details. PARAMETERS Fileset Name - The HPSS name of the archived fileset. Access age in days - Recover any "DEL." files from the archived fileset that have been deleted within the time frame. The amount of time must go beyond the last full "fts dump" for the fileset on DFS or the last full "xfsdump" for the file system on XFS. EXAMPLE The following command will recover all "DEL." files from the archived fileset test.fileset that have been deleted in the last 10 days. % archiverec test.fileset 10 About to open dir (01) About to open dir (02) About to open dir (03) ... About to open dir (FD) About to open dir (FE) About to open dir (FF) 14 : Total Directory Entries 10 : Total Recovery Candidates 10 : Total Recovery Attempts for files within age 0 : Total Recovery Attempt Failures FILES SEE ALSO archivedel(7) SCCS man/archiverec.7, gen, 5.1 5/30/02 12:04:40 NAME auth_generic - Generic Authentication Module (NOT intended for use). auth_krb5gss - Kerberos GSS Authentication Module. auth_ident - IDENT Authentication Module. auth_krb5_and_ident - Kerberos GSS and/or IDENT Authentication Module. The appropriate Authentication Module is executed by the hpss_pftpd_amgr obtaining the name of the Authentication Module from the "Authentication Manager" record in the "PFTP Daemon" stanza of the HPSS.conf file. PURPOSE The Authentication Modules are mechanisms for implementing "password-less" FTP services. The appropriate module is executed by the hpss_pftpd_amgr and uses shared memory to communicate between the hpss_pftpd_amgr and the Authentication module. SYNTAX Note: The Authentication module is started by the hpss_pftpd_amgr daemon. DESCRIPTION The Authentication Module provides alternate authentication mechanisms for the HPSS PFTP server process. The Kerberos GSS-based (Generic Security Service) versions of the Authentication modules support Cross Cell Authentication. FLAGS FILES RELATED INFORMATION pftp_client(7), multinoded(7), pftpd(7), HPSS.conf(7), syslogd. HPSS System Administration Guide SCCS static char SccsId[] = " @(#)94 1.5 man/auth_manager.7, gen, 5.1 2/26/03 09:59:57"; NAME convert_hdm_xfs - 5.1 XFS HDM conversion SYNTAX convert_hdm_xfs [-y] -p DESCRIPTION This utility is designed to convert archived XFS/HPSS filesets from their HPSS Release 4.x format to the HPSS Release 5.1 format. This involves two conversions: 1) Convert the nshandle.dat file to use a new format for its entries. 2) Convert the DM managed attribute 'HPSS_ID' to a new format for every object with an existing value. This utility must be run after the SFS->DB2 metadata conversion since it requires the presence of the Convert.NS.Server.Ids file which is created by the db_convert_collect_info script. The utility must be invoked on the machine where the XFS HDM is run after all linked XFS filesets have been unmounted and the HDM has been quiesced. The utility will register for mount events just as the HDM would. The admin will then individually mount and unmount each filesystem that needs to be converted. The utility will see the mounts and convert the HPSS_ID attributes and nshandle.dat entry for each filesystem as the mounts occur. The admin will complete the process by hitting ctrl-C to terminate the conversion utility. There will be a new nshandle.pre51 file when the conversion is finished. This is the original nshandle.dat, renamed during the course of the conversion. Since the XFS filesystems must be mounted during the conversion process, steps should be taken to ensure that users do not have access to the system during the conversion. PARAMETERS -y Disables interactive prompts. Path to the location of the following files: filesys.dat Convert.NS.Server.Ids nshandle.dat nshandle.pre51 (created by this utility) Usually will be /var/hpss/hdm/hdm1 EXAMPLE The following shows the output of the conversion utility when converting a single filesystem. Not shown are the mount and umount commands which were issued from a separate window. Note that the number of encountered objects is reported along with the number of converted objects. The count of encountered objects will always be higher since only previously migrated files are converted, while unmigrated files, directories, etc. are not. $ ./convert_hdm_xfs -y -p /var/hpss/hdm/hdm1 XFS HDM Conversion Utility ========================== HDM config files are in /var/hpss/hdm/hdm1 Interactive prompts DISABLED. DMAPI initialization successful. Checking for prior sessions to destroy... Finished destroying sessions. New session created. Please mount the next filesystem to be converted or press ctrl-C to exit. Just got a mount event for /mnt/xfsconvtest from media descriptor ide0(3,77). encountered 23 objects, converted 20 of them, had 0 errors Please unmount this filesystem to continue... Please mount the next filesystem to be converted or press ctrl-C to exit. FILES filesys.dat - XFS HDM's filesystem database Convert.NS.Server.Ids - Contains the 5.1 Core Server UUIDs that correspond to the 4.x Name Server UUIDs. nshandle.dat - Database that maps XFS filesystems to HPSS filesets. SEE ALSO SCCS @(#)43 1.1 man/convert_hdm_xfs.7, gen, 5.1 1/10/03 11:50:14 NAME create_fset - create the HPSS counterpart of a DFS fileset SYNTAX create_fset DFS dmg_name dmg_host dmg_port hdm_host \ hdm_port ftid fsid fsname global local family [cos] -OR- create_fset XFS dmg_name dmg_host dmg_port hdm_host \ hdm_port ftid fsname global family [cos] PARAMETERS Name Use Examples -------------------------------------------------------------- dmg_name CDS name for DMAP gateway /.:/hpss/dmg dmg_host Host name for DMAP gateway htibm2.sandia.gov dmg_port Port for DMAP gateway 7001 hdm_host Host name for the HDM tardis.sandia.gov hdm_port Port for the HDM 6002 ftid Fileset id 0.361 or 0,,361 fsid File system id (DFS only) 4 fsname File system "name" /dev/xxx global Global mount point DFS -> /:/hpss/yyy XFS -> /mnt/xfs_fs local Local mount point (DFS only) /Fsets/hpss.yyy family Family ID 0 cos Class of service 1 [default 0] DESCRIPTION This command creates the HPSS counterpart of an XDSM fileset (either XFS or DFS). It also ensures that the HDM, DMAP Gateway, and Nameserver exchange the information about the fileset necessary to coordinate their activities. The gateway and DMAP hostnames should be specified as fully qualified names -- for example, 'tardis.sandia.gov' rather than just 'tardis'. Be sure to make the corresponding entry in gateways.dat before running create_fset. The fileset ID can be specified either in the form . or ,,, where and are integers. For DFS HDMs, these values must agree with the DFS fileset ID that was returned when the fileset was created using the 'fts create' command. For XFS HDMs, they must agree with the fileset ID returned by the create_fsys command. For DFS, the file system "name" (fsname) must be in the form /dev/, where xxx is the physical device or "aggregate" on which the file system resides. For XFS, this should be the same as the fileset name (ftname) supplied to the create_fsys command. For DFS, the filesystem id (fsid) must agree with the actual file system id as specified in dfstab. For XFS, this argument is omitted. Be sure to run create_fsys before running create_fset, and (for DFS) be sure to use the same file system IDs in both programs. For archived filesystems, the global and local mount points are typically specified as "NO_MOUNT_POINT". Be sure to choose family and cos values that have already been configured on HPSS. Environment Variables HPSS_PRINCIPAL_SSM, if set, determines the DCE principal name to use for securing communications with the DMAP Gateway. The default is hpss_ssm. HPSS_KEYTAB_FILE_SERVER, if set, determines the name of the keytab file to be used to the DCE principal's key. The default is /krb5/hpss.keytabs. Use the hpss_env script to set site-dependent environment variables. EXAMPLE create_fset DFS /.:/hpss/dmg htibm2.ca.sandia.gov 7001 tardis.ca.sandia.gov 6002 0,,361 4 /dev/tardis_mirror1 /:/hpss/mirror1 /var/hpss/hdm/hdm1/tardis_mirror1/hpss.mirror1 0 1 create_fset XFS /.:/hpss/dmg htibm2.ca.sandia.gov 7001 tardis.ca.sandia.gov 6002 0,,361 fs_archive /mnt/fs_archive 0 1 FILES filesys.dat file systems and filesets managed by the HDM gateways.dat hosts permitted to run create_fset SEE ALSO create_fsys create a file system entry in filesys.dat crtjunction create an HPSS junction SCCS man/create_fset.7, gen, 5.1 5/10/02 09:49:25 NAME create_fsys - define an XFS or DFS filesystem to the HDM SYNTAX create_fsys XFS host port ftname path "media" option queue_size \ migrate purge key -OR- create_fsys DFS host port fsid path media option migrate purge stage key PARAMETERS host Host name where the HDM and DFS are running. port Port on that host. fsid (DFS only) Filesystem id for the filesystem. This must agree with the filesystem id in dfstab. ftname (XFS only) Fileset name. This will need to match with the HPSS fileset name when created. path Mount path for the filesystem. (e.g., for DFS: /opt/dcelocal/var/dfs/aggrs/tardis_disk1) (e.g., for XFS: /mnt/Archive1) media Device where file system resides. For DFS, this is simply the /dev entry for the device (e.g., /dev/dsk/c0t2d0s4) For XFS, this is a quoted string of the format "(,)" where: is the name of the adapter to which the disk device is attached is the major number for the disk device is the minor number for the disk device (e.g., for XFS: "ide0(3,72)") option "archive/rename", "archive/delete" or (DFS only) "mirrored" queue_size (XFS Only) The capacity of the Migration/Purge Queue migrate Name of migrate policy for this file system. purge Name of purge policy for this file system. stage (DFS Only) How files are staged: "whole" or "partial". key Encryption key, expressed as a hex number. DESCRIPTION This command defines an XFS or DFS filesystem to the HDM server. Until this command has been executed, the HDM will not be able to manage files on this filesystem. The utility can be executed on any host that is listed in the gateways configuration file gateways.dat, though it is only built on machines where the DMAP Gateway is built. The option parameter determines how the name and data spaces will be managed. If the mirrored option is used, files will be accessible from both HPSS and the external filesystem. If one of the archive options is chosen, files from the external filesystem will be archived on HPSS but will not be accessible from HPSS. The rename and delete suboptions control how archived files are handled when they are deleted. If the delete suboption is used, the files are deleted immediately. If the rename suboption is used, the files are not actually deleted, but rather are renamed. This allows an administrator to restore files that were accidentally deleted. The migrate and purge parameters must refer to policies that are already defined in purge.dat. The stage parameter (DFS Only) determines how files are staged from HPSS to the external filesystem. If "whole" is selected, whole files will be staged. Otherwise, only that part of the file needed to complete an operation will be staged. The key parameter defines an encryption key that is used to authorize the user. It is typically a 16-digit number. The key must agree with the value specified in gateways.dat for the host where create_fsys is running. For XFS, there are some special considerations. First, the mpqueue_size should be chosen carefully by following the guidelines mentioned in the HPSS Installation Guide. Also, the "media" argument will take some investigation to construct. These details are also mentioned in the HPSS Installation Guide. EXAMPLE The following example shows how a file system is defined. The HDM that manages the file system is assumed to run on a host named tardis.ca.sandia.gov. The HDM is using the standard port 6002 to listen for requests. The file system id is 2. The file system will be mirrored on HPSS. Files will be migrated using a migration policy named "run". The mount paths are as shown in the example. Files will be purged using a purge policy named "wait". These names do not have any particular significance to the HDM, but they must be defined in policy.dat. Whole-file staging will be used. The encryption key is 123abc. create_fsys DFS tardis.ca.sandia.gov 6002 2 \ /opt/dcelocal/var/dfs/aggrs/tardis_aggr1 \ /dev/tardis_aggr1 mirrored run wait whole 123abc The following XFS example is similar to the above, but uses an archive/rename filesystem on device ide0(3,72) with a Migration/Purge queue size of 10000. create_fsys tardis.ca.sandia.gov 6002 my_fileset \ /mnt/my_fileset "ide0(3,72)" archive/rename 10000 \ run wait 123abc FILES filesys.dat file systems that the HDM manages gateways.dat hosts permitted to run create_fsys policy.dat migration and purge policy definitions SCCS @(#)32 1.4 man/create_fsys.7, gen, 5.1 5/10/02 09:49:06 NAME crtjunction - Create a junction to a file set. SYNTAX crtjunction DESCRIPTION crtjunction can be used to create junctions to filesets. crtjunction only creates junctions to HPSS filesets. Mount points to the DFS/XFS filesets have to be made through the DFS or XFS commands. The DFS command is "fts create". crtjunction can used used to create junctions to any type of fileset. Only the root user or a 'trusted' principal is allowed to create junctions. A trusted principal is any principal having Write permission in an ACL entry listed on the Core Server's security object ACL. PARAMETERS Fileset Name The name of the fileset to which the junction will point. Path to Junction The full path in the HPSS name space where the junction is to be created. EXAMPLE The following command will create a junction at "/:/fileset.0" that points to the fileset "fileset.0". crtjunction fileset.0 /:/fileset.0 FILES SEE ALSO deljunction(7) SCCS man/crtjunction.7, gen, 5.1 9/10/03 17:07:45 NAME deljunction - Delete a junction. SYNTAX deljunction DESCRIPTION deljunction is used to delete junctions. deljunction can only delete the junctions in the HPSS name space. If the junction is to an archived or mirrored fileset then the DFS/XFS mount point will also have to be deleted. In DFS this can be done by using the "fts delmount" command. Only the root user or a 'trusted' principal is allowed to delete junctions. A trusted principal is any principal having Write permission in an ACL entry listed on the Core Server's security object ACL. PARAMETERS Path to Junction The full path in the HPSS name space of the junction to be deleted. EXAMPLE The following command will delete a junction at (/:/fileset.0). deljunction /:/fileset.0 FILES SEE ALSO crtjunction(7) SCCS man/deljunction.7, gen, 5.1 9/10/03 17:10:15 NAME dump_sspvs - List physical volumes managed by a Core Server SYNTAX dump_sspvs -i Sub-system Id [ -g HPSS Global Database Name ] [ -h Database Schema Name ] [ -p Utility Principal Name ] [ -k Utility KeyTab Pathname ] [ -d ] [ -f Family ID ] [ -c Storage Class ] [ -l ] [ -t ] [ -m ] [ -n ] [ -x ] DESCRIPTION This utility scans the physical volumes managed by the specified Core Server and outputs the physical volume name, VV condition, retired flag, family ID, storage class and usage statistics for the volume. A summary of available and used bytes by storage class is also output. Volumes may be selected by family, storage class and by a number of status related options. All of the command line arguments are optional except -i, the sub-system ID. The -g, -h, -p and -k arguments default to the values of HPSS environment variables if not specified. All other arguments may be chosen as desired. OPTIONS -i The number of the sub-system that contains the Core Server of interest. This argument must be supplied. In HPSS systems with one sub-system, the value of this argument will be 1. -g The name of the HPSS Global Database associated with the system. If this argument is not specified, the value of the HPSS_GLOBAL_DB_NAME environment variable is used. -h The name of the Schema that contains the HPSS metadata. If this argument is not specified, the value of the HPSS_MM_SCHEMA_NAME environment variable is used. -p The DCE principal name which this utility will run under. Usually run as SSM. The Principal name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If this argument is not specified, the value of the HPSS_PRINCIPAL_SSM environment variable is used. -k The Keytab path name which this utility will run with. If this argument is not specified, the value of the HPSS_KEYTAB_FILE_SERVER environment variable will be used. -d If specified, the program dumps disk PVs. If omitted, the program dumps tape PVs. If specfied, the -f, -t, -m and -x options may not be specfied. -f If the family ID is specified, the output will be restricted to volumes in that family. This argument cannot be specified with the -d argument. To maintain a consistant output format, the family ID output column is included when dumping disk PVs, but the value is always zero. -c If the storage class is specified, the output will be restricted to volumes in that class. -l If the "locked" option is specified, the output will be limited to volumes with a VV condition that restricts their use. In dump_sspvs, EOM is not considered a restrictive VV condition. Volumes in RW, RO or DOWN condition are listed because use of these volumes is restricted in some fashion. New storage segments may not be created on volumes in RW, RO or DOWN condition. Volumes in RO condition may not be read and volumes in DOWN condition may not be read or written. When -l is specified, volumes in RW, RO and DOWN condition are listed. Volumes in RWC and EOM condition are not listed. -t Generate lstapes format output. This option is not permitted when disk PVs are selected (-d). -m Select only tape volumes that are being written (migration targets). A tape is selected by this option when it is not at EOM but has been written. Tapes that have never been written and tapes that are at EOM are not selected. This option is not permitted when disk PVs are selected (-d). -n Display the storage map state of the selected volumes in place of the VV Condition. This options is provided for backward compatability with earlier versions of HPSS. -x Exclude tapes that have not been accessed. A tape is considered to have been accessed if it has ever been read or written. This option is not permitted when disk PVs are selected (-d). RETIRED VOLUMES Starting in HPSS 5.1, retired disk and tape volumes are indicated by setting a flag in the volume's storage map, rather than by a specific value of the storage map's state. Dump_sspvs indicates retired volumes by the addition of "(R)" to the VV condition output column. For example, a retired tape volume at EOM would be indicated by "EOM(R)" and a retired disk in RW condition would be indicated by "RW(R)". The "R"s are arranged in the output so they always occur in a fixed position in output lines (15th character), and can also be detected by searching for the unique pattern "(R)". EXAMPLES The following commands will list the tape physical volumes managed by the Core Server in sub-system 1. In this example, Tape0200 is retired. $ dump_sspvs -i1 -g global -p hpss_ssm -k /krb5/hpss.keytabs VV Storage Volume Cond Family Class Space Used Max Volume Size Tape0100 EOM 0 7 1,077,935,871 1,077,935,871 Tape0200 EOM(R) 0 7 1,077,935,871 1,077,935,871 Tape0300 EOM 0 7 1,077,935,871 1,077,935,871 Tape0400 EOM 0 7 1,077,935,871 1,077,935,871 Tape0500 EOM 0 7 1,077,935,871 1,077,935,871 Tape0600 EOM 0 7 1,077,935,871 1,077,935,871 Tape0700 EOM 0 7 1,077,935,871 1,077,935,871 Tape0800 EOM 0 7 1,077,935,871 1,077,935,871 Tape0900 EOM 0 7 1,077,935,871 1,077,935,871 Tape1000 EOM 0 7 1,077,935,871 1,077,935,871 Tape1100 RWC 0 7 0 214,748,364,800 -------------------------- -------------------------- Totals for all tape volumes: 10,779,358,710 225,527,723,510 Storage Class 7 totals: 10,779,358,710 225,527,723,510 This one selects disk volumes in sub-system 1, and takes the environmental defaults (which usually will be the desired values) for -g, -p and -k. Disk0200 is retired: ./dump_sspvs -i1 -d VV Storage Volume Cond Family Class Space Used Max Volume Size Disk0000 RO 0 14 1,071,644,672 1,071,644,672 Disk0100 RO 0 14 1,071,644,672 1,071,644,672 Disk0200 RW(R) 0 14 1,071,644,672 1,071,644,672 Disk0300 RO 0 14 1,071,644,672 1,071,644,672 Disk0400 RO 0 14 1,071,644,672 1,071,644,672 Disk0500 RO 0 14 1,071,644,672 1,071,644,672 Disk0600 RO 0 14 1,071,644,672 1,071,644,672 Disk0700 RO 0 14 1,071,644,672 1,071,644,672 Disk0800 RO 0 14 1,071,644,672 1,071,644,672 Disk0900 RO 0 14 1,071,644,672 1,071,644,672 Disk1000 RWC 0 14 2,097,152 11,809,062,912 -------------------------- -------------------------- Totals for all disk volumes: 10,718,543,872 22,525,509,632 Storage Class 14 totals: 10,718,543,872 22,525,509,632 This one lists tape volumes using the "lstapes" output option: $ dump_sspvs -t Volume:VVID:SeqNum SC Family Last Write Last Read State Files Used Total A00820:ce929e74-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1382174 13497.8 13498.6 A00821:cefecd92-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1308459 12777.9 12778.2 A00822:cf186d38-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1170023 11426.0 11426.2 A00823:cf30fb00-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 994536 9712.3 20480.0 A00824:cf4bd7ea-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 599132 5850.9 20480.0 A00825:cf641ce2-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00826:cf7c7314-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00827:cf94ce78-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00828:cfecec34-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00829:d0069d96-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00830:d02031e8-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00831:d1d201b0-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00832:d1e90ca2-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00833:d202e604-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00834:d21b2872-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00835:d2325ce0-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00836:d55e0de2-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00837:d577a810-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00838:d59154f4-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 A00839:d5aadd8e-0910-11:0 3 0 ---------- -------- ---------- -------- ALLOC 0 0.0 20480.0 $ dump_sspvs -mt Volume:VVID:SeqNum SC Family Last Write Last Read State Files Used Total A00823:cf30fb00-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 994536 9712.3 20480.0 A00824:cf4bd7ea-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 599132 5850.9 20480.0 $ dump_sspvs -xt Volume:VVID:SeqNum SC Family Last Write Last Read State Files Used Total A00820:ce929e74-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1382174 13497.8 13498.6 A00821:cefecd92-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1308459 12777.9 12778.2 A00822:cf186d38-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- EOM 1170023 11426.0 11426.2 A00823:cf30fb00-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 994536 9712.3 20480.0 A00824:cf4bd7ea-0910-11:0 3 0 2001/03/05 09:41:48 ---------- -------- ALLOC 599132 5850.9 20480.0 FILES SEE ALSO dumpbf(7), dumppv_pvr(7), dumppv_pvl(7), lsvol(7) SCCS man/dump_sspvs.7, gen, 5.1 6/12/03 16:14:15 NAME dumpbf - List the bitfile segments for a file pathname. SYNTAX dumpbf -f File Pathname [ -p Utility Principal Name ] [ -k Keytab Path ] [ -g Global DB Name ] [ -n DB Schema Name ] DESCRIPTION The "dumpbf" HPSS utility will print an ordered set of bitfile segments by Storage Type and byte offset within bitfile for the input file pathname. This routine will connect to the core server in order to retrieve the bitfile Id for the specified pathname. The bitfile segments will be read from metadata and sorted as they are read and placed in a list. After all the segments have been read and sorted, the results are sent to standard output. Included in the output for a segment which resides on a tape virtual volume will be the physical volume name(s). OPTIONS -f The pathname of the file to dump. -g The name of the global database. If not present, the value for this parameter will be taken from the environment variable HPSS_GLOBA_DB_NAME. -p The server principal name which this utility will run under. Usually run as SSM. The Principal name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If not present, the value for this parameter will be taken from the HPSS_PRINCIPAL_SSM environment variable. -k The Keytab name which this utility will run with. Usually run as SSM. The Keytab name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If not present, the value for this parameter will be taken from the HPSS_KEYTAB_FILE_SERVER environment variable. -g The schema name associated with the HPSS Databases. If not present, the value for this parameter will be taken from the environment variable HPSS_MM_SCHEMA_NAME. EXAMPLE The following command will list the segments of the file "/dsf/Home0508". The file resides on a two wide tape stripe volume. $ dumpbf -f /dsf/Home0508 -g hpss_global_db -p hpss_ssm -k /krb5/hpss.keytabs -n hpss Bitfile segment dump of: /dsf/Home0508 Bitfile Id: Object UUID 003785b6-26b1-1191-ab55-02608c2facae ServerDependent 00743a0658eb1005a821000000000004 **Tape Segments**: StorageClass: 3 Number of segments at this level = 1 Total length of segments at this level = 90573824 Byte Offset: 0 Segment Length: 90573824 PV(s): JIM00200 JIM00400 FILES SEE ALSO lsvol(7) SCCS man/dumpbf.7, gen, 5.1 8/1/02 17:14:00 NAME dumphpssfs - for Dump HPSS Fileset SYNTAX dumphpssfs [-c] [-r] where The name of the HPSS Fileset to be dumped. The name of the file to write the ASCII dump. -c Optional command indicating the user wishes to dump the consistency flags. These flags describe synchronization states between DFS and HPSS. The default is to not dump the consistency flags. Dumping these flags will degrade the performance and is not required by the 'loadtree' tool. Dumping the consistency flags may be useful on an already mirrored fileset for synchronization verification. -r Optional command indicating the user wishes to restart the dump where the previous dump left off. This option may be used if a previous run of 'dumphpssfs' terminated prematurely. Note: The Restart option assumes that the fileset being dumped has NOT been altered since the last dump attempt; unpredictable results may occur if the fileset has been altered. DESCRIPTION dumphpssfs (for Dump HPSS Fileset) is a utility used in the first step of a three step process to import an HPSS fileset into DFS. The dumphpssfs utility rumbles through an HPSS fileset and generates an ASCII representation of the fileset name space. The resulting data can be used by another utility to generate the same fileset on a another system. ENVIRONMENT The dumphpssfs utility is initiated from the command line. The utility differs from some other HPSS utilities in that it uses the Client API library. The user must have a dce_login as "hpss_dmg" and must have initialized the required Client API environment variables. The environment variables can be set by sourcing the $HPSS_ROOT/config/hpss_env file if these environment variables have been set up properly by the system administrator. See the HPSS Programmer's Reference Guide for more information on the required Client API environment variables. ASSOCIATED FILES The dumphpssfs utility creates two output files: an output file specified on the command line and a restart file in the current working directory called DumpHPSSFSRestartFile. The first file is specified on the command line as . This file will contain the ASCII representation of the fileset. This file can be used as input to the DMAPI "loadtree" utility. The format for each name space object in the : ==================== LEVEL: TYPE: NAME: DMHANDLE: - EVENTS: 0 NUMEVENTS: 0 PERS: 0 PERSMAN: 0 DTIME: () CHANGE: 0 DEV: 0 INO: 1 MODE: NLINK: UID: GID: RDEV: 0 SIZE: ATIME: () MTIME: () CTIME: () \ BLOCKSIZE: NUMBLOCKS: FSID: ACCOUNT: COS: COMMENT: FAMILYID: LOCATION: MACSECLABEL: ACL List: OR For each ACL when not "default": ENTRYTYPE: PERMS: EXPDATE: ENTRYID: LOCATION: DM Attributes: HPSS_ID = if SYNC_FILESET_DATA Consistency Flag is set: SYNCFLAG if CACHE_DATA_VALID Consistency Flag is set: CAC_VAL if HPSS_DATA_VALID Consistency Flag is set: HPS_VAL if "directory" if there exists a non default Initial Container ACL: DIR-IC_ACL: ACL List: For each ACL entry: ENTRYTYPE: PERMS: EXPDATE: ENTRYID: LOCATION: if there exists a non default Initial Object ACL: DIR-IO_ACL: ACL List: For each ACL entry: ENTRYTYPE: PERMS: EXPDATE: ENTRYID: LOCATION: if "file" if "hardlink": HARDLINK: YES LINKPATH: else HARDLINK: NO if "junction" JUNCTIONTYPE: regular JUNCTIONPATH: [] if "symlink" SYMLINK: ==================== The second file, DumpHPSSFSRestartFile, is created in the current working directory. This file is used as a checkpoint/restart file. Information on each hardlink contained in the fileset will be written to this file. This information is needed by the [-r], the Restart feature. Upon Restart, this file will be read, processed, and possibly more logs will be written to it. Therefore restarts should be executed in the same directory from which the initial dump was taken. If the fileset being dumped does not contain any hardlinks, this file will be empty. After a successful dump of a fileset, this file can be deleted by the user. The format for every DumpHPSSFSRestartFile entry is: NOTES The output from this tool cannot be read from the HPSS 'loadtree' or 'loadhpssfs' tools in Releases prior to HPSS R4.2. This is due to new formats added to support the HPSS Release 4.2 Initial Container and Initial Object ACL feature. EXAMPLE In the following example, an HPSS fileset named nsClient_HPSSOnly_Fileset.piniE is dumped to an Unix file named 'dump.out'. ksh dce_login hpss_dmg . $HPSS_ROOT/config/hpss_env /opt/hpss/bin/dumphpssfs nsClient_HPSSOnly_Fileset.piniE dump.out Using file 'DumpHPSSFSRestartFile' for HardLink Checkpoint/Restart capabilities. Dumping=./. Dumping=./TestDir Dumping=./TestDir/abcDir Dumping=./TestDir/abcDir/ABCfile Dumping=./TestDir/abcfile Number of objects processed: (5) Files: (2) Directories: (3) Hard Links: (0) Symbolic Links: (0) Junctions: (0) SCCS @(#)07 1.5 man/dumphpssfs.7, gen, 5.1 9/25/00 20:37:16 NAME dumppv_pvl - List the physical volumes managed by a PVL. SYNTAX dumppv_pvl [ -p Utility Principal Name -k KeyTab Path -s Database Schema name -g HPSS Global Configuration Name ] DESCRIPTION This utility will produce a list of the physical volumes managed by the PVL. The list will include the name, media type and the Storage Class(if allocated) of the volume. If certain command line arguments are not specified, Hpss environment variables will be used(if set). OPTIONS -g The global configuration database Name. file. If set, the environment variable HPSS_CONFIG_COMMON_DB will be used if an argument is not specified on the command line. -s The schema database Name. file. If set, the environment variable HPSS_MM_SCHEMA_NAME will be used if an argument is not specified on the command line. -p The server principal name which this utility will run under. Usually run as SSM. The Principal name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If set, the environment variable HPSS_PRINCIPAL_SSM will be used if an argument is not specified on the command line. -k The Keytab name which this utility will run with. Usually run as SSM. The Keytab name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If set, the environment variable HPSS_KEYTAB_FILE_SERVER will be used if an argument is not specified on the command line. EXAMPLE The following command will list the physical volumes managed by the PVL "pvl_ampex". $ dumppv_pvl -g cfg -s hpss -p hpss_ssm -k /krb5/hpss.keytabs OR (using environment variables) $ . /opt/hpss/config/hpss_env $ dumppv_pvl PVL Physical Volumes: Name Type Class State GENERI00 ? unallocated IDLE PJD00100 MT_DISK_DEFAULT 140 BUSY PJD00200 MT_DISK_DEFAULT 140 BUSY PJD00300 MT_DISK_DEFAULT 140 BUSY PJD00400 MT_DISK_DEFAULT 140 BUSY UN022600 MT_TAPE_3590 2 BUSY UN022700 MT_TAPE_3590 2 BUSY UN022800 MT_TAPE_3590 2 BUSY UN022900 MT_TAPE_3590 2 BUSY UN023000 MT_TAPE_3590 2 BUSY US010000 MT_TAPE_9840 2 IDLE US010100 MT_TAPE_9840 2 IDLE US010200 MT_TAPE_9840 2 IDLE US010300 MT_TAPE_9840 2 IDLE US010400 MT_TAPE_9840 2 IDLE UT020000 MT_TAPE_9940 141 IDLE UT020100 MT_TAPE_9940 141 IDLE UT020200 MT_TAPE_9940 141 IDLE UT020300 MT_TAPE_9940 141 IDLE UT020400 MT_TAPE_9940 141 IDLE UT020500 MT_TAPE_9940 141 IDLE UT020600 MT_TAPE_9940 141 IDLE FILES SEE ALSO dumppv_pvr(7), lsvol(7) SCCS man/dumppv_pvl.7, gen, 5.1 8/5/02 15:40:36 NAME dumppv_pvr - List the physical volumes managed by a PVR. SYNTAX dumppv_pvr [ -l PVR Descriptive Name -p Utility Principal Name -k KeyTab Path -g HPSS Global Database Name -s Database Schema Name ] DESCRIPTION This utility will produce a list of the physical volumes managed by the PVR. The output includes a count of the number of mounts performed on a cartridge since it was placed in service. If certain command line arguments are not specified, Hpss environment variables will be used(if set). OPTIONS -l The descriptive name of the HPSS PVR Server which manages the volumes to be scanned. The descriptive name of a PVR server can be found from SSM through: Admin, Configure HPSS, Server Configuration screens. -g The global configuration database Name. file. If set, the environment variable HPSS_CONFIG_COMMON_DB will be used if an argument is not specified on the command line. -s The schema database Name. file. If set, the environment variable HPSS_MM_SCHEMA_NAME will be used if an argument is not specified on the command line. -p The server principal name which this utility will run under. Usually run as SSM. The Principal name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If set, the environment variable HPSS_PRINCIPAL_SSM will be used if an argument is not specified on the command line. -k The Keytab name which this utility will run with. Usually run as SSM. The Keytab name of the SSM can be found from SSM through: Admin, Configure HPSS, Server Configuration, Security Information screens. If set, the environment variable HPSS_KEYTAB_FILE_SERVER will be used if an argument is not specified on the command line. EXAMPLE The following command will list the physical volumes managed by the PVR "3494 PVR". $ dumppv_pvr -l "3494 PVR" -g cfg -s hpss -p hpss_ssm -k /krb5/hpss.keytabs OR (using environment variables) $ . /opt/hpss/config/hpss_env $ dumppv_pvr -l "3494 PVR" PVR Physical Volumes: Name Total Mounts 000060 118 000061 113 000062 101 000063 110 000064 96 000065 2 000066 4 000067 7 000068 57 000069 2 000070 17 000071 43 000072 0 000073 0 000074 0 000075 0 000076 0 000077 0 000078 0 000079 0 GENERI 0 FILES SEE ALSO dumppv_pvl(7), lsvol(7) SCCS man/dumppv_pvr.7, gen, 5.1 8/5/02 16:11:36 NAME getdmattr - get DM attributes for a file that is stored in DFS or XFS. SYNTAX getdmattr DESCRIPTION getdmattr is a utility that can be run on the DFS server machine that contains the Episode file system that contains the file. It may also be run on Linux machines for XFS files. This utility will be used generally to check on files that appear to be inconsistent between DFS/XFS and HPSS. This tool must be run as root. The output from this utility will describe the state of the file and will include all DM attributes associated with this file, the region information, and the file data residency. Most of the output will only be important for debugging purposes. See the HPSS Management Guide for more details. PARAMETERS Path Name - The path to the file. For DFS, provide the path via the local UNIX mount point. EXAMPLE The following commands will get file and DM attributes information for a file on the local machine. For DFS: % getdmattr /var/hpss/hdm/hdm1/aggr/test.aggr/test.fileset/file.0 For XFS: % getdmattr /mnt/archive/file.0 FILES SEE ALSO setdmattr(7), deldmattr(7) SCCS man/getdmattr.7, gen, 5.1 5/30/02 12:05:06 NAME hacl - manage HPSS access control lists SYNTAX hacl [-x] [-v] [command ... ] DESCRIPTION The hacl utility is used to manage access control lists (ACLs) on HPSS files. In particular, hacl can replace an ACL with a different one, add new ACL entries or update existing ones, delete selected ACL entries, clear out an entire ACL, and display ACLs. To make it easier to change ACLs, hacl can also copy an ACL from an existing file to another file. If a command is supplied on the execute line, then the command is executed immediately and control is returned to the shell. Otherwise hacl enters interactive mode. In this mode, the user can change working directories, look at the files in the current directory, try out acl changes, and see the results of the change. Interactive mode may also be used to read commands from a script. Access control lists are made up of individual ACL entries separated by "white space". White space characters include commas, semicolons, and newlines, as well as spaces and tabs. Each ACL entry takes the form "::", where: the ACL entry type (e.g., "user_obj") principal and/or cell name the permissions (e.g., "rwx") The field can be any of the standard DCE ACL entry types, including user_obj, group_obj, other_obj, user, group, foreign_user, foreign_group, foreign_other, any_other, mask_obj, unauthenticated, user_obj_delegate, group_obj_delegate, other_obj_delegate, user_delegate, group_delegate, foreign_user_delegate, foreign_group_delegate foreign_other_delete, and any_other_delegate. The field takes the form //. The or may or may not be required, depending on the ACL entry type. The can be specified with either a cell name (e.g., /.../hpss.ca.sandia.gov) or a cell id (e.g., /87654321). Similarly, users can be specified either by name (e.g., hilary) or by uid (e.g., 20021), and groups can be specified by name or gid. Normally the user will use names rather than ids, but ids are provided to deal with situations where the cell, principal, and/or group have been removed from the security registry. The field may or may not be required, depending on the command. When required, the field is made up the characters "rwxcid", signifying respectively read, write, execute, control, insert, and delete. To specify that a permission is not wanted, use a hyphen (-) or just omit the character corresponding to that permission. Many commands can optionally act on the initial container or initial object ACL of a directory. To specify one of these, use the -ic or -io flag on the command line. For example, to clear the initial container ACL on mydirectory: $ hacl clear -ic -f mydirectory The -ic and -io flags are mutually exclusive. If neither is present on the command line, then the object ACL itself will be processed. Many commands require that a list of ACL entries be entered. The list can be specified in one of two ways using the -a or -A flags. The flags are mutually exclusive. If the -a flag is used, then is an explicit list of ACL entries to be processed. If the -A flag is used, then is the name of Unix file that contains the ACL entries. The format of the file is flexible, but it is recommended that each ACL entry appear on a separate line. Many commands also require the user to specify the list of files that are to be processed. The list can be specified in one of three ways using the -B, -f, and -F flags. The flags are mutually exclusive. If the -f flag is used, it must be the last flag on the command line. In this case, is a list of files to be processed. The list may contain files whose names begin with a hyphen. With the exception of the "ls" command, the list may not contain wildcards or escape characters. If the -F flag is used, then is the name of a Unix file that contains the names of the HPSS files to be processed. The file must be formatted with one file to a line. Leading blank characters are ignored, but embedded and trailing blanks are considered to be part of the file name. Asterisks (*), question marks (?), and escapes (\) are not translated but rather are treated as part of the file name. In addition a bulk file processing option MAY be available in some future version of hacl. This option, selected by the -B flag, allows hacl to change ACLs more efficiently. To use the option, a Unix file must first be prepared containing the HPSS nameserver handle and the name of each file that is to be processed. To prepare the Unix file, use hacl's "ls -h" command. Once the file has been prepared, use hacl's -B flag, naming the Unix file as . One of the examples below shows how to do this in more detail. To designate input from stdin, use a hyphen (-) for the , , or parameters. Needless to say, only one of these parameters can be set to stdin at a time. Moreover, the hyphen cannot be used in interactive mode. The "ls" is the only hacl command that accepts wildcards and escape characters. The asterisk (*) and question mark (?) have the same interpretation as they do in most Unix shells. The backslash (\) is an escape character that can be used to represent troublesome characters. The following escape sequences are recognized: \t the tab character \' the apostrophe (') \" the double quote (") \(blank) the blank ( ) character \nnn the ASCII character given by 1-3 octal digits \\ the backslash (\) character itself \(other) unchanged Escape sequences are translated before wildcards are evaluated, which has the practical effect that there is no simple way to specify a file name that contains an asterisk or question mark. Note that file names can either be specified as absolute or relative path names. When hacl starts, it determines the user's default working directory from HPSS. However, if the environment variable HACL_DEFAULT_DIR is set, then its value will determine the default directory. The directory can be changed by using hacl's "cd" command. Some commands support a -q flag. If the flag is missing, then information is printed out for every file that is processed. For example: $ hacl copy -m model -f file.01 file.02 file.01 OK file.02 Cannot change ACL. (No such name) If the -q flag is present, only the commands that fail will be reported. This makes it easier to see errors. For example: $ hacl copy -q -m model -f file.01 file.02 file.02 Cannot change ACL. (No such name) By default, when hacl encounters an error, it continues running, processing other files and hacl commands until a quit or exit command is seen. However, this can be dangerous if hacl is being run from a script. For example, if a "cd" command fails, hacl might end up processing files in the wrong directory. To prevent this from happening, always use the -x flag when running from a script. The -v flag should also be used so that hacl's messages can be related to the commands that generated them. PARAMETERS command Optional one-liner command and parameters. -x Terminate commands as soon as an error occurs. -v Echo hacl commands to stdout. COMMAND SUMMARY acl Description of the syntax for access control lists cd Change the working directory clear Clear the entire ACL for one or more files copy Copy the ACL from one file to one or more other files echo Echo the arguments to standard output exit Leave the program help Get help on how to use hacl ls List the files in a directory purge Purge unused ACL perms to account for mask object pwd Print the current working directory remove Remove selected ACL entries from one or more files replace Replace entire ACL with new ACL for one or more files quit Leave the program show Show the ACL for one or more files update Update selected ACL entries for one or more files usage Describe hacl's command line COMMAND DETAILS acl Description of the syntax for access control lists This is not a command per se, but rather a topic for which help is available. Typing the command "help acl" results in a description of the syntax for ACLs. cd [] Change the working directory New working directory If is missing, this command changes the current working directory to be the user's default working directory. clear [-ic | -io] [-q] [-B | -F | [-f] ] Clear the entire ACL for one or more files -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -q don't report successes -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files This command deletes all ACL entries except the user_obj, group_obj, other_obj entries. See the discussion section for a description of the flags. copy [-ic | -io] [-q] -m [-B | -F | \ [-f] ] Copy the ACL from one file to one or more other files -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -q don't report successes -m change ACL to that given by "model" file an HPSS file whose ACL will be copied -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files The -m flag is used to specify the name of the HPSS file whose ACL is to be copied. This flag is required. See the discussion section for a description of the other flags. echo [] Echo the arguments to standard output the message text to be echoed exit Leave the program help [-v] [] Get help on how to use hacl -v print more details topic for which help is desired If is omitted, print a list of topics for which help is available. ls [-a] [-h] [-l] [-f] [] List the files in a directory -a list files whose names begin with a dot (.) -h list file handles needed by the bulk ACL commands -l list owner's cell name, user name, and group name -f list the files named in The -f flag must be last on the command line. The argument can contain wildcards and escape characters. If one of the files named is a directory, the directory itself will be listed rather than the files in that directory. If is omitted, then all of the files in the current working directory will be listed. The "ls" command is the only hacl command that accepts wildcards. To use wildcards on other commands, the output of the "ls" command must be directed into a file or a pipe and then read back into hacl using the -F flag. For example, this will show the ACLs for all files whose names end in ".dat": $ hacl ls -f '*.dat' | hacl show -F - If the -h flag is used, the output of the "ls" command will be in the right format to use as input to one of the bulk ACL operations. For example, the following command copies the ACL in myfile.dat to all the files in the current working directory: $ hacl ls -h -f '*' | hacl copy -m myfile.dat -B - purge [-ic | -io] [-q] [-B | -F | [-f] ] Purge unused ACL permissions to account for the mask object -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -q don't report successes -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files See the discussion section for a description of the flags. pwd Print the current working directory remove [-ic | -io] [-q] [-a | -A ] \ [-B | -F | -f ] Remove selected ACL entries from one or more files -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -q don't report successes -a ACL entries are explicitly listed explicit list of ACL entries -A ACL is determined by reading a file Unix text file listing the new ACL entries -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files See the discussion section for a description of the flags. replace [-ic | -io] [-m ] [-q] [-a | -A ] \ [-B | -F | -f ] Replace entire ACL with new ACL for one or more files -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -m adjust mask object according to either "calc" or "nocalc" -q don't report successes -a ACL entries are explicitly listed explicit list of ACL entries -A ACL is determined by reading a file Unix text file listing the new ACL entries -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files See the discussion section for a description of the flags. quit Leave the program show [-e] [-ic | -io] [-B | -F | [-f] ] Show the ACL for one or more files -e show effective permisions considering mask object -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files See the discussion section for a description of the flags. update [-ic | -io] [-m ] [-q] \ [-a | -A ] \ [-B | -F | -f ] Update selected ACL entries for one or more files -ic the ACL is an initial container ACL -io the ACL is an initial object ACL -m adjust mask object according to either "calc" or "nocalc" -q don't report successes -a ACL entries are explicitly listed explicit list of ACL entries -A ACL is determined by reading a file Unix text file listing the new ACL entries -B bulk ACL change for files listed in a Unix text file listing file names and NS handles -F file names are determined by reading a Unix text file listing file names -f file names explicitly listed in an explicit list of files See the discussion section for a description of the flags. This command can be used to add new entries to an ACL as well as to change existing entries. usage Describe hacl's command line EXAMPLES To show the ACL on a file: $ hacl show myfile.dat To show the effective ACL on a file: $ hacl show -e myfile.dat To show the initial container ACL on a directory: $ hacl show -ic mydir To copy an ACL from a model file to several other files: $ hacl copy -m model.file -f file.00 file.01 file.02 To copy an ACL to a list of files specified using wildcards: $ hacl ls '*.dat' | hacl copy -m model.file -F - To update a single ACL entry on a single file: $ hacl update user:hilary:rwx file.00 To work with several ACL entries and files: $ hacl update -a user:joe:rwx user:ann:cid -f f1 f2 f3 To run hacl interactively and work with mydir/file.00: $ hacl > show mydir/file.00 > cd mydir > pwd > ls > update -a user:hilary:rwx -f file.00 > show file.00 To establish a default working directory (using ksh): $ export HACL_DEFAULT_DIR=/home/hilary/mydir $ hacl > show file.00 To use an ACL specified in a Unix file: $ cat myacls user:joe:rwx user:ann:cid $ hacl update -A myacls -f f1 f2 f3 To modify the files listed in a Unix file: $ cat myfiles f1 f2 f3 $ hacl update -a user:joe:rwx user:ann:cid -F myfiles To run hacl using a script: $ cat myscript update update -A myacls -f f1 f2 f3 update -a user:joe:rwx user:ann:cid -F myfiles $ hacl -v -x < myscript To generate and use the info needed by a bulk ACL command $ hacl ls -h '*.01' > mybulk $ cat mybulk 000002370000023700000000af4a81017ec823feee7511d1ab4708005a4726ef acl.01 0000023e0000023e00000000273381017ec823feee7511d1ab4708005a4726ef ftp.01 $ hacl update -A myacls -B mybulk FILES SEE ALSO SCCS static char SccsId[] = " @(#)33 1.2 man/hacl.7, gen, 5.1 2/26/03 10:00:17"; NAME hdm_admin - manage the HDM server SYNTAX hdm_admin [-b bin] [-k key] [-s id] [-v var] [-y] [command] PARAMETERS bin Path to HPSS executables. key Shared memory key. id Server ID. var Path to HDM's data files. command Optional one-liner command to execute. DESCRIPTION This utility is used to manage the HDM server. The utility can start the HDM, control certain aspects of the its operation, inspect its state, restart it, and stop it. The utility operates by inspecting the HDM's shared memory, and therefore can only be run on the machine where the HDM runs. The utility will work even if the HDM is not running, in which case the output shows what the HDM was doing when it last ran. The bin parameter defines the path to the HPSS executables. The default value is /opt/hpss/bin. The key parameter defines a key used to find the HDM's shared memory segment. The default value is 3789. The id parameter defines the server ID. This value determines which section of config.dat will be used to define the HDM's configuration. The default value is 1. The var parameter defines the directory where the HDM's data files are kept. This will typically be specified as an explicit path such as /var/hpss/hdm or /var/hpss/hdm/hdm1. If there are several HDMs running on one machine, the path can also be specified as a string containing the characters '%d'. The program will substitute the server id for %d to determine the actual path. For example, if the server id is 1 and var is /var/hpss/hdm/hdm%d, then the actual path will be /var/hpss/hdm/hdm1. The parameter must contain '%d' if hdm_admin's monitor command is to be used (DFS HDMs only). The default value is /var/hpss/hdm. If the -y option is specified, the HDM will not ask the user whether to go ahead with certain sensitive options, but will procede as if the user had answered "yes". This option allows hdm_admin to be used in scripts such as rc.dfs. The default is to always ask. If a command parameter is provided, hdm_admin executes the command immediately, then returns control to the shell. The command, which may contain one or more words, must appear last on the line after the switches. A list of the legal commands is shown below. If the command is omitted, hdm_admin enters interactive mode, prompting for commands and executing them until the user quits the program. In general, when hdm_admin finishes, it does not return a useful error code to the shell. There are two exceptions to this rule. The 'start -wait' command returns 0 if the HDM was started successfully, and a non-zero value otherwise; and the 'ps' command returns 0 if the HDM is running, and a non-zero value otherwise. These values can be used by scripts such as rc.dfs to determine if it is safe to export DFS aggregates. Environment Variables If any of the command line parameters is omitted, the default values listed above can be overridden by setting one or more of the following environment variables: HPSS_HDM_SHMEM_KEY If set, this determines the shared memory key. The value can be overridden by using the -k option on the command line. HPSS_HDM_SERVER_ID If set, this determines the server ID. This value determines which section of config.dat will be read to find the HDM's configuration. The value can be overridden by using the -s option on the command line. HPSS_PATH_BIN If set, this determines the path to the hpss_hdm executable. The value is used by the start command to locate the directory for the file. The file's name is always hpss_hdm. The default path is determined by hpss_env, and is typically /opt/hpss/bin. The value can be overridden by using the -b bin option on the command line. HPSS_PATH_HDM If set, this determines the path to the directory where the HDM keeps log files, configuration files, etc. The path is typically /usr/var/hdm or /usr/var/hdm/hdm%d. The value can be overridden by using the -v option on the command line. COMMANDS The following is a summary of hdm_admin's subcommands. A detailed description of each subcommand will be found below. again Repeat the last command comment Enter a comment in the HDM's message log dlog Inspect the destroy log exit Quit out of hdm_admin fsstat Print the file system table ftstat Print the fileset table help Get information on how to use hdm_admin kill_all Kill all HDM processes ungracefully locks Inspect the HDM's locks and semaphores migrate Start a file migration cycle mlog Inspect the main event log monitor Switch focus to a different HDM (DFS HDMs only) printenv Print environment variables ps Find what the HDM processes are doing purge Start a file purge cycle queue Inspect the event queue quit Quit out of hdm_admin report Change what messages are being logged restart Restart the HDM start Start the HDM stats Inspect statistics stop Stop the HDM tcp Enable/disable changes to aggregates from HPSS usage Show the command line usage for hdm_admin zlog Inspect the zap log To get help on one of hdm_admin's subcommands, enter the command "help ", where is the name of the subcommand for which additional information is desired. Note: depending on the state of the HDM, some subcommands may not be available. For example, the HDM cannot be restarted if it isn't running. SUBCOMMANDS The detailed usage of each hdm_admin subcommand is shown below: again Purpose Repeat the last command comment Purpose Enter a comment in the HDM's message log The comment to be entered - one or more words. dlog Purpose Inspect the destroy log exit Purpose Quit out of hdm_admin fsstat [] (For DFS HDMs) -OR- fsstat [] (For XFS HDMs) Purpose Inspect the file system table Media designator (e.g., /dev/lv01). If omitted, list all filesystems. Filesystem name (e.g., xfs_fs1). If omitted, list all filesystems. ftstat [ Purpose Inspect the fileset table Fileset name. If omitted, list all filesets. help [] Purpose Get information on how to use hdm_admin Command for which help is wanted. If omitted, show a list of hdm_admin's commands. kill_all [] Purpose Kill all HDM processes ungracefully Signal to use. Legal values include -TERM, -15, -KILL, and -9. The default is -TERM. locks Purpose Inspect the HDM's locks and semaphores migrate (For DFS HDMs) -OR- migrate (For XFS HDMs) Purpose Start a file migration cycle Aggregate where migration is to be started Filesystem where migration is to be started mlog Purpose Inspect the main event log monitor [] (For DFS HDMs) Purpose Switch focus to a different DFS HDM The id of the server to switch to. If omitted, report which server is currently being monitored. To use this command effectively, the DFS HDMs must be set up carefully. See the discussion below for more information. printenv Purpose Print environment variables ps Purpose Find what the HDM processes are doing purge (For DFS HDMs) -OR- purge (For XFS HDMs) Purpose Start a file purge cycle for a file system Aggregate where purge is to be started Filesystem where purge is to be started queue Purpose Inspect the event queue quit Purpose Quit out of hdm_admin report [] Purpose Change what messages are being reported List of things to report. If omitted, display the current list. The list can contain one or more of the following keywords: alarm, event, request, security, accounting, status, trace, debug, or all. If all is specified, everything will be reported. restart Purpose Restart the HDM start [-force] [-noisy] [-quiet] [-wait] [ [ []]] Purpose Start the HDM -force Force the HDM to start, even if it is already running. -noisy Enable messages to stdout if they are enabled in config.dat. This is the default when the start command is specified on hdm_admin's command line. -quiet Turn off messages to stdout, even if they are enabled in config.dat. This is the default when running interactively. -wait Wait for HDM to start before returning control to hdm_admin. The name of the executable. The default depends on the setting of HPSS_PATH_BIN, but is typically /opt/hpss/bin/hpss_hdm. The name of the configuration file. The default depends on the setting of the environment variable HPSS_PATH_HDM, but it is typically /var/hpss/hdm/hdm1/config.dat. The ServerID section to be used from the configuration file. The default is 1. stats Purpose Inspect statistics stop Purpose Stop the HDM tcp { enable | disable } [] (For DFS HDMs) -OR- tcp { enable | disable } [] (For XFS HDMs) Purpose Set a flag in the TCP process to enable or disable changes to an aggregate from the HPSS side. If is omitted, enable or disable all aggregates managed by the HDM. If the disable option is specified, unmount all locally mounted filesets on the affected aggregates. Note: the disable command is typically used just before detaching a DFS aggregate. usage Purpose Show the command line usage for hdm_admin zlog Purpose Inspect the zap log USING THE 'MONITOR' COMMAND EFFECTIVELY: [Note: the monitor command is not supported with XFS HDMs.] The monitor command is used to switch hdm_admin's focus from one DFS HDM to another. This is only useful if there are several DFS HDMs running on one machine. To use the command effectively, the data files for the different HDMs must be kept in directories named according to the server id. For example, the data files for server 0 might be kept in /var/hpss/hdm/hdm0 and the files for server 1 might be in /var/hpss/hdm/hdm1. To tell hdm_admin the convention that is being used, include the characters '%d' in the var parameter or the HPSS_PATH_HDM environment variable. For example use /var/hpss/hdm/hdm%d for the example above. The characters '%d' are only required if the monitor command is to be used. If they are not present, hdm_admin will not be able to keep the different servers' data files separate. There is one other requirement for using the monitor command: the server's keys must be related to the server id. For example, if server 0 uses key 3700, then server 1 must use key 3701, server 2 must use key 3702, etc. EXAMPLES To start the HDM using a shell command: # hdm_admin start To start the HDM and wait to see if it comes up: # hdm_admin start -wait To see if the HDM is running before exporting files: # hdm_admin ps # if [ $? = 0 ]; then # dfsexport aggr1 # fi To use hdm_admin interactively to determine what the HDM is doing: # hdm_admin > ps > stats > dlog > mlog > zlog > queue > exit To monitor two HDM servers without restarting hdm_admin: # export HPSS_PATH_HDM=/var/hpss/hdm/hdm%d # hdm_admin > monitor 1 > ps -- show processes for server 1 > monitor 2 > stop -- stop processes for server 2 To enter comments in the message log: # hdm_admin comment File system aggr1 is full. # hdm_admin comment Migrating files to clear it up. To start a migration cycle on an aggregate named aggr1: # hdm_admin migrate aggr1 To start migration and purge cycles: # hdm_admin > migrate aggr1 > purge aggr1 > quit To stop the HDM: # hdm_admin stop To get help on how to use hdm_admin or one of its commands: # hdm_admin > usage > help > help start FILES config.dat Configuration file for the HDM hpss_hdm Main overseer program for the HDM hpss_env Script to set up the HPSS environment SCCS @(#)31 1.7 man/hdm_admin.7, gen, 5.1 5/10/02 12:03:31 NAME hdmdump - Dump an ascii representation of a DMLFS fileset. SYNTAX hdmdump [SetMigrate] DESCRIPTION hdmdump can be run to dump an ascii representation of a DMLFS DFS fileset into stdout. This utility can be used to import both archived and mirrored filesets into HPSS. This tool must be run as root on the machine that contain the disk on which the fileset resides. When importing a DFS fileset into a mirrored HPSS fileset, the SetMigrate option must be set, and the output directed to a file that can be used be the utility "loadhpssfs" to load the HPSS fileset. When importing a DFS fileset into an archived HPSS fileset, the SetMigrate option should be set to mark files as migratable but the output can be sent to /dev/null since it is not needed to load the archive fileset in HPSS (The migration of the files will handle loading the archveid fileset). See "HPSS Administration Guide: DFS Configuration and Management" for more details. PARAMETERS Fileset ID - Numeric fileset identification. (e.g 0.4, 0.234, etc.) Fileset Name - Character name for the fileset. Fileset Path - Path to where the fileset is mounted on the local UNIX file system. SetMigrate - This is an optional parameter that if set will mark all files that do not contain the HPSS_ID DM attribute with the attribute MIGRATE set to a value of 1. This must be set during DFS fileset import into HPSS so that file data will migrate into HPSS. If this is not set then the HDM will not know which files need to be migrated. EXAMPLE The following command will send output to the file "hdmdump.out" for fileset 0.4 whose name is test.fileset and is currently locally mounted at "/var/hpss/hdm/hdm1/aggr/test.aggr/test.fileset" and will set the MIGRATE DM attribute for all files not already backed into HPSS. hdmdump 0.4 test.fileset \ /var/hpss/hdm/hdm1/aggr/test.aggr/test.fileset SetMigrate \ > hdmdump.out FILES SEE ALSO loadhpssfs(7), loadtree(7), loadhpssid(7), loadhpssdmid(7), dumphpssfs(7) SCCS @(#)98 1.2 man/hdmdump.7, gen, 5.1 4/21/02 16:19:38 NAME hpss.clean - Kill one or more HPSS processes SYNTAX hpss.clean [-f ] { | all }* DESCRIPTION This program terminates all processes with a basename of . All processes matching via the "ps -e" command will be killed by signalling the process via the "kill" command. Up to 10 processes can be specified as arguments. Specifying "all" as the process name will cause all HPSS processes, except those related to SSM and the Startup Daemon, to be signaled. SSM processes, as well as the Startup Daemon, can only be terminated via this utility by explicitly listing them on the command line. The servers are killed in the following order, using the specified signal (-15 is SIGTERM, -9 is SIGKILL): Process Kill Type of Server Base Name Signal --------------------- ------------------ -- Metadata Monitor hpss_mmon 15 MPS hpss_mps 15 Mount Daemon hpss_mnt 15 NFS Daemon hpss_nfs 15 Non-DCE Client Gateway hpss_ndcg 15 DMAP Gateway hpss_dmg 15 Mover hpss_mvr 15 3494 PVR hpss_pvr_3494 15 Operator PVR hpss_pvr_operator 15 3495 PVR hpss_pvr_3495 15 STK PVR hpss_pvr_stk 15 Ampex PVR hpss_pvr_ampex 15 3584 LTO PVR hpss_pvr_lto 15 AML PVR hpss_pvr_aml 15 PVL hpss_pvl 15 CORE hpss_core 15 Location Server hpss_ls 15 Gatekeeper hpss_gk 15 Log Client hpss_logc 15 Log Daemon hpss_logd 15 Startup Daemon hpssd 9 SSM Data Server hpss_ssmds 15 SSM System Manager hpss_ssmsm 15 If the -f option is specified, the specified HPSS processes will be forced to terminate via the -9 (SIGKILL) signal. The user invoking this script must have the appropriate priviledge to kill the selected processes. This utility can also be used with the rsh or dsh command to remotely kill HPSS processes. EXAMPLE To kill the HPSS startup daemon, issue: % hpss.clean hpssd To kill all running HPSS processes (except SSM and the Startup Daemon), issue: % hpss.clean all The following command will kill all Log Clients and Movers: % hpss.clean hpss_mvr hpss_logc To kill all HPSS processes as well as all SSM processes, issue: % hpss.clean all hpss_ssmds hpss_ssmsm FILES SEE ALSO rc.hpss SCCS man/hpss.clean.7, gen, 5.1 10/30/03 09:40:02 NAME hpss_avaledit - HPSS Account Validation Metadata Editor SYNTAX hpss_avaledit [ -path ] DESCRIPTION The "hpss_avaledit" HPSS utility manages user account validation metadata for HPSS sites that use Site-style accounting where Account Validation has been enabled on the Accounting Policy screen in SSM. You must be DCE logged in with appropriate access to the metadata file before using this utility. OPTIONS -path Optional DCE path of the acctvalidate metadata file. The default value is /.:/encina/sfs/hpss/acctvalidate. You must already be DCE logged in with proper access to this file. An action may be one of the following: -add [] [-def] -default -list [i|d] [] [] -remove { | -all} These are described in detail below. specifies a single user by uid or moniker and an optional cell identifier. It may be one of the following: -user { | } -uid -uname A numeric value assigned to "-user" is considered to be a uid and a moniker otherwise. A moniker may be a simple name, or fully qualified in the form: /...//. Specify a non-local cell uid with: -cell specifies an account index by number or name. It may be one of the following. -aname -aidx Actions: -add [] [-def] Create a single user account and print the result. If either an account name or index is supplied, that information is used when creating the account. The user's moniker is used as the account name is none is supplied. The next available account index is used if none is supplied. If the "-def" option is specified, this will be made the user's default account. Even if the "-def" option is not used, if the user has no other account index in the metadata file, this index will become the user's default account index. -default Make the specified account the user's default account index and print the result. -list [i|d] [] [] List the account indexes for one or more users or accounts. If "i" is specified, numeric identifiers are printed instead of monikers. If "d" is specified, all of the fields for each metadata record are dumped in a multiple line format. If a user is specified only accounts for that user are listed. If an account is specified, only indexes for that account are listed. If no users or no accounts are specified, all accounts in the metadata file are printed. -remove { | -all} Remove one or all account indexes for the specified user and print the account indexes removed. The specified account index is removed for the user unless the "-all" option is supplied where all of the user's account indexes are removed. If the user's default account is removed and that user has other account index, it is up to the administrator to chose a new default account index for that user with the "-default" action. EXAMPLE For the following examples, assume there are two users with the following attributes: User Cell Id Uid /.:/joe 100001 777 /.../othercell.com/bob 100002 888 Add a default account index for user "joe" with an account name of "joe" and the next available account index: % hpss_avaledit -add -user joe -def Add a foreign user to an existing account named "development": % hpss_avaledit -add -user /.../othercell.com/bob -aname development Make an existing account index user joe's new default account: % hpss_avaledit -default -user joe -aidx 12345 List all accounts for user joe: % hpss_avaledit -list -uname joe ACCOUNT ACCOUNT_NAME DEFAULT USER 277 development no joe 7311 production no joe 12345 joe yes joe List all users in the "development" account: % hpss_avaledit -list -aname development ACCOUNT ACCOUNT_NAME DEFAULT USER 277 development no joe 277 development no /.../othercell.com/bob List all users in the "development" account as in the previous example, but print out their cell ids and their uids: % hpss_avaledit -list i -aname development ACCOUNT ACCOUNT_NAME DEFAULT USER 277 development no 100001:777 277 development no 100002:888 Dump all users in the "development" account: % hpss_avaledit -list d -aname development AccountIndex: 277 CellId: 100001 UserId: 777 GroupId: 0 DefaultAcctIdx: 0x00000000 Flags: 0 AccountName: development AccountIndex: 277 CellId: 100002 UserId: 888 GroupId: 0 DefaultAcctIdx: 0x00000000 Flags: 0 AccountName: development Remove all of user joe's account indexes: % hpss_avaledit -remove -user joe -all Remove user joe from the development account index: % hpss_avaledit -remove -uid 777 -aname development FILES None SEE ALSO None SCCS @(#)29 1.1 man/hpss_avaledit.7, gen, 5.1 9/7/00 11:28:11 NAME hpss_delog - Retrieve and format HPSS log file entries SYNTAX hpss_delog Logfile Delogfile[-sStart time] [-eEnd Time] [-dDescriptive Name] -t [-uUser] [-pPrincipal] [-kKeytab File] DESCRIPTION "hpss_delog" is a utility used to analyze the activity and behavior of HPSS. The utility is generally used to troubleshoot problems. The delog process retrieves specific records from the HPSS central log file, converts the records to a readable text format, and outputs the text to a specified file. The central log files names available for delogging are logfile01 and logfile02. These files reside in the directory name specified in the Log Daemon configuration file. Log files archived to HPSS may also be delogged. Archived log files reside in a date-based HPSS directory structure: /log/yyyy/mm/dd. To determine the log times for an archived log file, list the log files. The timestamp of the time when the file was archived to HPSS is appended to the end of the log file name. The format of the archive file names is logfile01_yyyymmddhhmm or logfile02_yyyymmddhhmm. If no options other than the input log file pathname and output delog pathname are specified, all records in the log are delogged. Additional options allow filtering by start time (-s), end time (-e), server descriptive name(s) (-d), log record type(s) (-t), and user name(s) (-u). Options are described below: OPTIONS Logfile The pathname of the input log file name. The log file may be the primary or secondary logfile (logfile01 / logfile02), or an archived log. Delogfile The pathname of the output delog file. -s The start time of the first record to retrieve. If specified, the time format is yyyy:mm:dd:hh:mm:ss (year is optional). At most, one -s option may be entered. The default is the first record in the log. -e The end time of the last record to retrieve. If specified, the time format is yyyy:mm:dd:hh:mm:ss (year is optional). At most, one -e option may be entered. The default is the last record in the log. -d A server descriptive name associated with the log records to retrieve. Multiple -d options may be specified. The default is all servers. -t A log record type associated with the log records to retrieve. Options are alarm, event, request, security, accounting, debug, and trace. Multiple -t options may be specified. The default is all record types. -u A user name associated with the log records to retrieve. Multiple -u options may be specified. The default is all users. It should be noted that user names are not generally available from the core HPSS servers. -p The principal associated with the delog process. If not specified, the value will be obtained from the HPSS_PRINCIPAL_LOG environment variable if defined or to hpss_log. Note: If not specified, the principal will be obtained (in order) from the HPSS_LOG_PRINCIPAL environment variable, the HPSS_PRINCIPAL_LOG environment variable, or default to hpss_log. -k The keytab file associated with delog principal. If not specified, the value will be obtained from the HPSS_KEYTAB_FILE_SERVER environment variable if defined or to /krb5/hpss.keytabs. Note: If not specified, the keytab pathname will be obtained (in order) from the HPSS_LOG_KTAB_PATH environment variable, the HPSS_KEYTAB_FILE_SERVER environment variable, or default to /krb5/hpss.keytabs. EXAMPLES Delog all records from log file /var/hpss/log/logfile01 to output file /hpss/data/delog.out. hpss_delog /var/hpss/log/logfile01 /hpss/data/delog.out Delog records between 1:00pm and 3:00pm on March 1, 1999. hpss_delog /var/hpss/log/logfile02 /hpss/data/delog.out -s1999:03:01:13:00:00 -e1999:03:01:15:00:00 Delog alarm and debug records for server PVL between 1:00pm and 3:00pm on March 1, 1999. hpss_delog /var/hpss/log/logfile02 /hpss/data/delog.out -s1999:03:01:13:00:00 -e1999:03:01:15:00:00 -talarm -tdebug -dPVL Delog only alarm records. hpss_delog /var/hpss/log/logfile01 /hpss/data/delog.out -talarm Delog alarm and event records for the Core Server between 8:00am and 9:30am on February 28. The log file referenced has been archived to hpss. hpss_delog /log/1999/02/28/logfile01_199902280745 /hpss/data/delog.out -s02:28:08:00:00 -e02:28:09:30:00 -talarm -tevent -d'Core Server' FILES SEE ALSO SCCS man/hpss_delog.7, gen, 5.1 12/31/03 16:48:22 NAME hpss_drive_ctl - Query or alter the administrative state of an HPSS drive SYNTAX hpss_drive_ctl [-m] [-w ] -d -p -k -g DESCRIPTION hpss_drive_ctl is a tool for querying or setting the Administrative state of an HPSS drive. The three supported operations are "query" to just report the state of the drive, "enable" to unlock a locked drive, and "disable" to lock an unlocked drive. Note that for the enable operation, the program assumes that the drive is locked to begin with, and for the disable operation, the program assumes that the drive is unlocked to begin with. OPTIONS This is the numeric HPSS drive ID of the drive to control. -m "Monitor" mode: the program will continuously print the drive's state once a second -w Wait (for no more than TIMEOUT seconds) after locking the drive for the Drive state to become FREE. Note that if the drive does not become free within the specified timeout after being locked, that the program will then unlock the drive and exit. A timeout of -1 means to wait indefinitely. This option is only valid when the selected operation is "disable". -d The CDS name the utility should use. If not specified, the utility will use the value from the environment variable HPSS_CDS_SSMSM. -p The DCE principal to use when communicating with the PVL. If not specified, the utility will use the value in the environment variable HPSS_PRINCIPAL_SSM. -k The keytab file to use to authenticate as the principal. If not specified, the utility will use the value in the environment variable HPSS_KEYTAB_FILE_SERVER. -g The CDS name of the HPSS global config file. If not specified, the utility will use the value in the environment variable HPSS_CONFIG_GLOBAL. EXAMPLES To report on the state of drive ID 1: $ hpss_drive_ctl query 1 DriveID 1 AdminState unlocked DriveState in use To monitor the state of a drive continuously: $ hpss_drive_ctl -m query 1 DriveID 1 AdminState unlocked DriveState free ...(prints these out every second)... To lock a drive and wait for it to become free for 100 seconds: $ hpss_drive_ctl disable 1 -w 100 ...(as soon as the drive becomes free)... DriveID 1 AdminState locked DriveState free FILES SEE ALSO SCCS @(#)21 1.1 man/hpss_drive_ctl.7, gen, 5.1 6/14/00 15:53:10 exports File for HPSS NFS Purpose Contains a list of HPSS directories that can be exported to Network File System (NFS) clients. Description The HPSS exports file contains an entry for each directory that can be exported to NFS clients. If you change this file, you must restart the NFS server before the changes can affect the way the daemon operates. Entries in the file are formatted as follows: DirSpec -Option [ , Option ] ... These entries are defined as follows: DirSpec Specifies a fileset in HPSS and a directory path name within that fileset. If DirSpec starts with a leading slash, then it gives the path to a directory in the root fileset. If DirSpec does not start with a slash, then the name must take the form "FilesetName:/Path", where FilesetName gives the name of the fileset, and Path gives the path within that directory. The colon is required. Both the FilesetName and Path can contain blanks and hyphens. However these names cannot contain a space followed by a hyphen. For example "big-time" and "big time" are acceptable names, while "big -time" is not. Option Specifies optional characteristics for the directory be