Bugs in FOG 0.33
-
[quote=“Tom Elliott, post: 14110, member: 7271”]Another minor issue that I’ve so far noticed is:
Reports, all of the pages will not work and it appears it’s because it has to communicate with the database. This communication is lost because the mysql_query statements within this pages look to be sending to a variable $conn that doesn’t exist for those pages. Also, as it needs to communicate with the database, the base configuration files are not existing either. My best suggestion would be to make a configuration file that stores the references needed within a file called something like base.inc.php that includes the base required files of commons/init.php commons/init.database.php. For the $conn variable, suggest an include statement of the base.inc.php so that the $conn system can be accessed even though it’s not directly defined in the file. So, basically, all main files should have an include BASEPATH . ‘commons/base.inc.php’; statement in them. This would also work for all other file that request this same information.
Found out that Pending MACs.php file the reference to class HostManager works if called like this:
$hostMan = new HostManager(); Rather than
$hostMan = $FOGCore->getClass(‘HostManager’);Fixed and working on my side.
My base.inc.php file is:
<?php
/* This file just stores the heading information for including *- In the FOG System. This should minimize code lines. *
- */
if (!defined(‘BASEBATH’))
require_once(‘system.php’);
require_once(BASEPATH . ‘/commons/config.php’);
require_once(BASEPATH . ‘/commons/init.php’);
require_once(BASEPATH . ‘/commons/init.database.php’);
$conn = @mysql_connect( DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD);
?>
and is located in commons.
Then added the line to the files needed. Though I guess in the management/index.php all you should need is the reference :
In the reports *.php files.
include BASEPATH . ‘/commons/base.inc.php’;[/quote]I was/am able to remove the need of the $conn variable declaration in base.inc.php and reference the global variable for database connections within the reports directory as:
$this->connSo a simple sed script is really useful to fix this. Also with this, the $hostMan function in Pending MACS.php can now be referenced as: $this->FOGCore->getClass(‘HostManager’);
In the {fogwebdir}/management/*.php files, place near the top:
include ‘…/commons/base.inc.php’;
In the {fogwebdir}/commons/base.inc.php file just have:
base.inc.php
<?php
/* This file just stores the heading information for including *- In the FOG System. This should minimize code lines. *
-
*/
if (!defined(‘BASEBATH’))
require_once(‘system.php’);
require_once(BASEPATH . ‘/commons/config.php’);
require_once(BASEPATH . ‘/commons/init.php’);
require_once(BASEPATH . ‘/commons/init.database.php’);
?>Hopefully somebody see’s this all.
Thanks,
-
Found an issue with the Disk Usage Graph on the main page of the web interface. What happens is when the used space is equal to the total available space, the graph only show’s 50% usage.
This is due to the way, that I can tell, the jquery.flot.pie.js script interprets the information in the calcTotal and combined functions.
Attached is the modified file that seems to work appropriately. This file goes in {fogwebdir}/managment/js/
I’ve also made a few changes to {fogwebdir}/management/js/fog.dashboard.js and {fogwebdir}/status/freespace.php so that it interprets the information accurately from Available and Used space and displays in EiB thru KiB. The method it uses currently obtains the appropriate Available space, but misinterprets the Used spaced. What I mean by this is when a file system is created there is always a portion that is unavailable space. The math takes the total size of the drive and subtracts the actual free space which is not necessarily an accurate representation of what the file system actually has.
So for inventory the files I’ve changed/added for the Dashboard area are:
{fogwebdir}/management/js/fog.dashboard.js (named as fog.dashboard.txt for upload)
{fogwebdir}/management/js/jquery.flot.pie.js (named as jquery.flot.pie.txt for upload)
{fogwebdir}/status/freespace.php[url=“/_imported_xf_attachments/0/362_fog.dashboard.txt?:”]fog.dashboard.txt[/url][url=“/_imported_xf_attachments/0/363_jquery.flot.pie.txt?:”]jquery.flot.pie.txt[/url][url=“/_imported_xf_attachments/0/364_freespace.php?:”]freespace.php[/url]
-
From the dashboard, when you click on the Disk Usage Graph, it used to give you hardware information and gives a debug message saying to use the old include style information. When you click on the old include style it requests that you login. You type your information and it just requests you to login again. However, I’ve fixed the link to actually give us a class that would be referenced.
I made adjustments (again just for the pretty factor of calculation of disk space) and created a new file.
Inventory of files changed/added are:
{fogwebdir}/lib/pages/hwinfo.class.php (created the class file)
{fogwebdir}/status/hw.php (adjusted to obtain information and calculate sizes more human readable.)[url=“/_imported_xf_attachments/0/365_hwinfo.class.php?:”]hwinfo.class.php[/url][url=“/_imported_xf_attachments/0/366_hw.php?:”]hw.php[/url]
-
This is a bug that I can’t give any fix for. I think it’s something all systems would have an issue with.
I have a windows system with a Hybrid SSD Drive. It will attempt to upload the image, but it keeps on hanging and eventually says something to the effect of pigz not responding last 120 seconds. The system that actually holds the images dies due to a kernel panic. I think this is specific to the Hybrid Drive, but I don’t have an alternate HDD to test with, unless I build a VM, which I will do eventually. Maybe this can be a warning rather than a bug, but I don’t know where else to place this.
The reason I believe it’s due to the HDD and not an issue with the actual imaging system is because looking up similar issues for this somebody recommended doing a chkdsk on the system. I just did the 3 phase chkdsk and it would hang throughout that as well. From my experience, usually 3 phase chkdsk is generally quite fast. It appeared that the Hybrid part (the ssd if you will) makes for a relatively large buffer, but the buffer can only hold so much data on the read state. Then it pauses, pushes the data where it needs to, then starts the cycle over again. Hence the pausing. I don’t know what this would look like on the write state as I haven’t been able to create an image for my Windows system.
-
Alright,
Update to my last post.
I created a Windows 7 VM and just installed the base. I haven’t activated or anything else, just installed and uploaded image.
The issue from above seems to be fine, except I keep getting hangs off and on. That could be a problem with my network as I have many different IP’s. I live on a 10/8 rather than a XXX/24 subnet. That aside, I was able to fully upload the image file.
The problem I came across, though, is that Single Disk, Resizeable seems broken to me. It uploaded the image, but only the mbr part of the image and broke the Windows 7 system where it needs to run a chkdsk. That aside it didn’t hurt the system, just a nuisance. In either case, it didn’t download any of the other partition(s) which seems to me it should and has in the past. I’m going to compare the init.gz fog script to the one from 0.32 as that one seemed to work flawlessly. I also wan’t to fix the size information when uploading as it’s displaying 1.47 GiB available space when the image size is 7.4 GiB. It doesn’t hurt my system any as I have 4 terabytes, but could pose an issue if someone doesn’t know and pulls the plug on an image they were overwriting.
I put the image in Multiple Partition Single Disk not resizable and it seems to have uploaded just fine. Maybe I can get some help on where to look for these issues?
Thank you,
-
Under the Fog Configuration page (the ? circle icon) the Mac-List page did not operate. Even with adjusting the $FOGCore values to $this->FOGCore as needed, the page displayed, but the Delete and Update did not work. I corrected this and will attach the files.
With this, though it’s not pretty, under the Host page, I’ve added the ability to add additional macs and, with the database loaded with the mac address vendor’s, it now displays the vendor for the macs. If it can’t find the mac listed, it will give the link for the lookup vendor, though I haven’t seen how to get this working … yet.
Inventory of the files are:
{fogwebdir}/lib/pages/FOGConfigurationPage.class.php
{fogwebdir}/lib/pages/HostManagementPage.class.php[url=“/_imported_xf_attachments/0/367_FOGConfigurationPage.class.php?:”]FOGConfigurationPage.class.php[/url][url=“/_imported_xf_attachments/0/368_HostManagementPage.class.php?:”]HostManagementPage.class.php[/url]
-
[quote=“Tom Elliott, post: 14166, member: 7271”]Under the Fog Configuration page (the ? circle icon) the Mac-List page did not operate. Even with adjusting the $FOGCore values to $this->FOGCore as needed, the page displayed, but the Delete and Update did not work. I corrected this and will attach the files.
With this, though it’s not pretty, under the Host page, I’ve added the ability to add additional macs and, with the database loaded with the mac address vendor’s, it now displays the vendor for the macs. If it can’t find the mac listed, it will give the link for the lookup vendor, though I haven’t seen how to get this working … yet.
Inventory of the files are:
{fogwebdir}/lib/pages/FOGConfigurationPage.class.php
{fogwebdir}/lib/pages/HostManagementPage.class.php[/quote]I forgot to mention, there were quite a few files that are referenced for the mac-list information. The original link lists it as mac-list, but all other needed files (the js, the ajax file, etc… reference the sub class as maclist) so Loading Vendors was giving issue as maclist didn’t exist and the delete/update buttons on the fog configuration page didn’t work because of the same reason. I’ll past the files that I changed to make it follow mac-list.
Inventory of the files are:
{fogwebdir}/management/js/fog.about.mac-list.js (Uploaded as txt file as js not allowed. Also, had to rename this file originally as the sub is mac-list, and this was called fog.about.maclist.js)
{fogwebdir}/management/ajax/mac-getman.php (Updated the sub reference)
{fogwebdir}/management/includes/submenu.include.php (The sub was here already, but just in case)
{fogwebdir}/management/includes/about.include.php (changed filename reference of maclist to mac-list)
{fogwebdir}/management/includes/about.mac-list.include.php (changed name of file and href information)
{fogwebdir}/management/indexold.php (Fixed this file so it actually logs you in now as well. Fixed the reference to sub)[url=“/_imported_xf_attachments/0/369_fog.about.mac-list.txt?:”]fog.about.mac-list.txt[/url][url=“/_imported_xf_attachments/0/370_mac-getman.php?:”]mac-getman.php[/url][url=“/_imported_xf_attachments/0/371_submenu.include.php?:”]submenu.include.php[/url][url=“/_imported_xf_attachments/0/372_indexold.php?:”]indexold.php[/url][url=“/_imported_xf_attachments/0/373_about.include.php?:”]about.include.php[/url][url=“/_imported_xf_attachments/0/374_about.mac-list.include.php?:”]about.mac-list.include.php[/url]
-
I think I’ve found out the issue to the single disk, resizable not operating. I believe it’s due to the start of the 2nd partition being input improperly. It is set in the init.gz /bin/fog file as part2start=105906 but in actuality, the part2start could be found by the fdisk command, hence making it operable for, basically, an windows ntfs system. fdisk -lu will output the partitions in their sector start/end positions. This might help us out a little, maybe. I’ll do some more testing before posting results.
-
so no luck so far with Single Disk, Resizeable. It feels like it’s not making/rewriting after upload a copy of the mbr. For UEFI this shouldn’t be required, but that’s a different story. 105906 is the right start point for part 2. Remember I’m nobody so I was just testing different things. Maybe force the file to copy the mbr before resize, then resize image/upload, then resize back and write mbr back?
I know that’s a lot, but the script could do it all. I just don’t know where to begin.
Thanks,
-
‘I’m nobody’ don’t say that, your contributing
-
I’ve got a busy week ahead of me at work, but I’ll try to look more into this this following weeked. I’ll add the components to my init.gz fog script to rewrite the mbr after the upload and after the reload of sys.img.000 and rec.img.000 and see if this works.
-
Fixed the kernel update system. Just needed a pointed function to do the update.
First things first. Make a copy of the fog.about.kernel.js file and save it as name fog.about.kernel-update.js in {fogwebdir}/management/js
Then copy the FOGConfigurationPage.class.php file to
{fogwebdir}/lib/pagesYou should now be able to update your kernel using the FOG Web GUI.
[url=“/_imported_xf_attachments/0/377_FOGConfigurationPage.class.php?:”]FOGConfigurationPage.class.php[/url]
-
I need to build a .33 VM and add in your edits
-
You want, I can try to rebuild the tarball and post it on my website for download. It’ll need some adjusting for you particular setup, but other than that you should be good? All I’d really have to do is delete the original packages/web directory and place mine in there!. Maybe add my init.gz file to the proper area as well so we don’t have the fog registration system asking you for osID of the host.
Let me know, and I can probably have it up and ready to download by Friday Evening-ish time frame. (I’m on -5hr GMT) So right now it’s about 4:30 PM/1630 EDT or 8:30 PM/2030 GMT.
-
Alright, alright,
So apparently I’m too dedicated to getting this out there. I’ve copied all the changed files to the trunk system. Removed all the .svn folders for compactability. Added the bzImage kernel 3.10.6 and my modified init.gz file.
All web pages should be modified.
Link to download the new tarball is:
[url]https://mastacontrola.com/fog_0.33b.tar.bz2[/url]
Download the file, extract with:
tar -xjf fog_0.33b.tar.bz2
Then install like you normally would. I didn’t copy any of my configuration files so there should be no information pertaining to my system. Hopefully this helps you falko, and whomever else decides to download.
-
[quote=“Tom Elliott, post: 14251, member: 7271”]Alright, alright,
So apparently I’m too dedicated to getting this out there. I’ve copied all the changed files to the trunk system. Removed all the .svn folders for compactability. Added the bzImage kernel 3.10.6 and my modified init.gz file.
All web pages should be modified.
Link to download the new tarball is:
[url]https://mastacontrola.com/fog_0.33b.tar.bz2[/url]
Download the file, extract with:
tar -xjf fog_0.33b.tar.bz2
Then install like you normally would. I didn’t copy any of my configuration files so there should be no information pertaining to my system. Hopefully this helps you falko, and whomever else decides to download.[/quote]
Also, if you decide to use wget to obtain the file use the command:
wget --no-check-certificate [url]http://mastacontrola.com/fog_0.33b.tar.bz2[/url]
-
Found a small issue in the group management system. There is no submenu to create a new group. So I added it.
The modified file is in:
{fogwebdir}/management/includes/submenu.include.php
I will update the tarball, if you’ve already downloaded, just redownload and you’ll be able to create groups. Now I just need to find out how to add a host to the group.
-
Alright, I’m not going to upload with the group attachment. The reason being that I can’t, for the life of me, figure out how it’s adding/modifying groups. I’ll look further and post when I’ve finally figured it out.
-
Alrighty then,
I finally got groups, sort of, working.
So it’s just like the old method for now where when you’re looking at the list of hosts, you can create your group and add systems to a group.
I can also add, under the group management icon, a link to create a new host directly from there. I haven’t, however (sorry guys) figured out how to add a host to a group from within the group management system. Though, if patient enough, I might be able to figure out a way to do so.
The Groups listing doesn’t display naturally. Simple fix, edit the css file. Open up:
{fogwebdir}/management/css/fog.css
Search for the line: action-box, there are 3 of them.
In the first line of action-box, there is a place that say’s, display: none
Set it to :
display: hidden
Then you’ll be good to go for creating and adding systems to groups the method we’re all used to.
I’ll update my fog package, but also post the changed file here as well. It’ll be a few for the tarball to be updated.
Inventory:
{fogwebdir}/management/css/fog.css
{fogwebdir}/lib/pages/GroupManagementPage.class.phpThe GroupManagement part is fully working, but I wanted to give some semblance of operation in this. The membership options current work which didn’t even after I updated my fog.css file.
EDIT:
Tarball is up and running. I may need some help getting the Associative parts of Groups to work: e.g
Image
Snapins Add and Remove
Service Settings
AD
and Printers.OS Association is there, but there really isn’t a need as we don’t need it for the hosts anymore. I’ll look into what else uses it and remove it as needed.
[url=“/_imported_xf_attachments/0/380_GroupManagementPage.class.php?:”]GroupManagementPage.class.php[/url][url=“/_imported_xf_attachments/0/381_fog.css?:”]fog.css[/url]
-
I’ve got a new kernel based on the core config for 3.10.7
I don’t have a lot of hardware to test on, so please test.
It can be downloaded from:
[url]https://mastacontrola.com/fogboot/kernel/bzImage[/url]
OR
wget --no-check-certificate [url]http://mastacontrola.com/fogboot/kernel/bzImage[/url]