SUSE Linux comes with a new command line tool for installing and updating packages, rug. It works with the rcd daemon to install, update, and remove software according to the commands given. It can install software from local files or from servers. You may use one or more remote servers, known as services. Supported services are mount for local files and yum or ZENworks for servers.
rug sorts software from services into catalogs (also known as channels), groups of similar software. For example, one catalog might contain software from an update server and another some software from a third-party software vendor. Subscribe to individual catalogs to control the display of available packages and prevent the accidental installation of unwanted software. Operations are normally performed only on software from catalogs to which you are subscribed.
The most commonly used command is
downloads and installs patches in catalogs to which you are
subscribed. If you only want to update software, this is the only
command you need. To obtain a list of all packages from one catalog,
catalogname with name of your catalog. To
list all available services, use
sl. Some other
useful rug commands and their functions are shown in Table 2.1, “rug Commands”.
Table 2.1. rug Commands
List the catalogs
Add a service
Register a service
Subscribe to a catalog
Refresh the lists of patches
One of the biggest advantages of rug is user management.
update or install new packages. With rug, you can distribute the
right to update the system to other users and restrict them, for
example, only to the update right without the possibility to remove
software. Privileges you can grant are:
User may install new software
User may set package locks
User may remove software
User may change channel subscriptions
User is considered trusted, so may install packages without package signatures
User may update software packages
This allows the user to see which software is installed on the machine and which software is in available channels. The option is relevant only to remote users, local users are normally permitted to view installed and available packages.
Permits all rug commands except user management and settings, which must be done locally.
To give a user permission to update the system, use the command
username with the name of the user. To
revoke the privileges of a user, use command
To list users with their rights, use
To change the current privileges of a user, use
username with name of the desired user.
The edit command is interactive. It lists privileges of the selected
user and the offers you a prompt. Enter the plus (+) or minus (-)
symbol and the name of the privilege then press Enter. For example, to permit the user to
delete software, enter
+remove. To save and quit,
press Enter on a blank line.
Using rug, the system can be updated
automatically, for example, with scripts. The simplest example is
the fully automatic update. To do this, as
root configure a cron job that
executes rug up -y. The
option downloads and installs the patches from your catalogs without
However, you may not want the patches installed automatically.
Instead, you may want to retrieve the patches and select the patches
for installation at a later time. To download patches only, use the
command rug up -dy. The
option downloads the patches from your catalogs without confirmation
and saves them to the rug cache. The default location of the rug
rug comes with many preferences to provide the update
functionality in different network configurations. To list the
preferences that may be set, use
get. To set a
preference variable, enter
set. For example,
adjust settings if you need to update your system, but the computer
is behind a proxy server. Before downloading updates, send your
username and password to the proxy server. To do so, use the
rug set proxy-url url_path rug set proxy-username name rug set proxy-password password
url_path with the name of your proxy
name with your username. Replace
password with your password.