Bug 7846

Summary: binaries are not include in package (while listed)
Product: Mageia Reporter: Stéphane Pontier <stephane.pontier>
Component: RPM PackagesAssignee: Oden Eriksson <oe>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Normal CC: bluca, thierry.vignaud
Version: Cauldron   
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: bacula-5.2.12-1.mga3.src.rpm CVE:
Status comment:

Description Stéphane Pontier 2012-10-20 12:50:10 CEST
Description of problem:
I installed bacula-dir-common on my computer and found out that some files are missing. When I rpm -ql, I got:
/etc/bacula/.pw.sed
/etc/bacula/bacula-dir.conf
/etc/bacula/scripts
/etc/bacula/scripts/delete_catalog_backup
/etc/bacula/scripts/make_catalog_backup
/etc/bacula/scripts/make_catalog_backup.pl
/etc/bacula/scripts/query.sql
/etc/logrotate.d/bacula-dir
/etc/rc.d/init.d/bacula-dir
/usr/lib64/bacula/create_bacula_database
/usr/lib64/bacula/drop_bacula_database
/usr/lib64/bacula/drop_bacula_tables
/usr/lib64/bacula/grant_bacula_privileges
/usr/lib64/bacula/make_bacula_tables
/usr/lib64/bacula/update_bacula_tables
/usr/sbin/bacula-dir
/usr/sbin/bscan
/usr/sbin/dbcheck
/usr/share/man/man8/bacula-dir.8.xz
/usr/share/man/man8/bscan.8.xz
/usr/share/man/man8/dbcheck.8.xz

but some files are not installed on my system, for example:
ll /usr/sbin/bacula-dir /usr/sbin/bscan /usr/sbin/dbcheck
ls: cannot access /usr/sbin/bacula-dir: No such file or directory
ls: cannot access /usr/sbin/bscan: No such file or directory
ls: cannot access /usr/sbin/dbcheck: No such file or directory


when I try to verify the package, it doesnt check the missing files:
rpm -vV bacula-dir-common 
S.?....T.  c /etc/bacula/bacula-dir.conf
.........    /etc/bacula/scripts
.........  c /etc/bacula/scripts/delete_catalog_backup
.........  c /etc/bacula/scripts/make_catalog_backup
.........  c /etc/bacula/scripts/make_catalog_backup.pl
.........  c /etc/bacula/scripts/query.sql
.........  c /etc/logrotate.d/bacula-dir
.........    /etc/rc.d/init.d/bacula-dir
.........  d /usr/share/man/man8/bacula-dir.8.xz
.........  d /usr/share/man/man8/bscan.8.xz
.........  d /usr/share/man/man8/dbcheck.8.xz
Comment 1 Thierry Vignaud 2012-10-20 18:41:47 CEST
Those are %ghost files in the spec file

CC: (none) => thierry.vignaud

David Walser 2012-10-20 22:32:00 CEST

Assignee: bugsquad => oe

Comment 2 Luca Berra 2012-10-21 19:56:29 CEST
bacula-dir-common exists only as a requirement for the various DB specific bacula-dir-XXX packages.
bacula-dir-common should not be installed by itself but should be brought in while installing the DB specific director package.
The %ghost files are there, because during installation of bacula-dir-XXX a symlink is created from the DB specific director and tools to the generic name.

CC: (none) => bluca

Comment 3 Stéphane Pontier 2012-10-21 23:53:35 CEST
bacula-dir-common came as I installed bacula-dir-sqlite3 but when I list the files of this last package here is what I find:

rpm -ql bacula-dir-sqlite3-5.2.12-1.mga3
/usr/lib64/bacula/create_sqlite3_database
/usr/lib64/bacula/drop_sqlite3_database
/usr/lib64/bacula/drop_sqlite3_tables
/usr/lib64/bacula/grant_sqlite3_privileges
/usr/lib64/bacula/make_sqlite3_tables
/usr/lib64/bacula/update_sqlite3_tables
/usr/lib64/bacula/update_sqlite3_tables_10_to_11
/usr/lib64/bacula/update_sqlite3_tables_11_to_12
/usr/lib64/bacula/update_sqlite3_tables_12_to_14
/usr/lib64/bacula/update_sqlite3_tables_8_to_9
/usr/lib64/bacula/update_sqlite3_tables_9_to_10
/usr/lib64/bacula/update_sqlite_tables_4_to_5
/usr/lib64/bacula/update_sqlite_tables_5_to_6
/usr/lib64/bacula/update_sqlite_tables_6_to_7
/usr/lib64/bacula/update_sqlite_tables_7_to_8

