K1000: How to distribute files across the enterprise, update it according to version, and re-distribute if it is deleted?
I apologize if this question has already been aswered somewhere. I have been searching for the answer for quite awhile and could not find it. Here is what I am trying to accomplish:
1. I want to distribute an ascii file (a .pac file) across the enterprise assets where KACE agent is installed.
2. I want that KACE agent to check for the version of that file on KACE and to automatically update it if the version changes. I want that check to happen every hour.
3. I want the file to be re-send (re-distributed) if it gets deleted by a user.
I have configured file synchronization, but for some reason, when I delete the file, agent does not pull it off KACE unless I reboot. Where, periodic synchronization has to be synchronized? I have configured "Run Interval", "Inventory Interval", and "Scripting Update Interval" to 1 hour, but it did not do anything. The file does not appear on the client machine, unless it' is rebooted or unless I execute "Force Update" on KACE for that asset.
Please, let me know what's the best way to accomplish my objectives are.
Thanks a lot.
Answers (3)
you can do this thru a script and a smart label. You will need to create a custom inventory and apply a smart label for machines that do not have this item and deploy to that label
If it is a file that does not a version you can also create a custom software inventory to get the creation or last modified date.
Use this in your custom software item
ShellCommandTextReturn(c:\windows\system32\wbem\WMIC.exe where name='c:\\path\\to\\file\\file.xml' get creationdate)
or
ShellCommandTextReturn(c:\windows\system32\wbem\WMIC.exe where name='c:\\path\\to\\file\\file.xml' get lastmodified)
Comments:
-
I am sorry for being a total n00b in Kace, but I did not understand this solution. I tried to script copying of the file with xcopy, but it did not work. I guess it did not work because of UAC not allowing file to be copied to c:\ directory. Is there any other way? - ageldenberg 11 years ago
Actually if you are going to use scripts you do not need to create a custom inventory.
Create an Online Script
dependenies
.pac file
Verify:
A File version is exactly, greater than, or less than. (choose one)
Remediation:
Run .bat file to copy this file
copy /y <name>.pac C:\temp
Another way I've used in the past is to copy a blank .txt file down at the end of my script. Have your verify step check for the existance of this file. If it does not exist the remediation will copy it down.
Comments:
-
I ran into ascii files not having a version so that I why I resorted to the above method for text files. - SMal.tmcc 11 years ago
-
File version can be configured right in KACE when it is added as a software asset. I hope there is a mechanism for the agent to check against the existing file version and the one of the file stored in KACE and act upon it. - ageldenberg 11 years ago
I have managed to create a on-line KScript, utilizing xcopy, which does what I want. However, I cannot force the script to execute every hour, despite that I mention it in the configuration of the script. It works fine, when I click "Run Now" button. However, scheduling settings are ignored. No matter which interval is configured, nothing gets executed. Am I missing anything?
Comments:
-
Make sure "allow run while logged off" is checked. Also make sure your "verify" doesn't recognize the file, and not run the xcopy. You can set the verify to "always fail" to test. Your xcopy is in remediation correct? - dugullett 11 years ago
-
My configuration does not have anyting in Verify section. I could not find a suitable condition. In my case, i need script to run on whether target does or does not have a specific file. The script works without anything in Verify section when the button "Run Now" is pressed. My thought is that if the script functions when the button is pressed, it has to function on schedule. Am I not right? Also, I do have "allow run while logged off" option and my xcopy statement is in "On Success" section. - ageldenberg 11 years ago
-
That should work. I usually don't set mine up that way though so I can't speak from experience. Can you try setting the verify to always fail, and set you xcopy in remediation? - dugullett 11 years ago
-
I did set verify to "always fail" and copied xcopy into Remediation section. Verified it with "Run Now" button and it worked. Set schedule to execute every 10 minutes and that does not work. Something must be configured wrong, cause scheduled events just do not happen. This product is so backwards... Where else can I look??? - ageldenberg 11 years ago
-
I know this might be an obvious question, but do you have the "enabled" checked at the top? - dugullett 11 years ago
-
Yes... I checked "Enabled" and switched script status from "Draft" to "Production" - ageldenberg 11 years ago
-
It seems like scheduling just does not function at all on this box. - ageldenberg 11 years ago
-
I have schedules working on mine. Maybe you should contact support and see if they can get you better info. It's hard to say without actually seeing it. - dugullett 11 years ago