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

    Trigger a script directly after partclone that requests input and copies a folder

    Scheduled Pinned Locked Moved
    FOG Problems
    7
    30
    7.9k
    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.
    • Tom ElliottT
      Tom Elliott @Wayne Workman
      last edited by

      @Wayne-Workman https://forums.fogproject.org/topic/4084/automatic-hardware-detection-driver-installs-in-fog/28

      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

      I 1 Reply Last reply Reply Quote 0
      • I
        ITSolutions Testers @Tom Elliott
        last edited by

        @Tom-Elliott Is there a list of what variables available to be used in the scripts? I noticed that $osid and ${postdownloadpath} were used in those scripts. Are there any others that are globally available to a post download script?

        george1421G S 2 Replies Last reply Reply Quote 0
        • george1421G
          george1421 Moderator @ITSolutions
          last edited by george1421

          @ITSolutions look at Junkhacker’s post here https://forums.fogproject.org/topic/6463/expose-fog-host-and-image-properties-to-post-install-scripts/7

          I’ve had it on my back burner to write a php page that I could call in the post download script to pickup more deploy time info that is currently listed above. There never seems to be enough time to work on it though.

          @abos_systemax what type of input do you need from the user? I have a pretty extensive postinstall script. I haven’t tried it in a while but I was able to pause the postinstall script to wait for an IT tech’s input and then write a file based on the user’s input.

          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!

          1 Reply Last reply Reply Quote 2
          • george1421G
            george1421 Moderator @abos_systemax
            last edited by

            @abos_systemax I did have a sample script from my dev box (the one and only I didn’t purge about a week ago).

            Here is the basics of the code.
            Create a file in /images/postdownloadscripts called fog.question (you can really name it what ever you like). Then paste the content of the follow script into that file.

            #!/bin/bash
              . /usr/share/fog/lib/funcs.sh;
              read -p "Enter your room number " rn
              echo "You answered ${rn}. ";
            

            Now edit /images/postdownloadscripts/fog.postdownload

            And append this line
            . ${postdownpath}fog.question

            Now deploy your image. After the image is deployed the installer should stop and ask you for the room number and then continue.

            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!

            A 1 Reply Last reply Reply Quote 2
            • S
              Sebastian Roth Moderator @ITSolutions
              last edited by

              @ITSolutions said:

              Is there a list of what variables available to be used in the scripts? I noticed that $osid and ${postdownloadpath} were used in those scripts. Are there any others that are globally available to a post download script?

              I am sure there are more. AFAIK we don’t maintain a list of those. Just put a test script in place that dumps the environment (env and set) to a text file and examine it afterwards…

              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

              1 Reply Last reply Reply Quote 0
              • A
                abos_systemax @george1421
                last edited by

                @george1421
                Thank you! This is exactly (well, almost exactly) what I needed.
                The rest is just a normal Bash script I presume

                george1421G 1 Reply Last reply Reply Quote 0
                • george1421G
                  george1421 Moderator @abos_systemax
                  last edited by

                  @abos_systemax If you explain (in more detail) what you are trying to do (other than ask a question to the installer) I might be able to provide a better quality answer.

                  But you are correct since the post install scripts are run on the FOS (linux) client it executes as a bash script.

                  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!

                  A 1 Reply Last reply Reply Quote 0
                  • A
                    abos_systemax @george1421
                    last edited by

                    @george1421 At my company we deploy for multiple customers; I want to echo a script to the 😄 drive of the just deployed machine that contains the computername that we have decided for the machine. Since we are unable to use the FOG Client on Windows (not our devices, nor our images), I have to find other ways.

                    Your script seems to work, with one problem: I cannot type anything. The same problem occurs when I run a Debug Deployment; the FOS doesn’t seem to recognize my keyboard on a Fujitsu E546.

                    george1421G A 2 Replies Last reply Reply Quote 0
                    • george1421G
                      george1421 Moderator @abos_systemax
                      last edited by george1421

                      @abos_systemax As for the keyboard issue, I can not help you with that other than can you use an external keyboard?

                      For the system renaming. I don’t use the fog client for that either. In my case we use an unattend.xml file as part of the sysprep process. We update the unattend.xml file in the fog post install scripts with the computer name and other relevant install time settings.

                      I use the following command in my post install script. The variable $compname is calculated based on the target computer asset tag and install location. In your case the $compname variable would be set based on the question/answer you provided. Depending on where you place the unattend.xml file you need to provide the full path and filename of the unattend.xml file (Reminder: pay attention to the case of the file and path)

                      sed -i -e "s#<ComputerName>\([^<][^<]*\)</ComputerName>#<ComputerName>$compname</ComputerName>#gi" $PathToUnattendFile

                      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!

                      1 Reply Last reply Reply Quote 2
                      • A
                        abos_systemax @abos_systemax
                        last edited by

                        @abos_systemax said in Trigger a script directly after partclone that requests input and copies a folder:

                        @george1421 At my company we deploy for multiple customers; I want to echo a script to the 😄 drive of the just deployed machine that contains the computername that we have decided for the machine. Since we are unable to use the FOG Client on Windows (not our devices, nor our images), I have to find other ways.

                        Your script seems to work, with one problem: I cannot type anything. The same problem occurs when I run a Debug Deployment; the FOS doesn’t seem to recognize my keyboard on a Fujitsu E546.

                        it does work with an external keyboard…
                        is that a driver related issue?

                        1 Reply Last reply Reply Quote 0
                        • JunkhackerJ
                          Junkhacker Developer
                          last edited by

                          it does work with an external keyboard…
                          is that a driver related issue?

                          almost certainly, yes.
                          personally, i’d just use an external keyboard instead of troubleshooting further…

                          signature:
                          Junkhacker
                          We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                          george1421G 1 Reply Last reply Reply Quote 1
                          • george1421G
                            george1421 Moderator @Junkhacker
                            last edited by

                            @Junkhacker said

                            almost certainly, yes.
                            personally, i’d just use an external keyboard instead of troubleshooting further…

                            I agree, you only need the external keyboard for deployment. Once the windows kernel boots then the onboard keyboard should work.

                            You have to remember that the FOG system (FOS client specifically) is linux based. So its may not be possible to have every flavor of driver possible. I suspect that the keyboard is connected behind some kind of onboard controller that linux doesn’t support.

                            To restate what @Junkhacker just posted, go ahead and use an external keyboard for deployment, then move on to the next issue.

                            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!

                            A 1 Reply Last reply Reply Quote 0
                            • A
                              abos_systemax @george1421
                              last edited by

                              @george1421 said in Trigger a script directly after partclone that requests input and copies a folder:

                              @Junkhacker said

                              almost certainly, yes.
                              personally, i’d just use an external keyboard instead of troubleshooting further…

                              I agree, you only need the external keyboard for deployment. Once the windows kernel boots then the onboard keyboard should work.

                              You have to remember that the FOG system (FOS client specifically) is linux based. So its may not be possible to have every flavor of driver possible. I suspect that the keyboard is connected behind some kind of onboard controller that linux doesn’t support.

                              To restate what @Junkhacker just posted, go ahead and use an external keyboard for deployment, then move on to the next issue.

                              Yes. The only problem is that I will have 1000ths of laptops that have to be deployed. But that is my problem; I get that the problem is a driver related issue; I think I’ll have to use variables and good’ol mySQL to automate the process instead of typing a computername.

                              I thank you all for replying; I now know how to actually trigger a script; All I need to figure out now is the automation part.

                              -Alex

                              george1421G Tom ElliottT 2 Replies Last reply Reply Quote 0
                              • george1421G
                                george1421 Moderator @abos_systemax
                                last edited by george1421

                                @abos_systemax If you have that many systems I would take a slightly different approach but still within the framework of FOG.

                                If you have 1000 systems and have them cataloged (system name and mac address), you can import those systems into fog as hosts. This catalog can come from any tool that can create a .csv file. So you could use excel to create a table of your systems (computer name vs mac address). Upload them into FOG and then create a post install script that takes fog post install variable $hostname and insert that into the sed script (instead of $compname)I posted before. This way no mysql queries are needed, everything is in FOG and you are using the resources provided by FOG for imaging. You still are not using the fog client for anything. You are just updating the unattend.xml with the value (indirectly) from your csv upload.

                                The other option is to just let fog create an auto number of the systems are they are registered, like nc0001 for the first system, nc0002 for the second and so on.

                                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!

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

                                  @abos_systemax is the only reason you want to trigger a script so you can have the user define the hostname? There is already a way to automate setting up a hostname for the system within fog. Assuming you do register the systems you could use auto population to at least help with the naming part by itself.

                                  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

                                  A 1 Reply Last reply Reply Quote 1
                                  • A
                                    abos_systemax @Tom Elliott
                                    last edited by

                                    @Tom-Elliott

                                    Hi Tom, No this script here is actually just a testing tool to see the possibilities I can create with postdownload script. I’ve noticed the Early Hostname changer in Fog Trunk which is a great option if it works like I am expecting it to work.

                                    Right now I’m building my current environment into Fog, without loss of functionality from the old environment (Windows+Ghost+a self-written .net app), there I have the option to check the hostname before it is submitted; that is why I needed this option.

                                    I’ll definitely delve into the Early hostname changer soon

                                    Also, we do the deployment for several customers, some want us to change the name, some dont. Some want us to use a specific format, others want other formats. If it was for internal use; then the auto population could be an option; but all we do is custom tailored; even our fog installation 🙂
                                    – the reason that I do not use the Fog Boot menu is because we do not know the MAC adressess beforehand; we do however know the Serialnumber (and so does iPXE: DmiDecode), iPxe also know the MACadress; so we use a script in iPxe to tell fog that the right device has booted and is online.
                                    I’m still busy developing all the databases behind that, because we will not be able to completely use the FOG mainframe, but will definitely use the backplane

                                    JunkhackerJ 1 Reply Last reply Reply Quote 0
                                    • JunkhackerJ
                                      Junkhacker Developer @abos_systemax
                                      last edited by Junkhacker

                                      @abos_systemax

                                      I’ve noticed the Early Hostname changer in Fog Trunk which is a great option if it works like I am expecting it to work.

                                      and how are you expecting it to work?

                                      – the reason that I do not use the Fog Boot menu is because we do not know the MAC adressess beforehand;

                                      i’m not understanding what one has to do with the other

                                      signature:
                                      Junkhacker
                                      We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                                      A 1 Reply Last reply Reply Quote 0
                                      • A
                                        abos_systemax @Junkhacker
                                        last edited by

                                        @Junkhacker
                                        The two have nothing to do with each other in this context.=
                                        I am expecting the early hostname changer to work with the field hostname from the Fog Dbase, am I correct here?

                                        Right now we are using the field Hostname from the table Hosts to identify the machine (we prefill it with the serialnumber), if I am correct in my expectation above, then we have to change that functionality to use a field not used by the hostname changer.

                                        Other question: is it possible to turn it on- or off, per device?

                                        JunkhackerJ 1 Reply Last reply Reply Quote 0
                                        • JunkhackerJ
                                          Junkhacker Developer @abos_systemax
                                          last edited by

                                          @abos_systemax said in Trigger a script directly after partclone that requests input and copies a folder:

                                          Right now we are using the field Hostname from the table Hosts to identify the machine (we prefill it with the serialnumber), if I am correct in my expectation above, then we have to change that functionality to use a field not used by the hostname changer.

                                          i don’t understand what you’re trying to do here. are you trying to give the computer a name that matches it’s serial number?

                                          Other question: is it possible to turn it on- or off, per device?

                                          no

                                          signature:
                                          Junkhacker
                                          We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            abos_systemax @Junkhacker
                                            last edited by

                                            @Junkhacker
                                            Currently, we are using the Hostname field in the table Hosts to identify the machine in iPXE as ‘prestaged’ for Fog.
                                            If the hostname changer does use this specific field to insert the name (and correct me If I am wrong here), then we will have to change our own script that currently also uses this field, because the actual hostname will be different (based on customer preferences)

                                            If the above is true , then I will need to find alternative means to prestage devices. If the Easy Hostname Change option uses a different database or table, then please let me know.

                                            p.s. We do not use the windows client, I am talking about the ‘Fog OS Easy hostname change’ option

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

                                            159

                                            Online

                                            12.0k

                                            Users

                                            17.3k

                                            Topics

                                            155.2k

                                            Posts
                                            Copyright © 2012-2024 FOG Project