afaik all these threads you refer to are about “search and replace” with a texteditor in a specific file.
However if you grep the entire FOG installation regarding this issue you will find it scattered over 20 files. Most of them are jpgraph related so they can be ignored as long as you do not use the reporting functionality I presume. So there are 5 files with issues left. Above patch is not different to a manual search and replace.
But please prove me wrong as currently I ended up with a non functioning FOG server.
Releasing an “official” patch or intermediate release (0.32.1 or something) with this issue resolved would be helpful for those with Linux boxes more recent than 2 years or so.
I did not want to reinvent the wheel, but a script seemed easier than manually editing files. Hence my attempt.
Posts made by Olaf
-
RE: PHP 5.4 & FOG 0.32
-
RE: PHP 5.4 & FOG 0.32
I can confirm as of last week that this patch is not working. FOG will be unable to execute tasks. Pity.
-
RE: Bugs in FOG 0.33
[quote=“Fernando Gietz, post: 3391, member: 13”]I’ve problems under Centos and the FOg daemons: FOGReplicator,FOGScheduler and FOGMulticastManager.
But FOGShceduler daemon:
[CODE]
[root@r800145 administrador]# /etc/init.d/FOGScheduler start
Iniciando FOGTaskScheduler: [ OK ]
[root@r800145 administrador]# PHP Warning: require_once(/var/www/html/fog/management/lib/Imageable.interface.php): failed to open stream: No such file or directory in /opt/fog/service/FOGTaskScheduler/FOGTaskScheduler on line 58
PHP Fatal error: require_once(): Failed opening required ‘/var/www/html/fog/management/lib/Imageable.interface.php’ (include_path=‘.:/usr/share/pear:/usr/share/php’) in /opt/fog/service/FOGTaskScheduler/FOGTaskScheduler on line 58
[/CODE]The file [B]/var/www/html/fog/management/lib/Imageable.interface.php [/B]don’t exists[B].[/B]
[CODE][root@r800145 lib]# pwd
/var/www/html/fog/management/lib
[root@r800145 lib]# ls -la
total 20
drwxr-xr-x 5 apache apache 4096 may 4 21:47 .
drwxr-xr-x 15 apache apache 4096 may 4 21:47 …
drwxr-xr-x 5 apache apache 4096 may 4 21:47 jpgraph
drwxr-xr-x 3 apache apache 4096 may 4 21:47 ssh
drwxr-xr-x 6 apache apache 4096 may 4 21:47 .svn
[/CODE][/quote]I can confirm this. These (mainly) class files are there when you upgrade from 0.32 to 0.33B but [B]are not there[/B] with a fresh installation. No wonder if you look at: [url]https://freeghost.svn.sourceforge.net/svnroot/freeghost/trunk/packages/web/management/lib/[/url]
[U][I][B]If it is not there to checkout, there is noting to install so it will not get installed.[/B][/I][/U]
When it is not installed there will be no runnable TaskScheduler. And without that FOG is useless.
The need for these missing files is advertised here: [url]https://freeghost.svn.sourceforge.net/svnroot/freeghost/trunk/packages/service/FOGTaskScheduler/FOGTaskScheduler[/url]
So testing 0.33 from a 0.32 upgrade might work but a fresh SVN checkout will never result in operational code!I installed this on Debian Wheezy today (April 12th 2013).
All issues with the installer are also still there: it forces installation of Debian packages even if alternatives are available (like MariaDB instead of MySQL) and overwrites configuration files without warning.
Another issue popped up too: ftp password/fog user was not resettable. (I changed the password of the system user “fog” and also the pwd in the congig.php file for the FTPserver). It kept trying the old password. The old password was still there from the 0.32 installation but was no longer valid for some reason. So no smooth migration there. I must admit though that this is a complex kerberos/pam integrated system. -
RE: Uploading / Mounting DFS fails
Two things:
A machine (client) has to have an IP-address as given by the DHCP server which must be able to route to the FOG server. 127.0.0.1 is localhost and usually connected to the loopback interface and not eth0 (or an other ethX). If you end up with only a loopback device the firmware/driver for the client machine’s networkcard was not a part of the kernelimage.
Second: Ubuntu 12.10 and FOG 0.32 is not something for beginners. Check: [url]http://fogproject.org/forum/threads/php-5-4-fog-0-32.3921/[/url]
Which might provide a solution, but at least gives some background information. -
PHP 5.4 & FOG 0.32
Dear community,
FOG 0.32 uses depreciated PHP code which is the reason why the TaskManager service will not run/crashes on current Linux distributions like Fedora 17, Ubuntu 12.10, Debian Wheezy.
The problem is: [url]http://php.net/manual/en/language.references.pass.php[/url]Below is an [U][I][B]untested[/B][/I][/U] potential solution. Any feedback most appreciated. I simply do not have the time to test this thoroughly. Would not be too surprised if the graphics part will not work as expected. A solution for that might be to upgrade the library ( jpgraph in /var/www/fog/management/lib ) to a more current version.
Consider testing this on a testsetup and NOT on a production network/server!The script below makes a backup of your FOG installation (the www part) by ZIPing it and next replaces all occurrences of “&$” with “$”. It is executed with a single argument: the directory where it can find FOG. On Debian/Ubuntu: /var/www/fog
[CODE]#!/bin/bash
inspired by: http://unix.stackexchange.com/questions/46839/how-to-find-and-replace-files-contents-that-match-a-pattern
MYDIR=$1
if [ -d “$MYDIR” ] ; then
TOPDIR=$(basename “$MYDIR”)
if [ $TOPDIR == “fog” ] ; then
# seems to be ok, so get on with it# make a backup first echo "Making a backup first...." tar -zcf "$MYDIR/../fog_preup_backup.tgz" $MYDIR echo "Backup made." # do my thing echo "Start search and replace" FINDPATTERN="&\\$" REPLACEPATTERN="$" ACTION="find $MYDIR -name '*.php' -print0 | xargs -0r sed -i -e 's/$FINDPATTERN/$REPLACEPATTERN/g'" echo "To be executed: $ACTION" eval $ACTION #find Project -name '*.php' -print0 | xargs -0r sed -i -e 's/&\$/$/g' #find $MYDIR -name '*.php' -print0 | xargs -0r sed -i -e "s/$FINDPATTERN/$REPLACEPATTERN/g" #find $MYDIR -name '*.php' -exec sed -i 's/$FINDPATTERN/$REPLACEPATTERN/g' {} + echo "Finished"
else
echo “Most likely the directory you specified is not a directory where FOG was installed.”
exit 1
fi
else
echo “Given argument is not a directory.”
exit 1
fi
[/CODE]