{"id":504,"date":"2006-07-29T00:10:09","date_gmt":"2006-07-29T08:10:09","guid":{"rendered":"http:\/\/thecyberwolfe.com\/blog\/?p=504"},"modified":"2006-07-29T00:10:09","modified_gmt":"2006-07-29T08:10:09","slug":"sav-phone-home","status":"publish","type":"post","link":"http:\/\/thecyberwolfe.com\/blog\/2006\/07\/29\/sav-phone-home\/","title":{"rendered":"SAV Phone Home"},"content":{"rendered":"<p>If you&#8217;re like me and have ever had a problem where your Symantec Corporate Edition clients have either ceased speaking to the server or you&#8217;ve had to migrate servers, have no fear &#8211; I have a solution to your woes.<\/p>\n<p>The Symantec website has almost all of this information, but they don&#8217;t give you an easy example of how this can be done, they merely hint at it. The cure is to copy the Grc.dat file and the xxx.x.servergroupca.cer file to the client, in two different locations. The next time the client goes to check in, it will redirect itself and you&#8217;re home free. Simple, but damned annoying if you have say, 30-some-odd clients that need these files. The trick is to use a login script (assuming you have a domain running these clients.) Here&#8217;s how I did it.<\/p>\n<p><!--more--><\/p>\n<p>First, full path of origin and &#8211;> destination:<\/p>\n<p><os drive>:\\Program Files\\SAV\\Grc.dat &#8211;> C:\\Documents and Settings\\All Users\\Application Data\\Symantec\\Symantec AntiVirus Corporate Edition\\7.5\\<\/p>\n<p><\/os><os drive>:\\Program Files\\SAV\\pki\\roots\\xxx.x.servergroupca.cer &#8211;> C:\\Program Files\\Symantec Antivirus\\pki\\roots\\<\/p>\n<p>Second, I copied the relevant files to a new folder on my server: &#8220;\\\\avserver\\transfer\\savfix&#8221; so I could get them easily.<\/p>\n<p>Third, I created a text file &#8220;done.txt&#8221; to act as a marker for if the job had been done and put that in the same folder as the others.<\/p>\n<p>Fourth, I placed the script below into c:\\windows\\sysvol\\sysvol\\scripts. (No, I have no idea why they nested two identically-named folders.)<\/p>\n<p>Last, I assigned the script (logon.bat) to each affected user. There is probably a better way to do it than the clickety-clickety-paste-clickety-clickety method I used, but I only had a dozen users to deal with. On with the code:<\/p>\n<p>==============================<br \/>\n<code><br \/>\n@echo off<\/p>\n<p>ECHO This is a little logon script to update your Antivirus settings. It should only run once.<\/p>\n<p>IF EXIST \"C:\\done.txt\" GOTO done<br \/>\nREM Checks for the presence of the file done.txt in the root of c:<\/p>\n<p>net use L: \\\\avserver\\transfer\\savfix<br \/>\nREM Mounts this folder as a drive temporarily. This cuts down on failures.<\/p>\n<p>copy \"L:\\Grc.dat\" \"C:\\Documents and Settings\\All Users\\Application Data\\Symantec\\Symantec AntiVirus Corporate Edition\\7.5\\\"<br \/>\nREM The quotes are necessary for using folder names with spaces.<br \/>\nREM Make sure you turn off word wrap so the above is all one line.<\/p>\n<p>copy \"L:\\*.cer\" \"C:\\Program Files\\Symantec Antivirus\\pki\\roots\\\"<br \/>\nREM Lookee - I write portable code! That wildcard means you don't have to<br \/>\nREM edit the script the next time you do this for a stupid-long filename.<\/p>\n<p>copy \"L:\\done.txt\" \"C:\\\"<br \/>\nREM Places the marker file so the next time this runs, it skips the copy process.<\/p>\n<p>GOTO end<\/p>\n<p>:done<\/p>\n<p>ECHO Script has run before.<br \/>\nREM This is the other end of the IF EXIST statement above<\/p>\n<p>:end<\/p>\n<p>net use L: \/delete<br \/>\nREM Drive is no longer needed, deleted for housekeeping<\/p>\n<p>ECHO Operation is complete. We now return you to your normally scheduled logon.<\/p>\n<p>PAUSE<br \/>\nREM This will hold for a keypress, I used it to make sure things worked.<br \/>\nREM Comment out the pause after the test run.<br \/>\n<\/code><br \/>\n==================================<\/p>\n<p>There is a small caveat here that the user logging in must have admin rights locally to copy the files. By placing the &#8220;done.txt&#8221; marker, you can now leave the script in place for a couple of weeks to make sure all the clients get the needed changes, should someone be on vacation or something. When you have all the clients talking again, simply remove the script from the user profiles.<\/os><\/p>","protected":false},"excerpt":{"rendered":"<p>If you&#8217;re like me and have ever had a problem where your Symantec Corporate Edition clients have either ceased speaking to the server or you&#8217;ve had to migrate servers, have <a class=\"more-link\" href=\"http:\/\/thecyberwolfe.com\/blog\/2006\/07\/29\/sav-phone-home\/\">Continue Reading &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-504","post","type-post","status-publish","format-standard","hentry","category-geekery"],"_links":{"self":[{"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/posts\/504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/comments?post=504"}],"version-history":[{"count":0,"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/posts\/504\/revisions"}],"wp:attachment":[{"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/media?parent=504"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/categories?post=504"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/thecyberwolfe.com\/blog\/wp-json\/wp\/v2\/tags?post=504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}