YUM认识
时间:2007-01-18 来源:适兕
这个叫yellowdog Update,Modified.是LINUX@DUKE上的一个项目。
其项目的大体介绍我只复制过来,不作任何的翻译。
um is an automatic updater and package installer/remover for rpm systems. It automatically computes dependencies and figures out what things should occur to install packages. It makes it easier to maintain groups of machines without having to manually update each one using rpm.
#!/usr/bin/python
import sys
try:
import yum
except ImportError:
print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
%s
Please install a package which provides this module, or
verify that the module is installed correctly.
It's possible that the above module doesn't match the
current version of Python, which is:
If you cannot solve this problem yourself, please go to
the yum faq at:
http://wiki.linux.duke.edu/YumFaq
""" % (sys.exc_value, sys.version)
sys.exit(1)
sys.path.insert(0, '/usr/share/yum-cli')
try:
import yummain
yummain.main(sys.argv[1:])
except KeyboardInterrupt, e:
print >> sys.stderr, "\n\nExiting on user cancel."
sys.exit(1)
这是yum的运行脚本!还有什么是我要介绍的吗?
那就看一下其模块吧:
[root@lee grub]# python
Python 2.4.2 (#1, Feb 12 2006, 03:59:46)
[GCC 4.1.0 20060210 (Red Hat 4.1.0-0.24)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import yum
>>> dir(yum)
['BOOLEAN_STATES', 'Errors', 'LETTERFLAGS', 'ListPackageSack', 'PLUG_OPT_BOOL', 'PLUG_OPT_FLOAT', 'PLUG_OPT_INT', 'PLUG_OPT_STRING', 'PLUG_OPT_WHERE_ALL', 'PLUG_OPT_WHERE_MAIN', 'PLUG_OPT_WHERE_REPO', 'PO_CONFIG', 'PO_DIR', 'PO_DOC', 'PO_FILE', 'PO_GHOST', 'PO_INSTALLEDPKG', 'PO_LOCALPKG', 'PO_REMOTEPKG', 'SYMBOLFLAGS', 'TR_DEPENDS', 'TR_DEPENDSON', 'TR_OBSOLETEDBY', 'TR_OBSOLETES', 'TR_UPDATEDBY', 'TR_UPDATES', 'TS_AVAILABLE', 'TS_ERASE', 'TS_INSTALL', 'TS_INSTALL_STATES', 'TS_OBSOLETED', 'TS_OBSOLETING', 'TS_REMOVE_STATES', 'TS_TRUEINSTALL', 'TS_UPDATE', 'TX_BLACK', 'TX_GREY', 'TX_WHITE', 'URLGrabError', 'YumAvailablePackage', 'YumBase', 'YumInstalledPackage', 'YumLocalPackage', '__builtins__', '__doc__', '__file__', '__name__', '__path__', '__version__', 'comps', 'config', 'constants', 'depsolve', 'errno', 'fnmatch', 'glob', 'mdErrors', 'mdcache', 'misc', 'os', 'packages', 'parsePackages', 'parser', 'pgpmsg', 'plugins', 're', 'repos', 'rpm', 'rpmUtils', 'sre_constants', 'sys', 'time', 'transactioninfo', 'types']
在/usr/lib/python2.4下有更多的。。。。。源数据、递归、对系统硬件信息的调用。。。。。。。值得我们好好研究下。
其项目的大体介绍我只复制过来,不作任何的翻译。
um is an automatic updater and package installer/remover for rpm systems. It automatically computes dependencies and figures out what things should occur to install packages. It makes it easier to maintain groups of machines without having to manually update each one using rpm.
Features include:(特征)
- Multiple Repositories
- Simple config file
- Correct dependency calculation
- Fast operation
- rpm-consistent behavior
- comps.xml group support, including multiple repository groups
- Simple interface
#!/usr/bin/python
import sys
try:
import yum
except ImportError:
print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
%s
Please install a package which provides this module, or
verify that the module is installed correctly.
It's possible that the above module doesn't match the
current version of Python, which is:
If you cannot solve this problem yourself, please go to
the yum faq at:
http://wiki.linux.duke.edu/YumFaq
""" % (sys.exc_value, sys.version)
sys.exit(1)
sys.path.insert(0, '/usr/share/yum-cli')
try:
import yummain
yummain.main(sys.argv[1:])
except KeyboardInterrupt, e:
print >> sys.stderr, "\n\nExiting on user cancel."
sys.exit(1)
这是yum的运行脚本!还有什么是我要介绍的吗?
那就看一下其模块吧:
[root@lee grub]# python
Python 2.4.2 (#1, Feb 12 2006, 03:59:46)
[GCC 4.1.0 20060210 (Red Hat 4.1.0-0.24)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import yum
>>> dir(yum)
['BOOLEAN_STATES', 'Errors', 'LETTERFLAGS', 'ListPackageSack', 'PLUG_OPT_BOOL', 'PLUG_OPT_FLOAT', 'PLUG_OPT_INT', 'PLUG_OPT_STRING', 'PLUG_OPT_WHERE_ALL', 'PLUG_OPT_WHERE_MAIN', 'PLUG_OPT_WHERE_REPO', 'PO_CONFIG', 'PO_DIR', 'PO_DOC', 'PO_FILE', 'PO_GHOST', 'PO_INSTALLEDPKG', 'PO_LOCALPKG', 'PO_REMOTEPKG', 'SYMBOLFLAGS', 'TR_DEPENDS', 'TR_DEPENDSON', 'TR_OBSOLETEDBY', 'TR_OBSOLETES', 'TR_UPDATEDBY', 'TR_UPDATES', 'TS_AVAILABLE', 'TS_ERASE', 'TS_INSTALL', 'TS_INSTALL_STATES', 'TS_OBSOLETED', 'TS_OBSOLETING', 'TS_REMOVE_STATES', 'TS_TRUEINSTALL', 'TS_UPDATE', 'TX_BLACK', 'TX_GREY', 'TX_WHITE', 'URLGrabError', 'YumAvailablePackage', 'YumBase', 'YumInstalledPackage', 'YumLocalPackage', '__builtins__', '__doc__', '__file__', '__name__', '__path__', '__version__', 'comps', 'config', 'constants', 'depsolve', 'errno', 'fnmatch', 'glob', 'mdErrors', 'mdcache', 'misc', 'os', 'packages', 'parsePackages', 'parser', 'pgpmsg', 'plugins', 're', 'repos', 'rpm', 'rpmUtils', 'sre_constants', 'sys', 'time', 'transactioninfo', 'types']
在/usr/lib/python2.4下有更多的。。。。。源数据、递归、对系统硬件信息的调用。。。。。。。值得我们好好研究下。
相关阅读 更多 +