jroper
Guru
- Joined
- Oct 20, 2007
- Messages
- 3,832
- Reaction score
- 71
Dear Tom and Ward
I've been asked to redo my script to install PiaF on an existing CentOS installation, and have picked up on some oddities while installing 1.7.5.5.3
Samba Issues
During the install - yum stage one install, we get some samba errors as noted in the install log:-
This may mean that your intended action of yum stage one may not work.
Packages and dependency issues on the ISO
In order to check out the problem with Samba, I checked to ensure that all the packages were in order on the ISO with all dependencies satisfied, so I downloaded both the 64 bit and 32 bit, and checked them with rpm --test --dbpath
The 32 bit version threw these errors, which suggest that either you have packages on there which do not need to be there, or dependencies that should be there that are not.
You will note that Samba is one of the failed dependencies.
The 64 bit is a little more verbose than that, so I have not included it here.
I'm afraid I don't know which Samba versions you need or want on the system, so I'm afraid I cannot make a recommendation here. However, there is a methodology to ensure that you only have the packages you need on the ISO, and the dependencies are fulfilled.
Roll the perfect ISO
The way to cure this issue when you are rolling up the ISO, and deciding which packages are going to go on, is simply to build a golden image of exactly what you need in terms of packages, do it for both the 64 bit and the 32 bit. When you are happy that you have the perfect PIAF system, with only the packages you need, and everything works as it should, install yum-utils and run the command:-
This will give you a list of all the installed packages in the text file, yumlist.txt, which you can then turn into a line like:-
This will go and get only the packages that you need that are going to go on the ISO. When you come to roll up the ISO, there should be no errors and no missing dependencies, and you will only have on the ISO exactly what is going to be installed, with no packages that are not used, so it will be as small as it possibly can be.
Inspect my "Create Updated ISO" for more tips on how this works.
RPMForge ?
I also noticed during the install that the rpmforge repository was installed, however it was left enabled - is that wise? Some of the packages in there can be a little bleeding edge.
I would say that it would be better that any packages and updates should come first from the centos repository, and only from rpm-forge when there is no alternative.
If you disable the repository, and then when you need a package from it, you can simply use the line:-
So that say running "update source" does not bring down all the scary hairy bleeding edge stuff.
Installing FreePBX modules from the command line
I also notice that there was a fairly large file brought down called freepbx16base.tgz, which appeared to contain and install a number of FreePBX modules.
Of course, you can do it this way, but you do have to keep this file updated, and re-create it at intervals, and I am sure you have a script for it, but it is one more thing to maintain and generate.
But it is pretty simple to do in the install script using FreePBX's tools designed for this purpose, and will work across many versions of FreePBX without ever having to be touched again.
The above commands will bring down the current up to date modules as listed for the version of FreePBX that is installed from the FreePBX repository. Simply add or remove what is required.
The last line does a reload.
This approach saves your bandwidth as well.
Yours
Joe
I've been asked to redo my script to install PiaF on an existing CentOS installation, and have picked up on some oddities while installing 1.7.5.5.3
Samba Issues
During the install - yum stage one install, we get some samba errors as noted in the install log:-
Code:
Error: samba3x-swat conflicts with samba-swat
Error: samba3x conflicts with samba
Error: samba3x-client conflicts with samba
Error: samba3x conflicts with samba-common
Error: samba3x-doc conflicts with samba
Error: samba3x-common conflicts with samba-client
Error: samba3x-common conflicts with samba
Error: samba3x-winbind conflicts with samba-common
Error: samba3x conflicts with samba-client
Error: samba3x-client conflicts with samba-client
Error: samba3x-common conflicts with samba-common
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
This may mean that your intended action of yum stage one may not work.
Packages and dependency issues on the ISO
In order to check out the problem with Samba, I checked to ensure that all the packages were in order on the ISO with all dependencies satisfied, so I downloaded both the 64 bit and 32 bit, and checked them with rpm --test --dbpath
The 32 bit version threw these errors, which suggest that either you have packages on there which do not need to be there, or dependencies that should be there that are not.
Code:
error: Failed dependencies:
poppler-utils is needed by cups-1.3.7-18.el5_5.7.i386
perl(Digest::SHA) is needed by perl-Net-DNS-0.66-1.el5.rf.i386
samba-common = 0:3.0.33-3.29.el5_5 is needed by samba-3.0.33-3.29.el5_5.i386
libsmbclient is needed by samba3x-common-3.3.8-0.52.el5_5.i386
libtalloc >= 1.2.0-52.el5_5 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
libtalloc.so.1 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
libtdb >= 1.1.2-52.el5_5 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
libtdb.so.1 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
libwbclient.so.0 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
samba3x-winbind = 0:3.3.8-0.52.el5_5 is needed by samba3x-common-3.3.8-0.52.el5_5.i386
samba conflicts with samba3x-common-3.3.8-0.52.el5_5.i386
perl(Crypt::PasswdMD5) is needed by syslinux-3.86-1.el5.rf.i386
xorg-x11-drv-qxl is needed by xorg-x11-drivers-7.1-4.2.el5.i386
You will note that Samba is one of the failed dependencies.
The 64 bit is a little more verbose than that, so I have not included it here.
I'm afraid I don't know which Samba versions you need or want on the system, so I'm afraid I cannot make a recommendation here. However, there is a methodology to ensure that you only have the packages you need on the ISO, and the dependencies are fulfilled.
Roll the perfect ISO
The way to cure this issue when you are rolling up the ISO, and deciding which packages are going to go on, is simply to build a golden image of exactly what you need in terms of packages, do it for both the 64 bit and the 32 bit. When you are happy that you have the perfect PIAF system, with only the packages you need, and everything works as it should, install yum-utils and run the command:-
Code:
yum list installed > yumlist.txt
This will give you a list of all the installed packages in the text file, yumlist.txt, which you can then turn into a line like:-
Code:
yumdownloader --destdir=/root/createISO/cd1/pbx/ lots of packages blah blah
This will go and get only the packages that you need that are going to go on the ISO. When you come to roll up the ISO, there should be no errors and no missing dependencies, and you will only have on the ISO exactly what is going to be installed, with no packages that are not used, so it will be as small as it possibly can be.
Inspect my "Create Updated ISO" for more tips on how this works.
RPMForge ?
I also noticed during the install that the rpmforge repository was installed, however it was left enabled - is that wise? Some of the packages in there can be a little bleeding edge.
I would say that it would be better that any packages and updates should come first from the centos repository, and only from rpm-forge when there is no alternative.
If you disable the repository, and then when you need a package from it, you can simply use the line:-
Code:
yum --enablerepo=rpmforge install blah blah
So that say running "update source" does not bring down all the scary hairy bleeding edge stuff.
Installing FreePBX modules from the command line
I also notice that there was a fairly large file brought down called freepbx16base.tgz, which appeared to contain and install a number of FreePBX modules.
Of course, you can do it this way, but you do have to keep this file updated, and re-create it at intervals, and I am sure you have a script for it, but it is one more thing to maintain and generate.
But it is pretty simple to do in the install script using FreePBX's tools designed for this purpose, and will work across many versions of FreePBX without ever having to be touched again.
Code:
/var/lib/asterisk/bin/module_admin download asterisk-cli
/var/lib/asterisk/bin/module_admin download asteriskinfo
/var/lib/asterisk/bin/module_admin download backup
/var/lib/asterisk/bin/module_admin download fw_ari
/var/lib/asterisk/bin/module_admin download fw_fop
/var/lib/asterisk/bin/module_admin download iaxsettings
/var/lib/asterisk/bin/module_admin download javassh
/var/lib/asterisk/bin/module_admin download languages
/var/lib/asterisk/bin/module_admin download logfiles
/var/lib/asterisk/bin/module_admin download phpinfo
/var/lib/asterisk/bin/module_admin download sipsettings
/var/lib/asterisk/bin/module_admin download weakpasswords
/var/lib/asterisk/bin/module_admin download fw_langpacks
/var/lib/asterisk/bin/module_admin install asterisk-cli
/var/lib/asterisk/bin/module_admin install asteriskinfo
/var/lib/asterisk/bin/module_admin install backup
/var/lib/asterisk/bin/module_admin install fw_ari
/var/lib/asterisk/bin/module_admin install fw_fop
/var/lib/asterisk/bin/module_admin install iaxsettings
/var/lib/asterisk/bin/module_admin install javassh
/var/lib/asterisk/bin/module_admin install languages
/var/lib/asterisk/bin/module_admin install logfiles
/var/lib/asterisk/bin/module_admin install phpinfo
/var/lib/asterisk/bin/module_admin install sipsettings
/var/lib/asterisk/bin/module_admin install weakpasswords
/var/lib/asterisk/bin/module_admin install fw_langpacks
/var/lib/asterisk/bin/module_admin reload
The above commands will bring down the current up to date modules as listed for the version of FreePBX that is installed from the FreePBX repository. Simply add or remove what is required.
The last line does a reload.
This approach saves your bandwidth as well.
Yours
Joe
So... the question arises whether we'd really want to depend upon it to get things properly loaded and activated now and in the future. 



