Understanding zmd
From openSUSE
Contents |
Libzypp
libzypp is the new package/patch/pattern/product management library written in C++. Currently, it installs, upgrades and removes packages by running "rpm" on the command-line. libzypp also contains a dependency resolver.
Libzypp ZMD helpers
These are a set of small C++ executables in /usr/lib/zmd (or /usr/lib64/zmd on x86_64 systems). They act as a layer between ZMD and libzypp, and they use the ZMD SQLite database to communicate with ZMD. Some of these helpers are:
- update-status
- parse-metadata
- transact
zmd ZENworks management daemon
ZMD is a daemon written in C#. It listens for commands and (assuming the user who executed them has the correct privileges) passes those commands off to the helpers to be run.
ZMD is also used in Novell ZENworks Linux Management 7. In that product, it uses libredcarpet instead of libzypp on platforms where libzypp is not supported (such as SuSE 9 or Red Hat Enterprise Linux).
rug
rug is the command line front end to access zmd. You can list the sources of installation, add or delete them, and do many other operations. Try a "rug --help"
Zen Updater
zen-updater, zen-installer, and zen-remover are a set of small applets written in Mono. These applets provide a set of simple GUI frontends for zmd, and they are pretty much for exactly what their names would imply. :)
Yast package manager
In SUSE Linux 10.1, YaST's package manager uses libzypp but not ZMD. Instead, it links directly against libzypp and makes calls to it.
Functionalities
- What happens when I add an yast source?
- What happens when I add a zmd?
- What are the resource eaters during normal operation?
- How to see debug information to know whats happening in my Zmd?
See also
- Problems in SUSE Linux 10.1
- Libzypp that is addressing some problems.
- Current libzypp issues (May, 2006)
- Using rug
- ZMD/Libzypp Troubleshooting