the other two packages dont list the binaries file neither

urpmq -l bacula-dir-mysql  
/usr/lib64/bacula/create_mysql_database
/usr/lib64/bacula/drop_mysql_database
/usr/lib64/bacula/drop_mysql_tables
/usr/lib64/bacula/grant_mysql_privileges
/usr/lib64/bacula/make_mysql_tables
/usr/lib64/bacula/update_mysql_tables
/usr/lib64/bacula/update_mysql_tables_10_to_11
/usr/lib64/bacula/update_mysql_tables_11_to_12
/usr/lib64/bacula/update_mysql_tables_12_to_14
/usr/lib64/bacula/update_mysql_tables_4_to_5
/usr/lib64/bacula/update_mysql_tables_5_to_6
/usr/lib64/bacula/update_mysql_tables_6_to_7
/usr/lib64/bacula/update_mysql_tables_7_to_8
/usr/lib64/bacula/update_mysql_tables_8_to_9
/usr/lib64/bacula/update_mysql_tables_9_to_10
/usr/lib64/bacula/create_mysql_database
/usr/lib64/bacula/drop_mysql_database
/usr/lib64/bacula/drop_mysql_tables
/usr/lib64/bacula/grant_mysql_privileges
/usr/lib64/bacula/make_mysql_tables
/usr/lib64/bacula/update_mysql_tables
/usr/lib64/bacula/update_mysql_tables_10_to_11
/usr/lib64/bacula/update_mysql_tables_11_to_12
/usr/lib64/bacula/update_mysql_tables_12_to_14
/usr/lib64/bacula/update_mysql_tables_4_to_5
/usr/lib64/bacula/update_mysql_tables_5_to_6
/usr/lib64/bacula/update_mysql_tables_6_to_7
/usr/lib64/bacula/update_mysql_tables_7_to_8
/usr/lib64/bacula/update_mysql_tables_8_to_9
/usr/lib64/bacula/update_mysql_tables_9_to_10


urpmq -l bacula-dir-pgsql  
/usr/lib64/bacula/create_postgresql_database
/usr/lib64/bacula/drop_postgresql_database
/usr/lib64/bacula/drop_postgresql_tables
/usr/lib64/bacula/grant_postgresql_privileges
/usr/lib64/bacula/make_postgresql_tables
/usr/lib64/bacula/update_postgresql_tables
/usr/lib64/bacula/update_postgresql_tables_10_to_11
/usr/lib64/bacula/update_postgresql_tables_11_to_12
/usr/lib64/bacula/update_postgresql_tables_12_to_14
/usr/lib64/bacula/update_postgresql_tables_7_to_8
/usr/lib64/bacula/update_postgresql_tables_8_to_9
/usr/lib64/bacula/update_postgresql_tables_9_to_10
/usr/lib64/bacula/create_postgresql_database
/usr/lib64/bacula/drop_postgresql_database
/usr/lib64/bacula/drop_postgresql_tables
/usr/lib64/bacula/grant_postgresql_privileges
/usr/lib64/bacula/make_postgresql_tables
/usr/lib64/bacula/update_postgresql_tables
/usr/lib64/bacula/update_postgresql_tables_10_to_11
/usr/lib64/bacula/update_postgresql_tables_11_to_12
/usr/lib64/bacula/update_postgresql_tables_12_to_14
/usr/lib64/bacula/update_postgresql_tables_7_to_8
/usr/lib64/bacula/update_postgresql_tables_8_to_9
/usr/lib64/bacula/update_postgresql_tables_9_to_10
Comment 4 Luca Berra 2012-10-22 17:41:19 CEST
uhm.
seems i was still in the past.
now bacula is built using shared libraries for the catalog, so the binaries do not need to be symlinked at install.

it means "%ghost" should be removed from these 3 lines in bacula.spec
1114 	%ghost %{_sbindir}/bacula-dir
1115 	%ghost %{_sbindir}/dbcheck
1116 	%ghost %{_sbindir}/bscan

sorry for the misunderstanding.
Comment 5 Oden Eriksson 2013-01-21 12:55:35 CET
Fixed in Cauldron

Status: NEW => RESOLVED
Resolution: (none) => FIXED