• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    Change Image ID Number

    Scheduled Pinned Locked Moved Solved
    FOG Problems
    3
    44
    12.7k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Wayne WorkmanW
      Wayne Workman @Tom Elliott
      last edited by

      @Tom-Elliott Right because there are duplicate image IDs in the hosts table, you can’t use a count whatsoever there. I’m not liking this method at all because of imageGroupAssoc and hostImage not being taken care of in this answer.

      Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
      Daily Clean Installation Results:
      https://fogtesting.fogproject.us/
      FOG Reporting:
      https://fog-external-reporting-results.fogproject.us/

      Tom ElliottT 1 Reply Last reply Reply Quote 0
      • Wayne WorkmanW
        Wayne Workman @Tom Elliott
        last edited by

        @Tom-Elliott Of course BASH could handle this easily.

        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
        Daily Clean Installation Results:
        https://fogtesting.fogproject.us/
        FOG Reporting:
        https://fog-external-reporting-results.fogproject.us/

        1 Reply Last reply Reply Quote 0
        • Wayne WorkmanW
          Wayne Workman @RobTitian16
          last edited by Wayne Workman

          @RobTitian16 said in Change Image ID Number:

          @Wayne-Workman Sorry, it was a typo when I was writing it up on here. Here’s the screenshot to confirm what I’ve typed in:

          0_1476458331910_Capture.PNG

          The query for the hosts table probably succeeded for you in the above attempt. If you’ve not tried anything else since that, It can be undone with
          UPDATE hosts SET hostImage = hostImage + 4;
          But if you’ve started doing other stuff, you shouldn’t do this. Communicate with us, tell us what’s going on.

          Also, I’m working on a BASH script to re-order Image IDs.

          Good thing you have snapshots - you might just want to revert to the snapshot and sit tight for an hour or so.

          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
          Daily Clean Installation Results:
          https://fogtesting.fogproject.us/
          FOG Reporting:
          https://fog-external-reporting-results.fogproject.us/

          1 Reply Last reply Reply Quote 0
          • Wayne WorkmanW
            Wayne Workman @RobTitian16
            last edited by

            @RobTitian16 @Tom-Elliott I wrote a BASH script that is working. I’ll make a github project for it soon but here it is:

            #!/bin/bash
            
            #----- MySQL Credentials -----#
            snmysqluser=""
            snmysqlpass=""
            snmysqlhost=""
            # If user and pass is blank, leave just a set of double quotes like ""
            # if the db is local, set the host to just double quotes "" or "127.0.0.1" or "localhost"
            
            
            #----- Begin Program -----#
            
            selectAllImageIDs="SELECT imageID FROM images ORDER BY imageID"
            selectLowestImageID="SELECT imageID FROM images ORDER BY imageID LIMIT 1"
            
            options="-sN"
            if [[ $snmysqlhost != "" ]]; then
            	options="$options -h$snmysqlhost"
            fi
            if [[ $snmysqluser != "" ]]; then
                    options="$options -u$snmysqluser"
            fi
            if [[ $snmysqlpass != "" ]]; then
                    options="$options -p$snmysqlpass"
            fi
            options="$options -D fog -e"
            
            lowestID=$(mysql $options "$selectLowestImageID")
            
            #If the lowest image ID is greater than 1, we can renumber all images sequentially.
            if [[ "$lowestID" -gt "1" ]]; then
                count=1
                mysql $options "$selectAllImageIDs" | while read imageID; do
            
                    echo "-------------------"
                    echo "Attempting to change Image ID $imageID to $count"
                    mysql $options "UPDATE images SET imageID = $count WHERE imageID = $imageID"
                    mysql $options "UPDATE imageGroupAssoc SET igaImageID = $count WHERE igaImageID = $imageID"
                    mysql $options "UPDATE hosts SET hostImage = $count WHERE hostImage = $imageID"
                    echo "Attempt completed"
                    count=$((count + 1))
            
                done
            fi
            

            Sample output:

            [root@fog-server ~]# ./renumberFogImages.sh 
            -------------------
            Attempting to change Image ID 2 to 1
            Attempt completed
            -------------------
            Attempting to change Image ID 3 to 2
            Attempt completed
            -------------------
            Attempting to change Image ID 4 to 3
            Attempt completed
            -------------------
            Attempting to change Image ID 5 to 4
            Attempt completed
            [root@fog-server ~]#
            

            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
            Daily Clean Installation Results:
            https://fogtesting.fogproject.us/
            FOG Reporting:
            https://fog-external-reporting-results.fogproject.us/

            Tom ElliottT 1 Reply Last reply Reply Quote 1
            • Tom ElliottT
              Tom Elliott @Wayne Workman
              last edited by

              @Wayne-Workman you most certainly could use a count so long as the iteration of the count matches the new item. You adjust the statement to update all items matching a particular I’d. For example if I’d is 4 and is now set to 1. You would do an update like:
              update imageGroupAssoc set igaImageID=1 where igaImageID=4

              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

              Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

              Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

              Wayne WorkmanW 1 Reply Last reply Reply Quote 0
              • Wayne WorkmanW
                Wayne Workman @Tom Elliott
                last edited by

                @Tom-Elliott That’s what I did in the bash script below.

                Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                Daily Clean Installation Results:
                https://fogtesting.fogproject.us/
                FOG Reporting:
                https://fog-external-reporting-results.fogproject.us/

                RobTitian16R 1 Reply Last reply Reply Quote 0
                • RobTitian16R
                  RobTitian16 @Wayne Workman
                  last edited by

                  @Wayne-Workman Thanks for this, although when running the script I receive the following errors:

                  0_1476713516864_Capture.PNG

                  The blanked out part of line 23 is the password. Yet when running:

                  mysql -h localhost -u root -p"password" -D fog
                  

                  I’m able to log-in perfectly fine.

                  Wayne WorkmanW 1 Reply Last reply Reply Quote 0
                  • Wayne WorkmanW
                    Wayne Workman @RobTitian16
                    last edited by

                    @RobTitian16 Edit the script, at the top is username and password and host. Set those to what is needed. If root works, use root and “password” and set the host to “localhost”

                    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                    Daily Clean Installation Results:
                    https://fogtesting.fogproject.us/
                    FOG Reporting:
                    https://fog-external-reporting-results.fogproject.us/

                    RobTitian16R 2 Replies Last reply Reply Quote 0
                    • RobTitian16R
                      RobTitian16 @Wayne Workman
                      last edited by

                      @Wayne-Workman Indeed, I set those as root and “password” with the host being “localhost”. It gave me those errors in the previous screenshot.

                      1 Reply Last reply Reply Quote 0
                      • RobTitian16R
                        RobTitian16 @Wayne Workman
                        last edited by

                        @Wayne-Workman 0_1476715852117_Capture.PNG

                        Wayne WorkmanW Tom ElliottT 3 Replies Last reply Reply Quote 0
                        • Wayne WorkmanW
                          Wayne Workman @RobTitian16
                          last edited by Wayne Workman

                          @RobTitian16 line 17 is actually the if argument. Try to put a space between the [[ and ]] brackets and the inner line between them. Like:
                          if [[ $snmysqlhost != "" ]]; then

                          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                          Daily Clean Installation Results:
                          https://fogtesting.fogproject.us/
                          FOG Reporting:
                          https://fog-external-reporting-results.fogproject.us/

                          1 Reply Last reply Reply Quote 0
                          • Tom ElliottT
                            Tom Elliott @RobTitian16
                            last edited by

                            @RobTitian16 Looks to my like your snmysqlpass and snmysqlhost fields are using missmatching quotes.

                            The snmysqlpass looks to start with a single quote but end with a double quote.

                            THe snmysqlhost field looks like it’s much the same.

                            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                            Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                            Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                            Wayne WorkmanW 1 Reply Last reply Reply Quote 1
                            • Wayne WorkmanW
                              Wayne Workman @Tom Elliott
                              last edited by

                              @Tom-Elliott Yup. I didn’t look close enough at it lol.

                              Looks like a simple typo. In the original script I posted, it’s good.

                              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                              Daily Clean Installation Results:
                              https://fogtesting.fogproject.us/
                              FOG Reporting:
                              https://fog-external-reporting-results.fogproject.us/

                              RobTitian16R 1 Reply Last reply Reply Quote 0
                              • RobTitian16R
                                RobTitian16 @Wayne Workman
                                last edited by

                                @Wayne-Workman Thanks, although that’s actually a result of me blocking out the password. I can confirm there are double quotes on all 3 lines. I copied and pasted the code below, so it’s all the same as far as I can tell.
                                I can also confirm there is a space between the [[ and ]] brackets and the inner line between them, as suggested.

                                Wayne WorkmanW 1 Reply Last reply Reply Quote 0
                                • Tom ElliottT
                                  Tom Elliott @RobTitian16
                                  last edited by

                                  @RobTitian16, @Wayne-Workman is correct.

                                  On all the of the “if lines” you must have a space after [[ and before ]]

                                  Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                  Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                  Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                  Wayne WorkmanW 1 Reply Last reply Reply Quote 1
                                  • Tom ElliottT
                                    Tom Elliott @Wayne Workman
                                    last edited by

                                    @Wayne-Workman I’d recommend updating this, the if statements are missing spaces.

                                    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                    Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                    Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                    Tom ElliottT 1 Reply Last reply Reply Quote 0
                                    • Tom ElliottT
                                      Tom Elliott @Tom Elliott
                                      last edited by

                                      @Tom-Elliott Never mind apparently it’s removing excess spaces for some reason.

                                      Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                      RobTitian16R 1 Reply Last reply Reply Quote 0
                                      • RobTitian16R
                                        RobTitian16 @Tom Elliott
                                        last edited by

                                        @Tom-Elliott BAM - that seems to have worked! Thanks!

                                        0_1476716967015_Capture.PNG

                                        1 Reply Last reply Reply Quote 1
                                        • Wayne WorkmanW
                                          Wayne Workman @RobTitian16
                                          last edited by Wayne Workman

                                          @RobTitian16 Try to double quote the variables in there like this:

                                          if [[ "$snmysqlhost" != "" ]]; then

                                          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                                          Daily Clean Installation Results:
                                          https://fogtesting.fogproject.us/
                                          FOG Reporting:
                                          https://fog-external-reporting-results.fogproject.us/

                                          RobTitian16R 1 Reply Last reply Reply Quote 0
                                          • RobTitian16R
                                            RobTitian16 @Wayne Workman
                                            last edited by RobTitian16

                                            @Wayne-Workman It seemed to work without double quoting the variables - I just had to put spaces, like:

                                            if [[ $snmysqlhost != “” ]] then

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 3 / 3
                                            • First post
                                              Last post

                                            220

                                            Online

                                            12.1k

                                            Users

                                            17.3k

                                            Topics

                                            155.3k

                                            Posts
                                            Copyright © 2012-2024 FOG Project