����� ������������ OpenNet.ru / ������ "������������ ��� Linux" / ������

16.3.1 ������ � �� RPM

���� ���������� ������������� ��� ������� ������ � �� RPM �� ������ ������ ���� ������. ����������� ��� ������, ���� ���������� �� �������������� � �� � �����, � ������� �� ������� � ������ �� ������-�� ������ ������. ������, � ������� ���� ������� ����� ���������������� ��� ����������� ����. ����� ����, ����� �������� ������ � �������������� �� ������ �� �� ���������.

16.3.1.1 ��������� ������������ ��
��� ���������� ��������� �� RPM ����������� �� �� ������������ �� ���������. ��� ������� ��������������� ������������ �� ������������ addMacro, ��� �������� ����:

rpm.addMacro("_dbpath", path_to_rpm_database)

�������� ������ � ����������� �� ����� ����������� �������
_dbpath, �������� ���� ���������� � ������������ �������� �������. ����� ����� ������������������ ����� ������� ������ ��� ���������� ��� �� �� ���������. ��������:

# Open the rpmdb-redhat database

rpm.addMacro("_dbpath", "/usr/lib/rpmdb/i386-redhat-linux/redhat")

solvets = rpm.TransactionSet()

solvets.openDB()

rpm.delMacro("_dbpath")

# Open default database

ts = rpm.TransactionSet()

���� ������ ���������� ����� rpmdb-redhat, ������� �������� ������ ��� ���� ������� Red Hat. ������ ����� openDB ��������� �� RPM. � ����������� ������� � �������� Python ������ ����� openDB �� ���������. ������ ����� ��� ���������� ������� �� ���� ��� ����������.

����� delMacro ������� ������, �������� ���������� ������ TransactionSet ������������ �� �� ���������.

�� ��������� closeDB � ���� ����������. ���� ����� ������������� ������� ��, �� ����� ��������� ����������� ��������������� �������� ��� �������������.

16.3.1.2 �������������, ����������� � ����������� ��
��� ���������� ������������� ����� initDB ��� ������������� ����� �� RPM. �������� ������ � ��������� ������� rpm --initdb:

ts.initDB()

����� rebuildDB ������������ ��, ������� ������� rpm --rebuilddb:

ts.rebuildDB()

����� rebuildDB ������������� ������ ����.

����� verifyDB ��������� ���������� ���� � �������� ��������� ���������� Berkeley DB:

ts.verifyDB()

����� ����� ������ - �� �� �����, ��� ����� ������� db_verify ��� ������� ����� �� � �������� /var/lib/rpm.

� ������� �������� ���� ���������� �� �������� ����������� ����������� �� RPM.

����� - ������� � �� RPM
����� - ���������������� � �� RPM
����������


����� ������������ �� OpenNet.ru