RHEL6 - GIT builds 6267/6269 - install immediately stuck in a loop on osid



  • I just pulled revision 6267 (and later 6269 in troubleshooting) using git. I have tested on both RHEL 7 and RHEL 6. This is a clean install. When the installfog.sh script is launched, it shows the FOG ASCII art and the version number and then hangs indefinitely. I edited installfog.sh and added -x to the /bin/bash statement and re-ran. The result was a never-ending loop stuck on checking osid - snippet below:

    ++ osid=
    ++ [[ -z '' ]]
    ++ [[ ! -z '' ]]
    ++ [[ -z '' ]]
    ++ [[ '' -eq 1 ]]
    ++ osid=
    ++ [[ -z '' ]]
    ++ [[ ! -z '' ]]
    ++ [[ -z '' ]]
    ++ [[ '' -eq 1 ]]
    ++ osid=
    ++ [[ -z '' ]]
    ++ [[ ! -z '' ]]
    ++ [[ -z '' ]]
    ++ [[ '' -eq 1 ]]
    ++ osid=
    ++ [[ -z '' ]]
    ++ [[ ! -z '' ]]
    ++ [[ -z '' ]]
    ++ [[ '' -eq 1 ]]
    ++ osid=
    
    

    Did I miss this somewhere as a known issue of some type…?
    Mod edited to use code box.


  • Developer

    @HROAdmin26 Did you get to test this again without clearScreen? Hope we can find out what’s causing this!



  • @Sebastian-Roth The attached tgz (0_1455389711392_fog_debug_RHEL6.tgz) is from 6269 and was run on RHEL6. I’ll have to check to see if commenting clearScreen changes the output.


  • Developer

    Thanks for uploading the tgz. To me it looks like the important first part is missing. The log file starts with ^[[H^[[2JdisplayBanner. I am wondering if the clearScreen call (installfog.sh line 91) makes the beginning disappear?? Could you please revert to 6269 or comment the change by hand. As well comment/remove the clearScreen call and run the script in full debug again. Would be interesting to see the full output.



  • @Tom-Elliott I just pulled the latest git clone and the OS menu is now displayed. Since the redhat-release file isn’t missing, there must be another cause for strSuggestedOS to be unset. I will move forward with testing this version install. Thanks for your response/help!

          Version: 6271 Installer/Updater
    
          What version of Linux would you like to run the installation for?
    
          1) Redhat Based Linux (Redhat, CentOS, Mageia)
          2) Debian Based Linux (Debian, Ubuntu, Kubuntu, Edubuntu)
          3) Arch Linux
    

    0_1455389711392_fog_debug_RHEL6.tgz



  • @Sebastian-Roth Neither system (RHEL6 or RHEL7) is missing the redhat-release file. Example from 6:

    cat /etc/redhat-release
    Red Hat Enterprise Linux Server release 6.7 (Santiago)

    I can provide the full debug text via e-mail if you’d like.

    • I’m sure the versions have changed, but 1.2.0 installed without this issue on RHEL7. I then attempted an upgrade using the git clone, which had an issue with ‘backupDatabase.’ Rather than modify the install script, I deployed a clean RHEL7 and attempted an install from git clone - this ‘hung’ with the loop mentioned. I then deployed a RHEL6 system believing it would be smoother. This then hung with the same loop at the start of the install. (To clarify, when the RHEL7 clean install hung, I did not enable -x debug on bash. I moved to RHEL6 and saw the same hang. After enabling -x and seeing the loop, I assumed it is the same as what occurred on RHEL7. I will go back to that system to see if I can verify the same bash loop.)

    • Here is the output in the debug text for RHEL7 - it appears to loop at the same point:

    448: strSuggestedDNS=
    449: [[ -f /etc/resolv.conf ]]
    cat /etc/resolv.conf | grep “nameserver” | head -n 1 | tr -d “nameserver” | tr -d [:blank:] | grep “^[0-9].[0-9].[0-9].[0-9]$”)
    cat /etc/resolv.conf | grep “nameserver” | head -n 1 | tr -d “nameserver” | tr -d [:blank:] | grep "^[0-9].[0-9].[0-9].[0-9]$"
    5550: cat /etc/resolv.conf
    5550: grep nameserver
    5550: tr -d nameserver
    5550: grep '^[0-9].[0-9].[0-9].[0-9]$'
    5550: head -n 1
    5550: tr -d '[:blank:]'
    550: strSuggestedDNS=172.16.4.10
    552: [[ -z 172.16.4.10 ]]
    557: strSuggestedSNUser=fogstorage
    displayOSChoices
    559: displayOSChoices
    6645: blFirst=1
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=
    6651: [[ -z ‘’ ]]
    6651: [[ ! -z ‘’ ]]
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=

    The release file:

    cat /etc/redhat-release
    Red Hat Enterprise Linux Server release 7.0 (Maipo)


  • Senior Developer

    @Sebastian-Roth Added, within the case of course just in case. Anything that isn’t autodetected as 1, 2, 3, will be set to 1 to try to prevent to the loop.


  • Developer

    I guess /etc/redhat-release is missing on those systems… Did you intentionally delete it?

    Edit: Sure the infinite loop is not nice and we should fix this as well.
    @Tom-Elliott Probably we just add a case in lib/common/input.sh line 27 defaulting to lets say ‘strSuggestedOS=1’. Not perfect but easy.



  • @Sebastian-Roth I made the updates to installfog.sh, then ran the command with:

    ./installfog > /tmp/fog_debug.txt

    This looped only for a few seconds, but was enough to create a 16MB text file. I’ve pasted the last few lines before the loop starts (I’ll attach the full tgz if I can figure out how on this forum…)

    448: strSuggestedDNS=
    449: [[ -f /etc/resolv.conf ]]
    5550: cat /etc/resolv.conf
    5550: grep '^[0-9].[0-9].[0-9].[0-9]$'
    5550: tr -d nameserver
    5550: tr -d '[:blank:]'
    5550: head -n 1
    5550: grep nameserver
    550: strSuggestedDNS=172.16.4.10
    552: [[ -z 172.16.4.10 ]]
    557: strSuggestedSNUser=fogstorage
    displayOSChoices
    559: displayOSChoices
    6645: blFirst=1
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=
    6651: [[ -z ‘’ ]]
    6651: [[ ! -z ‘’ ]]
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=
    6651: [[ -z ‘’ ]]
    6651: [[ ! -z ‘’ ]]
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=
    6651: [[ -z ‘’ ]]
    6651: [[ ! -z ‘’ ]]
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]
    6650: osid=
    6651: [[ -z ‘’ ]]
    6651: [[ ! -z ‘’ ]]
    6646: [[ -z ‘’ ]]
    6647: [[ ‘’ -eq 1 ]]

    • This is a new install and the /opt/fog directory does not exist.

  • Developer

    @HROAdmin26 Can you please add ‘-xv’ to the first line of the script and PS4='$LINENO: ' as a second line. Then see if you get some more helpful output. I cannot make sense of this so far.

    Any chance you have some “weird setting” in /opt/fog/.fogsettings file?



  • No prompt to enter anything - the FOG ASCII and the revision number are displayed and then it “hangs.” The debug output shows the osid loop.


  • Senior Developer

    @HROAdmin26 Does it initially ask you to enter the OS? Or it doesn’t ever show anything?


Log in to reply
 

407
Online

38724
Users

10553
Topics

99872
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.