=head1 NAME

B<copycds> - Copies Linux distributions and service levels from DVDs/ISOs to the xCAT /install directory.

=head1 SYNOPSIS

B<copycds> [{B<-n|--name|--osver>}=I<distroname>] [{B<-a|--arch>}=I<architecture>] [{B<-p|--path>}=I<ospkgpath>] [B<-o>|B<--noosimage>] [B<-w>|B<--nonoverwrite>] {I<iso | device-path>} ...

B<copycds> [B<-i>|B<--inspection>] {I<iso | device-path>}

B<copycds> [B<-h>|B<--help>]

=head1 DESCRIPTION

The B<copycds> command copies all contents of Distribution DVDs/ISOs or Service Pack DVDs/ISOs to a destination directory. The destination directory can be specified by the B<-p> option. If no path is specified, the default destination directory will be formed from the B<installdir> site table attribute, distro name and architecture, for example: /install/rhels6.3/x86_64. The B<copycds> command can copy from one or more ISO files, or the CD/DVD device path.

You can specify B<-i> or B<--inspection> option to check whether the DVDs/ISOs can be recognized by xCAT. If recognized, the distribution name, architecture and the disc no (the disc sequence number of DVDs/ISOs in multi-disk distribution) of the DVD/ISO is displayed. If xCAT doesn't recognize the DVD/ISO, you must manually specify the distro name and architecture using the B<-n> and B<-a> options. This is sometimes the case for distros that have very recently been released, and the xCAT code hasn't been updated for it yet.

You can get xCAT to recognize new DVDs/ISOs by adding them to /opt/xcat/lib/perl/xCAT/data/discinfo.pm (the key of the hash is the first line of .discinfo) and reloading xcatd (B<service xcatd reload>).

=head1 OPTIONS

=over 6

=item B<-n|--name|--osver>=I<distroname>

The linux distro name and version that the ISO/DVD contains.  Examples:  rhels6.3, sles11.2, fedora9.  Note the 's' in rhels6.3 which denotes the Server version of RHEL, which is typically used.

=item B<-a|--arch>=I<architecture>

The architecture of the linux distro on the ISO/DVD.  Examples: x86, x86_64, ppc64, s390x.

=item B<-p|--path>=I<ospkgpath>

The destination directory to which the contents of ISO/DVD will be copied. When this option is not specified, the default destination directory will be formed from the B<installdir> site table attribute and the distro name and architecture, for example: /install/rhel6.3/x86_64. This option is only supported for distributions of sles, redhat and windows.

=item B<-i|--inspection>

Check whether xCAT can recognize the DVDs/ISOs in the argument list, but do not copy the disc. Displays the os distribution name, architecture and disc no of each recognized DVD/ISO. This option is only supported for distributions of sles, redhat and windows.

=item B<-o|--noosimage>

Do not create the default osimages based on the osdistro copied in. By default, B<copycds> will create a set of osimages based on the osdistro.

=item B<-w|--nonoverwrite>

Complain and exit if the os disc has already been copied in. By default, B<copycds> will overwrite the os disc already copied in.

=back

=head1 RETURN VALUE

0: The command completed successfully. For the B<--inspection> option, the ISO/DVD have been recognized successfully

Nonzero: An Error has occurred. For the B<--inspection> option, the ISO/DVD cannot be recognized

=head1 EXAMPLES

=over 2

=item 1.
To copy the RPMs from a set of ISOs that represent the DVDs of a distro:

 copycds dvd1.iso dvd2.iso

=item 2.
To copy the RPMs from a physical DVD to /depot/kits/3 directory:

 copycds -p /depot/kits/3 /dev/dvd

=item 3.
To copy the RPMs from a DVD ISO of a very recently released distro:

 copycds -n rhels6.4 -a x86_64 dvd.iso

=item 4.
To check whether a DVD ISO can be recognized by xCAT and display the recognized disc info:

 copycds -i /media/RHEL/6.2/RHEL6.2-20111117.0-Server-ppc64-DVD1.iso

Output will be similar to:

  OS Image:/media/RHEL/6.2/RHEL6.2-20111117.0-Server-ppc64-DVD1.iso
  DISTNAME:rhels6.2
  ARCH:ppc64
  DISCNO:1

For the attributes that are not recognized, the value will be blank.

=item 5.
To copy the packages from a supplemental DVD ISO file:

 copycds /isodir/RHEL6.5/RHEL6.5-Supplementary-20131114.2-Server-ppc64-DVD1.iso -n rhels6.5-supp

Also, remember to add the new directory to your osimage definition:

 chdef -t osimage myosimage -p pkgdir=/install/rhels6.5-supp/ppc64

=back
 
=head1 SEE ALSO

L<nodeset(8)|nodeset.8>, L<site(5)|site.5>, L<nodetype(5)|nodetype.5>
