Channel Management Guide
Red Hat Network Satellite
Edition 7
Abstract
Chapter 1. Introduction
Chapter 2. Introduction to RHN Channels
2.1. Base Channels and Child Channels
2.2. Subscribing to Channels
- Registration through activation keys — Because of the simplicity and speed of activation keys, this is the preferred method for registering systems as clients of either RHN Proxy Server or RHN Satellite Server. Systems registered using an activation key are subscribed to all channels associated with that activation key. For more information on activation keys, consult the Red Hat Network Client Configuration Guide and the Red Hat Network Reference Guide.
- Install registration — When a system is initially registered through either the Red Hat Update Agent or the Red Hat Network Registration Client, it is automatically assigned to the base channel that corresponds to the version of Red Hat Enterprise Linux on the system. Once a system is registered, its default base channel may be changed to a private base channel on a per-system basis via the RHN website. Alternately, activation keys associated with a custom channel can be used so that systems registering with those keys are automatically associated with the custom channel. For more information on using these applications, refer to the respective chapter of the RHN Reference Guide for your entitlement level (Management or Provisioning).
- Website subscription — Various specific child channels are available for subscription, depending on the system's base channel. The system may be subscribed to the child channel through the RHN website. If the organization has created custom base channels, the systems may also be reassigned to these custom channels through the website. For more information on subscribing to channels online, refer to the Red Hat Network Website chapter of the RHN Reference Guide.
- Using the
spacewalk-channelcommand-line tool (CLI) — thespacewalk-channelallows you to subscribe systems from specific channels via the command line without logging on to the Red Hat Network website.For example, to subscribe to two channels:spacewalk-channel --add -c rhn-tools-rhel-i386-server-5 -c rhel-i386-server-vt-5 --user username --password password
To unsubscribe from the channel:spacewalk-channel --remove -c rhn-tools-rhel-i386-server-5 -c rhel-i386-server-vt-5 --user username --password password
To list subscribed channels:spacewalk-channel --list
2.3. Channel Availability
- Paid Service Channels — These channels are available if the organization has purchased access to them either directly or in conjunction with a particular Red Hat solution. Red Hat Enterprise Linux is an example of a paid service channel.
- Custom Channels — these channels are created by the organizational administrator to manage custom packages. These channels, also known as private channels, by default, appear only to the organization who creates them; they can never be accessed by anyone else. However, private channels can be shared across organizations by setting up Organizational Trusts and sharing the channel. See the Reference Guide for more details on Organization Trusts.
2.4. Tools, Repositories, and Practices
- RHN Package Manager - Use this to push custom packages into custom channels on your RHN Proxy Server.
- RHN Push - Use this to push custom packages into custom channels on your RHN Satellite Server.
- RHN Satellite Synchronization Tool - Use this to import and synchronize standard packages from Red Hat Network Classic to the RHN Satellite Server with Red Hat Network. This is done via the Internet or CD/DVD ISO images.
Note
Chapter 3. Building Custom Packages
3.1. Building packages for Red Hat Network
3.1.1. RPM Benefits
- Easy Upgrades
- Using RPM, you upgrade individual components of a system without completely reinstalling. When Red Hat releases a new version of Red Hat Enterprise Linux, users do not have to reinstall in order to upgrade. RPM allows intelligent, fully-automated, in-place upgrades of the system. Configuration files in packages are preserved across upgrades so users do not lose customizations. There are no special upgrade files needed to update a package because the same RPM file is used to install and upgrade the package.
- Package Querying
- RPM provides querying options that allows a search through the entire RPM database for all packages or just for certain files. RPM can also find out what package the file belongs to and where the package came from. The files contained in the package are in a compressed archive, with a custom binary header containing useful information about the package and its contents. RPM queries the headers quickly and easily.
- System Verification
- Another feature is the ability to verify packages. If there are concerns that a file related to a package was deleted, the package can be verified to check the status of the files it provides. The verification notifies you of any anomalies. If errors do exist, reinstall the files easily. Modified configuration files are preserved during reinstallation.
- Pristine Sources
- A crucial design goal of RPM is to allow the use of pristine software sources, as distributed by the original authors of the software. With RPM, the pristine sources can be packaged, along with any patches that were used, plus complete build instructions. This is an important advantage for several reasons. For instance, if a new version of a program is released, it is unnecessary to start from scratch to make it compile. Looking at the match may allow you to see what you might need to do. All the compiled-in defaults and changes made to get the software to build properly are easily visible using this technique.Keeping sources pristine may seem important only to developers, but it results in higher quality software for end users as well.
3.1.2. RHN RPM Guidelines
- Learn RPM. It is crucial to have a fundamental understanding of the important features of RPM to build packages properly. For more information about RPM, start with the following resources:
- When building an RPM for a child channel, build the package on a fresh install of Red Hat Enterprise Linux of the same version as the child's base channel. Be sure to apply all updates from Red Hat Network first.
- The RPM package must install without using the
--forceor--nodepsoptions. If an RPM cannot be installed cleanly on a build system, Red Hat Network cannot install it automatically on a system. - The RPM package filename must be in the NVR (name, version, release) format and must contain the architecture for the package. The proper format is
name-version-release.arch.rpm. For example, a valid RPM package filename ispkgname-0.84-1.i386.rpm, where name is pkgname, version is 0.84, release is 1, and arch is i386. - The RPM package should be signed by the maintainer of the package. Unsigned packages may be distributed through Red Hat Network, but the yum updater must be forced to accept them. Signing packages is highly recommended and is covered in Section 3.2, “Digital Signatures for RHN Packages”.
- If the package is changed in any way, including changing the signature or recompiling, the version or release must be increased incrementally. In other words, the NVRA (including architecture) for each RPM distributed through RHN must correspond to a unique build to avoid ambiguities.
- No RPM package may obsolete itself.
- If a package is split into separate packages, be extremely careful with the dependencies. Do not split an existing package unless there is a compelling reason to do so.
- No package may rely upon interactive pre-install, post-install, pre-uninstall, or post-uninstall scripts. If the package requires direct user intervention during installation, it cannot work with Red Hat Network.
- Any pre-install, post-install, pre-uninstall, and post-uninstall scripts should never write anything to stderr or stdout. Redirect the messages to
/dev/nullif they are not necessary. Otherwise, write them to a file. - When creating the spec file, use the group definitions from
/usr/share/doc/rpm-<version>/GROUPS. If there is not an exact match, select the next best match. - Use the RPM dependency feature to make sure the program runs after it is installed.
Important
%post that cannot or will not be cleaned up in a %postun section.
3.2. Digital Signatures for RHN Packages
3.2.1. Generating a GnuPG Keypair
- Type the following command as the root user on the shell prompt:
gpg --gen-keyExecuting this command as a non-root user will show the following message:gpg: Warning: using insecure memory!
This warning appears because non-root users cannot lock memory pages. Since users should not provide their private GnuPG key or passphrase to anyone else, generating a keypair as root is recommended. The root user can lock memory pages which means the information is never written to disk. - After executing the command to generate a keypair, an introductory screen containing key options similar to the following will appear:
gpg (GnuPG) 1.2.6; Copyright (C) 2004 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details. Please select what kind of key you want: (1) DSA and ElGamal (default) (2) DSA (sign only) (4) RSA (sign only) Your selection?
- Accept the default option:
(1) DSA and ElGamal. This option allows you to create a digital signature and encrypt/decrypt with two types of technologies. Type1and then press Enter. - Choose the key size, which is how long the key should be. The longer the key, the more resistant against attacks the messages are. Creating a key of at least 1024 bits in size is recommended.
- The next option will ask to specify how long the key needs to be valid. When choosing an expiration date, remember that anyone using the public key must also be informed of the expiration and supplied with a new public key. It is recommended to not select an expiration date. If an expiration date is not specified, you are asked to confirm your decision:
Key does not expire at all Is this correct (y/n)?
- Press y to confirm your decision.
- Provide a User-ID containing your name, your email address, and an optional comment. Each of these is requested individually. When finished, you are presented with a summary of the information you entered.
- Accept your choices and enter a passphrase.
Note
Like your account passwords, a good passphrase is essential for optimal security in GnuPG. Mix your passphrase with uppercase and lowercase letters, use numbers, and/or include punctuation marks. - Once you enter and verify your passphrase, the keys are generated. A message similar to the following appears:
We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. +++++.+++++.++++++++....++++++++++..+++++.+++++.+++++++.+++++++ +++. ++++++++++++++++++++++++++++++++++++++..........................++++
When the activity on the screen ceases, your new keys are placed in the directory.gnupgin root's home directory. This is the default location of keys generated by the root user.
gpg --list-keys/root/.gnupg/pubring.gpg ---------------- pub 1024D/B7085C8A 2002-02-18 Your Name<you@example.com> sub 1024g/E12AF9C4 2002-02-18
gpg --export -a 'Your Name' > public_key.txt
public_key.txt.
up2date. Techniques for deploying this key across an organization are covered in the Red Hat Network Client Configuration Guide.
3.2.2. Signing packages
~/.rpmmacros file to include the following:
%_signature gpg %_gpg_name B7085C8A
_gpg_name key ID value of B7085C8A with the key ID from your GPG keyring that you use to sign packages. This value tells RPM which signature to use.
rpm --resign package-name-1.0-1.noarch.rpm
rpm --checksig -v package-name-1.0-1.noarch.rpm
Good signature from "Your Name" in the output, with Your Name replaced with the name associated with the signing key.
Chapter 4. Custom Channel and Package Management
Note
4.1. Channel Management Privileges
- Log in to the Red Hat Network website as an Organization Administrator.
- On the top navigation bar, click the Users tab and then click the name of the user who is performing channel management functions.
- On the User Details page, scroll down to the Roles section and select the checkbox labeled Channel Administrator. Then click at the bottom of the page. Note that Organization Administrators are automatically granted channel administration privileges.
- Have the user log in to the Red Hat Network website, click the Channels tab on the top navigation bar, and ensure the button appears on the corresponding left navigation bar.
4.2. Manage Software Channels
Warning
4.3. Manage Software Channel Details
- Details — Provides basic information about the channel, such as its parent channel, name, summary, and description. Some of this information is modifiable. In addition, a Per-User Subscription Restrictions combobox can be seen by Organization Administrators and Channel Administrators. This signifies the default behavior of every channel allowing any user to subscribe systems to it. Unchecking this box and clicking causes the appearance of a Subscribers tab, which is used to grant certain users subscription permissions to the channel.
- Subscribers — Presents a list of users who have subscription permissions to the custom channel. This tab appears when two conditions are true. First, the logged in user must be an Organization Administrator or a Channel Administrator. Second, the Per-User Subscription Restrictions combobox on the Details tab must be set to Only selected users within your organization may subscribe to this channel. This will ensure that users can subscribe to the channel. On this tab, select the checkboxes of the users to be allowed to subscribe systems to this channel and click . Note that Organization Administrators and Channel Administrators automatically have subscription access to all channels.
- Managers — Lists users who have management permissions to the custom channel. This tab appears for Organization Administrators and Channel Administrators. Select the checkboxes of the users to be allowed full administration of this channel and click . This status does not enable the user to create new channels. Note that Organization Administrators and Channel Administrators automatically have management access to all channels.
- Errata — Provides the errata associated with each of your custom channels. Just as Red Hat Network produces and delivers errata updates to Red Hat Enterprise Linux software, you deliver errata updates to your custom channels as part of updating your servers with the latest code. This tab contains subtabs that allow you to view, add, remove, and clone erratum: List/Remove, Add and Clone. Note that cloning errata can be done only via RHN Satellite Server.
- List/Remove — Displays all of the errata currently associated with the custom channel and provides a means to cancel that association. To remove errata from the channel, select their checkboxes and click on the bottom right-hand corner of the page. A confirmation page appears listing the errata to be removed. Click to complete the action.
- Add — Enables the addition of errata to the channel. All of the errata potentially applicable to the channel are listed. To add errata to the channel, select the appropriate checkboxes and click . Refer to Chapter 5, Custom Errata Management for a discussion of errata management.
- Clone — Allows Satellite customers to replicate errata and associated packages for a cloned channel. This subtab immediately appears populated for channels that were cloned with either the original state or select errata option. The Clone tab also gains errata whenever one is issued for the target (that is, originating) channel. This makes it useful for channels cloned with the current state option, as well. Refer to Section 4.7, “Cloning Software Channels” for a discussion of cloning options.To include errata from the target channel in the cloned channel, select either or from each advisory's dropdown menu. The option exists only if the erratum has been previously cloned. Use it to associate the erratum across channels and avoid duplicate entries. Use the option to create a new entry, such as when modifying it from the previous clone.By default, cloned errata inherit the label of the original Red Hat advisory with the "RH" prefix replaced with "CL". For example, RHSA-2003:324 becomes CLSA-2003:324. Subsequent clones of the same advisory have their second letters sequenced to denote their order, such as "CM" and "CN". These labels can be altered through the Managed Errata Details page. Refer to Section 5.2, “Viewing Managed Errata Details” for instructions.In addition to the option, previously cloned errata contain values within the Owned Errata column. The erratum label is linked to its details page. The pub and mod flags within parentheses identify whether the cloned erratum has been published or modified from the original advisory. A plus sign + before the flag indicates affirmative, the cloned errata has been published. A minus sign - before the flag denotes negative. For example, (-mod) may mean a package has been deleted. To find out more about publishing and editing custom errata, refer to Section 5.1, “Managing Errata”.To exclude errata from the cloned channel, select from the dropdown menus. When satisfied with the changes, click . Review the impending changes on the confirmation page and click .
- Sync — Displays the errata packages that were not included in the initial channel cloning but have since been updated. This page is where cloned channels can be synchronized with current errata by marking the desired checkbox and clicking .
- Packages — Provides the packages associated with each of the custom channels. This tab contains the following subtabs that allow organizations to view, add, and remove packages: List/Remove, Add, and Compare.
- List/Remove — Displays all of the packages currently associated with the custom channel and provides a means to cancel that association. To remove packages from the channel, select their checkboxes and click on the bottom right-hand corner of the page. A confirmation page appears with the packages to be removed listed. Click to complete the action.
Important
The list displayed on this page differs from the standard package list available in the Software Channel Details page. It displays all versions of a package remaining in the database rather than just the latest. It is possible to revert to a previous version of a package simply by removing the latest version. - Add — Enables the addition of packages to the channel. To see available packages, select an option from the View dropdown menu and click . To add packages to the channel, select the appropriate checkboxes and click . Refer to Section 4.6, “Assigning Packages to Software Channels” for more information on this process.
- Compare — Enables the comparison of package lists between different channels. To see the differences, select another channel from the Compare to: dropdown menu and click . A list appears showing all packages not contained by both channels and indicating the existing channel location of each.
- Repositories — Select to assign
yumrepositories to the channel and synchronize repository content.- Add / Remove — Lists configured repositories. Repositories can be added and removed by selecting the checkbox next to the repository name and clicking .
- Sync — Lists configured repositories. The synchronization schedule can be set using the dropdown boxes, or an immediate synchironization can be performed by clicking .
4.4. Manage Software Packages
Warning
- Go to the Software Package Management page and select an option containing the packages from the View dropdown menu and click .
- Select the appropriate checkboxes and click . A confirmation page appears with the packages listed. Click Confirm to delete the packages entirely.
up2date. On the other hand, since the RHN Satellite Server provides its own website, its custom packages are accessible via HTTP or Red Hat Update Agent. To obtain custom packages, the client system must be subscribed to the channel containing the packages.
4.5. Creating a Software Channel
- Log in to the Red Hat Network website as a Channel Administrator.
- On the top navigation bar, click the Channels tab and then click the button on the left navigation bar.
- On the Software Channel Management page, click at the top-right corner. RHN Satellite Server administrators are presented with the option to . Refer to Section 4.7, “Cloning Software Channels” for instructions.
- On the New Channel page, define the details of the channel following the instructions on the page. For most channel management actions, the Channel Label is used to identify the channel, so select a meaningful label. View the details of existing channels for ideas.The GPG key URL must be the location of the key on the server, as defined during the client configuration process. Refer to the Red Hat Network Client Configuration Guide. The GPG key ID is the unique identifier, such as "DB42A60E", while the GPG key fingerprint is similar to "CA20 8686 2BD6 9DFC 65F6 ECC4 2191 80CD DB42 A60E". Notice that the key ID is the same as the last pair of quartets in the key fingerprint.
- When finished, click at the bottom of the page.
4.6. Assigning Packages to Software Channels
- Click on the Channels tab in the top navigation bar and then Manage Software Channels on the left navigation bar.
- In the Software Channel Management page, click the name of the channel to receive packages.
- In the Managed Software Channel Details page, click the Packages tab and then the Add subtab. To associate packages with the channel being edited, select the option containing the packages from the dropdown menu and click .
Note
Packages already associated with the channel being edited are not displayed. Packages not assigned to a specific channel are found in the menu item. Selecting presents all available packages. - Select the checkboxes of the packages to be assigned to the edited channel and click at the bottom-right corner of the page. A confirmation page appears with the packages listed.
- Click to associate the packages with the channel. The List/Remove subtab of the Managed Software Channel Details page then appears with the new packages listed.
4.7. Cloning Software Channels
- Click the Channels tab on the top navigation bar then the Manage Software Channels on the left navigation bar. This takes you to the Software Channel Management page.
- Click clone channel at the top-right corner to begin cloning.Three cloning options are presented: current state of the channel, original state of the channel, or select errata. These options are described fully on the webpage itself but are summarized as:
- Current state of the channel — All of the errata and all of the latest packages now in the target channel.
- Original state of the channel — All of the original packages from the target channel but none of the errata or associated update packages.
- Select Errata — All of the original packages from the target channel with the ability to exclude certain errata and associated update packages.
- Select the option desired using the radio buttons within the Clone field, identify the target channel using the Clone From dropdown menu, and click .
- On the New Software Channel page, complete the fields as described in Section 4.5, “Creating a Software Channel”. The default values will suffice.
- Click . If either the original or current option is selected, the Details tab of Managed Software Channel Details page will appear. Alter the settings for the new channel. Refer to Section 4.3, “Manage Software Channel Details” for instructions.If the select errata option to clone the channel is selected, it will redirect to the Clone subtab of Managed Software Channel Details page instead. Errata and associated packages for cloning may have to be individually selected for cloning and inclusion in the new channel. Refer to Section 4.3, “Manage Software Channel Details” for specific instructions.
Note
spacewalk-clone-by-date.
4.8. Deleting Software Channels
Note
Important
- Packages from the channel will remain on the server even if the channel is removed. There is an option to delete them after.
- Any errata related to the channel may be orphaned after the channel deletion.
- The Satellite server will not delete a parent channel if a child channel exists. Delete all child channels before deleting the parent.
- Kickstart distributions must be dissociated from the channel or deleted before deleting the channel.
- If the established channel on the Proxy is connected to a Satellite, delete the channel on the RHN Proxy Server.
Chapter 5. Custom Errata Management
5.1. Managing Errata
Warning
5.1.1. Published Errata
5.1.2. Unpublished Errata
5.2. Viewing Managed Errata Details
- Details — Provides the primary information entered about the custom errata alert during its creation. This includes a synopsis, advisory name and type, related product, bugs, description, solution, keywords, references, and notes. To change any of this information, make the modifications in the appropriate fields and click .
- Channels — Shows the channels associated with the selected errata. To change these associations, select or deselect the appropriate checkboxes and click the button.
- Packages — Manage the packages associated with the selected errata on this page. This tab contains two subtabs that allow you to view, add, and remove packages: List/Remove and Add.
- List/Remove — Displays all of the packages currently associated with the custom errata and provides a means to cancel that association. To remove packages from the errata, select their checkboxes and click on the bottom right-hand corner of the page. A confirmation page appears listing the packages to be removed. Click to complete the action.
- Add — Enables the addition of packages to the errata. To see available packages, select an option from the dropdown menu and click . To add packages to the errata being edited, select the appropriate checkboxes and click . Refer to Section 5.4, “Assigning Packages to Errata” for a comprehensive discussion of this process.
5.3. Creating and Editing Errata
- On the top navigation bar, click on Errata then click Manage Errata on the left navigation bar. From the Errata Management page, click on .
- Enter an intuitive label for the erratum in the Advisory field, ideally following a naming convention adopted by your organization. Note that this label cannot begin with the letters "RH" (capitalized or not) to prevent confusion between custom errata and those issued by Red Hat .
- Then, complete all remaining required fields and click the Create Errata button. View standard Red Hat Errata Alerts for examples of properly completed fields.
Note
5.4. Assigning Packages to Errata
- After selecting an erratum to edit, click on the Packages tab then the Add subtab.
- To associate packages with the erratum being edited, select the channel from the dropdown menu that contains the packages and click . Packages already associated with the erratum being edited are not displayed. Selecting presents all available packages.
- After clicking , the package list for the selected option appears. Note that the page header still lists the errata being edited.
- In the list, select the checkboxes of the packages to be assigned to the edited errata, and click at the bottom-right corner of the page.
- A confirmation page appears with the packages listed. Click to associate the packages with the errata. The List/Remove subtab of the Managed Errata Details page appears with the new packages listed.
5.5. Cloning Errata
Chapter 6. Uploading and Maintaining Custom Packages
Warning
6.1. Uploading Packages to RHN Proxy Server
rhns-proxy-package-manager RPM package and its dependencies. This package is available to registered RHN Proxy Server systems and is installed by running up2date rhns-proxy-package-manager.
Note
*.rpm) are stored on the RHN Proxy Server. For this reason, custom packages cannot be downloaded through the RHN website, although they are listed. They must be retrieved by the client system using up2date.
6.1.1. Configuring and Using the RHN Package Manager
scp:
scp foo.rpm root@rhnproxy.example.com:/tmp
Note
rhn_package_manager -c label_of_private_channelpkg-list
-c or --channel), the uploaded package headers are linked to all the channels identified. If a channel is not specified, the packages are deposited in the No Channels section of the Package Management page. Refer to Section 4.6, “Assigning Packages to Software Channels” for instructions on reassigning packages.
-d option to specify the local directory that contains the packages to be added to the channel. RHN Package Manager can also read the list of packages from standard input (using --stdin).
/etc/rhn/default/rhn_proxy_package_manager.conf. The choices can be overridden in the default configuration file with settings in the main configuration file /etc/rhn/rhn.conf or via command line options passed to RHN Package Manager.
.rhn_package_manager in the home directory of the user currently logged in and finally from /etc/rhn/rhn_package_manager.conf. Make sure all of these files have the appropriate permissions to prevent others from reading them.
rhn_package_manager -s -c name_of_private_channel
-s option lists all the missing packages, which are packages uploaded to the RHN Server but not present in the local directory. You must be an Organization Administrator to use this option. The application prompts you for your RHN username and password.
--copyonly option copies the file listed in the argument into the specified channel without uploading to the Satellite. This is useful when a channel on a RHN Proxy Server is missing a package and you don't want to reimport all of the packages in the channel.
rhn_package_manager -c channel-name --copyonly /path/to/missing/file
rhn_package_manager -l -c name_of_private_channel
-l option lists the package name, version number, release number, architecture, and channel name for each package in the specified channel(s). Refer to Table 6.1, “rhn_package_manager options” for additional options.
rhn_package_manager options” is a summary of all the command line options for RHN Package Manager (rhn_package_manager):
Table 6.1. rhn_package_manager options
| Option | Description |
|---|---|
-v, --verbose | Increase verbosity of standard output messages. |
-d, --dir DIRECTORY_NAME | Process packages from this directory. |
-c, --channel CHANNEL_NAME | Specify the channel to receive packages. Multiple channels may be specified using multiple instances of -c (e.g.: -c channel_one -c channel_two) |
-n, --count NUMBER | Process this number of headers per call — the default is 32. |
-l, --list | List the packages in the specified channel(s). |
-s, --sync | Check if local directory is in sync with the server. |
-p, --printconf | Print the current configuration and exit. |
--newest | Push only the packages that are newer than those on the server. Note that source packages are special in that their versions are never compared to each other. Their newness is dependent on their associated binary packages. Using this option with RHN Package Manager and just a source package does upload the package, but the source package does not appear in the RHN Web interface until the associated binary package has been uploaded. Contrast this with --source. Using --source --newest together does update the stand-alone source package with newer packages and does not require an associated binary package to be uploaded first. |
--source | Upload the indicated source packages. Doing this treats them as plain, stand-alone packages and not as special source packages associated with another, pre-existing binary package. For example, use this when application sources need to be distributed to developers and testers outside of regular source control management. |
--stdin | Read the package names from standard input. |
--nosig | Don't fail if packages are unsigned. |
--no-ssl | Turn off SSL (not recommended). |
--stdin | Read the package names from standard input. |
--username USERNAME | Specify the RHN username. If the username is not provided, you will be prompted for the username of a valid Channel Administrator. |
--password PASSWORD | Specify the RHN password. If the password is not provided, you will be prompted for the password of a valid Channel Administrator. |
--dontcopy | In the post-upload step, do not copy the packages to their final location in the package tree. |
--copyonly | Only copy the packages, do not re-import them. |
--test | Only print a list of the packages to be pushed. |
-?, --help | Display the help screen with a list of options. |
--usage | Briefly describe the available options. |
--copyonly | Only copy packages |
Note
rhn_package_manager manual page: man rhn_package_manager.
6.2. Uploading Packages to RHN Satellite Server
rhnpush package and its dependencies. This package is available to registered RHN Satellite Server systems and is installed by running up2date rhnpush.
Note
6.2.1. Configuring the RHN Push Application
/etc/sysconfig/rhn/rhnpushrc. This file contains values for all the options contained in Table 6.2, “rhnpush options”.
rhnpush command is issued. Settings in the current directory (./.rhnpushrc) take precedent over those in the user's home directory (~/.rhnpushrc), which are used before those in the central configuration file (/etc/sysconfig/rhn/rhnpushrc).
- The software channel to be populated
- The home directory configuration file to include the username to be invoked
- The central configuration file to identify the server to receive the packages
rhnpush options” contains all command line options for the rhnpush command:
Table 6.2. rhnpush options
| Option | Description |
|---|---|
-v --verbose | Increase verbosity, option can be used multiple times, that is, -vv, -vvv, and so forth. |
-d, --dir DIRECTORY | Process packages from this directory. |
-c, --channel=CHANNEL_LABEL | Specify the channel to receive packages. Note that this is required and is not the same as the channel's name. Multiple channels may be specified using multiple instances of -c (e.g. -c CHANNEL_ONE -c CHANNEL_TWO). |
-n, --count N_HEADERS_PER_CALL | Process this number of headers per call. Must be an integer. The default number is 25. |
-l, --list | List only the specified channels. |
-r, --reldirRELATIVE_DIRECTORY | Associate this relative directory with each file. |
-o, --orgidORGANIZATION_ID | Include the organization's ID number. Must be an integer. |
-u , --username USERNAME | Include the RHN username of the user that has administrative access to the specified channel. If not provided, rhnpush prompts for the username of a valid Channel Administrator. The username and password are cached in ~/.rhnpushcache for a limited time, five minutes being the default. Use --new-cache to force a new username and password. |
-p , --password PASSWORD | Include the RHN password of user that has administrative access to the specified channel. If not provided, rhnpush prompts for the password of a valid Channel Administrator. The username and password are cached in ~/.rhnpushcache for a limited time, five minutes being the default. Use --new-cache to force a new username and password. |
-s, --stdin | Read package list from standard input, for example from a piped ls command. |
-X, --exclude GLOB | Exclude packages that match this glob expression. |
--force | Force upload of a package, even if a package of that name and version currently exists in the channel. Without this option, uploading a pre-existing package returns an error. |
--nosig | Don't fail if packages are unsigned. |
--new-cache | Forces RHN Push to drop the username and password cache, then accept or ask for new ones. This is useful if mistakes are entered the first time. |
--newest | Push only the packages that are newer than those on the server. Note that source packages are special in that their versions are never compared to each other. Their newness is dependent on their associated binary packages. Using this option with RHN Push and just a source package does upload the package, but the source package does not appear in the RHN Web interface until the associated binary package has been uploaded. Contrast this with --source. Using --source --newest together does update the stand-alone source package with newer packages and does not require an associated binary package to be uploaded first. |
--header | Upload only the headers. |
--source | Upload the indicated source packages. Doing this treats them as plain, stand-alone packages and not as special source packages associated with another, pre-existing binary package. For example, use this when you want to distribute application source to developers and testers outside of regular source control management. |
--server SERVER | Specify the server to which packages are uploaded. Currently, a value of http://localhost/APP is necessary. This parameter is required. |
--test | This only prints a list of the packages to be pushed, it doesn't actually push them. |
-h, --help | Briefly describe the options. |
-?, --usage | View the usage summary. |
Note
rhnpush manual page: man rhnpush.
6.2.2. Using the RHN Push application
Note
rhnpush -c label_of_private_channelpkg-list
rhnpush -c label_of_private_channel --server=localhost pkg-list
-c or --channel), the uploaded package headers are linked to all the channels identified. If there is no channel specified, the packages are deposited in the No Channels section of the Package Management page. Refer to Section 4.6, “Assigning Packages to Software Channels” for instructions on reassigning packages.
--server option specifies the server to which the packages are installed, and is required. RHN Push can be installed on external systems, but running RHN Push locally on the RHN Satellite Server is recommended.
pkg-list reference represents the list of packages to be uploaded. Alternatively, use the -d option to specify the local directory that contains the packages to be added to the channel. RHN Push can also read the list of packages from standard input (using --stdin).
Appendix A. Revision History
| Revision History | ||||||
|---|---|---|---|---|---|---|
| Revision 8-4.401 | Thu Aug 20 2015 | |||||
| ||||||
| Revision 8-4.400 | 2013-10-31 | |||||
| ||||||
| Revision 8-4 | Wed Sept 19 2012 | |||||
| ||||||
| Revision 8-3 | Fri Aug 17 2012 | |||||
| ||||||
| Revision 8-2 | Fri Aug 17 2012 | |||||
| ||||||
| Revision 8-1 | Fri Aug 17 2012 | |||||
| ||||||
| Revision 8-0 | Tue June 26 2012 | |||||
| ||||||
| Revision 7-0 | Thu May 24 2012 | |||||
| ||||||
| Revision 6-3 | Mon Aug 15 2011 | |||||
| ||||||
| Revision 6-2 | Wed Jun 15 2011 | |||||
| ||||||
| Revision 6-1 | Fri May 27 2011 | |||||
| ||||||
| Revision 6-0 | Fri May 6 2011 | |||||
| ||||||
| Revision 5-8 | Thu May 5 2011 | |||||
| ||||||
| Revision 5-7 | Wed April 27 2011 | |||||
| ||||||
| Revision 5-6 | Thu March 24 2011 | |||||
| ||||||
Index
C
- channels
- intro, Introduction to RHN Channels
- Channels
- cloning, Cloning Software Channels
- deleting, Deleting Software Channels
- custom packages, Building Custom Packages
- building, Building packages for Red Hat Network
- guidelines, RHN RPM Guidelines
- signing, Signing packages
- upload to RHN Proxy Server, Uploading Packages to RHN Proxy Server
- upload to RHN Satellite Server, Uploading Packages to RHN Satellite Server
E
- Errata Alerts
- managing, Custom Errata Management
- errata alerts
- cloning, Cloning Errata
- creating and editing, Creating and Editing Errata
- managing published, Published Errata
- managing unpublished, Unpublished Errata
G
- GnuPG key
- creating, Generating a GnuPG Keypair
- signing packages with, Signing packages
- gpg key, Generating a GnuPG Keypair
H
- how to
- build custom packages, Building packages for Red Hat Network
- clone a channel, Cloning Software Channels
- configure RHN Package Manager, Configuring and Using the RHN Package Manager
- configure RHN Push, Configuring the RHN Push Application
- copy missing packages to Satellite, Configuring and Using the RHN Package Manager
- deliver non-RPM packages, Uploading Packages to RHN Satellite Server
- generate a GnuPG key, Generating a GnuPG Keypair
- retrieve channel package list, Configuring and Using the RHN Package Manager
- upload packages to RHN Proxy Server, Uploading Packages to RHN Proxy Server
M
- Manage Errata
- viewing details, Viewing Managed Errata Details
- Managed Channel Details, Manage Software Channel Details
- managed software channels
- details, Manage Software Channel Details
P
- packages
- Solaris and UNIX, Uploading Packages to RHN Satellite Server
R
- RHN Package Manager, Uploading Packages to RHN Proxy Server
- channels, specifying, Configuring and Using the RHN Package Manager
- configuration file, Configuring and Using the RHN Package Manager
- configuring, Configuring and Using the RHN Package Manager
- copy missing packages to Satellite, Configuring and Using the RHN Package Manager
- installing, Uploading Packages to RHN Proxy Server
- retrieve channel package list, Configuring and Using the RHN Package Manager
- rhn_package_manager, Configuring and Using the RHN Package Manager
- upload package headers, Configuring and Using the RHN Package Manager
- verify local package list, Configuring and Using the RHN Package Manager
- RHN Push
- channels, specifying, Using the RHN Push application
- configuring, Configuring the RHN Push Application
- installing, Uploading Packages to RHN Satellite Server
- using, Using the RHN Push application
- rhn_package_manager, Configuring and Using the RHN Package Manager
- (see also RHN Package Manager)
- command line options, Configuring and Using the RHN Package Manager
- rhn_package_manager.conf, Configuring and Using the RHN Package Manager
- RPM
- benefits, RPM Benefits
- RPM Package Manager (see RPM)
S
- Software
- Channel Management, Manage Software Channel Details
U
- upload packages, Uploading and Maintaining Custom Packages
W
- website
- Manage Software Channels, Manage Software Channel Details
- what are
- benefits of RPM, RPM Benefits
